Version 0.7.0 has been released and I’ve added support for the Marstek Cloud service. You can use your username and password (same as app) to retrieve details from the Marstek Cloud. Please note that this implementation is based on undocumented features.
It seems the update frequency of the cloud data is between 5 and 10 minutes. Also, the amount of details shared by the cloud are limited. Polling is therefor configured to once per minute. I’ll try to update some of the readme details as soon as possible. Currently only available in TEST version. Let me know how things look for your configuration! Note that you might be logged out of app when using this feature, due to limitations on Marstek side.
I’ve released a new TEST version v0.7.1 with flow cards that can be used to configure the battery. This is a first implementation based on the v1.0 local API. Although all set functions are implemented, there might be some issues with messages to being processed (A retry meganism is not yet implemented).
The battery was probably not responding for a while. Please try the reset function using BLE Test tool, for me that always kickstarts the communication. I’ll dedicate a header in de README for troubleshooting, since this is most common problem with the battery.
Hi Eniewold, thanks for your developments efforts. I’ve just found your app and tested right away. I managed to connect all 3 Marstek Venus E V2 firware V153 batteries to Homey. I’ve been using hm2mqtt to control my batteries sofar. I’m exited to explore this local function. Sofar the connection seems to be stable.
I noticed that the temperature reading is not correct. It displays 2.7 degrees, while the BLE tool reports 27 degrees as ambient temperature 1.
Thank you for the report! Hopefully your communication will remain stable! It seems there are different 153 firmware versions, because my 153 shows the temperature correctly . I’ll add some logic to make sure temperate is always within expected range…
Quik update for those who use the cloud version:
You can create a new account in the app with a different email adres. Than share your Marstek with that account, and use the login and password from that new account in the Homey app.
Seems to work, and you don’t have to login again everytime in the app on the phone.
First of all thanks to Eniewold for all the effort of creating an app for the Marstek.
For my ‘experience’ so far:
-The API-way won’t find the battery (good WiFi,…)
-The Cloud-way works 1 time. I also use the ‘shared account’ to avoid having to log in all the time again in the Marstek-app. When I connect to the Battery via the cloud it connects, gets the info and that’s it. Later on nothing happens. If I restart the app (on Homey) it again works 1 time.
Thank you for the feedback. If possible; can you change the setting of all (API and Cloud) Marstek devices in your Homey devices the ‘Debug’ to ‘Yes’ and have retry the procedure you described. After a few minutes, enough details should be collected to generate a diagnostics report through the Homey App. That will help to determine what is happening with your Marstek battery. The firmware and model have not been tested yet…
For communication; please check if local API is enabled and set to port 30000. You can use the BLE Test Tool…
Thanks for the fast reply. I guess you mean the ‘more logging’ thing? I enabled it. Then restarted the app. Then waited 15 minutes to give the app the chance to refresh its values (it didn’t). Then created the diagnostic report:
71b869b7-289d-4a11-a8f9-d6fd1769ea55
Battery Venus E v1, firmware is 153 (sorry, my mistake), your app 0.7.5
API is correctly enabled according to the BLE-tool.
Thank you for the details.
The report indicates that the values are being received correctly (now). Please note that the cloud data is updated by Marstek every 5-10 minutes. So it could be that the same details are shown for a while.
Perhaps you already have the new version; things seem to be working.
I also noticed a technical error returned by the Marstek Cloud service; but it does not seem to have interrupted communcation.
After the update tot 0.7.6 data now updates every 11 minutes, I have the impression.
For me, that’s fine.
I just like an occasional view on the battery-level, without opening the Marstek app everytime. I look into the Homey app like 20 times a day because in there I can check everything connected in our house. Being able to see the status of the Marstek together with the rest in 1 app/dashboard is a great extra for me!
I created a flow that updates a variabel with the status of the accu everytime it changes so I can see it immediatly. (Maybe a future function-request: show the battery-level on the tile instead of just a battery-logo?)
Again, thanks for the wonderful job you did, creating the app!!
Nice work so far on the app, I like the approach since I am not very technical to use MQTT etc. I have 3 Marstek venus 3 v2, V153, comm module 159 and V117 for the CT003 P1 meter. All is on the same 2.4Ghz only wifi, good connections and fixed ip’s.
I setup 1 Venus with Local API (port 30000) and it was added to my Homey Pro as a device. Just started with a simple workflow: if it is a specific time and the battery level is below 20% than set the operation mode to AI.
I received an error: timeout after 60000 ms for the step set to operation mode. And a general warning about the battery level (only in red)
Did I do something wrong or is this the known connection issue (when local API is enabled)?
Unfortunately the Marstek battery does not like to share local API communication with CT00x and Homey. I’m hoping this can be solved, or that I can find a workaround, but this is probably something at Marstek side.
I’ve recently installed a CT002, and facing the same problems, so I’ve started searching for a workaround!
Good afternoon,
I’ve noticed that the battery stops transmitting data after a certain amount of time. I first need to reset the battery using the Bluetooth app, then it will work again for a while. Is anyone else experiencing this problem?