Modbus Address Converter

Reference → Offset

Offset → Reference

40001 notation vs. offset 0

Modbus messages never contain “40001”. The protocol PDU carries a function code (which selects the object table) and a zero-based offset 0…65535. Reading 40001 means: function 03 (Read Holding Registers), starting address 0x0000.

The reference notation (also called Modicon or data-model notation) is a documentation convention: the first digit identifies the table (0 coils, 1 discrete inputs, 3 input registers, 4 holding registers) and the remaining digits are a one-based position. Therefore 40001 → offset 0, 40100 → offset 99. Six-digit references (400001) cover the full 1…65536 range.

Typical source of off-by-one errors: one device manual lists “register 100” (one-based) while a SCADA driver expects offset 100 (zero-based). Some vendors document plain zero-based offsets without any prefix — always check which convention the device manual uses.

Related