MBMap Registry
  1. Devices
  2. Eastron
  3. SDM120-M

Eastron SDM120-M Modbus register map

Single-phase multifunction DIN rail energy meter, 45 A direct connection, bidirectional

  • Official
  • 56 registers
  • Modbus RTU
  • Revision 3 · 2026-11-10
  • Identity: firmware, serial number

Official: Written from the manufacturer's documentation, but not tested on a device yet. Check the map against the manufacturer's documentation before you write to a live device. Tested it? Report a test.

Communication

Protocol
Modbus RTU
Unit ID
1
Serial
9600 8N1 · 9600 baud, 8 data bits, none parity, 1 stop bit
Byte / word order
ABCD · bytes big-endian, words high first
Addresses
0-based

Connection values are defaults: the device may be configured differently.

Map

Registers
17 holding registers, 39 input registers
Groups
8
Revision
3 · 2026-11-10
Added
()
File
maps/eastron/sdm120-m.mbmap.json · 11 KB · history
SHA-256
200050bcc42499f3637a30c1469e1e2af346075cfa22f449498fef54e6d0e304
Manufacturer
eastroneurope.com

Device identity

What a tool can read to check that this map fits the connected device (SPEC.md section 4.7). Registers with a role are read like any other register.

Registers
RoleRegisterAddressTypeValues
Serial number Serial number holding 64512 uint32 ABCD
Firmware Software version major holding 64644 uint16 bits 8–15
Firmware Software version minor holding 64644 uint16 bits 0–7

Sources and notes

Source: Zhejiang Eastron Electronic, "Eastron SDM120-M User Manual V1.0", Modbus register map; https://www.eastrongroup.com/eastrongroup/2025/03/22/eastronsdm120-musermanualv1.0.pdf

  • Eastron SDM120-M single-phase energy meter (RS485).
  • Measurements are float32 input registers (FC04); the integer copies at 2710h-2849h carry the same values.
AreaAddressNameTypeAccessUnitScaleDescription
IR 0 float32 ABCD R V
IR 6 float32 ABCD R A
IR 12 float32 ABCD R W
IR 18 float32 ABCD R VA
IR 24 float32 ABCD R var
IR 30 float32 ABCD R
IR 70 float32 ABCD R Hz
IR 72 float32 ABCD R kWh
IR 74 float32 ABCD R kWh
IR 76 float32 ABCD R kvarh
IR 78 float32 ABCD R kvarh
IR 80 float32 ABCD R kVAh
IR 82 float32 ABCD R Ah
IR 84 float32 ABCD R W
IR 86 float32 ABCD R W
IR 88 float32 ABCD R W
IR 90 float32 ABCD R W
IR 92 float32 ABCD R W
IR 94 float32 ABCD R W
IR 258 float32 ABCD R A
IR 264 float32 ABCD R A
IR 342 float32 ABCD R kWh
IR 344 float32 ABCD R kvarh
IR 20130 float32 ABCD R kg
IR 10000 int64 ABCD R kWh ×0.001 Raw value in Wh, varh or VAh
IR 10004 int64 ABCD R kWh ×0.001 Raw value in Wh, varh or VAh
IR 10008 int64 ABCD R kvarh ×0.001 Raw value in Wh, varh or VAh
IR 10012 int64 ABCD R kvarh ×0.001 Raw value in Wh, varh or VAh
IR 10016 int64 ABCD R kVAh ×0.001 Raw value in Wh, varh or VAh
IR 10020 int64 ABCD R kWh ×0.001 Raw value in Wh, varh or VAh
IR 10024 int64 ABCD R kvarh ×0.001 Raw value in Wh, varh or VAh
IR 10250 int32 ABCD R V ×0.1
IR 10256 int32 ABCD R A ×0.001
IR 10262 int32 ABCD R W ×0.1
IR 10268 int32 ABCD R VA ×0.1
IR 10274 int32 ABCD R var ×0.1
IR 10280 int32 ABCD R ×0.01
IR 10308 int32 ABCD R Hz ×0.01
IR 10310 int64 ABCD R kg ×0.001
HR 2 float32 ABCD RW min 0 to 60 minutes, default 60. 0 makes demand show the present value and max demand the maximum since the last reset
HR 12 float32 ABCD RW ms 60, 100 or 200 ms, default 60
HR 18 float32 ABCD RW 0 = no parity, 1 stop bit; 1 = even, 1 stop (the register table calls this the default; the specification says parity none); 2 = odd, 1 stop; 3 = no parity, 2 stop. Takes effect after a restart
HR 20 float32 ABCD RW Modbus address 1 to 247, default 1
HR 22 float32 ABCD RW 0 = 0.001, 1 = 0.01, 2 = 0.1, 3 = 1 kWh per pulse
HR 28 float32 ABCD RW 0 = 2400, 1 = 4800, 2 = 9600 (default), 3 = 19200, 4 = 38400
HR 58 float32 ABCD RW s 0 to 255 s; 0 (default) = no automatic scrolling
HR 70 uint32 ABCD RW kg/kWh ×0.0001 0 to 60 kg per kWh, default 0.5703
HR 86 float32 ABCD RW 1 = import active, 2 = total active (import + export), 4 = export active (default), 5 = import reactive, 6 = total reactive, 8 = export reactive
HR 61456 uint16 W The manual documents writes with FC16; Modbench writes a single register with FC06, which the meter may reject
HR 63744 uint16 RW BCD, 0 to 30 s (0x0030 = 30 s); 0 = no automatic scrolling. The manual documents writes with FC16; Modbench writes a single register with FC06, which the meter may reject
HR 63760 uint16 RW The manual documents writes with FC16; Modbench writes a single register with FC06, which the meter may reject
HR 63776 uint16 RW Default 2. The manual documents writes with FC16; Modbench writes a single register with FC06, which the meter may reject
HR 64512 uint32 ABCD R
HR 64514 uint16 R 0020h
HR 64644 uint16 bits 8–15 R
HR 64644 uint16 bits 0–7 R

Help improve this map