Ik heb 3 marstek v2’s deze hebben allemaal individueel een Lillygo er aan hangen dit werkt in Home assistant maar ik ben alles aan het migreren naar een Homey pro, kan ik deze lillygo’s blijven gebruiken met de applicatie?
@Alex_Reisberger Basicly it means there is no modbus over TCP client listening on the IP you specified and port… or slave id….
Not sure if it helps you ![]()
@Jela did these errors ever dissapear? Its a register I read so it should be values your battery thinks are true.
@Robin_Van_Doorn please use english.
Yes, the lillygo is a mosdbus to tcp gateway just like the EW11 so I see no reasons why it should not work.
The battery still generates the error in homey.
When i open the devices i also get “the Controls only work in force control mode”
Controlling the v3 battery manual or from out of a flow works fine.
excuses!
Alright thats fine, it seems that port 502 with the ip of the lillygo won’t work unfortuently
Then it’s likely that register is used differently on the v3. I’ll see if I can find that documeted somewhere
The port is configurable on both sides right? So it should be just seeing the right settings. Just be aware I expect true modbus over tcp, not mqtt or http versions some of these devices can also expose.
I had these error messages when I connected the Marstek via an Elfin EW11 to the Modbus port. Now that I connect it directly to the Ethernet port, I no longer have any error messages.
Hi Kaoh,
Just installed your app on the Homey Pro (i’m also using the Marstek venus 3.0) with a different modbus converter the (waveshare-industriële-seriële-server-rs485-naar-poe-ethernet) just because i don’t like wifi for this use ;-). For now this works fine beside of the known orange alarm when opening the app on the homey.
maybe you can take a look at this (Marstek V2 vs V3 registers - Google Drive). and the (max ontlaad vermogen) stands on 2500W) ![]()
My question, the waveshare POE converter is using port 502 but its send it to port 4196 to the homey is that oke? hope to hear from you and thx
I have seen that mapping before, but I have to admit I dont understand the values in those columns
The max ontlaad register was indeed added as a request earlier to test if it indeed was indicative for limits in case the battery limits it by itself (heat or overload) but it doesnt seem to change. I left it since … once there is more effort to remove (sorry bit lazy)
I dont get your question? It is working on the waveshare already and I only pull info. So not sure what the sending is about, I also dont listen on that port I believe so not sure what this would add.
Hi Vincent,
First of all, thanks for your response and the great work you’ve done on the app!
I’m not sure what I was doing, because it turns out that the Marstek V3 already sends the necessary information via the LAN port, so I don’t need that RS485 Modbus module at all for the basic functions.
I removed the Marstek battery and added it again via Homey, and now I’m getting no warnings and can select the battery and adjust it in the base.
Next week I’ll buy a second battery somewhere and see how it works and what smart flows I can set up via the Homey Pro ![]()
Best regards, Edwin
I’ve got my Marstek Venus E V3 since a few days and was looking into a homey integration. Since my energy meter is too old (we still need to make an appointment for replacement) the CT003 reader doesn’t work (yet). So i thought maybe i could make it work with Homey since i already got the Homey energy dongle. So i can make some flows on when to load and when to discharge.
But as far as i can see we also need a modbus for this device allthough this one has a local api too? And if so, do i need a modbus per battery? Because I have two of them.
The V3 has native modbus over the UTP port. So if you connect that one this app will work with it ![]()
I don’t exactly get it… so the local api on the v3 isn’t supposed to work with this app?
I still need to buy something else to connect to the physical utp port? And if so, what should i buy?
\sorry for being unclear:
The v3 is very well supported by this app. The modbus is on the V3 available without the need of additional hardware over the network connector (UTP), so if you have your V3 connected over the UTP connector and the local API enabled, then the modbus is available nativly. Just add the IP address of that connection to this app and it should connect.
However they did not add this support to the WIFI. If you need to be on WIFI than you have the option to add a modbus port to wifi adapter as an alternative route.
I hope this is more clear ![]()
Dear @Kaoh ,
It even works with the API disabled? At least it works for my V3.
First I used the API via Wifi connection to Homey but as soon I connected by LAN (UTP) for the modbus I switched of the API and works fine.
Cool, that’s good to know ![]()
![]()
The app works perfectly, Vincent!
On Tuesday, I was sitting next to the battery and put my hand on top of it, and it got pretty warm while charging at 2500W. When I checked the app, the internal temperature had reached 55,3 degrees.
this day
Just to be on the safe side, I set a limit via Homey so that if it goes above 48 degrees, it can’t charge faster than 1500W. I can’t just sit next to the battery for peace of mind ![]()
There’s probably a safety feature built in, but I’ll check tomorrow to see how this affects the temperature.
If anyone has already tested the temperature setting, I’d love to hear about it too ![]()
Br Ed
I use a strategy to not charge to fast to the battery by charing the range of 1000-2200 surplus into my car. So only if the surplus is below 1000 its goes into the battery and when the car is charging everything above and that is never more than 1800 and often less) so it doesnt get to hot in my case.
Hi Vincent,
I have a few findings and suggestions for improvement that I’d like to share with you, and I’d also like to help you with them using my limited programming knowledge :-).
Setup:
- Homey Pro
- Marstek Venus V3, connected via LAN only (no RS485 for now)
- Firmware 148
-
To change the forced load capacity, I now need an extra rule in the Homey flow and an extra rule in the Marstek app (manually), so that if the (grid output power) exceeds 1600W, it sets the maximum load capacity to 1200W for temp(55+) reasons . Between each action in Homey, you need at least 10 seconds to execute the next command; otherwise, you’ll get an error message.
-
The app goes into error mode or crashes when, for example, you try to update the Martsek. In this case, I first have to press the (backup) button in the app and wait until the connection to Homey is reestablished. No idea why I have to press the (backup) button first

-
On Sunday morning, I got quite a shock because my OUTPUT power was set to 2500W in the Martsek app.
I had been testing the SOC settings in the Homey app without realizing that those settings could be sent to the Martsek app. Maybe an extra warning in the app or just disable it. -
And… as already mentioned, some cosmetic issues like maintaining the four default values:
- Self-initiated
- AI optimization
- Manual
- UPS
Once I have this under control, there will be a second Martsek
So if i can help you with testing or help you with some cosmic things please let me know.
Cheers Ed



