Modbus error "Illegal Data Address"

D

Thread Starter

Derrick

Hello all;

Here's my scenario. I have a serial Modbus slave (a Woodward EGCP2 controller), from which I'm reading data. Everything was working fine using ModbusRTU.

I wanted to switch to Ethernet, so I got an Advantach 4572 ModbusTCP/Serial gateway. Now all of a sudden I'm getting an "Illegal Data Address" error (Code 02) when I try to read a particular coil.

After some trial and error testing, I noticed that I can successfully read 7 coils starting at index 38, but I cannot read 7 starting at index 39. I cannot even read 1 coil starting at 39 (if I could successfully start at 38 and read back 7 coils, I should be able to read 38, 39...44 individually, or start at 39 and read 6, etc.).

The actual modbus slave device (the Woodward EGCP2) has coils addressable up to index 75, and I have previously read them all using ModbusRTU. IT's only now that I switched to TCP that I'm having trouble.

Anyone have any idea as to where this problem is coming from?

Thanks!!

Derrick
 
F

Fred Loveless - Kepware Technical Suppor

Hello Derick, typically when we see issues like that the problem is with blocking. Or to be more precise reading across block boundries. Some device do not like that. The first thing to check is to see if the Advantech converter is properly converting and passing the request through to the device since you know that a direct connection to it serially works fine.

:)
 
Top