[APP][Pro] Eastron - Advanced Energy Monitoring with DIN Rail Meters over Modbus TCP

Add support for Eastron SDM Energy Meters in Homey Pro.

After 15 years of Home Automation with Fibaro, I have (finally) switched to Homey Pro.

My main Energy Meter is an Eastron SDM630-Modbus for which I could not find a Homey app, so I built one. Next to an app to retrieve all data an Modbus TCP gateway is required. You can buy them at many places or built one like I did (see link to Github project).

It works perfectly with the Energy dashboard of Homey and now I can automate my EV charger to charge when my solar panels start to export energy to the grid.


Useful links

Disclaimer: I have no relationship or connection with the vendor, I am just a smart home nerd.


Usage

  1. Install this app on your Homey.
  2. Go to “add devices”, click next.
  3. Provide the IP-Address, Port and device ID. Click Connect.
  4. Available register information will show up

In Advanced Settings you can adjust the polling interval (5-300sec.) default is 20 sec.


Current features:

  • Support of Eastron SDM630, SDM72D Modbus 3phase and SDM120, SDM230 Din rail energy meter.

  • Reading of many registers to view Power, Voltage, Current, Frequency, etc. (see screenshots)

  • Additional funcionality: “Power exported per day”, “Power imported per day” and “Total Net Power usage”.

  • Compliant with Homey Energy Dashboard


Future development:

  • Support of other Eastron Modbus devices (let me know which one you have)

Supported Languages:

  • English / Dutch / German

Send me your feedback and or suggestions (in English or Dutch).

2 Likes

Nice work, Rob I will test these for u. in my setup, ok they will make doble intergrate the data, but for the test ik can be done.

But you say you never find a app to use the eastron’s, bu I use all ready for years the homewizard app for connect to my Eastron’s (5 in totals) 2 3fase’s and 3 1fase meter’s

1 Like

Thank you Johan, appreciate that.

Yes, I tried the HomeWizard app but got this message:

I do not want to go through an API, I could do a similar thing with the Growatt app (great app but connects to the Growatt cloud).

My app reads the Modbus registers directly (not going outside my network) which is fast and save.

Additionally I added extra functionality like “Power imported per day”, “Power Exported per day” and “Net Power usage” (Total exported - Total imported).

Please share your experience.

Wow! This is exactly what I was looking for. Nice work Rob!
I have a couple of SDM72D-M and SDM120M energy meters in my setup. If you would be able to add these as well that would be amazing.
I’m happy to help test these devices. :smile:

1 Like

Homewizard kWh (yes eastron label). Use their own firmware on it (hence the API). So those will never work with modbus.

1 Like

Hi @Kevin_Kolsters thanks for the compliments :grinning_face:

Yes, would be great to add those first, I will sent you a message when the app is ready for testing.

I do need your feedback as different meters use different registers (the core app supporting this), I can find the info but testing will confirm the correct implementation.

I have this meter to trigger my heatpump on solar panel energy over capacity.. I want to track kWh usage of my heatpump… And curious what data you provide… But… Now the meter is physically linked to my heatpump… What can I do to connect to homey

1 Like

Hi @Wout_van_den_Dool you can extend your Modbus with a cable and attach a Modbus to TCP gateway.
I build one myself (<10 Euro) ESP32 gateway, but you can buy any Modbus to TCP like this one:

https://www.waveshare.com/RS232-485-TO-ETH.htm![image|690x288](upload://tLPy1ksvrfvKC1DlffBZGzSNYmG.png)

Then with my Eastron app you can connect to the gateway and receive all available data points.

@Rob_Hagemann

All so with the API on it works over your own network, no internet or cloud needed.

With these Modbus meters you need again a secondary cabling with a gateway, for on one place handy, but on several places in the house (ceiling, swichboard, barn) you need all so more Modbus to tcp gateways.

@Jeroen_Tebbens

I bought the eastron Wifi years ago before HW started, and yes now they only sell in NL (Europe) only true HW.

Maybee now, but in the past standard Firmware from eastron, but now very bad to buy (only true HW in NL)

But see the spec’s from Eastron as OEM market : SDM230 Wifi | Eastron Europe and SDM630 Wifi | Eastron Europe

Eeeh what is expected from me here?

Only a remark to your message of that the HW (eastron) should have their own firmware.

Hi everyone,

I’m hoping someone here can help me with my setup.

I’m trying to get an Eastron SDM630 Modbus V2 working together with a USR-DR134 Modbus RTU to TCP gateway. Unfortunately I can’t get the communication working correctly between the SDM630 and the USR-DR134.

The TCP connection itself is working fine. Homey can connect to the USR-DR134 without any problems, so I’m quite sure the issue is not on the Homey or network side. My feeling is that something is going wrong in the Modbus RTU to Modbus TCP translation, or in the way the gateway communicates with the SDM630.

On both the SDM630 and the USR-DR134 the Modbus settings are the same: baud rate, stop bits, and parity are configured identically. I can see the RX on the TCP gateway incrementing, but the TX never seems to respond. As far as I know, the SDM630 firmware is still original.

Any help or advice would be greatly appreciated.

hi Steven, try parity setting ‘None’ and polling setting about 1 sec. (1000).

Thanks a lot for your time and suggestion. I changed the parity to “None” and set the polling to 1000 ms, but unfortunately it didn’t solve the issue. I also tried swapping the A and B wires on the SDM630, but still no luck.

One additional thing: when I set the work mode to Light Edge in the USR gateway, I do see activity on both RX and TX, but no data is received in Homey.

Do you have any idea what else could be causing this? When my SDM630 starts, it shows Soft 32 01.03 on the display, which seems to me the original firmware.

I have no experience with the USR-DR134, is the slave ID (client) correct?
Default is 1 for the SDM630 (I changed that to 2 as my Growatt inverter is also 1 and they are on the same bus).

Yes, both client IDs are set the same on the SDM630 and on the TCP gateway, but I still can’t get it to work.

Tomorrow I’ll test the gateway with one of my Growatt inverters. If that works, I’ll know the issue is with the Eastron meter.