PortDock

Autonics MT4W Modbus register map

DC/AC voltage/current panel meter. Only output code 8/9 models have RS485 Modbus RTU. Covers measured value, decimal, peaks, comparator outputs and settings. · Panel meter · MT4W-DV-□8, MT4W-DV-□9, MT4W-DA-□8, MT4W-DA-□9, MT4W-AV-□8, MT4W-AV-□9, MT4W-AA-□8, MT4W-AA-□9

An unofficial summary of facts (addresses, types, units, scaling) from the maker's manual. Not affiliated with the maker; values can differ by firmware or model. Always check the device manual before writing (run commands, settings).

Default communication

ProtocolModbus RTU
Baud (factory)9600 bps — options: 1200, 2400, 4800, 9600, 19200, 38400
Data · parity · stop8 · None · 2
Slave ID (factory)1 (1~99)
Manual address styleWire address as is (0-based)

Registers (26)

«Wire» is the 0-based address in the request frame (PortDock's «0-based» notation). Value = raw × scale. Table: HR holding register, IR input register, CO coil, DI discrete input. Function codes in hex.

ManualWireTableNameTypeUnit · scaleR/WFCDetails
300001(0000)0 (0x0000)IRMeasured valueS16R04
Integer without decimal point — position in 300002(0001). STND shows -5..110 %, SCAL -1999..9999.
30000 = HHHH (STND over) · -30000 = LLLL (STND under) · 30001 = d-HH (SCAL over) · -30001 = d-LL (SCAL under) · 30002 = F-HH (FREQ over)
printed p.21 Table 2.1.1 (PDF p.22)
300002(0001)1 (0x0001)IRDecimal point / display modeU16R04
High byte = mode (0 STND, 1 SCAL, 2 FREQ), low byte = decimal places.
0 = STND 0 · 1 = STND 0.0 · 2 = STND 0.00 · 3 = STND 0.000 · 256 = SCAL 0 (0x0100) · 257 = SCAL 0.0 (0x0101) · 258 = SCAL 0.00 (0x0102) · 259 = SCAL 0.000 (0x0103) · 512 = FREQ 0 (0x0200) · 513 = FREQ 0.0 (0x0201) · 514 = FREQ 0.00 (0x0202) · 515 = FREQ 0.000 (0x0203)
printed p.21 Table 2.1.1
300003(0002)2 (0x0002)IRHI peak valueS16R04
Max of input. Decimal per 300002.
printed p.21 Table 2.1.1
300004(0003)3 (0x0003)IRLO peak valueS16R04
Min of input. Decimal per 300002.
printed p.21 Table 2.1.1
300005(0004)4 (0x0004)IROUT status (HI, GO, LO)U16R04
HI/GO/LO states (0 OFF/1 ON). Bit positions not given in manual — use discrete inputs 100001-100003 instead.
printed p.21 Table 2.1.1
100001(0000)0 (0x0000)DIOUT status LOBITR02
0 = OFF · 1 = ON
printed p.22 Table 2.1.2
100002(0001)1 (0x0001)DIOUT status GOBITR02
0 = OFF · 1 = ON
printed p.22 Table 2.1.2
100003(0002)2 (0x0002)DIOUT status HIBITR02
0 = OFF · 1 = ON
printed p.22 Table 2.1.2
400001(0000)0 (0x0000)HRHigh preset (H.SET)S16R/W03·06·10
OUT HIGH set value. Decimal per display setting (300002).
printed p.22 Table 2.1.3.1
400002(0001)1 (0x0001)HRLow preset (L.SET)S16R/W03·06·10
OUT LOW set value. Decimal per display setting (300002).
printed p.22 Table 2.1.3.1
400003(0002)2 (0x0002)HRHigh peak (H.PEK)S16R/W03·06·10
Max of input, default 0.
printed p.22 Table 2.1.3.1
400004(0003)3 (0x0003)HRLow peak (L.PEK)S16R/W03·06·10
Min of input, default 0.
printed p.22 Table 2.1.3.1
400101(0064)100 (0x0064)HRInput range (IN-R)U16R/W03·06·10
Code table not given (refers to input specifications).
printed p.22 Table 2.1.3.2
400102(0065)101 (0x0065)HRDisplay mode (DISP)U16R/W03·06·10
0 = STND · 1 = SCAL · 2 = FREQ
printed p.22 Table 2.1.3.2
400103(0066)102 (0x0066)HRDecimal point (DOT)U16R/W03·06·10
0-3; manual shows values only as 7-segment glyphs, so positions are not stated here.
printed p.22 Table 2.1.3.2
400104(0067)103 (0x0067)HRHigh scaleS16R/W03·06·10
Raw range; changes with decimal point.
Range -1999 ~ 9999
printed p.22 Table 2.1.3.2
400105(0068)104 (0x0068)HRLow scaleS16R/W03·06·10
Raw range; changes with decimal point.
Range -1999 ~ 9999
printed p.22 Table 2.1.3.2
400106(0069)105 (0x0069)HRInput type (IN-T, AC models)U16R/W03·06·10
0 = T.RMS · 1 = A.RMS · 2 = AVG
printed p.22 Table 2.1.3.2
400206(00CD)205 (0x00CD)HRFront zero keyU16R/W03·06·10
0 = NO · 1 = YES
printed p.22 Table 2.1.3.3
400207(00CE)206 (0x00CE)HREvent input functionU16R/W03·06·10
0 = HOLD · 1 = ZERO
printed p.22 Table 2.1.3.3
400210(00D1)209 (0x00D1)HRComm addressU16R/W03·06·10
Range 1 ~ 99
printed p.23 Table 2.1.3.3
400211(00D2)210 (0x00D2)HRComm speedU16R/W03·06·10
0 = 1200 bps · 1 = 2400 bps · 2 = 4800 bps · 3 = 9600 bps · 4 = 19200 bps · 5 = 38400 bps
printed p.23 Table 2.1.3.3
400212(00D3)211 (0x00D3)HRParityU16R/W03·06·10
0 = NONE · 1 = EVEN · 2 = ODD
printed p.23 Table 2.1.3.3
400213(00D4)212 (0x00D4)HRStop bitU16R/W03·06·10
0 = 1 bit · 1 = 2 bits
printed p.23 Table 2.1.3.3
400214(00D5)213 (0x00D5)HRResponse waiting timeU16msR/W03·06·10
Range 5 ~ 99 ms
printed p.23 Table 2.1.3.3
400215(00D6)214 (0x00D6)HRLock (LOC)U16R/W03·06·10
0 = OFF · 1 = LOC1 · 2 = LOC2 · 3 = LOC3
printed p.23 Table 2.1.3.3

Notes

Read it with PortDock

  1. Install the free PortDock Modbus Master and connect with the device's settings.
  2. On the table toolbar, «Device profile…» → pick this device → «Load». Polling tables, names, types and the Slave ID are filled in (optionally the serial settings too).
  3. Names carry the unit and scale (e.g. «×0.01 Hz»). Values on screen are raw — multiply by the scale.
  4. To test your program without the device, PortDock Modbus Slave's «Emulate device…» serves the same map with example values.

Download JSON

Sources