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

PI Interface for OPC DA

Message Logs

  • Last UpdatedMay 22, 2025
  • 9 minute read

The message log contains messages from PI Interface for OPC DA, the UniInt framework, and the PI API.

The following table describes only messages from the interface. If any error message has a PI point number as well as a point name, use the point number to identify the problem point, because long point names are truncated to 12 characters.

Informational

Message

Meaning

Shutdown Advise Failed

No ConnectionPoint for OPCShutdown

The OPC server does not implement the Shutdown interface or does not implement it properly. Does not prevent proper operation of the interface.

QueryInterface:IID_IconnectionPointContainer failed, using v1.0a protocol

The OPC server does not support OPC DA v2.0.

GetStatus: Server has no current time.

Indicates a non-OPC-standard server that does not send the time of day. The OPC specifications state that the server is supposed to include current time when it sends its status. The interface guesses time stamps, but its accuracy is likely to be questionable.

Cleaning up connections

Cleaned up connections

Indicates that the interface is disconnecting and exiting.

Server sent shutdown notice.

Interface received a shutdown notification from the OPC server. The interface periodically tries to reconnect to the server, until it is shut down or succeeds in connecting.

Got %d and cleared it

ClearWrite: dwTransID mismatch, have %d, got %d

Stashing transid %d

Sending transid %d

Writing transid %d

Debug level 4 messages indicating that the server acknowledged the specified write and the interface is clear to send another write value. The %d variable is a placeholder for a decimal integer value.

Can’t find status tag, ignoring

Can’t find queue tag, ignoring

Status tag is not Digital tag, ignoring

Queue tag is not Integer tag, ignoring

Status/queue point does not exist or its data type is incorrect.

Can’t connect to OPC Server, going into slow cycle wait

Interface attempted to connect to OPC server. Check for other messages that contain details about the reason for the failed attempt. Interface periodically tries to reconnect.

AddItems failed, server not in RUNNING state, will try later

The interface is waiting for the OPC server to enter RUNNING state. You can use the PI OPCClient tool to see the state of the server (use the Get Status button). If the server does not enter the RUNNING state, investigate the cause.

Errors

Message

Cause

Resolution

Out of Memory.

Cannot allocate a list; fails.

Unable to add tag.

The system has run out of resources.

Use the Windows Task Manager to check the resources being used: press Ctrl+Shift+Esc to open the Task Manager. If you see high memory usage for opcint.exe, there might be a bottleneck between the interface and Data Archive. Look for related messages in the log (see also Running low on memory, dropping data).

CLSIDFromProgID

OPC Server Registry entries are not valid.

Check your server installation instructions.

CoCreateInstanceEx

Indicates a problem with your DCOM configuration.

Check your DCOM settings.

IOPCServer

The proxy stub files are not registered.

To register the opcproxy.dll and opccomn_ps.dll files, you must use an administrator account. Open a command prompt window, change to the directory where the DLLs are installed, and issue the following commands:

>regsvr32 opcproxy.dll

>regsvr32 opccomn_ps.dll

AddRef

Indicates that the OPC server does not let the interface perform the simplest function.

If you can read and write points using PI OPCClient but this error is logged, check your DCOM settings, check what user account the interface is running under, and try running the interface interactively.

Advise returns error: 80040202(Unable to open the access token of the current thread)

Advise errors indicate that the OPC Server could not initiate a connection back to the OPC Interface (or other OPC client like the OPC Client Tool). Advise error 80040202 can have many root causes:

  • Network/authentication problems prevent the OPC server from establishing an IP connection or Windows login back to the interface node.

  • An OPC Server that is not in a good state.

    The following are possible causes of connectivity/login issues:

  • There is a firewall between the OPC server and client and the connection is blocked.

  • There is a name resolution error and the OPC Server cannot resolve the name of the OPC Interface machine.

To verify network connectivity, on the interface node: obtain the interface node's hostname and IP address using IPConfig /all.

On the OPC server, issue the command: tracertinterface_nodename (tracert will resolve the hostname to an IP address. Compare the IP address with the actual address(es) of the interface node. If they do not match, the problem is confirmed.)

The following tests can be used to identify the root cause of a network issue:

  • issue the command nslookup for the hostname and each real IP address on the OPC server. Do they resolve?

  • Check the hosts file on the OPC server for bad entries.

  • Verify that two hosts with the same IP address do not exist on the network.

Advise returns error: 80040202(Unable to open the access token of the current thread) (continued)

  • The interface node cannot authenticate the user account associated with the OPC Server. Enable Windows security auditing on the OPC Interface machine to confirm. This might be caused by incorrect group policy settings. If using a local userid, make sure the userid and password matches on the OPC Interface machine and OPC Server machine.

    If you see this error after connecting to the server successfully, the wrong opcproxy.dll might be loaded.

  • Verify that there is no firewall between the server and interface. Firewalls can exist in the operating system or on the router itself. Note that simple connectivity tests may not be enough; if the firewall is performing network address translation (NAT), DCOM will fail even if other connections work.

    If network connectivity is OK, and authentication works, then the OPC Server might be in a bad state. Try restarting the OPC Server.

    If you have multiple copies of opcproxy.dll on your interface node (possibly because you have more than one OPC server on your machine), make sure that they are the same version. It is safest to have only one version around on your system (in the \%windows%\system32 or %windows%\sysWOW64 directory). Check whether directories containing older versions are specified in the system path.

AddGroup failed for scanclass %d

AddItem failed for %s

AddItems failed for tag %s

Advise Group failed for %s

Advise returns E_OUTOFMEMORY

Advise returns E_UNEXPECTED

Advise returns error

No ConnectionPoint for scanclass %d

