After upgrading my Flexy 201 from 12.0s1 (I think it was) to latest firmware, I can’t read boolean values…
I use node-opcua to read data using a program called node-opcua-logger.
Before the upgrade everything was fine and dandy, but after the upgrade I get a datatype missmatch.
The value I read from the PLC in Flexy is a BIT (S73&400, M1100#0), and the Flexy tag datatype is set to boolean.
When node-opcua-logger reads the value it interprets the datatype as number instead of boolean and I get "Types don’t match: ‘number’ ‘boolean’ " error.
Has there been any changes in OPCUA IOserver that could explain this error?
I will need to take some time to look into setting up note-opcua-logger to test this. With my initial research it looks like it is relatively painless to setup.
Were there any other changes made besides updating the Flexy? What data type is the tag set to? It could be set to automatic and no longer be considered a bool.
I found the error…
The OPCUA setting ‘OPCUA export type’ in the new firmware defaults to ‘Export TAGs by name’, and the old firmware didn’t support poll by name, only by ID.
When I changed the setting to ‘Export TAGs by ID’ it started working again!
I need to rewrite my node-opcua-logger config file to use names instead of ID, which is much better… I had to reset and format my eWON earlier to get my TAGs in the right order and numerical ID when I started it up after experimenting with it…
Nice, glad to hear you have resolved the issue.