LamaPLC: Eastron SDM 630 Energy Meter with Modbus communication

Eastron SDM 630 Energy Meter The Eastron SDM630 is a series of three-phase, multifunctional DIN-rail-mounted energy meters used to measure and monitor electrical parameters in industrial, commercial, and residential applications. It is known for its high accuracy, compact design, and communication interfaces.

Key Features

  • Multifunctional Measurement: The meter measures a wide range of parameters, including active energy (kWh), reactive energy (kVArh), active power (W), apparent power (VA), voltage (V), current (A), power factor (PF), frequency (Hz), and total harmonic distortion (THD) for all phases.
  • Direct Connection: Most models support direct connection for loads up to 100 A, eliminating the need for external current transformers (CTs) for many applications. Other variants, such as the SDM630MCT, are designed to operate with external CTs for higher-current applications.
  • Communication: It features built-in interfaces, including RS485 Modbus RTU and dual pulse outputs, for remote monitoring and integration into Building Management Systems (BMS), energy management systems, or solar inverters (e.g., Deye, Growatt).
  • Display and Usability: The meter has a clear, backlit LCD and user-friendly, password-protected menu navigation via touch-sensitive buttons on the front panel.
  • Certification: Many models, such as the SDM630-Modbus-MID V2, are MID-certified, making them suitable for legally compliant billing.
  • Versatility: It is compatible with single-phase two-wire, three-phase three-wire, and three-phase four-wire network configurations.

Technical Specifications

According to Eastron Europe datasheets and user manuals, the specifications for the standard SDM630 models are as follows:

ParameterSpecification
Nominal Voltage (Un)3×230/400 V AC
Maximum Current (Imax)100 A (direct measurement)
Accuracy ClassClass 1 (IEC 62053-21) / Class B (EN50470-3)
Frequency Range50 or 60 Hz
CommunicationRS485 Modbus RTU, two pulsed outputs
DisplayBacklit LCD
Mounting35mm DIN rail
Protection DegreeIP51 (indoor use)
Operating Temperature-25°C to +55°C

Eastron SDM630 Version V1, V2, and V3

The primary difference among the Eastron SDM630 V1, V2, and V3 versions lies in the firmware and specific energy calculation methods, particularly how the meters handle imported and exported energy.

Key Differences Summary

  • V1 (Legacy): The initial version with basic functionality and limited register addresses. It is supported only by certain software configurations at baud rates of 9600 or higher.
  • V2 (Standard/Net-Counting): Introduced “net-counting” calculation, meaning the total energy measurement combines (Import minus Export) values. It added features such as a second resettable total energy counter and had slightly different default Modbus settings and options in its menus.
  • V3 (Enhanced Functionality/MID): The latest version is often certified for commercial billing (MID certification). Functionally, it is very similar to V2 but ensures compliance with newer standards, includes updated firmware (typically post-2022 build dates), and may have slightly different default configurations in some supplier-specific models.

Detailed Comparison Points

FeatureSDM630 V1SDM630 V2SDM630 V3
Energy CalculationBasic Import/ExportNet-counting (Total = Import - Export)Net-counting, often with separate registers
Resettable EnergyLimited optionsIncludes second resettable total energy counterSame as V2, possibly enhanced options
Firmware DateOlder buildsTypically prior to 2022Typically 2022 or later
Modbus RegistersLimited setMore extensive, with added registersLargely consistent with V2 core registers
CertificationsStandardStandard, and MID optionsStandard and MID options, focus on recent compliance

Modbus Protocol Consistency

Crucially, the core Modbus register addresses for real-time measurements (voltage, current, power, frequency) are largely identical across all versions. The main differences users encounter typically relate to the interpretation of the total energy registers and minor menu/configuration variations.

The default Modbus communication settings (Address 1, 9600 baud, 8N1) are generally consistent across all three versions, though supplier customizations exist.

Modbus communication

Read Limits: Do not attempt to read more than 40 parameters (80 registers) in a single Modbus request to avoid exception errors.

