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.
| Role | Register | Address | Type | Values |
|---|---|---|---|---|
| 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
- Eastron SDM120-M User Manual · version V1.0 Modbus register map
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.
| Area | Address | Name | Type | Access | Unit | Scale | Description |
|---|---|---|---|---|---|---|---|
| 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 |
No registers match
Try part of the name, an address (decimal or 0x hex) or clear the filters.
Help improve this map
- I tested it on a deviceReport whether it worked, even if you did not write the map.
- Suggest a correctionEdit the file on GitHub; it opens a pull request.
- Report a problemA wrong address, type, scale or byte order.
- Read the formatWhat each key of the file means (SPEC.md).