Eastron SDM120-Modbus Modbus register map
Single phase DIN rail energy meter with an RS485 Modbus RTU port. It reports voltage, current, power, power factor, frequency, import and export energy and power demand.
- Protocol
- Modbus RTU
- Defaults
- Per the protocol document: node address 1 and 2400 baud with no parity and one stop bit. Address range 1 to 247.
- Addresses in the manual
- Modicon style numbers (for example 40001 is holding register 0)
- 32 and 64-bit values
- High word first (AB CD)
- Registers listed
- 32
- Checked against
- Eastron SDM120Modbus Smart Meter Modbus Protocol Implementation V2.4
Address base. The register tables print 5-digit Modicon style numbers (30001, 40013) with the matching hex start address for the wire, for example 30001 is 0x0000 and 30007 is 0x0006; the example read request on p. 3 starts at address 0 for the first input value. The 6-digit holding numbers map to wire addresses such as 0xF900 and 0xFC00. For example 30001 in the manual (Line to neutral voltage) is address 0 on the wire.
Word order. Values are 32-bit IEEE 754 floats held in two registers. The example response on p. 3 returns 230.2 V as bytes 43 66 33 34, so the high word comes first.
Modbus Poll and the Modbus protocol itself count from 0. The "Wire address" column is the number to type into Modbus Poll.
Downloads
The register table has every column on this page. The blocks file imports into Modbus Poll. The template JSON holds the same blocks plus unit, scale and access for scripts.
Registers
| Manual | Wire | Register | Type | Regs | Unit | Scale | Access | Area |
|---|---|---|---|---|---|---|---|---|
| 30001 | 0 | Line to neutral voltageVoltage |
float32 | 2 | V | 1 | R | Input (FC04) |
| 30007 | 6 | CurrentCurrent |
float32 | 2 | A | 1 | R | Input (FC04) |
| 30013 | 12 | Active powerActivePower |
float32 | 2 | W | 1 | R | Input (FC04) |
| 30019 | 18 | Apparent powerApparentPower |
float32 | 2 | VA | 1 | R | Input (FC04) |
| 30025 | 24 | Reactive powerReactivePower |
float32 | 2 | VAr | 1 | R | Input (FC04) |
| 30031 | 30 | Power factorPowerFactor |
float32 | 2 | 1 | R | Input (FC04) | |
| 30071 | 70 | Supply frequencyFrequency |
float32 | 2 | Hz | 1 | R | Input (FC04) |
| 30073 | 72 | Imported active energyEnergyImport_kWh |
float32 | 2 | kWh | 1 | R | Input (FC04) |
| 30075 | 74 | Exported active energyEnergyExport_kWh |
float32 | 2 | kWh | 1 | R | Input (FC04) |
| 30077 | 76 | Imported reactive energyEnergyImport_kvarh |
float32 | 2 | kvarh | 1 | R | Input (FC04) |
| 30079 | 78 | Exported reactive energyEnergyExport_kvarh |
float32 | 2 | kvarh | 1 | R | Input (FC04) |
| 30085 | 84 | Total system power demandPowerDemand_Total |
float32 | 2 | W | 1 | R | Input (FC04) |
| 30087 | 86 | Maximum total system power demandPowerDemand_TotalMax |
float32 | 2 | W | 1 | R | Input (FC04) |
| 30089 | 88 | Import system power demandPowerDemand_Import |
float32 | 2 | W | 1 | R | Input (FC04) |
| 30091 | 90 | Maximum import system power demandPowerDemand_ImportMax |
float32 | 2 | W | 1 | R | Input (FC04) |
| 30093 | 92 | Export system power demandPowerDemand_Export |
float32 | 2 | W | 1 | R | Input (FC04) |
| 30095 | 94 | Maximum export system power demandPowerDemand_ExportMax |
float32 | 2 | W | 1 | R | Input (FC04) |
| 30259 | 258 | Current demandCurrentDemand |
float32 | 2 | A | 1 | R | Input (FC04) |
| 30265 | 264 | Maximum current demandCurrentDemandMax |
float32 | 2 | A | 1 | R | Input (FC04) |
| 30343 | 342 | Total active energyEnergyTotal_kWh · Meaning depends on the measurement mode setting at 463777. |
float32 | 2 | kWh | 1 | R | Input (FC04) |
| 30345 | 344 | Total reactive energyEnergyTotal_kvarh |
float32 | 2 | kvarh | 1 | R | Input (FC04) |
| 40013 | 12 | Pulse output on-timeRelayPulseWidth · 60, 100 or 200, default 100. |
float32 | 2 | ms | 1 | RW | Holding (FC03) |
| 40019 | 18 | Serial parity and stop bitsNetworkParityStop · 0 = no parity, 1 stop bit (default); 1 = even parity; 2 = odd parity; 3 = no parity, 2 stop bits. Needs a restart. |
float32 | 2 | 1 | RW | Holding (FC03) | |
| 40021 | 20 | Modbus node addressMeterID · 1 to 247, default 1. |
float32 | 2 | 1 | RW | Holding (FC03) | |
| 40029 | 28 | Serial baud rate indexNetworkBaud · 0 = 2400 (default), 1 = 4800, 2 = 9600, 5 = 1200. |
float32 | 2 | 1 | RW | Holding (FC03) | |
| 40087 | 86 | Pulse output 1 energy sourcePulse1OutputMode · 1 import active, 2 import plus export active, 4 export active (default), 5 import reactive, 6 import plus export reactive, 8 export reactive. |
float32 | 2 | 1 | RW | Holding (FC03) | |
| 463745 | 63744 | Display scroll timeScrollTime · 0 to 30 seconds, 0 means no automatic scrolling. Wire address 0xF900. |
uint16 | 1 | s | 1 | RW | Holding (FC03) |
| 463761 | 63760 | Pulse output energy per pulse indexPulse1Constant · 0 = 0.001 (default), 1 = 0.01, 2 = 0.1, 3 = 1 kWh per pulse. Wire address 0xF910. |
uint16 | 1 | 1 | RW | Holding (FC03) | |
| 463777 | 63776 | Measurement modeMeasurementMode · 1 = total is import, 2 = total is import plus export (default), 3 = total is import minus export. Wire address 0xF920. |
uint16 | 1 | 1 | RW | Holding (FC03) | |
| 464513 | 64512 | Meter serial numberSerialNumber · Unsigned 32-bit, read only. Wire address 0xFC00. |
uint32 | 2 | 1 | R | Holding (FC03) | |
| 464515 | 64514 | Meter codeMeterCode · Read only, hex format. The manual gives the value as 00 20. Wire address 0xFC02. |
uint16 | 1 | 1 | R | Holding (FC03) | |
| 464516 | 64515 | Firmware versionSoftwareVersion · Read only, hex format. Wire address 0xFC03. |
uint16 | 1 | 1 | R | Holding (FC03) |
Scale is the number to multiply the raw value by to get the unit. Types with more than one register (32 and 64-bit) follow the word order above.
Open in Modbus Poll
- Download the Modbus Poll blocks file.
- Open Modbus Poll, connect to the device and set its unit ID. In Modbus Poll set Word order to AB CD.
- In the blocks panel on the right, click Import CSV and pick the file. CSV import is a Pro feature. Without Pro, Modbus Poll polls the first 20 values of your blocks.
- The wire addresses are already in the file, so there is no 0-based or 1-based conversion to do.
Once the values look right, export the tag list to Ignition, Kepware, Node-RED, Home Assistant or Voltrus SCADA.
Source and accuracy
Manufacturer document: Eastron SDM120-Modbus Smart Meter Modbus Protocol (www.eastroneurope.com)
Eastron SDM120Modbus Smart Meter Modbus Protocol Implementation V2.4, pp. 3-8. Read on 2026-10-24.
Also used: Eastron Europe SDM120 product page (www.eastroneurope.com)
Addresses, types, units and scale are taken from the document above. Names and descriptions are written by Voltrus. Firmware versions can differ, so confirm a value on your own device before you rely on it.
Found a mistake? Report it by email with the register address and the manual page.