RS485 communication interface, MODBUS RTU protocol:

  • Baudrate: 9600 Baud (default, can be set)
  • Parity: Even
  • Databits: 8
  • Stopbits: 1
  • Default slave ID: 1 (SMD72D), 45 (SDM72CTM)
  • Number of Drivers and Receivers: 32 Drivers, 32 Receivers (without repeater)
  • Maximum Cable Length: 1200 m
  • Maximum Data Rate: 10 Mbaud
  • Maximum Common Mode Voltage: 12 V .. –7 V
  • Minimum Driver Output Levels (Loaded): +/– 1.5 V
  • Minimum Driver Output Levels (Unloaded): +/– 6 V
  • Drive Load: Minimum 60 ohms
  • Driver Output Short Circuit Current Limit: 150 mA to Gnd, 250 mA to 12 V, 250 mA to -7 V
  • Minimum Receiver Input Resistance: 12 kΩ
  • Receiver Sensitivity: +/- 200 mV

Convert word array to real array

The Input registers are in a word format and must be converted into real numbers in pairs. This conversion involves straightforward bit-level merging, which can be implemented in LabView, for example, as shown below:

Convert word array (input registers) to real array in labView

32-bit (2 words) input registers

The registers are read-only. All values are 4-byte IEEE 754 float type.

Register Nr32 bit addressDescriptionUnitType
300011Phase 1 line to neutral voltsVoltsSDM630, SDM230
300032Phase 2 line to neutral voltsVolts
300053Phase 3 line to neutral voltsVolts
300074Phase 1 currentAmpsSDM630, SDM230
300095Phase 2 currentAmpsSDM630
300116Phase 3 currentAmpsSDM630
300137Active Power Phase 1WattsSDM630, SDM230
300158Active Power Phase 2WattsSDM630
300179Active Power Phase 3WattsSDM630
3001910Apparent power Phase 1VASDM630, SDM230
3002111Apparent power Phase 2VASDM630
3002312Apparent power Phase 3VASDM630
3002513Phase 1 volt amps reactiveVArSDM630, SDM230
3002714Phase 2 volt amps reactiveVArSDM630
3002915Phase 3 volt amps reactiveVArSDM630
3003116Reactive power Phase 1
(pos: forward current, neg: reverse current)
-SDM630, SDM230
3003317Reactive power Phase 2
(pos: forward current, neg: reverse current)
-SDM630
3003518Reactive power Phase 3
(pos: forward current, neg: reverse current)
-SDM630
3003719Phase 1 phase angleDegreesSDM630, SDM230
3003920Phase 2 phase angleDegreesSDM630
3004121Phase 3 phase angleDegreesSDM630
3004322Average line to neutral voltsVoltsSDM630
3004724Average line currentAmpsSDM630
3004925Sum of line currentsAmpsSDM630
3005327Total system powerWattsSDM630
3005729Total system volt ampsVASDM630
3006131Total system power factorVArSDM630
3006332Total system power factor
(pos: forward current, neg: reverse current)
-SDM630
3006734Total system phase angleDegreesSDM630
3007136Frequency of supply voltagesHzSDM630, SDM230
3007337Total Import EnergykWhSDM630, SDM230
3007538Total Export EnergykWhSDM630, SDM230
3007739Total Import Reactive EnergykVArhSDM630, SDM230
3007940Total Export Reactive EnergykVArhSDM630, SDM230
3008141Total PowerkVAhSDM630
3008342Current HourAhSDM630
3008543Total system power demand
(power sum demand calculation is for import – export)
WSDM630, SDM230
3008744Maximum total system power demand
(power sum demand calculation is for import – export)
VASDM630, SDM230
3008945Current system positive power demandWSDM630, SDM230
3009146Maximum system positive power demandWSDM630, SDM230
3009347Current system reverse power demandWSDM630, SDM230
3009548Maximum system reverse power demandWSDM630, SDM230
3010151Total system VA demandVASDM630
3010352Maximum total system VA demandVASDM630
3010553Neutral current demandAmpsSDM630
3010754Maximum neutral current demandAmpsSDM630
30201101Line 1 to Line 2 voltsVoltsSDM630
30203102Line 2 to Line 3 voltsVoltsSDM630
30205103Line 3 to Line 1 voltsVoltsSDM630
30207104Average line to line voltsVoltsSDM630
30225113Neutral currentAmpsSDM630
30235118Phase 1 L/N volts THD%SDM630
30237119Phase 2 L/N volts THD%SDM630
30239120Phase 3 L/N volts THD%SDM630
30241121Phase 1 Current THD%SDM630
30243122Phase 2 Current THD%SDM630
30245123Phase 3 Current THD%SDM630
30249125Average line to neutral volts THD%SDM630
30251126Average line current THD%SDM630
30259130Phase 1 current demandAmpsSDM630, SDM230
30261131Phase 2 current demandAmpsSDM630
30263132Phase 3 current demandAmpsSDM630
30265133Maximum phase 1 current demandAmpsSDM630, SDM230
30267134Maximum phase 2 current demandAmpsSDM630
30269135Maximum phase 3 current demandAmpsSDM630
30335168Line 1 to line 2 volts THD%SDM630
30337169Line 2 to line 3 volts THD%SDM630
30339170Line 3 to line 1 volts THD%SDM630
30341171Average line to line volts THD%SDM630
30343172Total active energy
(total kWh / kVarh equals Import + export)
kWhSDM630, SDM230
30345173Total reactive energy
(total kWh / kVarh equals Import + export)
kvarhSDM630, SDM230
30347174L1 import active energykWhSDM630
30349175L2 import active energykWhSDM630
30351176L3 import active energykWhSDM630
30353177L1 export active energykWhSDM630
30355178L2 export active energykWhSDM630
30357179L3 export active energykwhSDM630
30359180L1 total active energy
(total kWh / kVarh equals Import + export)
kwhSDM630
30361181L2 total active energy
(total kWh / kVarh equals Import + export)
kwhSDM630
30363182L3 total active energy
(total kWh / kVarh equals Import + export)
kwhSDM630
30365183L1 import reactive energykvarhSDM630
30367184L2 import reactive energykvarhSDM630
30369185L3 import reactive energykvarhSDM630
30371186L1 export reactive energykvarhSDM630
30373187L2 export reactive energykvarhSDM630
30375188L3 export reactive energykvarhSDM630
30377189L1 total reactive energy
(total kWh / kVarh equals Import + export)
kvarhSDM630
30379190L2 total reactive energy
(total kWh / kVarh equals Import + export)
kvarhSDM630
30381191L3 total reactive energy
(total kWh / kVarh equals Import + export)
kvarhSDM630
30385193Current resettable total active energykWhSDM630, SDM230
30387194Current resettable total reactive energykvarhSDM630, SDM230

