Hi all,
I’ve been working on an app for the GoodWe ESA all-in-one home battery, and it’s now ready for a first round of testing. The existing GoodWe app works well for the ET inverters, but it doesn’t cover the ESA properly and offers no way to control the battery. So I built a dedicated one.
The app talks to the ESA directly over your own network, through the WiFi or LAN dongle. No cloud account, no SEMS portal and no delays. Homey finds the ESA by itself when you add it, and one pairing gives you three devices: the inverter, the battery and the GoodWe smart meter. All three are set up for Homey Energy, so solar production, battery charging and discharging, and grid import and export show up in the Energy tab without any extra work.
The part I care most about is control. Once you switch it on in the app settings, you can choose what the battery does: self-use, conserve (keep it full as a back-up reserve) or let Homey decide. In Homey mode, Homey Energy sets the charge or discharge power through the standard target power card. There are also Flow cards to charge from the grid, discharge, pause the battery, or hold grid import or export at a fixed power. Together with dynamic prices, that covers most of what you’d want to do.
Because a forced battery mode is not something you want to forget about, every command has a maximum duration. The app sets the battery back to automatic when that time is up, when the app restarts, when the connection to the ESA was lost, and when you switch control off. Control is off by default.
There’s also a dashboard widget that shows the energy flow between solar, home, battery and grid. The app posts to your timeline when the grid fails or comes back, when there’s a fault, and when Homey loses contact with the ESA.
What you need is a Homey Pro on firmware 12.13 or later, and a GoodWe ESA with a WiFi dongle (UDP port 8899) or LAN dongle (Modbus TCP port 502) on the same network. A fixed IP address for the dongle helps. On some firmware, Modbus has to be switched on in the SolarGo app first, sometimes through the installer menu.
This is a test version and I’d really like to hear how it behaves on your ESA. I’m especially interested in owners with the newer “work mode 3.0” firmware: does the battery follow the commands from Homey, and does pause stop only the battery or all power flow? If you post a diagnostic report or a screenshot of what you see, please mention your model and firmware version. You can find both in the device settings.
Credit where it’s due: the register knowledge builds on the open-source goodwe library by Marcel Blijleven and the GoodWe Local integration for Home Assistant by haids3. This app is not made or endorsed by GoodWe.