-
Notifications
You must be signed in to change notification settings - Fork 215
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Command line option to disable complex type loading. was: OPC Publisher 2.8.4 : WinCC disconnects when loading complex type system (with PCAPs) #1953
Comments
There is a special case BadMonitoredItemIdInvalid is emitted by OPC Publisher and that is during a Heartbeat should the value not exist or the monitored item not yet be created. Since from the configuration heartbeat is not configured the only possibility is that this value is reported by the server. Here the possibility is that you used different security or endpoint, or credentials between UA Expert and OPC Publisher (usesecurity = false). Best to make sure to use a unsecure endpoint in UA expert and repro. If that does not help, please could you send a) the command line argument for the publisher, and b) the entire publisher log, including how the monitored items are created on startup. |
in addition, it would be interesting to try and subscribe / create a monitored item for this particular node using UA Expert and check it this works. It could be the case that the server does not support subscribing certain nodes, but only allows read access. |
|
Thank you for the reply! Can you explain me how to do it? How do I check if the server does not support subscribing? |
You did exactly what I was looking for in the print-screen in your comment above with the On the other hand, looking at the publisher's traces it looks the item is properly monitored now and value-changes are properly generated. Do you still see the |
Yes, the payload is still the same... |
@marcschier Does the information I sent help? |
This error is injected when the heartbeat (which is tied to keep alive) is supposed to be sent, but no previous value has ever been received by publisher or the monitored item has not yet successfully been created. I would suggest removing "--hb" command line argument and see if you still see the status code. Please let us know if this helped. |
Now I Don't receive any message, but it is still working in UaExpert
|
It did not help... Now I don't receive any message... |
I'm trying troubleshoot the opc server with discovery and opc-twin module, but I can't use opc-twin without other services(microservices, etc) is there any way to do it with just the modules?? I've read the documentation and can't find any solution. @marcschier @cristipogacean can you give me any tip or hint? |
Hi @Ilheu , from my personal experience regarding those problems, you could try to create a wireshark capture of the (unencrypted) OPC UA communication. You would then be able to compare the working setup of using UA-Expert and the one using opc-publisher. Find a manual on capturing OPC UA packets here https://opcconnect.opcfoundation.org/2017/02/analyzing-opc-ua-communications-with-wireshark/ |
Thank for your hint! I tried and got these logs... I get this Error Message in loop, but when I try with UaExpert it works well... @marcschier @cristipogacean What more information do you need?! |
Many thanks for digging so deep into it. Super helpful. The server errors on the transport channel layer after server returns the read response. There might be an issue with us sending a namespace read that the server does not like. Possible issue could be operation limits. Could you share the pcap for UA expert and OPC publisher session starting from open |
I will make the pcap as soon as possible! |
I tested with the latest version 2.8.5.1.
pcap for OPC publisher |
@mregen , this looks like an issue in complex type loading in OPC stack. We have seen this before, but here it looks like it could be an issue where we do not honor operation limits on ReadNodes in Fetch nodes in INodeCache from cursory code inspection. |
It would be great to give OPC Publisher Preview 4 a try (mcr.microsoft.com/iotedge/opc-publisher:2.9.0-preview4), it contains the latest OPC UA stack which has a lot of fixes around max number of nodes. This item now covers a way to start OPC Publisher without loading complex type system to get around any misbehavior. |
I'm running OPCPublisher and when I try to get some node's value I get this message: :"StatusCode":{"Symbol":"BadMonitoredItemIdInvalid","Code":2151809024}.
I never had this problems in other servers.
I use the same nodeId that UaExpert shows:
![image](https://user-images.githubusercontent.com/8053606/223079007-07c433e2-3250-48ac-939d-3e51057e3747.png)
My file configurations is the following one:
![image](https://user-images.githubusercontent.com/8053606/223080378-e01136d3-7e33-4fb2-a9e1-b53cd18cf4ea.png)
I get this message instead of the node value:
[{"MessageId":"1","MessageType":"ua-data","PublisherId":"opc.tcp://192.168.xx.xx:xxxx_3182BABF","Messages":[{"DataSetWriterId":"1000","SequenceNumber":1,"MetaDataVersion":{"MajorVersion":1,"MinorVersion":0},"Timestamp":"2023-03-06T10:11:54.503Z","Payload":{"part_counter":{"StatusCode":{"Symbol":"BadMonitoredItemIdInvalid","Code":2151809024}}}}]}]
The text was updated successfully, but these errors were encountered: