13.2.5. Function code 6 - Write single register
13.2.6. Function code 16 - Write multiple register
13.2.7. Exceptions returned
13.3. Holding registers memory mapping
It is possible to write one holding register at a time in the alarms or analog output sections,
attempting to write a register outside those sections or in unallocated space inside those sections
will always return illegal data address.
It is possible to write multiple registers at a time in the alarms or analog output sections,
attempting to write any register outside those sections or in unallocated space inside those
sections will always return illegal data address
The exceptions returned by functions are the same as defined in MODBUS APPLICATION
PROTOCOL SPECIFICATION V1.1b3 and are applicable in the context of the defined reduced
slave functionality of the devices:
NOTE: Most holding registers are read-only. Each register is 16 bits wide and is transmitted as
big endian. NOTE: Reading values from registers shall be done field-aligned. This means, for
example (referencing the table below), it is not possible to read starting from register #2, and
it’s not possible to read multiple registers if they do not completely cover the field, example
would be #13-#17, the same rules are applicable when writing holding registers. When the
master issues a read command, if the read or the write is not field-aligned, an Illegal data
address exception will be returned (0x02).