Eastern SDM230/120 Modbus Help Please

Hello all.

It’s been a long time coming but eventually I had my new CU commissioned yesterday ready for a SolarPV and battery install, and configured for AC and “EPS” mode with a local earth rod for EPS!.

I’ve also got 1x SDM230 and 2x SDM120 which will provide energy info, via Modbus and the “Industrial Modbus RS485 to USB Adaptor” from the OEM shop, to emonCMS.


I have live and working SDM120/230s in the board. I’ve tried a run of “A & B” and “A & B & G” cables (both repurposed CAT6 and self-made 3core, and both with or without 120Ohm terminal resistor) and there is no Rx/Tx light activity on the hardware.

I’ve checked continuity of the cables at each termination point, and I have continuity.

I’ve checked (a thousand times) the A to A, B to B and G to G configurations. I’ve even swapped them round just in case.

I’ve removed all the Eastrons, and left just one SDM230 connected to the USB converter.

But NOTHING. No Tx/Rx light activity. And before you ask, the USB “Power” light is lit and it’s plugged into a Pi with emonSD

I’ve checked the baud (9600) and parity (n) alignment between my emonCMS config and the SDM230, and set the SDM230 ID/Address as 010.

And to be clear, this is before I even start using emonCMS - this is purely at the hardware level.

I’d be really most grateful if someone who has implemented energy meters with Modbus RTU connecting to the USB dongle can advise if there’s anything special I need to do so that the energy meters are recognised.

Thanks in advance.

Here’s an extract from the log:

2023-03-03 14:52:00,033 ERROR    SDM230     Not connected to modbus device
2023-03-03 14:52:00,034 INFO     SDM230     Connecting to Modbus device=/dev/ttyUSB0 baud=9600 parity=none datatype=float
2023-03-03 14:52:00,035 ERROR    SDM230     Could not connect to Modbus device

Here’s an extract from what I’d prepared in the “Interfacers” section of the emonCMS config:

    Type = EmonHubMinimalModbusInterfacer
        device = /dev/ttyUSB0
        baud = 9600
        pubchannels = ToEmonCMS,
        read_interval = 10
        nodename = sdm230
        # prefix = sdm_
                address = 010
                registers = 0,6,12,18,30,70,72,74,76
                names = V,I,P,VA,PF,FR,EI,EE,RI
                precision = 2,3,1,1,3,3,3,3,3
                address = 011
                registers = 0,6,12,18,30,70,72,74,76
                names = V,I,P,VA,PF,FR,EI,EE,RI
                precision = 2,3,1,1,3,3,3,3,3

[edited by MOD - formatting]
Please use Ctl-E for log/bash output etc.

Hello Roland,

Going on the premise assume nothing until it’s verified…

Are your meter addresses actually set to 10 and 11?
i.e. did you change them from the “factory defaults?”

1 Like