What is the difference between Modbus mapping 2 and Modbus mapping 3?

Modbus does not support 32-bit floating point natively: it only supports 16-bit registers. This means that 32-bit data can be transmitted either as

most significant word
least significant word

or

least significant word
most significant word

The order is decided by the Modbus master that requests the data.

Since this varies, slave devices must support both orderings. There is no common way to select this. Some devices support a parameter that determines the endianness of the words. Our device uses two data blocks. Mapping 2 is little endian (least/most significant). Mapping 3 is big endian (most/least significant).

In practice, we have found that most Modbus masters use Mapping 2.

Back to top