Hello, I have a Siemens S7300 that i would like to access the tags thru Ignition - Read and Write.
The tags are coming thru WinCC. i am able to connect to the OPC UA with the hostname and port, able to see all the system tags coming from WinCC, but no other tags.
If you can get some screenshots of browsing from UaExpert, particularly the References pane, or a Wireshark capture, we might be able to figure out why.
Probably unrelated but worth mentioning: Upon the first connection, I get this warning, even after selecting None as security policy. I don’t have quarantined certificates in Ignition.
Can you show me the references UaExpert sees from WinCC for the Tags folder? And perhaps the attributes panel for one of those “Bild” tags showing its attributes?
If this is a WinCC Panel with V15 firmware this is a known problem with Ignition. I think I sent you a wireshark recording some time ago.
UaException: status=Bad_ReferenceTypeIdInvalid, message=The operation could not be processed because all continuation points have been allocated.
at com.inductiveautomation.ignition.gateway.opcua.client.connection.DataTypeTree$Companion.browse(DataTypeTree.kt:266)
at com.inductiveautomation.ignition.gateway.opcua.client.connection.DataTypeTree$Companion$browse$1.invokeSuspend(DataTypeTree.kt)
at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
at kotlinx.coroutines.DispatchedTask.run(Dispatched.kt:241)
at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:594)
at kotlinx.coroutines.scheduling.CoroutineScheduler.access$runSafely(CoroutineScheduler.kt:60)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:740)
8.0.4 (b2019091612)
Azul Systems, Inc. 11.0.4
Nevermind, I found the PM from you @chi, but it was definitely a bug with this server.
It would be worth trying a current version of Ignition 8 just in case. I think the browse logic that’s happening here was updated to handle even a nonsense failure on the server’s part like this.
@eduardogarcia after looking at your Wireshark you may need to set the Max Per Operation advanced setting on the connection to something very low, like 50 or 100 to start, and try again. It seems the server is not exposing the nodes that indicate its operation limits.
Well, it’s complicated, but again this is a bug in this server. It’s indicating that the ByteString containing the encoded DataChangeNotification is null (length -1, FF FF FF FF in the following screenshot), which causes our decoder to move onto the next field and start decoding bogus data because the ByteString is actually present in the stream. Wireshark can see it because the way it’s written it ignores this length for built-in OPC UA types.