Generac PWRview API

midnight51

New Member
Joined
Aug 6, 2021
Messages
4
Hey there. I am a new solar array owner. I have a Generac PWRcell inverter with 24 Silfab SIL-330 HL panels feeding back to three batteries. About a month ago we had a two week period where something was not functioning properly and no energy was produced. This is obviously something I want to avoid in the future. However, I have no desire to babysit Generac's PWRview mobile app two, three, or four times per day to ensure the system is operating properly. Instead I would love to somehow interact with their PWRview web console and perhaps create some API calls that would query the device(?) or their webpage for real time energy production data. Once I can quickly and easily query for that data, I can turn around and create a scheduled task on my computer to run every so often, or at different times of the day, and send me a text message and/or email if the system is not operating to my liking. I reached out to Generac support today via phone, and the representative I spoke with lead me to believe this is not possible, and advised I check their mobile app. Well this defeats the purpose of what I need to do. It blows my mind that they did not incorporate notifications within their app, or a way to query the system on the LAN to obtain this data. During my research I learned of a device made by Generac named Generac PWRview Home Energy Monitoring System (W2HEM), which I can only assume, does the exact same thing I already have the capability of viewing via https://pwrcell.generac.com, which incidentally has the PWRview logo on it (not PWRcell). I assume my inverter has a built in monitor which is sending this data to this online portal, making it viewable on the Internet from their online dashboard. This is not all clear to me, as you can see, I am making educated guesses as to how they are getting this data from my system. Regardless, I need to be able to query the system myself to obtain the data so I can create my own notifications, so I do not have to babysit their mobile app every day. Does anyone have any suggestions, or useful information for me? Maybe someone can point me to a Generac employee that may be able to assist? If you've read this far I appreciate you. :)
Cheers,
Josh
 

jptasznik

New Member
Joined
Aug 26, 2021
Messages
1
Josh,

I had a similar problem and was able to reverse engineer the power view web console to create a job that runs a number of times a day and emails me if there are issues. NOTE: the web dashboard is at 45 minutes behind and at worse hours behind. I did accidentally call it too much and was blocked, so do NOT call these APIs too frequently.

A couple of things to make my solution work:
1. Under settings you need to make the dashboard publicly visible.
2. You will need to use the Developer tools on your browser to find the API call for getting devices on the dashboard page, mine is https://pwrcell.generac.com/1245369.json?_=<Some number>. I don't know what that number is or I would tell you where to get it.
3. The above call gives you a list of your devices and there statuses.
4. Get the power using this https://pwrcell.generac.com/power/<pvLink>/now/all.json where <pvLink> is the id for each PV Link, which can be seen in the dashboard by expanding the PVLinks section in the dashboard or is returned in the devices call above. this returns all the power ever generated by the PVLink, it is an arrays of [Unix Epoch Time, power in watts, boolean that I don't know]...in my solution I go through and add up all the power for the day and then compare all my PV Links power for the day and send an email if one or more of the links is not making power or if they are more than 10% different.
5. Get the energy using https://pwrcell.generac.com/energy/{pvLink}/now/all.json where <pvLink> is the id for each PV Link, which can be seen in the dashboard by expanding the PVLinks section in the dashboard or is returned in the devices call above. this returns all the energy, but only a commutative total by day, so to figure out how much was generated for a given day you have to subtract the previous day number from the day you want the energy for.

For my solution I actually host it in AWS using Lambdas and Cloud watch events to do 4 full checks
- Morning report that emails me the details from the previous day generation of power and energy
- 9 AM, Noon, 5 PM checks that only email on error

I hope this helps,
John
 
Top