meta data for this page
LamaPLC: Eastron SDM 630 Energy Meter with Modbus communication
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:
| Parameter | Specification |
|---|---|
| Nominal Voltage (Un) | 3×230/400 V AC |
| Maximum Current (Imax) | 100 A (direct measurement) |
| Accuracy Class | Class 1 (IEC 62053-21) / Class B (EN50470-3) |
| Frequency Range | 50 or 60 Hz |
| Communication | RS485 Modbus RTU, two pulsed outputs |
| Display | Backlit LCD |
| Mounting | 35mm DIN rail |
| Protection Degree | IP51 (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
| Feature | SDM630 V1 | SDM630 V2 | SDM630 V3 |
|---|---|---|---|
| Energy Calculation | Basic Import/Export | Net-counting (Total = Import - Export) | Net-counting, often with separate registers |
| Resettable Energy | Limited options | Includes second resettable total energy counter | Same as V2, possibly enhanced options |
| Firmware Date | Older builds | Typically prior to 2022 | Typically 2022 or later |
| Modbus Registers | Limited set | More extensive, with added registers | Largely consistent with V2 core registers |
| Certifications | Standard | Standard, and MID options | Standard 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
32-bit (2 words) input registers
The registers are read-only.
| Register Nr | 32 bit address | Description | Unit |
|---|---|---|---|
| 30001 | 1 | Phase 1 line to neutral volts | Volts |
| 30003 | 2 | Phase 2 line to neutral volts | Volts |
| 30005 | 3 | Phase 3 line to neutral volts | Volts |
| 30007 | 4 | Phase 1 current | Amps |
| 30009 | 5 | Phase 2 current | Amps |
| 30011 | 6 | Phase 3 current | Amps |
| 30013 | 7 | Phase 1 power | Watts |
| 30015 | 8 | Phase 2 power | Watts |
| 30017 | 9 | Phase 3 power | Watts |
| 30019 | 10 | Phase 1 volt amps | VA |
| 30021 | 11 | Phase 2 volt amps | VA |
| 30023 | 12 | Phase 3 volt amps | VA |
| 30025 | 13 | Phase 1 volt amps reactive | VAr |
| 30027 | 14 | Phase 2 volt amps reactive | VAr |
| 30029 | 15 | Phase 3 volt amps reactive | VAr |
| 30031 | 16 | Phase 1 power factor (1) | VAr |
| 30033 | 17 | Phase 2 power factor (1) | VAr |
| 30035 | 18 | Phase 3 power factor (1) | VAr |
| 30037 | 19 | Phase 1 phase angle | Degrees |
| 30039 | 20 | Phase 2 phase angle | Degrees |
| 30041 | 21 | Phase 3 phase angle | Degrees |
| 30043 | 22 | Average line to neutral volts | Volts |
| 30047 | 24 | Average line current | Amps |
| 30049 | 25 | Sum of line currents | Amps |
| 30053 | 27 | Total system power | Watts |
| 30057 | 29 | Total system volt amps | VA |
| 30061 | 31 | Total system VAr | VAr |
| 30063 | 32 | Total system power factor (1) | - |
| 30067 | 34 | Total system phase angle | Degrees |
| 30071 | 36 | Frequency of supply voltages | Hz |
| 30073 | 37 | Total Import kWh | kWh |
| 30075 | 38 | Total Export kWh | kWh |
| 30077 | 39 | Total Import kVArh | kVArh |
| 30079 | 40 | Total Export kVArh | kVArh |
| 30081 | 41 | Total VAh | kVAh |
| 30083 | 42 | Ah | Ah |
| 30085 | 43 | Total system power demand (2) | W |
| 30087 | 44 | Maximum total system power demand (2) | VA |
| 30101 | 51 | Total system VA demand | VA |
| 30103 | 52 | Maximum total system VA demand | VA |
| 30105 | 53 | Neutral current demand | Amps |
| 30107 | 54 | Maximum neutral current demand | Amps |
| 30201 | 101 | Line 1 to Line 2 volts | Volts |
| 30203 | 102 | Line 2 to Line 3 volts | Volts |
| 30205 | 103 | Line 3 to Line 1 volts | Volts |
| 30207 | 104 | Average line to line volts | Volts |
| 30225 | 113 | Neutral current | Amps |
| 30235 | 118 | Phase 1 L/N volts THD | % |
| 30237 | 119 | Phase 2 L/N volts THD | % |
| 30239 | 120 | Phase 3 L/N volts THD | % |
| 30241 | 121 | Phase 1 Current THD | % |
| 30243 | 122 | Phase 2 Current THD | % |
| 30245 | 123 | Phase 3 Current THD | % |
| 30249 | 125 | Average line to neutral volts THD | % |
| 30251 | 126 | Average line current THD | % |
| 30255 | 128 | Total system power factor (5) | Degrees |
| 30259 | 130 | Phase 1 current demand | Amps |
| 30261 | 131 | Phase 2 current demand | Amps |
| 30263 | 132 | Phase 3 current demand | Amps |
| 30265 | 133 | Maximum phase 1 current demand | Amps |
| 30267 | 134 | Maximum phase 2 current demand | Amps |
| 30269 | 135 | Maximum phase 3 current demand | Amps |
| 30335 | 168 | Line 1 to line 2 volts THD | % |
| 30337 | 169 | Line 2 to line 3 volts THD | % |
| 30339 | 170 | Line 3 to line 1 volts THD | % |
| 30341 | 171 | Average line to line volts THD | % |
| 30343 | 172 | Total kwh | kwh |
| 30345 | 173 | Total kvarh | kvarh |
| 30347 | 174 | L1 import kwh | kwh |
| 30349 | 175 | L2 import kwh | kwh |
| 30351 | 176 | L3 import kwh | kwh |
| 30353 | 177 | L1 export kwh | kwh |
| 30355 | 178 | L2 export kwh | kwh |
| 30357 | 179 | L3 export kwh | kwh |
| 30359 | 180 | L1 total kwh | kwh |
| 30361 | 181 | L2 total kwh | kwh |
| 30363 | 182 | L3 total kwh | kwh |
| 30365 | 183 | L1 import kvarh | kvarh |
| 30367 | 184 | L2 import kvarh | kvarh |
| 30369 | 185 | L3 import kvarh | kvarh |
| 30371 | 186 | L1 export kvarh | kvarh |
| 30373 | 187 | L2 export kvarh | kvarh |
| 30375 | 188 | L3 export kvarh | kvarh |
| 30377 | 189 | L1 total kvarh | kvarh |
| 30379 | 190 | L2 total kvarh | kvarh |
| 30381 | 191 | L3 total kvarh | kvarh |
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.
32-bit (2 words) holding registers
The registers are read/write.
| Address register | Parameter number | Parameter | Valid range | type | mode |
|---|---|---|---|---|---|
| 40003 | 2 | Demand period | Write 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: Float | rw |
| 40011 | 6 | System type | Write system type: 3p4w = 3, 3p3w = 2 & 1p2w= 1 Requires password, see parameter 13 | Length : 4 byte, Data Format : Float | rw |
| 40013 | 7 | Pulse 1 width | Write pulse1 on period in milliseconds: 60, 100, or 200, default 100. | Length: 4 byte, Data Format: Float | r |
| 40015 | 8 | Password lock | Write 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: Float | r |
| 40019 | 10 | Network Parity Stop | Write 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 : Float | rw |
| 40021 | 11 | Network Node | Write the network port node address: 1 to 247 for MODBUS Protocol, default 1. Requires a restart to become effective. | Length : 4 byte, Data Format : Float | rw |
| 40023 | 12 | Pulse1 Divisor1 | Write 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 : Float | rw |
| 40025 | 13 | Password | Write password for access to protected registers. Default: 0000 | Length: 4 byte, Data Format: Float | rw |
| 40029 | 15 | Network Baud Rate | Write 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: Float | rw |
| 40087 | 44 | Pulse 1 Energy Type | Write 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 : Float | rw |
| 461457 | 30729 | reset | 00 00 :reset the Maximum demand | Length : 2 byte, Data Format : Hex | w |
Readable Blocks in Modbus
| Nr. of block | Start address | number of registers |
|---|---|---|
| 1 | 3000 | 100 |
| 2 | 3100 | 8 |
| 3 | 3200 | 70 |
| 4 | 3300 | 82 |
| 5 | 4000 | 100 |
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: 2, Until now: 36