[APP][Pro] Marstek Energy Storage

  1. I dont recognize the 10 second wait. Mine accepts chained flow commands without additional delays. I dont know if others do? DO be aware that there are some that require ohter capabilities to be in the right stance before you are allowes to change them (force mode requires work mode to be in force mode for example).
  2. While the Marstek updates i am sure it really becomes unavilable, so it should be unavailable for some time, and my app does have a re-establish feature (so could it be that your backup press is not trully the reason it becomes available but it would have anyway). I didnt have to option to update mine yet, ill keep an eye on this behavior when I can.
  3. The app is to control the marstek, so it is kindda the purpose that I send these to the battery? Not sure what you mean that it was a surprise?? This applies to all: advanced settings and capabilties.
  4. Those values are NOT the default values, they just became that in the mobile app updat they released some time ago, before that they where other ones and before that another name. So I use the once as they are used on the MODBUS documentaiton/api. UPS for exaple is a fake one, the modbus only has 3 modes. AI is what used to be anti_feed etc. So I dont care to much about following their whims every time :wink:

Thank you for the detailed explanation and clarification, Vincent.

I think it’s my own fault, given that the Marstek and RS485 are new to me and I find it quite nerve-wracking that I might do something that could cause problems in the house when I’m not there (2500W feed-in, and I don’t know if the wiring can handle it).

For now, everything is working properly, so I won’t be touching any settings for the time being, unless I can immediately see what the impact is.

Cheers Ed

HI everyone,
I did a major rework on the capabilities making them more user friendly.
It also now aligns with the new capabilities that Homey introduced to control charging and descharging so future energy management apps can support these.

So you can play with it by installing the new test version:
Marstek Energy Storage | Homey

Most capabilities no longer require two steps or linked states to align. It will now enforce those states.

Hi @Kaoh thanks for the good work!
I installed the new version. My Venus 3 loses connection frequently. I hoped this would be better with this version. It’s connected via lan, so for me it’s weird this happens?

In the older version it was possible to use the forced mode to, for example, load to soc level. There is still the forced option available but not the sub menu in upper screen with forced options for loading, unloading etc.
Do I need to use those options differently?

When I use the option to read a register, it say gatewaypathunavailable.


Edit 10:12 the app crashed

Gateway path unavailable and your connection issues really sound like network level issues. Not sure how I can help with that.

The force soc is still there, the six target slider activated that mode as soon as you set it. Just no need to set all the other modes first.

Thanks, because of the connection problems the forced loading options don’t show I think. I will have a look into the lan connection, should work.

In the sliders section you should see a forced soc slider and a power target slider (that can go negative to discharge), don’t you see those?

I see them. Not changeble because of the communication errors.


OK, indeed then your communication problem is your primary problem.

Update: I checked the lan connection, no problem to solve it looks. I installed the stable version, no luck.
Then a reset of the Marstek, still no luck.
I removed the app from Homey and reinstalled it, that worked. Battery is now controlled via Homey.

However, in reading registers via the app I still get the error “gatewaypathunavailable”

And when you do the poll device state?

And you did select the marstek device in the combo box above?
Sorry for the obvious questions, but can’t wrap my head around that it does work, but the diagnostic does not.

No problem, it’s has my thoughts also the whole day

Yes, I did, also tried reading one register


When I use Powershell:

PS C:\Users\jvand> Test-netconnection 192.168.1.124 -Port 502
WARNING: TCP connect to (192.168.1.124 : 502) failed

ComputerName : 192.168.1.124
RemoteAddress : 192.168.1.124
RemotePort : 502
InterfaceAlias : Wi-Fi
SourceAddress : 192.168.1.43
PingSucceeded : True
PingReplyDetails (RTT) : 3 ms
TcpTestSucceeded : False

I installed the modbus app in Homey, when I configure the MT I get a connection refused.

Perhaps I have to reset and remove the MT from the MT app


Flows die zorgen voor overschakeling van de HW pib’s naar de MT hebben zonet gewerkt. Dus opdrachten via flows werken.

Edit 22:07: ik heb een andere lan kabel gebruikt, ik krijg nu via powershell een “TcpTestSucceeded : True”, via de app deze melding, wellicht dat dit wat zegt:


Daarna weer de gatewaypathunavailable

I changed the lan cable, reset and removed the battery and CT003 from the MT app, installed again: no change. Then I disabled the app in Homey and installed Marstek Venus Modbus app in Home Assistant. Battery is now up and running in HA. No problems ther, all entities available, connection stays on. Weird.

The only hope I can offer is that I plan to refactor the modbus layer for this app since the underlying package handjes certain messages wrong with hard crashes. Maybe your MT sends it’s info differently, and the message fail to parse crashing that package. But since that happens deep insure the package it is outside my influence. The refactor on my todo list should handle these better.
But
 Time


Thanks, I will wait and meanwhile look further if I can solve things.
I have ordered an ew11 (not to expensive) and try the other port of the MT. Perhaps that will work.