[OPC UA] Bad("Bad_DeviceFailure")

Hello there.
I'm having an issue writing some OPC UA tags in Ignition. While using UaExpert I'm able to force a value to a variable of type Double (Int32), Ignition Tags Explorer gives back this error message when I try to assign a negative value to the tag (doesn't happen with n >= 0).

Error writing to value.value: Bad("Bad_DeviceFailure: There has been a failure in the device/data source that generates the value that has affected the value.")

Never happened before; the UDT I'm using hasn't been changed as well. I'm on version 8.1.35.

Thank you!

I’m pretty sure this StatusCode is coming from the server… and we don’t use that code so it must be a third party server. Maybe it doesn’t like or allow that negative value?

1 Like

Hello Kevin, it's a third-party OPC UA server.
If I force the value via UaExpert (being connected to the same OPC UA server), I don't get the message.

That doesn’t really mean much to me. Compare Wireshark captures and see if the same value and type of value is being written?

Sorry, I don't get your message (not the Wireshark part).
Should I compare which packet is being sent by UaExpert and by Ignition Tag Browser to check if there's any discrepancy?

Yes if you capture a write from both software you can see what the difference is between values being sent.

What is the DataType of this node as reported by the server? You should be able to see it in the attributes pane of UaExpert.

The server reports it as an Int32 data type. I'll try to capture the data on Monday and get back to you.

Im not sure I understood the original problem statement - are you saying that you write a negative value from UaExpert and then the subscribed value in Ignition turns bad quality? What did you mean about Double?

Sorry if I didn't make myself clear enough.
I've first tried to write the value from Ignition Designer and I get that error message back, but when I try the same procedure from UaExpert, I'm able to force its value.
The OPC UA server reports the tag data type as an Int32, and the UDT in Ignition defines the tag data type as a Double.

In any case, I've just contacted our OPC UA server developer and they told me they fixed this issue, so thanks for telling me that error message was probably being sent by the OPC UA server itself!

1 Like