Source: https://www.eastroneurope.com/images/uploads/products/protocol/SDM630_MODBUS_Protocol.pdf

SDM630/SDM230 Modbus Import registers in .csv file-format

If you'd like to support the development of the site with the price of a coffee — or a few — please do so here.

Here's a handy tip: you can quickly save this page as a PDF by clicking “export to PDF” in the menu on the right side of the screen.

2026/02/14 23:38

32-bit (2 words) holding registers

The registers are read/write.

Address registerParameter numberParameterValid rangetypemode
400032Demand periodWrite demand period: 0, 5,8, 10, 15, 20, 30, or 60 minutes, default 60. Setting the period to 0 will cause the demand to show the current parameter value, and demand max to show the maximum parameter value since the last demand reset.Length: 4 byte, Data Format: Floatrw
400116System typeWrite system type: 3p4w = 3, 3p3w = 2 & 1p2w= 1 Requires password, see parameter 13Length : 4 byte, Data Format : Floatrw
400137Pulse 1 widthWrite pulse1 on period in milliseconds: 60, 100, or 200, default 100.Length: 4 byte, Data Format: Floatr
400158Password lockWrite any value to password lock-protected registers. Read password lock status: 0 = locked. 1 = unlocked. Reading will also reset the password timeout back to one minute.Length: 4 byte, Data Format: Floatr
4001910Network Parity StopWrite the network port parity/stop bits for MODBUS Protocol, where: 0 = One stop bit and no parity, default. 1 = One stop bit and even parity. 2 = One stop bit and odd parity.3 = Two stop bits and no parity.Requires a restart to become effective.Length : 4 byte, Data Format : Floatrw
4002111Network NodeWrite the network port node address: 1 to 247 for MODBUS Protocol, default 1. Requires a restart to become effective.Length : 4 byte, Data Format : Floatrw
4002312Pulse1 Divisor1Write pulse divisor index: n = 0 to 5
0: 0.0025 kWh(kVArh)/imp
1: 0.01 kWh(kVArh)/imp
2: 0.1 kWh(kVArh)/imp
3: 1 kWh(kVArh)/imp
4: 10 kWh(kVArh)/imp
5: 100 kWh(kVArh)/imp
Length : 4 byte, Data Format : Floatrw
4002513PasswordWrite password for access to protected registers. Default: 0000Length: 4 byte, Data Format: Floatrw
4002915Network Baud RateWrite the network port baud rate for MODBUS Protocol, where:
0: 2400 baud
1: 4800 baud
2: 9600 baud, default
3: 19200 baud
4: 38400 baud
Requires a restart to become effective
Length: 4 byte, Data Format: Floatrw
4008744Pulse 1 Energy TypeWrite MODBUS Protocol input parameter for pulse output 1:
1: import active energy
2: total active energy
4: export active energy, default
5: import reactive energy
6: total reactive energy
8: export reactive energy
Length : 4 byte, Data Format : Floatrw
46145730729reset00 00 :reset the Maximum demandLength : 2 byte, Data Format : Hexw
2026/06/05 15:50

