Please ensure Javascript is enabled for purposes of website accessibility
Powered by Zoomin Software. For more details please contactZoomin

AVEVA™ Plant SCADA

Driver-specific Parameters

  • Last UpdatedJul 07, 2025
  • 7 minute read

The following table describes the driver-specific Citect.ini parameters.

[OPC] Parameter

Allowable Values

Default Value

Description

AddItemAsVtEmpty

0 - Specify data types

1 - Use native data type

1

Determines whether the OPC driver specifies a data type when adding an item, or whether it uses the native data type when adding items.

This parameter is used to select whether the OPC client will specify a type to force the OPC Server to coerce the data, or for the OPC server to provide the type as configured on the server.

ArrayRecordBase

-

-

This parameter has been deprecated.

CacheRead

0 – Value is refreshed and the latest value returned.

1 – Last known value returned.

1

Determines the value returned when an inactive item is read.

See Overriding [OPC]CacheRead for information on how to override the value of this parameter for a particular tag.

DigitalQualityUncertainIsBad

0 or 1

1

Determines how an uncertain quality result is treated when a Digital quality reading is taken.

0 - An uncertain quality will be treated as GOOD when a digital quality reading is taken (normal INT version is unaffected)

1 - an uncertain quality will be treated as BAD when a digital quality reading is taken (normal INT version is unaffected)

FailOnBadData

-

 -

The parameter has been deprecated since Citect SCADA v7.30

FailOnUncertain

 -

 -

The parameter has been deprecated since Citect SCADA v7.30

FillCacheOnStartup

0 - Subscriptions are created in the inactive state and are only activated as read request are received.

1 - Subscriptions are created in the active state.

1

Determines whether subscriptions are created in the active or inactive state initially.

GoOfflineForBadTag

0 – disabled. Do not go offline.

1 - enabled. Go offline.

0

Sets all tags on an OPC device to an OPC_QUALITY status of GOOD before Plant SCADA declares the I/O device online.

This parameter would only be set on the I/O server where the device is defined as primary, so it can only take over from a standby device definition when all tags and the status tag are valid. This minimizes the chances that com-breaks occur during switchover from standby to primary. It is strongly recommended not to set it on a standby, as it might only be one tag that is invalid.

InhibitActivationOnStandby

0 – A standby server will follow the same rules for subscription activation as the primary server.
1 – A standby server will only active a subscription if it believes the primary server is not active.

1

This parameter allows a standby server to deliberately leave subscriptions in an inactive state when the primary server is online. This is usually used when the primary and standby server are talking to independent OPC servers to reduce the load the standby OPC server would place on field devices.

On startup of a standby server, if this parameter is set to 1, items will not be activated immediately. They will only be activated when the unit itself becomes the active unit.

ItemLifeTime

Time (seconds)

5

Determines the time in before a tag is deemed inactive.

The global LeaveTagsActive parameter overrides the ItemLifeTime parameter to force OPC tags to remain active even though Plant SCADA is no longer requesting them from the driver.

The ItemLifeTime parameter can be individually overridden for any OPC device by the Active parameter.

LeaveTagsActive

0 - Do not leave tags active.

1 - Leave tags active.

1

Determines whether OPC tags remain active even though Plant SCADA is no longer requesting them from the driver. Normally tags are made inactive 5 seconds after the last time they are requested.

Some OPC servers take a long time to return a call to activate/inactivate tags, or doing so slows them down, therefore leaving tags active can sometimes improve performance.

The global LeaveTagsActive parameter can be individually overridden by an Active parameter.

See ItemLifeTime parameter (above).

Note: This parameter minimizes the likelihood of deactivation of tags on the currently active unit only. Tags on units that have become inactive (standby) will still deactivate

NumConcurrentServerInits

-1 – Unlimited

32767

-1

Represents the maximum number of concurrent initialization and shutdown operations that are performed on each configured OPC Server. Higher values, or -1 (unlimited), will incur greater load on the server, while 0 and 1 determine that initialization is serialized into effectively a single thread.

OPCGroupName

Any string (maximum 32 characters)

CitectGroup_<n>

By default, each OPC server is allocated a sequential group name by the OPC driver, i.e. CitectGroup_1, CitectGroup_2, etc.

This parameter allows you to replace the default group name with a customized name.

You can set this parameter at a device level using OPC Device-specific Parameters.

ReadAfterWrite

0 - No read, rely on the normal polling/OnDataChange mechanism.

1 - Force sync read of item written from OPC server cache after write.

2 - Force sync read of item written from device after write.

0

Determines if a force read should be made, and if it should be from the OPC server cache or from the device.

Note: RefreshAfterWrite causes a refresh of all active items, whereas ReadAfterWrite reads back only the item being written to. You should use one or the other. Where both RefreshAfterWrite and ReadAfterWrite are set to 1, RefreshAfterWrite will take precedence, and ReadAfterWrite will be set to 0.

RefreshAfterAdd

0 - No REFRESH.

1 - Request a REFRESH from the OPC server cache.

2 - Request a REFRESH from the device.

1

Determines whether an OPC REFRESH is requested from the OPC server after activating the group.

This parameter can be disabled if slow start up times are experienced.

The server could be automatically sending a REFRESH, in which case another request may be unnecessary.

RefreshAfterWrite

0 – Disable forced REFRESH.

1 - Enable forced REFRESH from OPC server cache.

2 - Enable forced REFRESH from device.

0

Determines whether to force an OPC REFRESH from the OPC Server of ALL active items after Plant SCADA writes to an item.

RefreshBeforeArrayWrite

0 – No refresh command sent

1 – Read command sent to refresh the OPC server cache

2 – Read command sent to refresh the OPC device

0

Enables the driver to send a read command to the OPC server before a write command is sent to the OPC server for an array variant.

ServerOnlineStates

"RUNNING"
"FAILED"
"NOCONFIG"
"SUSPENDED"
"TEST"

"RUNNING"

Defines the list of OPC Server states that the driver considers online. The format is a "|" separated string, without spaces.
If you experience the OPC Server shutting down on startup, it is recommended that the following states are used:

"RUNNING | NOCONFIG | SUSPENDED"

ShutdownWait

Time (milliseconds).

30000

Determines the time the OPC driver waits before shutting down. On shutdown, the driver attempts to close the connection to the OPC server. If this takes longer than the time specified by this parameter, the driver shuts down anyway (sometimes with unexpected results). This parameter might be needed if the OPC server does not respond within the default wait time.

StatusWaitPeriod

Time (milliseconds)

5000

Determines the time the OPC driver waits before requesting tag status for an OPC I/O device. On startup, the OPC driver waits for a Unit status from the OPC server before adding tags to the server. If the value of this parameter is exceeded, the tags are added anyway.

The OPC server should respond within a few seconds. The default wait time of 5 seconds should usually be adequate.

SuppressDataNotYetValidError

0 or 1

0

Determines whether "Data Not Yet Valid" error messages are suppressed, or whether they are displayed in the Kernel window and written to the Syslog.dat file. For Plant SCADA to display the message "Error Suppressed", you need V5.50 or above.

0 – Displays "Data Not Yet Valid" errors in the Kernel window and logs them to the Syslog.dat file.

1 - Suppresses "Data Not Yet Valid" errors, which are not displayed in the Kernel window or logged. In the Runtime kernel, under View -> I/O Devices, Plant SCADA will display "Error Suppressed" in the Error Message field for the particular device.

UseArrays

-

-

This parameter has been deprecated.

UseAsyncWrites

0 - use synchronous writes.
1 - use asynchronous writes.

0

Determines whether writes are synchronous or asynchronous.

Note: UseAsyncWrites=1 is only valid when [OPC]UseOPC2=1, since OPC1 does not support asynchronous writes.

UseOPC2

0 – OPC2 support disabled (Use OPC 1.0a interface).

1 – OPC2 support enabled (Use OPC DA2 interface).

0

Globally determines whether to use OPC 1.0a or OPC 2.0 interface. Individual overrides can be set using the UseOPC2 parameter to force the use of a particular version OPC interface with a particular I/O device.

UseStatusTags

0 – disabled.

1 – enabled.

0

Determines whether parameters in the [OPCStatusTags] section are active. Individual overrides can be set using the OPC Device-specific Parameters to force the use of a particular status tag parameter with a particular I/O device.

ValidDataWaitPeriod

Time (milliseconds)

10 seconds

Determines the maximum time that the OPC driver will wait for OPC_QUALITY to be GOOD for all tags before declaring that Device online. This minimizes the likelihood of a client swapping from a standby to a primary prematurely and suppresses alarm flooding at startup.
Set this parameter to 0 to allow units to come online regardless of whether all items for the unit have been verified as good quality.

Note: FillCacheOnStartup=1 needs to be set when ValidDataWaitPeriod>0

WriteTrueAs1

0 - write true as VARIANT_TRUE(-1).

1 - write true as 1.

0

Determines whether a digital value of TRUE is written as "VARIANT_TRUE(-1)" or "1". This parameter should only be required for incorrectly designed OPC servers. When the Plant SCADA data type is digital, VARIANT_TRUE (-1) is used with VT_BOOL variant type to write a value of true. This happens even if [OPC]AddItemAsVtEmpty is set, as OPC servers should be designed to convert the value when they receive it.

TitleResults for “How to create a CRG?”Also Available in