Skip to content

Bridge for GoodWe ET between evcc modbus protocol and native Wifi access

License

Notifications You must be signed in to change notification settings

thgau/goodwe_modbus

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

goodwe_modbus

Bridge for GoodWe ET/DT between EVCC modbus protocol and GoodWe WiFi access procotol If you have the new WIFI/Lan Dongle you dont need this for ET Hybrid Inverters, but for DT Inverters with the recent Firmware and WIFI/Lan Dongle this works.

Summary

I want to connect EVCC with my GoodWe inverter, but the GoodWe does not support the modbus protocol with its WiFi adapter.

The GoodWe inverter talks UDP on port 8899 as used by the smartphone app, and I can access it with the python library GoodWe.

So I created a small bridge which serves as modbus server and fetches the needed information from the GoodWe via the this library.

For the modbus protocol I use the library from pymodbus

Installation

Install goodwe pip install goodwe and the pymodbus pip install -U pymodbus (as described on their pages) To test, if the UDP port works, run the sample program as described in GoodWe

Download the goodwe_modbus.py from this repository and run phyton goodwe_modbus.py <ip-address of your goodwe>

Edit your evcc.yaml file and replace

  template: goodwe-hybrid
  modbus: tcpip
  host: <ip-address of the goodwe>
  port: 502

with

  template: goodwe-hybrid
  modbus: tcpip
  host: localhost
  port: 8899

If all works you can run the program as service. Download goodwe_modbus.service and adopt to your username and file location and store it as /etc/systemd/system/goodwe_modbus.service. Enable automatic start after reboot with sudo systemctl enable goodwe_modbus and immediate start with sudo systemctl start goodwe_modbus

Limitations

Currently only the few modbus registers needed by EVCC goodwe-hybrid.yaml are supported. To add more registers, look up the name in the GoodWe Spec and find the corresponding name in the GoodWe libarary. You will notice that the lists are very similar but not identical. Then add the missing register as Entry in goodwe_modbus.py

About

Bridge for GoodWe ET between evcc modbus protocol and native Wifi access

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published