I'm using a pc with windows 7 as my nodered host, and connecting to a S7 416-3 via ethernet through a CP 443-1.
I've already created some variables, ( DBW and DBX) and I can write the Int numbers in the DBW and also read the DBW state, but when I try to write bits in any of my DBX variables, it raises the error "Error: PLC error [0x8104]: This service is not implemented on the module or a frame error was reported."
The most weird part is that I'm able to read those DBX variables, meaning that this may not be a syntax error.
I've tried to copy the syntax declaration in the Help option, but wasn't the problem.
are you sure, that you´re not trying to wirte into an optimized-access DB?
Found this in the Siemens-Forum:
Use Online & diagnostics to perform a Reset to Factory Settings and mark the box labeled "Delete password for protection of confidential PLC configuration data."
Which S7 communication node are you using? I would suggest node-red-contrib-s7 (node) - Node-RED
S7-300/400 series doesn't have Optimised block access.
Usually to have connection to S7 PLC you have to consider:
When connecting to S7-300/400 Slot should be the same as shown in Simatic manager HW configuration. CP443-1 case the default is 3.
S7-1200/1500 series uses Slot number 1.
Yes, s7 400 doesn't have this acces, and there's no protection in the block
I'm using this node already (node-red-contrib-s7)
The connection was set as the hardware configuration, and in my case is also port 3.
To be honest I've never seen this fault myself.
Could you share your code?
I could only offer an workaround, if you are working with a lot of bools, then gather them into words.
If only a few - then, write as int or byte and based on this value change to TRUE or FALSE
This topic was automatically closed 60 days after the last reply. New replies are no longer allowed.