Jump to content

Custom Grafana monitoring of Wifi Plug Pro - Esener Inverters


biscuitza

Recommended Posts

Posted (edited)

Hey all,

Open for improvements, comments & suggestions for my v0.1 and lurked here a bit and the forums and my first topic because I built a thing!


History:

The forums have been great for my first IOT inverter monitoring setup with my old RCT 2.5KW Inverter where I managed to read the inverter data via RS232 and an ESP to Home Assistant's energy Dashboard which was fantastic... Until ...we upgraded to 3 Esener 5.5Kw inverters to cater our loadshedding/power needs.

image.png.575a8facd9f18b37b9a14a830b74b788.png  image.png.853a18fcba8d09fa61c00c157a62914e.png

What I tried:

The inverters where a great setup and they seem to graft well delivering 60+Kwh of power a day (we top up with Eskom in the winter months over night).

The issue is that these inverters do have RS232 communication however I have tried Solar assistant, Windows software and ESP's to try read the data directly and no success ☹️. I'd attempt this for days and weeks but nothing seemed to work thus direct monitoring seems all but impossible.

The Wifi Plug Pro that come with them seem to work albeit flaky on mobile and the DessMonitor site seemed to work well monitoring each inverter but one would need to toggle between and manually add up stats.

Why?

  • The biggest drive was to have a single view of all the inverters and their combined stats as a "virtual power station".
  • Have a local/offline historical view of the inverter stats

Discovery

  • After a another random Brave search I found there was an API endpoint for Dessmonitor alas in Chinese, but this seemed possible and it was the similar method the web portal would use by sending Salt encrypted API requests to display the data (Thank you browser network tools) which I'd use to pull data however the token would last for 7 days only before I'd manually need to login and update my tokens in my PowerBI report.
  • Some translating later I could understand how to generate a token and using NodeJS (with Copilot AI for code generation) I could build a NodeJS script to then generate the token and then retrieve the data in JSON per inverter.
  • From there I challenged to then store the data in InfluxDB so I could aggregate in 10 minute windows the 3 inverter's stats (each inverter would send data to DESS via Wifi Plug every ~5 minutes and a ~1 minute delay from each of them at times).
  • Lastly I managed to get Grafana to then aggregate the 3 inverters data into a Dashboard so I can finally see single virtual metrics for the total house consumption:

Result

Update: I also put my code here https://github.com/theLarryds/solar to show the logic

image.thumb.png.71308c2424f4e6dbf38e9fb28fba1c4f.png

Edited by biscuitza
added Repo for code
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...