Errors communicating with Multiple Modbus Slaves

I have 2 modbus slaves and the Opta on the RS-485 network.
If I add one of the slaves at a time to the PLC application then it works OK.
When I have both of the slaves in the PLC app I start to get errors.

I've tried creating definitions for the Modbus slaves under the Opta->RS-485 SerialPort branch in Resources. These work better, sometimes the reads from both slaves work, but then I will get a run (5mins) of failures, then they start working again.

If I read them using the API's sysMbMRtu_FC03 etc, then the failure rates are higher - but I still occationally get good reads from both of them, most of the time I get the error MbRqErr_MsgResponseInvalid.

I've got a serial sniffer on the RS-485 bus and the trafic is exactly as I would expect, no corruption, no missing responses, it looks like its all working.

Has anyone else had issues communicating with multiple modbus slaves, any thoughts???

Hi. I have the exact same problem as you.

I tried it via the built in PLC Modbus config, also with the PLC Structured Text commands, and got exactly the same result for both.

I've now re-written it all in C++ using the RS485 and ModbusRTUClient libraries and it works perfectly. So I'm pretty certain this is another bug in the Opta PLC code.

Basically I've had a terrible experience with the Opta PLC enviromnent - its full of bugs, certainly not production ready.

If there was a deubgger interface for the Opta then I wouldn't even consider using the PLC software, but debugging C++ code with printfs is a pain.