Jump to content
Genetry Solar Forums

Genetry Inverter <- -> ElasticSearch Data Collector


kazetsukai
 Share

Recommended Posts

@Sean Genetry Solar Just a quick demo of the app I mentioned to collect inverter data and graph it. Its not like a phone app, its a daemon that runs on a computer and collects data.

I don't actually do any graphing in this app as there are far superior tools available - which is why I use ElasticSearch and Kibana to do that. What this app does:

  1. Automatically discovers any Genetry Solar inverter(s) on the network you are connected to.
  2. Each inverter discovered is polled in parallel once per second for telemetry.
  3. The inverter telemetry is shoved onto an internal queue.
  4. A consumer reads from the queue and indexes the telemetry in ElasticSearch.

That's really it. From there you can use Kibana (the visualization tool built on Elastic) to graph the telemetry in any way you prefer. The following screenshot is the result, and is about 3 hours of data.

 

Screenshot_20221030_003023.thumb.png.f00d6350a3d5faa4ba9ef493605468f9.png

My inverter use case is pretty consistent- running a pair of mini splits, laptops, TVs, etc. With the exception of the microwave, convection oven or electric griddle my data tends to look pretty flat. Thus you see for the first hour, fans (green) are at a constant 15% (I have them configured to never turn off, just remain at lowest levels if they would otherwise shut off). Inverter load is a constant 8% ish, reflected both in the inverter load line (blue) and xformer amps (red).

So to shake things up a bit I set fans to factory, which shuts off fans when load is very low or zero. I then switch from inverter mode to AC input, causing inverter load (blue) to drop to zero, and begin charge. You can see Xformer amps shoot straight up at charge, but fans follow behind by some time as temps take a little to rise.

My batteries are actually close to full so they only took a bit of that high charge rate before voltage started to peak and the charge rate dropped off (see the red line between #4 and #6 above). Satisfied with 20 minutes of this I shut off charge at #6, so you see that drop instantly, and then fans ramp down slowly as temps drop internally. Finally at #8 you see fans continue to spin up here and there to bring the temps down until the inverter settles at idle and there is no more fan activity.

I'll do another less extreme graph tomorrow prior to helping Sid out with another charge test. Let me know if there's any graphs you'd like to see specifically.

The app is written in Java, and as such runs on either Linux and Windows, both x86_64 and ARM.  Requirements are ElasticSearch, Kibana, and OpenJDK11 or higher.

 

 

 

Link to comment
Share on other sites

Hmm, i should consider doing 1-second sampling. Would be great to be able to get that granular.
Victron's cloud service is limited to 1-minute samples. Suitable for longer-term trends, but not great for diagnostics.

Did you intend to post the code here? Requirements and all posted here would seem to suggest that, but i don't see a link or attachment.

I might keep it simple and do a bash + rrdtool. Not as flexible (haha), but it'll do the job.

Link to comment
Share on other sites

Nice idea, I setup something similar logging a bunch of different data points to an SD card to graph out with a pivot table.  Handy to visualize the data for sure.  I am using the MQTT messages to collect the data its on another network for me so that was the easiest path to monitor an existing data set for a period of time. 

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.

 Share

×
×
  • Create New...