Arduino & Eastron SDM 630

The Eastron SDM630 communicates via Modbus RTU over an RS-485 interface, requiring an RS-485 converter module and a dedicated library to read data on an Arduino. The SDM_Energy_Meter library simplifies this process.

Hardware Required

  • Arduino Board: Any compatible board (Uno, Nano, Mega, ESP32).
  • RS485 to TTL Converter: A module using chips like MAX485, MAX3485, or SN75176 to convert RS485 signals to Arduino's 5V/3.3V logic levels. These typically have Data Enable (DE) and Receive Enable (RE) pins that need to be controlled by the Arduino.
  • Eastron SDM630: Configured with default settings: Modbus address 1, baud rate 9600, 8 data bits, no parity, 1 stop bit (8N1).

Wiring Schematic (MAX485 Module)

  • MAX485 VCC → Arduino 5V
  • MAX485 GND → Arduino GND
  • MAX485 DI (Driver Input) → Arduino Pin 4 (TX for SoftwareSerial)
  • MAX485 RO (Receiver Output) → Arduino Pin 3 (RX for SoftwareSerial)
  • MAX485 DE (Driver Enable) → Arduino Pin 2 (Control pin)
  • MAX485 RE (Receiver Enable) → Arduino Pin 2 (Connect DE and RE together as you only need one-way communication at a time)
  • MAX485 A (RS485+ / Data+) → SDM630 A terminal
  • MAX485 B (RS485- / Data-) → SDM630 B terminal

Arduino Example Code

This example uses the SDM_Energy_Meter library by reaper7 and the standard SoftwareSerial library.

#include <SoftwareSerial.h>
#include <SDM.h>
 
// Pins for the SoftwareSerial communication
// RX pin: 3, TX pin: 4
SoftwareSerial sdmSerial(3, 4); 
 
// Pin 2 is used to control the DE/RE pins of the MAX485 converter
#define RS485_EN    2 
 
// Create an SDM object (SoftwareSerial instance, Enable Pin)
SDM sdm(&sdmSerial, RS485_EN);
 
void setup() {
  Serial.begin(115200);   // Serial monitor output
  sdmSerial.begin(9600);  // SDM630 default baud rate
 
  Serial.println("\nEastron SDM630 Reader");
}
 
void loop() {
  // Read Voltage (Register 0x0000)
  float voltage = sdm.readVal(SDM_PHASE_1_VOLTAGE);
  if (!isnan(voltage)) {
    Serial.print("Voltage L1: ");
    Serial.print(voltage);
    Serial.println(" V");
  } else {
    Serial.println("Failed to read Voltage");
  }
 
  // Read Total System Power (Register 0x0034 or 0x0052 depending on V1/V2/V3 meter version)
  // Check documentation for the specific register address
  float power = sdm.readVal(SDM_TOTAL_SYSTEM_POWER); 
  if (!isnan(power)) {
    Serial.print("Total Power: ");
    Serial.print(power);
    Serial.println(" W");
  } else {
    Serial.println("Failed to read Power");
  }
 
  // Read Total Import Energy (Register 0x0048 or 0x0072 depending on version)
  float energy = sdm.readVal(SDM_TOTAL_IMPORT_ENERGY);
  if (!isnan(energy)) {
    Serial.print("Import Energy: ");
    Serial.print(energy);
    Serial.println(" kWh");
  } else {
    Serial.println("Failed to read Energy");
  }
 
  delay(3000); // Wait 3 seconds before next read
}


This page has been accessed for: Today: 3, Until now: 3