Error codes in Modbus

M

Thread Starter

Miguel Allende

As I have explained before, I try to send data to a Modbus slave and the answer from it is error code number 9. I'm using the function 6 and 16 (both are implemented in the device according to the manual) and I obtain the same response all the time. After all I tried to read data from the device (using function 3) and I read some values... Then the communication is ok but only in one direction and I need it in the other. After reading the manual I have checked that the protocol is Modbus JBUS... Can this be the problem??? What is the difference between them??? Should I change the devices and try with another real Modbus protocol?

Thanks.

email: miguel. allende at ingeteam. com
 
F

Fred Loveless

Exception code 9 is not a Modbus specified exception code. Yhe protocol specifies codes 0x01 to 0x08 as well as 0x0A and 0x0B. It is possible that the device manufacturer of this hardware has specified their own codes.

What is the Make, Model and manufacturer of the device?

Do you have documentation of their Modbus implementation that has a list of their exception codes?

Fred Loveless
Senior Application Engineer
Kepware Technologies
http://www.kepware.com
 
To my knowledge JBUS is the same as Modbus, except that in Modbus register addresses start with a '1', like Modbus holding register 400001, JBUS starts a '0'. So you may find you are one register out.

You need to find out what error numbeer 9 means.

As you have not told us what equipment/manufacturer you are using, we cannot help you much. I suggest you contact manufacturers of Modbus master and slave.
 
Hello,

The only difference, that I know, between JBus and MODBUS is the register number.

To read/write a holding register:

40001 = 0 MODBUS
40001 = 1 JBUS

So your addressing may be off by one.

Download the free simulator from htp://www.peakhmi.com and if you have any troubles send an email to support.

Ciao,

Mark
htp://www.peakhmi.com
 
Top