'BadNothingToDo' error when connecting PLC to OPC UA server

Unified Architecture topics related to OPC UA Specification, compliant behavior and any technical issues of OPC UA, like Security, Information Model, Companion Specs DI, PLCopen, ADI, ...

Moderator: Support Team

Post Reply
natalia4646
Jr. Member
Jr. Member
Posts: 1
Joined: 16 Aug 2016, 13:51

'BadNothingToDo' error when connecting PLC to OPC UA server

Post by natalia4646 »

Hello Support Team!

I am trying to configure connection between client PLC controller and simple OPC UA server that’s running under specific address. To connect I use a function block available in an environment I work in. I have to provide only server's endpoint URL, username and password. My goal right now is just to connect and receive no error. Instead, I get BadNothingToDo - there was nothing to do because the client has provided a list of operations with no elements.
All data I'm providing in my application is correct, I can also without any problems access the server in UAExpert. Furthermore, to prove a possibility of connecting client PLC to server with a global IP address I successfully tested the configuration using two controllers.

I don't understand the meaning of BadNothingToDo error. What can be causing it?

Best regards,
Natalia

User avatar
Support Team
Hero Member
Hero Member
Posts: 3064
Joined: 18 Mar 2011, 15:09

Re: 'BadNothingToDo' error when connecting PLC to OPC UA ser

Post by Support Team »

Hello,

the cause aof the error is pretty obvious.
BadNothingToDo - there was nothing to do because the client has provided a list of operations with no elements
E.g if you call a "Read" service but you have forgotten to fill the in parameters (the list of nodes to read), this error shows up. In that case there is "nothing to do" and the service is probably not even executed, because "reading nothing" makes not much sense.

If you get this error in a connect atempt you should contact the venddor of the Client-PLC Function block, because "nothing-to-do" is missleading and probably the wrong error code.

Most obvious it should be "unsupported-user-token-policy" or simply "permission-denied". Most likely the server has only "anonymous" user token support, and when connecting with user/pwd it can't find a valid endpoint offering this policy, hence it has "nothing-to-do".

In any case, for the meaning of the error code in a certain situation you should cantact the vendor of that specific PLC function block.

Best Regards
Support Team

Post Reply