QueryInterface:IID_IdataObject failed for scanclass %d

QueryInterface:IID_IOPCAsyncIO2 failed for scanclass %d

Read: (string)

Refresh: (string)

Unable to add to group

Unable to add to OPC group.

Unable to advise event group

Unable to advise group

Unable to advise output group

Unable to create group

Write error %X for tag

Write failed

These are fatal errors returned by the OPC server.

Try the same operation using PI OPCClient. If successful, run the interface interactively to see if the same error occurs. If successful, check your DCOM configuration to make sure that you have granted required permissions to the INTERACTIVE account. c0040004: Indicates that the requested data type cannot be returned for this item. Use PI OPCClient to add that Item to a group, omitting data type. The server will send you values using the data type that it uses internally for that item. c0040007: Returned from AddItem, indicates that the server does not have the specified item. Verify that the instrumenttag field of the PI point matches the OPC item name exactly. Using PI OPCClient, try to add the Item to a group, or if your OPC server supports browsing, browse to the item and double-click on it to display its full name.

Invalid read/write mode requested for tag %s

The server is returning invalid information about read/write access.

To tell the interface to ignore this information, specify the /ar=N parameter.

RemoveItem failed for tag %s

dev_remove_tag: Unable to unadvise %s

dev_remove_tag: Unable to remove group %s

The server won’t remove an item from a group or stop collecting data for a group.

Not a serious problem unless accompanied by lots of other messages, but indicates some problem with the OPC server.

Write unable to get values:

Getsnapshotx error %d

The interface was unable to read a value from PI to write to the OPC server.

To verify that Data Archive is running, use apisnap (in the API directory). Verify that the source and target data types and values are compatible.

Event Point has invalid scan class (!= 0)

No Item name – instrumenttag and exdesc both empty

Nonzero Totalcode requires nonzero Convers

Point cannot be write and Read On Change

Point has invalid scan class

Point has invalid scan class (== 0)

ROC Point has invalid scan class (= = 0)

Square root must be 0, 1 or 2

This Totalcode requires Dzero to be specified.

Total must be 0,1,2,3,4, or 5

Unable to get point type

Unable to get source point type.

Unable to get square root

Unable to get total specs

Indicates that a PI point is improperly configured.

Check the point configuration, especially the attribute indicated.

GetStatus

The OPC server did not respond to a status query. It might be down or disconnected.

Use PI OPCClient to check the status.

Interface failed to write some %s states

When the OPC server shuts down, the interface sends a shutdown status to each point, if configured to do so (/opcstopstat). This error message indicates that the interface was unable to send some or all of them, owing to lack of connectivity to Data Archive or lack of buffering.

You may want to manually enter the digital state for the affected points to indicate that the interface shutdown.

OnDataChange:Invalid group ID < 0

OnDataChange:Invalid advise group ID:

OnDataChange:Invalid group ID > 999

OnDataChange: Header status:

OnDataChange has format not Hglobal

OnDataChange:Invalid group ID for write completion

Unknown access type for group %s

Indicates that the server is sending meaningless data.

To ignore the header status field in incoming data, set /gs=N. Contact your OPC server vendor. Use PI OPCClient to create groups and try AsyncReads and Advises. Check whether incoming data is valid: the meaningless data might not interfere with data collection.

OnDataChange: Bad Timestamp

The interface received an invalid time stamp with data from the OPC server.

Check your OPC server, and use PI OPCClient to display time stamps.

Invalid timestamp for tag: %s, %d and %.36f

The interface received an invalid time stamp with data from the OPC server. Indicates an issue in the OPC server.

Use PI OPCClient to display the item in question. Use Refresh or Advise or AsyncRead to see a time stamp.

Putsnap system error %d, %d

Putsnap no longer in system error %d, %d

System error indicating a problem sending data to PI Data Archive.

No action required unless the error persists.

Putsnapsx not implemented %d

Getsnapshotx not implemented

Indicates an outdated version of the PI API.

Update your version of the PI API.

Unable to translate string.

Attempt to translate an ASCII string value from a PI point to Unicode failed.

Check the value of the point.

Unable to initialize server object

Privileges are not granting access.

Verify that account has sufficient privileges.

No OPC Server specified

The server parameter specifies a non-existent server or the invocation is on multiple lines.

Verify that the interface batch startup file specifies valid server parameter and that the invocation is a single line.

Unable to create clock drift timer

Interface cannot create a timer to track drift.

Check system resources.

Running low on memory, dropping data

Memory load within acceptable limits, resuming data collection

If Data Archive cannot accept data as quickly as the interface can send it, the interface buffers data in memory. To avoid consuming all available memory, the interface starts dropping data as the limits configured by hq and lq are approached.

Consider giving the PI System more resources, changing the exception parameters of your points, or changing the scan period of your points.

Failed to open cluster: error ####. Intf-failover will not be supported.

Failed to open cluster resource: error ####. Intf-failover will not be supported.

Win32 error code indicating that an attempt to open the cluster service or resource failed.

Check the cluster settings.

Critical errors

Message

Cause

Resolution

Error from CoInitialize:

Error from CoInitializeSecurity:

COM might not be properly installed on your system.

If true, this is a serious problem. First check your COM setup. You may also need to contact AVEVA Technical Support.

Cannot get PI Server time.

Cannot connect to Data Archive.

For newly-installed systems, reboot and verify that you can connect to PI Data Archive. To verify connectivity, ping the PI Data Archive machine. To verify that PI Data Archive is running, use apisnap. For existing installations, contact AVEVA Technical Support.

OnDataChange: VariantCopy

Indicates that the OPC server sent meaningless data. Interface rejects the data and writes BADSTAT to the point. Time stamp is good.

Check the data with PI OPCClient.

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