S7-1200 OPC UA Dashboard: Binding Is Wrong, Not Tag

Karen Mitchell6 min read
S7-1200SiemensTroubleshooting
Licensed PE Working through this on a live machine? A Maine-licensed engineer can take it from here — included with IMD hardware, by the hour for everything else. Book an engineer

The dashboard shows no value for an S7-1200 INT, even though UAExpert can browse the variable as ns=4;i=5. The immediate fault is in the dashboard item string: dadetype=Int16 must be datatype=Int16. The controller tag can be valid while the client binding is malformed.

What is the screen telling you?

Separate the two reported symptoms before changing the PLC project. A blank or unchanged dashboard field is a read-path problem. A server that stops after an operator enters a number is a write-path problem. They share the same tag but exercise different client operations and permissions.

Operator observation Reading to take Meaning Next check
UAExpert displays the PLC variable Record its current NodeId, data type, and value The OPC UA server is exposing a readable node Compare the dashboard binding character by character
Dashboard displays no value Inspect the client status and item configuration The session, subscription, NodeId, or type declaration is wrong Correct datatype, then test the item node
Entering a number stops the server Read the dashboard client error and controller diagnostic buffer The failure occurs on a write or during write-related processing Disable writes and prove the read path first

Can the client reach the S7-1200 OPC UA server?

Start at the driver connection rather than the dashboard widget. An OPC UA value reaches the screen through four distinct layers: server endpoint, client session, node subscription, and widget binding. A failure at any layer leaves the display empty.

  1. Connect with UAExpert and browse to the variable.
  2. Read the variable repeatedly. Confirm that UAExpert shows a changing or known value without reconnecting.
  3. Record the NodeId exactly as browsed: ns=4;i=5.
  4. Confirm the dashboard OPC UA client reports an active session rather than only having a configured endpoint.
  5. If the client does not connect, diagnose endpoint, security, credentials, and certificate trust before editing the item string.

A successful UAExpert read proves that the server and node exist from that client connection. It does not prove that the dashboard client uses the same endpoint, security policy, identity, or NodeId. Compare those settings directly.

Does the dashboard item match the browsed node?

The tag is right; the binding is wrong when the configured topic contains dadetype. The parser expects the key datatype. An unrecognized key can prevent the client item from being constructed with the intended value type.

Setting Location Required value or action Effect
NodeId OPC UA item or topic ns=4;i=5 Selects the browsed PLC variable
Data-type key Free-text topic datatype, not dadetype Allows the item parser to recognize the type declaration
Data type Item configuration Int16 Matches the PLC variable created as INT
Client action OPC UA client Read or subscribe during diagnosis Prevents a dashboard entry from being mistaken for a proven read

For the supplied node, the corrected free-text form is ns=4;i=5;datatype=Int16. Preserve punctuation and capitalization accepted by the installed client node. If that parser still rejects the string, use the OpcUA-Item node and select Int16 through its configuration interface. Both configurations can work; the item node is preferable because it separates the NodeId and data type into validated fields and removes the spelling error from the message path.

Is the widget receiving the item output?

Once the OPC UA client reads the value, inspect the message immediately after the client and before the text widget. The value can exist at the client output while the screen remains blank because the widget listens to a different message field or topic.

  1. Attach a diagnostic display to the OPC UA client output.
  2. Trigger a read or wait for the subscription update.
  3. Confirm the message contains the value for ns=4;i=5.
  4. If the value is present, bind the text widget to the field that actually contains it.
  5. If the value is absent, return to the item configuration and inspect the client status or error output.

Do not use the dashboard input field as the first read test. An input widget emits operator-entered data; it does not prove that the OPC UA client has returned a server value. Test the read with a display widget or diagnostic output, then connect any input path separately.

Why does entering a number stop the server?

Treat this as a write-path fault until the recorded client operation proves otherwise. A client configured only for reading should not receive an operator-entered value on a write command path. Keep operator input disconnected while validating the read.

Check If true If false
Does the client log show a write request? Verify node write access, value type, and range Inspect the operation immediately preceding the server stop
Does UAExpert show the node as writable? Test a controlled write with the same identity Keep the dashboard item read-only
Is the submitted value represented as Int16? Continue with access and controller diagnostics Convert or configure the dashboard value before writing
Does the controller diagnostic buffer record the event? Use its event text to identify the server-side failure Capture the dashboard client error and connection transition

The PLC is identified as an S7-1200FCThat comparison does not isolate the cause by itself. Browse each controller independently and compare the node’s declared data type, read/write access, endpoint security, and project-level OPC UA configuration.

What procedure resolves and verifies the binding?

  1. Remove the dashboard input from any OPC UA write path.
  2. Use UAExpert to browse the S7-1200 variable and confirm that its current NodeId is ns=4;i=5, its type corresponds to Int16, and its value can be read.
  3. Configure the dashboard client for a read or subscription using the same endpoint and client identity tested for this controller.
  4. Replace ns=4;i=5;dadetype=Int16 with ns=4;i=5;datatype=Int16. If free-text parsing remains uncertain, configure an OpcUA-Item node with NodeId ns=4;i=5 and data type Int16.
  5. Inspect the OPC UA client output before connecting the widget. Confirm that a value arrives without an operator entry.
  6. Bind the text display to the returned value field and change the PLC INT through the normal controller-side method. Confirm that UAExpert and the dashboard show the same new value.
  7. Only if writing is required, verify write access in the server, configure a separate write path, submit a valid Int16 value, and watch both the client error output and controller diagnostic buffer during the test.

FAQ

Why does UAExpert read my S7-1200 tag but the dashboard stays blank?

UAExpert proves the server node is readable, but the dashboard has its own session and item binding. Correct the topic from dadetype=Int16 to datatype=Int16, then inspect the client output before the widget.

Why does ns=4;i=5;dadetype=Int16 not work?

The data-type key is misspelled. Use ns=4;i=5;datatype=Int16 or configure ns=4;i=5 and Int16 in an OpcUA-Item node.

Why does selecting number mode not fix the OPC UA value?

The widget’s number mode does not repair an invalid OPC UA item definition. First make the client return the Int16 value, then bind the widget to the returned message field.

Why does entering a dashboard value stop the OPC UA server?

The input may be reaching a write path with the wrong operation, access, or value representation. Disconnect writes, prove read-only operation, and then inspect the client error plus the S7-1200 diagnostic buffer during one controlled write.

Compare each server’s browsed NodeId, declared type, access rights, endpoint security, and project configuration instead of transferring assumptions between controllers. The final verification is a controller-side INT change that appears as the same value in UAExpert and on the dashboard.

Back to blog