Reading from a SDM120 meter using EmonHub

@TrystanLea, any chance that you’ll find time for a different approach?

I also include three scripts I wrote:

  • sdm120.txt (2.1 KB) : just to test one SDM120.
  • sdm120_daisychain_sleep.txt (2.3 KB);: to test multiple daisy chained modbus meters. It uses time.sleep to avoid a minimalmodbus.NoResponseError.
  • sdm120_daisychain_alt.txt (2.6 KB) : to test multiple daisy chained modbus meters. This alternative uses try-except to avoid a minimalmodbus.NoResponseError.

I don’t understand much of the inner workings of emonhub nor EmonHubMinimalModbusInterfacer.py, but I hope you can use the last script to enable daisy chaining for EmonHubMinimalModbusInterfacer.py.

At the moment you could already help me if EmonHubMinimalModbusInterfacer.py could allow the modbus address to be set in emonhub.conf, eg:

        device = /dev/ttyUSB0
        address = 2
        ...

It would make my steps at topic Reading modbus kWh meters using EmonHub (SDM120 and SDM630) a tad shorter :slight_smile: .