Modbus data formats
Format Type # of Modbus registers used
Unsigned 16-bit Integer 1
Signed 16-bit Integer 1
Unsigned 32-bit Integer 2
Signed 32-bit Integer 2
Unsigned 32B-M10K Integer 2
Signed 32B-M10K Integer 2
IEEE float
1
Floating point 2
Packed Boolean for inputs Integer 1
Packed Boolean for coils Integer 1
Unsigned 16-bit read/write Integer 1
Signed 64 bit Integer 4
1
A device acting as a Modbus client supports two versions of IEEE float with different word
orders: high/low = Big Endian, low/high = Little Endian.
16-bit data (one word) is transmitted with most-significant byte first and least-significant byte
second.
32-bit data (two words) is transmitted with the most-significant word first and the least-significant
word second.
Modbus function codes
Function Description Client / Server
1 Read coil status Client and server
2 Read input status Client and server
3 Read holding registers Client and server
4 Read input registers Client
5 Write to a coil Client
6 Write to a holding register Client and server
15 Write to multiple coils Client
16 Write to multiple holding registers Client and server
17 Report slave ID (serial only) Client and server
43 (sub code 14) Read device identification Client and server
100 Read scattered holding registers Client and server
9810 series - User manual Communications
7EN05-0390-08 104