Need some advice on how to solve this. We use derived tags to set and reset bits in a modbus int, command word. This works as long as we do bit by bit. But… I got some buttons that is intended to alter 3 bits at once. It seems that we run into some timing issues, as only the last instruction is done.
I have tried both system.tag.write and system.tag.writeAll on my 3 derived tags.
Restored the gateway on our test server and connected to a PLC on my desk.
Enabling optimistic write does nothing, first when we change optimistic write timeout from 0 to 3000 we see a difference. It works better, meaning two or more bit is not high at the same time - but the first press will most times only disable bits. It will require a second or more click to enable the bit we would like to set.
3 buttons, 3 bits that needs to be altered. All of them belong in a UDT. Tried to add derived tags without a UDT but still the same.
It didn’t work with individual async writes, though, and I’m not sure if that’s correct behavior or not. I’ll have to open a ticket and get someone to look into it this week.