[Update: Here is a new Node-RED flow that works better with Home Assistant’s Energy Dashboard.]
After years of waffling on if I should install solar on my house, I finally decided that it would be a good investment. While the federal tax credit went down from 30% to 26%, I would still get a bit of my investment back. The tax credit goes to 22% next year and then goes away, so if I didn’t make the leap now, I’m not sure financially it would make sense for a long time until the panel prices come way down.
Like most major investments, I did a significant amount of research. I got proposals from 9 companies using a variety of panels and inverters. For better or worse, I went with a SunPower system. SunPower wants to make it easy for people to see how much energy they are producing and their monitoring site has a very, very simple dashboard. Apparently their older dashboard (still available via a different URL that uses Flash) showed output on a per panel basis. When I asked SunPower about this, here was their response:
Unfortunately, our monitoring website only shows production data of the system as a whole. Inverter level monitoring was only offered to dealers for troubleshooting and/or repair purposes. This was not offered to homeowners because, after lengthy evaluation, that feature offers more information than is necessary to monitor ongoing system performance, but not enough information to help identify problems (on the rare occasions when they do occur). We also had concerns about the feature’s design, in part due to negative feedback from customers.
After a bit of research, I found that the monitoring device (PVS6) actually has the ability to be queried for local data. An individual with better hacking/detective skills than me figured out the commands to send to the unit and posted information on GitHub describing the setup. That looked pretty straight forward. So I decided to figure out how to integrate it into Home Assistant and into my Grafana graphs.
First step was to configure a Raspberry Pi as basically a bridge where HTTP requests sent to one port would be redirected out the other port. I didn’t need a full fledged router for this, just an HTTP proxy. I decided to use a Raspberry Pi Zero W that I had lying around as a base. I ordered an Ethernet adapter for it and that was it for hardware. My son designed a case for both pieces and I 3D printed it.
Configuring the Raspberry Pi
- Download the Raspberry Pi Imager
- Select the Raspbian Lite image.
- Write the image to an SD card.
- Create a file called wpa_supplicant.conf at the root of the image with the following:
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev update_config=1 country=US network={ ssid="<Name of your WiFi>" psk="<Password for your WiFi>" }
- Add a file called ssh at the root of the image. This file should be empty.
- Assign a static IP address mapping on your router for the Pi.
- Boot the Raspberry Pi. Login using username: pi password: raspberry
- Update the OS using
sudo apt-get update
- Install ha-proxy
sudo apt-get install haproxy
- Modify
/etc/dhcpcd.conf
by adding the following so that the Ethernet going to the PVS6 doesn’t attempt to setup a gateway. If this happens, the Pi no longer responds over WiFi.interface eth0 nogateway
- Add the following to
/etc/haproxy/haproxy.cfg
:frontend http-in bind *:80 default_backend backend_servers backend backend_servers server sv1 172.27.153.1:80 listen stats bind *:8080 stats enable stats uri / stats refresh 10s stats admin if LOCALHOST
- Reboot the Pi.
Now when you issue HTTP calls to the Pi, they’ll goto the PVS6.
Setting up Home Assistant
I use Node-RED for most of my automations, so the following is how I poll the PVS6 from Node-RED.
Basically what I do is make an HTTP call to the Raspberry Pi over the WiFi interface that redirects to the PVS6. Using the information from the GitHub repo I found, the call is: http://10.0.3.55/cgi-bin/dl_cgi?Command=DeviceList
I then parse out the different devices that are returned (one for each inverter, one for the monitoring unit, one for the consumption meter and one for the production meter). My installer didn’t hook up the consumption meter, but I use an older version of the Rainforest Automation EAGLE-200 to connect to my electric meter and get consumption data.
This Node-RED flow generates multiple sensors that can then be used to display data right in Home Assistant or in Grafana. There is more information in the output than I need such as AC voltage, DC voltage, AC current, DC, current, etc. I use Home Assistant’s HTTP interface to create new sensors and since I have no idea how fast it can respond, I rate limit the updating of the sensors.
You can download my Node-RED flow from here.
Grafana
I’m going to leave it as an exercise for the reader to setup pretty pictures in Grafana. I’ve setup a basic dashboard and some other graphs. The per panel graphs are useful to tell me if a panel isn’t operating properly. While SunPower doesn’t really want you to know this information, it is very helpful. My system was turned on (my installer and SunPower can remotely disable my system which really bothers me) yesterday and I noticed that 1 of the panels wasn’t generating power. This amounts to about 8% of my overall system; most people wouldn’t know this which makes it even more important to be able to get status on a per panel basis.
Conclusion
I’ve written up this guide to help others, but also to refresh my memory in the future to figure out what I did. My home automation system is growing more and more complex by the day and if I don’t document at least parts of it, I’ll never be able to troubleshoot it.
Feel free to ask questions or provide comments.
Hi,
Thanks for the great post. I have a question about how do you get the real time energy consumption. I am not so clear about the “net_ltea_3phsum_kwh” and “p_3phsum_kw” meaning even after checking the GitHub page. can you make it more clearly to me? Thank you.
Hi Rick,
I believe that “net_ltea_3phsum_kwh” is the total number of kWh consumed (cumulative) and “p_3phsum_kw” is the current (at the time measured) number of kW being used. Since the consumption monitor was not hooked up for me, my values are all zero.
I hope that helps.
How do you create the sensors in HA? Is it through the RESTful API? Any example you can give of a sensor-setup?
https://www.home-assistant.io/integrations/rest/
Hi Odin,
It is through the REST API. Node-RED has an interface to it, so I don’t directly use the API. A request is something like this:
/states/sensor.inverter_total_power_E00121942059984
{
"attributes": {
"friendly_name": "Total Power",
"icon": "mdi:flash",
"unit_of_measurement": "kWh"
},
"state": 138.3355
}
I hope that helps.
Scott,
Thanks. Great post.
I am interested in something much simpler – basically checking the health of each panel periodically (monthly?) to make sure they are working properly.
My question is: why do you need the RPi in between. Could not a program on a home computer simply make an HTTP request directly to the PVS6, assuming the IP address on the home network is known?
Hi Brownell,
The PVS6 doesn’t have a way to communicate with it from your LAN. The Raspberry Pi is necessary because the HTTP requests can ONLY be made to the installer Ethernet port and not the regular Ethernet port (or WiFi). The Pi acts as a bridge so that you can route requests from your LAN to the installer Ethernet port.
I hope that helps.
Scott,
Thanks for the quick reply. I have a couple more questions. (I am doing this for a friend and don’t know a lot about the SunPower.)
where is the device that the RPi connects to via Ethernet? Is there some control box in the house, or is it on the roof with the panels?
do I use a regular Ethernet cable or a crossover?
when the RPi ports are configured as you describe, I can use software like Postman to send the HTTP Posts to the RPi and they will be forwarded to the SunPower and I will get the responses. Right?
Thanks,
Brownell
Hi Brownwell,
The PVS6 (monitoring device) is usually located in the garage or near the electrical panel. I use a regular Ethernet cable to connect it to the Pi. In my case, I have Ethernet going from my garage to my equipment rack, so I have the Pi sitting in my rack.
Yes, you can use Postman or the like to send requests to the Pi which then sends the requests to the PVS6.
Keep asking questions!
Scott,
Sorry for another question. You are going to need two Ethernet ports on the RPi. How did you do that? Does Ethernet over USB work? I am using an RPi 4 that already has one RF45 port on it.
Thanks again,
Brownell
You’ll either need 2 Ethernet ports or Ethernet and WiFi. Ethernet is required to plug into the PVS6 and Ethernet or WiFi connects to your LAN. I’m using a Pi Zero W which doesn’t have native Ethernet, so I have a “hat” that provides Ethernet (actually using USB). I have the PVS6 connected to the Ethernet port and the Pi is on my LAN on WiFi; I like hardwired connections, but this is what I had on hand and it seems to work well.
Thanks for this excellent write-up. My Sunpower supervisor is an SMS-PVS20R1 as opposed to a PVS6. It’s got two LAN ports. Do you think the approach you outline will also work? I have a spare Pi 2 and WiFi dongle so I can just give it a try, but I thought I’d ask.
It can’t hurt to try! I don’t have any idea if the older units are similar to the new ones. Please post back your results if you don’t mind.
Unfortunately, it did not work with my SMS-PVS20R1. I connected the Pi2 with WiFi dongle to one of the LAN ports. I could SSH into the Pi no problem. However, when I executed http:///cgi-bin/dl_cgi?Command=DeviceList after 20 seconds or so I got a 503 Service Unavailable.
I checked haproxy status on the Pi and it looked right. So I gather the PVS20R1 just has a different interface,
Hi Eric,
That’s too bad; it was worth a short!
Oops, I need to report back a different result with my SMS-PCS20R1 Supervisor. When I did this originally, I disconnected the PowerLine adapter that the LAN1 on the Supervisor was using because that was my only convenient source of power. Then I plugged LAN1 into the Pi, and I got the 503 Service Unavailable error when using the HTTP GET request. So, today I worked a bit harder and got an extension cord, so I left the PowerLine adapter plugged in with LAN1 connected. Then I connected the supervisor LAN2 to the Pi, and the HTTP GET request works and I can get the DeviceList and DeviceDetails. The payload is a little different than the PVS6, but the basic information is there.
So, the lesson I learned is that you need to use the other LAN port for this to work; in fact you may have written that and I just didn’t notice.
That sounds like great news! Parsing the information is pretty easy so you should be all set!
This is really cool what you have done! With the SunPower partner site being inaccessible now, I would like to be able to check my production at the panel level ad-hoc (like 1x a month), similar to a previous comment. However, I don’t have experience using a Pi. The closest I have done to anything with programming is installing custom rom’s on Android phones. Do you think I could figure this out? You have great instructions on here, but will have some simple questions, would you be willing to help out a NOOB once I get my Pi? If I can at least get the raw data to see the production, I would be happy, but would also love to learn to build a dashboard eventually.
Hi Alan,
Getting the raw data is fairly straightforward; the dashboard is where the fun lies! Hopefully my instructions are complete; I can try to help, but can’t guarantee it.
Thanks Scott! While messing around today, I was able to get the raw data by just plugging in my laptop to the installer port and go to 172.27.153.1/cgi-bin/dl_cgi?Command=DeviceList. I don’t think I really need a Pi now. However, so I don’t have to go physically connect my laptop every time I want to pull data, shouldn’t I be able to use an old router to bridge my PVS6 to my network? My PVS6 is connected to my wireless network currently. I assume I would need to plug the WAN port of the old router into the installer port of the PVS6. I assume I need to change something on my router to 172.27.153.1 (or 172.27.153.0), but not sure what. And then I assume I need to connect one of the LAN ports on my old router to my existing network. Any tips / advice?
Hi Alan,
I think that you could use an old router, but I don’t know how you’d do it. Basically the old router would be a bridge and I’ve only done that with Linux (and that was ages ago). You might be able to find some tips online on how to accomplish this. I wish I had better news; good luck!
I am following to see if there is a way to do it wireless. I wish someone could design an app that connects to the monitoring system. it sucks that the sun power monitoring site is not working anymore. For some reason I think my current (August) daily production is almost 4kwh less that what I was producing in May 2020.
But the Raspberry Pi in the above guide from Scott does do it wirelessly, that is how I use it! I have a Pi-zero-W attached to the mamangement interface on the PVS6, powered via the usb in the PVS6, then hooked up to my wifi. Then Scotts node-RED script is doing the polling. I then stick it in an InfluxDB on my Home-assistant setup where the Node-RED is running, and can see the stats in Grafana. The only thing Scotts guide is not covering is the graph setup, and specific setup on Home-assistant, but there are plenty of other guides for that!
Hi Odln. How did you connect your Pi-Zero-W to the PSV6? (https://www.raspberrypi.org/products/raspberry-pi-zero-w/). From looking online, it shows that the RPI-zero-w only has a micro usb and hdmi. How does it connect to the PVS6 when ethernet is required? Or is there a USB connection on the management interface of PVS6 that can be used to both transfer data and power the RPI-zero-w. Also, does the RPI-zero-w fit inside the case of the PVS6 or require its own casing? My PVS6 will sit outside in the sun, and I was wondering if the small chip and usb cable will sit inside the housing
Hi Peter! Get the raspberry Pi-Zero-W (important to get the W version). Then I got this case: https://www.amazon.com/Zebra-Heatsink-Raspberry-Wireless-C4Labs/dp/B01HP636I4/
Then install the Pi according to Scotts instructions above (HA-proxy stuff). Then get an adapter for a USB to Ethernet, I had one lying around for the FireTV-stick that was unused, so I know that one works! https://www.amazon.com/Amazon-Ethernet-Adapter-Fire-Devices/dp/B074TC662N/
Plug the Ethernet adapter to the mgmt interface on the PVS6, and the USB-end to the Pi. At this point, you should be able to SSH to the Pi over your local network, and then send curl commands (i.e. curl http://172.27.153.1:80/cgi-bin/dl_cgi?Command=DeviceList) and also send the same command with the Pi IP-address from a computer on your network.
Now install NodeRED on Home-assistant, and modify Scotts flow to work for you. Then follow Frencks 15-min guide on how to setup Influx and Grafana (https://youtu.be/m9qIqq104as) on Home-assistant. After this, all you need to do is create the graphs you want! This is what I have, and it works great!
Forgot to say, but it all fits neatly inside the PVS6 box, no outside cables needed! The Ethernet to USB is powered from the USB-port on the PVS6!
Ugh.. I really want to do panel level monitoring but the above seems a bit more complicated than what I’m used to. Why doesn’t Sunpower allow this? Is there a very watered down easy way to do this?
I was also wondering, do you know if I installed the Enphase IQ Envoy with this, it would work and I could monitor the Enphase IQ 7AS inverters on the Sunpower? Or is that a waste of money.. I know they cost around 500 USD
Another option I was looking at was Solar Analytics where you install onto the main panel I believe, but I’m not sure if it provides panel level monitoring. Its an AU based company but has really good reviews
The thing about the above option is that my boxes/panels will all be outside on the side of my house which is right by the street. I would need to figure out how to get power etc. Also I’ve never configured a RPI but I’m not tech illiterate and can probably figure it out. I wish there was a more simpler way to access this. Also, what keeps Sunpower from updating something that might prevent from the RPI pulling the information in the future?
Hi Peter,
I don’t know if the off the shelf Enphase can monitor the SunPower system even though the system (at least mine) is using Enphase inverters.
Nothing will keep Sunpower from updating to make this stop working; my hope is that they’d go the other way and actually provide a documented API that lets us do local monitoring on our LAN without this type of bridge.
I wish I had better information for you; when I had my system installed, I had them put the PVS6 in the garage where I had access to 2 Cat 6 drop. 1 drop goes to my LAN and the other goes to my Pi.
Peter, if I followed Odin response – his setup would work for you. Pi Ethernet port connects to installer port. Use Wifi on the Pi to connect back to your network. He indicated he is powering the Pi via the USB in the PVS6. There is room in the PVS6 to house a Pi, so that setup may work for you. However, setting up the Pi is a hurdle for many (including myself). I may still try it, but there was a post on solarpaneltalk forums about using an old router, unfortunately, that site has been down for a couple days. Scott has done a great job here, so thank you, but for those of us who have minimal/no linux/pi experience, it can be daunting without screenshots/video.
The problem I have is powering the Pi. I have an SMS-PVS20R1 Supervisor which I found will work with the Pi 2, however there’s not enough room in the box to get in PowerLine adapter in there to allow both the LAN1 connection for the SunPower ethernet cable and a power cord for the Pi. Nor is there a USB port on the supervisor to power the Pi. I ran extension cables to show the system worked. I’d have to Jerry-rig something pretty ugly to get it working full time. Out of curiosity, if I use a Pi Zero, do I get Power over Ethernet which would then fix my problem (i.e., I wouldn’t need a power source for the Pi)?
Hi Eric,
A Pi Zero, out of the box, doesn’t have Ethernet. You’d need an Ethernet adapter. The Pi Zero W also doesn’t have Ethernet, but has WiFi; in the case I’ve outlined, you need both WiFi and Ethernet. You can’t use a true PoE Ethernet adapter as the Pi Zero W doesn’t handle it, but there are splitters take PoE input and then split it out into Ethernet and a micro USB adapter which would power the Pi.
Scott,
I’m sorry, when I wrote my text I was sloppy in terms of discussion of the components. If I get a Pi Zero W and use the Ethernet Adapter you suggest (the HAT), are you suggesting I can get a splitter that will take the ethernet out of LAN2 on the Supervisor and provide a micro USB power for the Pi plus an Ethernet connection to the Pi? If so that’s great, although strictly speaking I don’t know if the SMS-PVS20R1 LAN2 port is strictly ethernet or PoE.
Hi Eric,
I searched on Amazon and something like this takes 802.3af PoE and splits it to 10/100 Ethernet and a USB micro USB connector. So you just need your switch to be PoE or find a different PoE adapter (plenty on Amazon that are either 802.3af or are 2 parts that combine power and Ethernet in a passive manner). I hope that helps.
Hi Scott
I think we’re talking past each other a little bit. The ethernet connection to the Pi is coming from the SunPower SMS-PVS20R1 Supervisor. So, if the SMS-PVS20R1 is providing PoE, everything works. If not, I am stuck without convenient power to the Pi.
Hi Eric,
Yes, you are correct that I’m confused 😀 If your Pi had 2 Ethernet ports and you were connecting to your LAN via Ethernet, then you could do what I set. However, in the setup I’ve outlined, you’re right that this won’t work. Kind of funny that it is so hard to get power to a solar unit!
It’s actually a little frustrating, I’d really like to get the data but I can find no good setup for doing so. I’ll get a PoE splitter given they are cheap but I expect it won’t work because the PVS20R1 Supervisor is likely just ethernet.
Back in 1993 I actually built and raced a solar car across the US and Australia (the car is in a museum now, actually) so I have a long-standing interest in solar power. Actually back in 1990 I met Richard Swanson, the founder of SunPower. Little did I know twenty-five years later his company’s panels would be on my roof!
Hi Eric,
That’s cool about the solar car! I wonder if you could get the supervisor replaced with a newer one. The PVS6 is very much over built as it has something like 4 USB ports, the LAN port, the installer RJ45 port, WiFi, and cellular!
Hah! My wife would probably hang me if I start tearing into the power system here at the house! But I sure would like a better piece of hardware like the PVS6!
I’ll touch low voltage and can wire outlets, but there is no way that I’d touch the solar system! Personally I wish there was a real, local API for it that was supported I am not looking forward to the day that it breaks.
Eric, have you considered upgrading to a PVS5? There are a few new open-box on eBay.
Thanks Scott for the info. I just want to make sure I buy the right parts…
The Raspberry Pi Zero W. And also the splitter you linked above. So if I understood it correctly, I would connect an ethernet into the PSV6 and the other end into the splitter. Then connect the splitter, micro usb end to the RPI0W for power, and the ethernet end into another ethernet adapter to micro usb, and plug that into the RPI0W for data. Whew, thats a lot of cords/adapters! After all that, then I can load the stuff onto the RPI0W per your initial instructions in the blog? You should make a business out of this and just sell the units with everything upload 🙂 I’d buy one haha
Hi Peter,
I was confused. The PoE splitter won’t work as you’re plugging the Ethernet into the PVS6. As Eric pointed out, you can just connect a USB cable from one of the USB ports on the PVS6 to the Pi Zero W to provide power. Then with the Ethernet hat, plug that into the supervisor port on the PVS6.
That makes much more sense. usb between PSV6 and Pi for the power, and then ethernet with hat to usb for the data. Would you mind posting a link for a suitable ethernet hat for the zero W?
Hi Peter,
While not technically a “hat”, I posted a link in the original article. Ethernet adapter. It connects via USB, but seems to work fine.
I added a tiny cheap tp link n300 router to monitor box, connected to LAN Ethernet port and powered via usb port in monitor. Able to connect wirelessly via phone or laptop and get the json panel data via the DeviceList command in browser. Nice to have with the partner site cutoff!
Could you post the link to the device you bought or used? I didn’t see any tplink n300 that had an Ethernet port as well as a usb power. My pvs6 will be outside so I’d like to have something small enough that will fit inside the housing of the pvs6
https://www.amazon.com/dp/B00TQEX8BO/ref=cm_sw_r_cp_awdb_btf_t1_hQDrFbND2XQTM
So I finally have my PVS6 installed and I just purchased the n300 multi mode extender. I planned to place this inside the cover of the box and connect the usb for power and Ethernet for the comms. However, does this extender need to be configured? Or how do you access the PVS6 info from a computer once everything is connected?
I was able to configure an old router as the bridge between my new SunPower system (PVS6) and my local LAN. Here is what I did, following previous postings here and on the SolarPanelTalk Forum.
– Connect the old router WAN port to the PVS6 installer’s ethernet port. Configure the WAN as Static and give it the address 172.27.153.2, one number above the 172.27.153.1 (PVS6 address), use 255.255.255.0 as the Mask and 172.27.153.1 as the gateway and DNS. For the second DNS, I used 8.8.8.8. At last, configure the old router with a Static LAN address for your local network. In my case, I used 192.168.1.170. Do not forget to turn off DHCP on the old router as well and Wi-Fi if not using it. Connect one of the LAN ports of the old router to your local network.
Now you need to create 2 Static routes. One in your LAN router pointing to the 172.27.153.0 (Destination), 255.255.255.0 (Subnet Mask) and 192.168.1.170 (Gateway/LAN IP of the old router). If your router uses metrics input 10. On the old router connected to the PVS6, add a static route with 192.168.1.0 (Destination), 255.255.255.0 (Subnet Mask) and 172.27.153.1 (Gateway). Basically, the static routes are pointing to each other networks, creating the bridge. Now when I visit the link below in a web browser, I get the info from my system:
http://172.27.153.1/cgi-bin/dl_cgi?Command=DeviceList
Here is one of the micro invertes data:
“ISDETAIL”: true,
“SERIAL”: “EXXXXXXXXXXXXXX”,
“TYPE”: “SOLARBRIDGE”,
“STATE”: “working”,
“STATEDESCR”: “Working”,
“MODEL”: “AC_Module_Type_E”,
“DESCR”: “Inverter EXXXXXXXXXXXXXX”,
“DEVICE_TYPE”: “Inverter”,
“SWVER”: “4.14.5”,
“PORT”: “”,
“MOD_SN”: “P22MXXXXXXXX”,
“NMPLT_SKU”: “”,
“DATATIME”: “2020,08,26,17,34,24”,
“ltea_3phsum_kwh”: “43.3751”,
“p_3phsum_kw”: “0.1871”,
“vln_3phavg_v”: “248.63”,
“i_3phsum_a”: “0.75”,
“p_mpptsum_kw”: “0.1873”,
“v_mppt1_v”: “56.06”,
“i_mppt1_a”: “3.34”,
“t_htsnk_degc”: “36”,
“freq_hz”: “59.98”,
“stat_ind”: “0”,
“origin”: “data_logger”,
“OPERATION”: “noop”,
“CURTIME”: “2020,08,26,17,38,00”
I blanked the micro inverter serial numbers with XX. I believe that the current panel production is in Kw, so to empress in Watts, panel rated capacity, you need to multiply by 1000, the variables below for AC and DC.
• p_3phsum_kw: AC Power (kilowatts)
• p_mpptsum_kw: DC Power (kilowatts)
In my case, using the example above, my panel is producing 0.1871 x 1000 = 187 watts AC approximately.
Now, is there a way to run this data or the JSON file in Windows 10 to make the data pretty with graphics? I am looking for a solution that does not require a Linux / RPi config if possible as I am already getting the data via the old router bridge solution. Thanks all for the comments and I hope the above is not to complicated for those trying to use an older router as the bridge. I wish SunPower would provide us the per panel info after spending so much money on them.
Ricardo – you can setup a web query in excel to http://172.27.153.1/cgi-bin/dl_cgi?Command=DeviceList and pull the data. You can use a macro then to update it every x minutes and push it to a database (in my case another tab). If the solarpanelforum site was up, I would publish more detail there, but that site has been down for several days now.
Unfortunately you can’t use the equivalent google sheets function as the importhtml function requires a public facing site to work
Thank you Ricardo and Alan. With your help I was able to use an old router to now monitor the PVS6 SunPower panel data on my home LAN. Good thing I did as some of the panels were malfunctioning and I would of had no Idea without the panel level monitoring. I could do the network setup but I am having difficulty setting up Excel to view the information and format it into usable data. Alan, you mentioned that you were going to post additional information on this. Have you done so and if so where can I find it? Hopefully someday SunPower will realize that it is not good business to make their customers spend this kind of time and effort on something most other solar companies include.
Thought about bridging but not sure if that cheap n300 router supports it. May be able to put dd-wrt on it to bridge if it doesn’t. Since I check infrequently is not really necessary for me to have bridge..I just connect to the different ssid and get data using router defaults including dhcp on.
BTW recent versions of excel allow you to import json data.
Thanks Alan. I tried the the web query but for some reason my Excel version uses the old Internet Explorer 11 instead of the new Edge engine for web querying and does not allow me to import the data, only save to an external file. I am trying to figure out if I could change the Excel default browser to Edge or Chrome which work better displaying the data when accessing http://172.27.153.1/cgi-bin/dl_cgi?Command=DeviceList .
Not sure what version of excel you are using, but I had Office 2007 running on a old machine. Here is the workaround.
Create a web query to 172.27.153.1, you will get a few script errors, but you will be able to save the query. Edit the query in notepad and change the address to http://172.27.153.1/cgi-bin/dl_cgi?Command=DeviceList . Alternatively, create a query file in notepad (sunpower.iqy for example) with the following:
WEB
1
http://172.27.153.1/cgi-bin/dl_cgi?Command=DeviceList
Selection=EntirePage
Formatting=None
PreFormattedTextToColumns=True
ConsecutiveDelimitersAsOne=True
SingleBlockTextImport=False
DisableDateRecognition=False
DisableRedirections=False
Alan, the external query worked beautifully, thank you! I created a table on the side grabbing each important cell value from each individual panel and using the cell formatting to remove the comma =(LEFT(E84,SEARCH(“,”, E84)-1)*1000). Now I have a semi-automated Excel spreadsheet that when I open it, it automatically queries the SunPower PVS6 and shows the production table below with an auto update ever minute:
Panel 1 198.2
Panel 2 189.7
Panel 3 195.7
Panel 4 195.2
Panel 5 203.4
Panel 6 266.1
Panel 7 191.3
Panel 8 273.7
Panel 9 273.7
Panel 10 194.3
Panel 11 195.7
Panel 12 200.6
Panel 13 196
Panel 14 190.3
Panel 15 271
Panel 16 196.2
Panel 17 193.6
Producing Total: 3.6471
Net Metering: -3.8847
Consuming now: 0.9793
Not sure if you guys have seen this, but all my 17 Micro inverter modules are reporting ERROR in the STATE and STATEDESCR and they are not reporting the per panel info. However the total production seems correct. I am not getting the relevant p_3phsum_kw anymore. Any ideas? I was reading something about possible power line or voltage interfere. Any ideas?
ISDETAIL: true,
SERIAL: EXXXXXXXXXXXXXX,
TYPE: SOLARBRIDGE,
STATE: error,
STATEDESCR: Error,
MODEL: AC_Module_Type_E,
DESCR: Inverter EXXXXXXXXXXXXXX,
DEVICE_TYPE: Inverter,
SWVER: 4.14.5,
PORT: ,
MOD_SN: P22MXXXXXXXX,
NMPLT_SKU: ,
origin: data_logger,
OPERATION: noop,
CURTIME: 2020,09,25,23,56,44
My inverters do that very intermittently and report all zeros for short periods of time, but then they all go back to reporting correctly. It could be caused by a power spike or grid fluctuation. I have noticed that some of the inverters take much longer than others to get back online after a reset or when I turn off the solar breaker. As with yours the PVS6 still reports the correct solar production no matter what the inverters are reporting. I used the secondary router method of connecting and additional router to the PVS6 black configuration port to report the panel level information real-time to any computer on my network.
I have this same error on all of my microinverters. Did you ever figure out what the problem was?
When there is no sunlight, the individual panels will be in “error”. In Ricardo’s post, the time was 23:56:44, which depending on time zone, would likely be dark out. In my case, that would have been 7:56:44 which based on the time of year (Sep 25), that is plausible.
How do you post a photo? I would like to post a screen shot of my panel monitor
Hi Garu,
You can’t directly post a picture, but if you have a link to the picture (hosted elsewhere), you can embed it.
So I finally have my PVS6 installed and I just purchased the n300 multi mode extender. I planned to place this inside the cover of the box and connect the usb for power and Ethernet for the comms. However, does this extender need to be configured? Or how do you access the PVS6 info from a computer once everything is connected?
On another note, if my system is sized 6.225 kw but my ac output at its peak midday only hits 4.850kw at its max (clear sunny day), is that normal? I know I won’t get near the 6.225kw since there’s some inefficiencies converting dc to ac, but I thought it would be a little higher. I guess once I can do panel level monitoring setup I can see if any of the panels aren’t functioning. My install crew came back the next day after installing saying that one of the arrays wasn’t plugged in properly, so it’s a little concerning. I am also using the sense smart monitor to monitor the total production of solar. It’s been pretty accurate based on my meter read usage
The total output is always less than the maximum rated output. You will notice that the maximum your system produces will vary throughout the year due to the angle of the sun. My system produces the most in late June when the sun is the most directly overhead. My is an 11.2kw system and the most it produces is 10.5kw. Currently because the sun angle has decreased from vertical the max the system produces 8.3kw. It will continue to drop off through winter and pick up again in the spring. You definitely want to do some kind of panel level monitoring to make sure all of your panels are operating correctly. If I had not had that information, I would have never known that one of my panels was not functioning due to a palm frond shadow. To monitor my individual panels, I used the additional router method described by Ricardo AUGUST 26, 2020 in this blog. It works great and I recommend everyone who has a SunPower system to set it up. I have set mine to provide real-time information on each individual panel reported to an Excel spread sheet. Its really too bad that SunPower does not provide this information. If I would have known I probably would have gone with a different company.
Garu is correct, production changes as the sun angle and seasons change. My system is a 5.7Kw system and the most it has produced is 5.26kw at 1-2pm since installation a couple months ago. Currently it is topping at 4.8kw.
I’m in CA new install 5.7kW topping at 3.6kW month of Oct.
I’m on a 4.9 kW (AC) (5.4 kW panel rating) system and am getting about 3.7 kW today. My peak since install in May was 4.85 kW.
Hi Scott
3.37kW was the top today for 5min.
Thanks guys, I appreciate the comments about the peak production and that makes sense. I just didn’t expect it to drop so much I guess, and thought maybe some of the inverters weren’t working. So hopefully having the panel level monitoring setup will ease my concern
So, I finally have my TP-Link Wireless N Nano Router WR802N installed in my PVS6, however I’m having trouble on configuring the device so I can access it from my home network. So this little device sits inside the housing of the PVS6, and is powered by USB and connects to the partner ethernet port. If I use my laptop to connect to the TP Link Router by changing the wifi connection (TP-Link_XXXX), then I can search in my web browser “http://172.27.153.1/cgi-bin/dl_cgi?Command=DeviceList” and get the information I want. However, I want to make it so this device wirelessly connects to my existing home wifi network, so I can access from my home computer while its connected to the internet. I don’t want to switch between the two wifi networks to get the data I need, since I want to be able to eventually poll every minute and still use my computer with internet. Any tips?
I tried to follow RIcardos steps, but his directions seem like its more for a wired ‘old’ router that is connected by ethernet to the PVS6, and also connected by ethernet to the home router. In my case, my PVS6 is outside the house. How can I setup the ‘old’ router as wireless so it will connect to my home wifi. I know that the TP-Link Wireless N Nano Router WR802N can act as a client and connect directly to an existing home wifi, or maybe setup as a wireless hotspot?
When I do the quick setup in TP Link, it gives me a choice of modes (wireless router, hotspot router, access point, range extender, and client). I choose client (which I think was right), then select my 2.4Ghz wifi, confirm the SSID and MAC addresses to be bridged, then it lets me choose LAN type (Smart IP or Static), and then its configured. I tried both Smart IP and Static, but when I try to access the PVS6, it won’t connect. Am I doing something wrong? I thought maybe instead of setting the operation mode to ‘Client’, setting it something else like ‘wireless router’ and figuring out another way to bridge the two. Any tips or help would be appreciated
Peter,
Have you figured out how to get your NANO bridged from your home network to the PVS? If so, can you share the settings? Thanks.
No I still haven’t… I’ve settled to just connecting to the wifi directly and pulling the data once a month just to see how its producing
No problem.
Has anyone noticed the change in the SP monitor data reporting? It looks like data/monitor is shut off for 15 mins or so, then turned on and for 10 mins, or so. But the data is still not posted until several hours after it’s measured. Seems the system it was changed circa Nov 12/13.
It appears that they pushed an update to the PVS6.
"SWVER": "2020.9, Build 6415"
I have no idea what the changes are; it would be nice if it added a direct local interface, but I doubt it.
I do have this on my home network now. There may be different ways to do it but I have an extra wireless router that connects to the namo router in client mode and has a static IP on the home network side. Then I set up routing in my main home router to send any traffic for 172.27.153.1 to that static IP. ( I also route traffic to the nano router subnet that way too so I can access the router if I ever need to do so.) Works fine.
Something you might try to increase your production is to clean your panels. Mine were quite dirty with ash from all the fires and some construction dust from my neighbors. I cleaned mine and thanks to panel level monitoring there is a 30 watt per panel increase which on my system means almost a 1000 watt increase overall which is significant! I cleaned two panels at first and compared the production to the dirty panels. I almost couldn’t believe there was a 30 watt per panel difference. I had read somewhere that cleaning wasn’t that important but in my case it sure made a difference. My system is about 1.5 years old and this was the first cleaning. I will clean them once a year from now on.
I have the same question as Peter, I believe. I’m trying to set up to connect wirelessly to the monitor.
Using my old TP-Link N450 (TL-WR940N) to make the bridge. I believe I have it set up with the necessary pointing, but I can’t get my LAN router (Netgear R7400) to establish a static IP to 172.27.153.0. I believe the R7400 must see the device on the network before a static IP can be assigned to it. In any event, I’m using the TP-Link MAC address and it tells me 172.27.153.0 is an invalid IP. Any recommendations?
Sorry. Ignore my prior post. It was easier than I thought. I set up my old router as an ACCESS POINT, gave the WAN the necessary static IP address, named the resulting wifi net and VOILA! I can access the data on the new network . Although it’s not on my main network, it’s accessible all the same.
Excel 2013 won’t access the url directly ( …I don’t know why), but I can save the .json file and import it to Excel from there with the proper delimiter removal.
It seems that even tho the WR802N supports WISP and will wirelessly connect to “Public” wifi, it won’t connect wirelessly to a home/private network. Is that right??
Hi Scott,
I followed your post and it worked perfectly. Can you please tell me how you calculated the From Grid, To Grid data?
Hi Prateek,
Thats great that it worked! I actually don’t calculate From Grid and To Grid. I use a box from Rainforest Automation that talks to my electric meter. If the number from it is positive, that is from grid; if it is negative, it is to grid. So for total usage, I combine it with the solar production to get usage.
Aha..Thanks for the clarification. I do have a consumption and production meter hooked up with my solar. Wondering which “key” from json would give me those values.
Look for the power meter in the JSON that ends in a c (consumption).
Found the JSON node, but would you know which tells the information about grid usages?
ISDETAIL : true
SERIAL : “PVS6xxc”
TYPE : “PVS5-METER-C”
STATE : “working”
STATEDESCR : “Working”
MODEL : “PVS6xxc”
DESCR : “Power Meter PVS6xxc”
DEVICE_TYPE : “Power Meter”
SWVER : “3000”
PORT : “”
DATATIME : “2020,11,10,18,48,13”
ct_scl_fctr : “100”
net_ltea_3phsum_kwh : “976.23”
p_3phsum_kw : “0.4642”
q_3phsum_kvar : “-0.111”
s_3phsum_kva : “0.5667”
tot_pf_rto : “0.8202”
freq_hz : “60”
CAL0 : “100”
origin : “data_logger”
OPERATION : “noop”
CURTIME : “2020,11,10,18,48,14”
I believe you want to use “p_3phsum_kw”.
Thank you so much for taking the time to post this and thank you to everyone who provided such helpful comments!
I was able to follow the instruction and get this up and running with my PVS6 and home assistant.
Scott,
I have the same issue with everyone else. I can’t tell if all my panels are working since SunPower no longer provides that information. All I want is to able to see if my panels are working or not. I’m absolutely new to this, do you know if this will work with PVS5X? I’m planning to order Raspberry Pi3 (B+) from Amazon.
https://www.amazon.com/s?k=raspberry+pi+3&crid=1RJM8DHY2YHHJ&sprefix=ras%2Caps%2C297&ref=nb_sb_ss_ts-a-p_8_3
Hi Pat,
Unfortunately I don’t know if this works with the PVS5X. You could give it a try, but I have no idea if it runs the same firmware as the PVS6 and if this monitoring is possible. Sorry I don’t have better news.
Thank you Scott. I will give it a try. By the way, how does SunPower knows that you were monitoring your own panels and are you able to view to this day?
Hi Pat,
I don’t know if SunPower knows about my monitoring; I suspect they don’t, but could change things via a firmware update later. I’m still able to monitor on the SunPower site as well as my local monitoring.
Thank you for this excellent write up. I have very little coding experience and have a few questions. I have set up the rpi (cut and paste the code) but do not know how to pull the http request. I connected a computer to the same network as the rpi and put the http://10.0.3.55/cgi-bin/dl_cgi?Command=DeviceList into a chrome browser (it didn’t work). I was trying to figure this out but haven’t found a good resource. I’m not that interested in continuous data but want to ensure I don’t have a bad panel. (we had a bad experience with our prior roof and I have little trust in contractors). Can you point me to a good reference to learn this next step. Thanks.
Hi Max,
Unfortunately I don’t have any good references for you. However, the 10.0.3.55 just happens to be the IP address to MY Pi got. You’ll want to look at the IP list on your router to figure out what it is for your Pi. Once you figure it out, you’ll want to set a static DHCP reservation for it. Maybe that will be enough to get you going.
Hi Scott,
Long time no talk! Before I can try any of this I need to enable Sunpower to reach the PVS6. The Orbi firewall blocks all incoming requests by default… do you know what I need to open up and route to the PVS6, Sunpower is less than helpful 🙁
Thanks
Hi Maurice,
It sure has been a long time! SunPower isn’t making any incoming connections to the PVS6; the PVS6 establishes outbound connections to SunPower. I wouldn’t think that the Orbi is blocking outbound requests by default as that would be pretty annoying!
Are you sure that your PVS6 has been properly configured by the solar installer?
Hi Scott,
How would I tell if it’s been properly configured? (and I’m definitely willing to entertain that possibility… after all they didn’t seal the power cable coming into the roof… wet!)
Hi Maurice,
When they turned on my system, SunPower sent me email to setup an account. Using their website, I was able to see the production. If you don’t have a SunPower account, I’d start with your installer to get that.
I’m assuming it’s configured correctly as I too got that email and have an account. Sunpower says they can see it over the cellular backup, so again, it’s probably configured correctly.
The only thing I can think of is something to do with the network configuration: ORBI RBR850 base –> Satellite –> PVS6. If there’s no incoming, I don’t know if the firewall is aggressive about outgoing and there’s no advanced features that I can find for checking that (the web UI is still lacking.)
Any hints/pointers/suggestions appreciated.
I’d check the device list on the Orbi as it should show up. It would be highly unusual for a consumer router to block outgoing connections on standard ports (SunPower is likely using the standard SSL port, 443, for a connection to their server). I’m not sure that cellular is setup for most users as there is a cost involved that I’m sure they want to avoid. I think the SunPower dashboard lets you configure the WiFi, but I’m not sure as I hard wired my PVS6.
They did the same thing but the system never showed up despite being connected to my WiFi. My first theory was firewall because the installation instructions specifically say that the customer should turn it off. If it isn’t that, I’m not sure what it could be. The PVS6 is connected to the Orbi satellite which is in turn connected via WiFi to the Orbi base station. Unfortunately there’s very little access to the kind of info I’d like on the Orbi (decent logs, configuration, etc.)
Hi, I have a SunPower 11.5 Kwh system – 29 – 410w Panels. and2 Tesla PowerWalls.
I just connected my notebook w/ a wired connection to the BLK Ethernet port on the SunPower Module.
BTW – it pushes out DHCP, so any can put a Dummy switch in between and connect via that.
I went to 172.27.153.1/cgi-bin/dl_cgi?Command=DeviceList and it gave me the raw data.
Any Idea how I can covert this to graphical UI mode and have it update in real time.
Hi Rengy,
That’s great that you were able to grab the data! How you graph it and show data is going to depend on what other infrastructure you have in your house. I’m using Home Assistant, Node-RED and Grafana to update my data. Basically Node-RED polls the PVS6 every 60 seconds, parses the JSON and pushes the data (as sensors) into Home Assistant. Then I use Grafana to graph the data from Home Assistant. Since I wrote this entry, I’ve changed my Node-RED to publish to MQTT and then Home Assistant picks that up.
I wish there was a turnkey way to handle this data, but it is really going to depend on your setup.
If you like tinkering, I’m sure you’ll find a solution that works for you!
Hi everyone, rengy here,
Had a long talk with my Solar Installers from Solar-Fit in Ormond Beach FL and we were on the phone with SUnPower.
They will be releasing a update to the APP that will show individual solar panels output. They were getting a lot of calls with current APP as customers who own their product cannot see or know if a panel or inverter was not functioning.
I asked the support Eng. why this not offered as all other Solar Panel manufacturers do this. I told them you are not monitoring my system nor are the installers, so why can’t we as customers who own the product do it.
Also FYI if you can connect to your SunPower Module straight via Ethernet (via notebook or similar – it does push out DHCP) then open browser and go to – sunpowerconsole.com. VIOLA go thru prompts and you will see each panel power generation.
VIA wireless you should see a SSIS w/ Sunpowerxxx – password is first 4 numeric values and the last 4 numeric values. LOL.
My installers gave that tidbit.
Hope this helps.
Happy New Year everyone. Stay safe and healthy.
Thanks Rengy – i was able to connect to the PVS6 via wifi.
When you walked through the prompts, after it checks firmware (step 2), I get “Are you updating an existing site” with an option to select yes or no. Did you get this and which one did you select?
Also, step 6 (commissioning site) indicates Sunpower monitoring credentials are needed. Are those the same used to login to the app/website for sunpower?
sorry to clarify.
SSID password is on SunPower PV module (open it and the first 4 numeric and last 4 numeric)
LED – RED is bad
LED – Blue boot Up
LED – Green – s/w update (takes a freaking long time)
LED – purple – all systems ok
Hi Rengy,
This is useful! When you say SunPower PV module, do you mean the PVS6?
Thanks!
OK got it; first 4 and last 4 digits of the PVS6 serial number. Anyone know of a way to disable the WiFi and the cellular connections? I’m thinking of disconnecting the antennas, but would like the WiFi to stop broadcasting.
The only way I could disconnect the Wi-Fi and cellular was to pull the connections at the board level. There was no software way I could find. You have to open the PV6 and remove the little connectors for the antenna. If you just disconnect the antenna it will still broadcast Wi-Fi and cellular
Hi Garu,
If I disconnect the antennas, I can at least attenuate the signal and in the case of cellular, might be enough to disconnect it. It seems like a poor design to keep broadcasting an SSID when not needed. Also it seems like a waste to have a cellular connection when it isn’t needed.
I tried disconnecting the antennas by unscrewing them. It did attenuate the signal a little bit but it was still strong enough to transmit the SS ID throughout the house. I even tried wrapping the unscrewed ends with foil and grounding them but the signal still came through. The only way I could halt the signals was to unsnap the lines on the board. The signals are still there but very weak.
Thanks for the info. I’m not quite ready to break anything, so I’ll probably just unscrew the antennas and see how it goes.
You can configure the connections on the sunpowerconsole.com site
Hi Alan,
I’m not sure you can disable any of the interfaces through that portal.
Yes
Hey Rengy, you mentioned were you able to see panel level production after connecting directly to the PVS6 by going to the sunpowerconsole.com site. Can you provide more detail on those steps for that site. I started, but held off going any further when I got the message “Are you updating an existing site” and given the choice of yes or no. I got this after it checked for firmware updates.
Alan,
Yes – you select “Updating a existing site.
But do not select – REDISCOVER
Rengy,
My router pickup several SunPower SSID in the area. How can I tell which is mine? Also, if you can please list a step by step on connecting to my PVS6 (wireless) that would be greatly appreciated. My goal is to see if all of the panels are working since SunPower doesn’t monitor panels or even alert you when the panels are not working. Thank you!
Alan,
Curious to know, are you able to complete the setup?
I was, thanks to Rengy!
To save you all some trouble, connect directly to the PVS6 (I chose to connect wirelessly per Rengy’s instructions) and trying going to:
http://www.sunpowerconsole.com/#/summary
I am able to type that site in and it pulls up my panel level production.
If that does not work, here are the steps I had to complete to get to the summary page:
Go to Sunpowerconsole.com and that will redirect to landing page:
http://www.sunpowerconsole.com/#/landing
Select Residential
http://www.sunpowerconsole.com/#/network/config
Click continue
http://www.sunpowerconsole.com/#/firmware
After firmware is checked / updated click continue (this will take several seconds before going to next screen). The first time doing this updated the firmware of my inverters.
“Are you updating an existing site”
Click Yes
http://www.sunpowerconsole.com/#/rma-device-selection
Select your PVS and click continue
http://www.sunpowerconsole.com/#/devices
Do not click “rediscover”
I was not able to click continue, had to click on “configure” for the AC Modules and it takes you to this site:
http://www.sunpowerconsole.com/#/devices/inverter-micro
I did not change anything, just clicked done and that takes you back to:
http://www.sunpowerconsole.com/#/devices
Then I was able to click continue
Then get a popup indicating the inverters are being claimed and then you can click continue and it takes you to the summary page
http://www.sunpowerconsole.com/#/summary
You can hover over the “info” to the right to get more details on each panel/inverter
It appears it is point in time data.
None of the above sites can be accessed.
I just tried, it still works for me. Have you connected directly to the PVS6 either wired or wirelessly?
For those of you you have setup a bridge with an old router or with a pi you can access it by replacing “http://sunpowerconsole.com” with the ip address. For example my pi bridged to my PVS6 is 192.168.10.105, so I can go to 192.168.10.105/#/summary from any device on my network to get the results.
As I already have a pi setup that is pulling data, I don’t see using the summary page myself very often, but for those of you wanting an easy solution to see panel level production without setting up a bridge, then connecting to the PVS6 directly (wired or wirelessly per Rengy’s instructions) and going to http://www.sunpowerconsole.com/#/summary may be exactly what you are looking for.
Thanks to Scott and Odin I’m monitoring the PSV6 using the Pi Zero W in the PSV and a Pi 3+ running hass.io (Home Assistant) collecting the data.
Scott, a relatively simple question. For Grafana, I think the queries are sum() based, not mean() based… is that right?
Tks
Hi Maurice,
That’s great that you got it running! For Grafana, I think it depends on what you want. As I’m usually looking for an instantaneous measurement, I typically use mean() and not sum(). I don’t understand everything about Grafana, so I experiment to get what looks right!
FYI, I changed the Node-Red flow to capture the solar cell info only during daylight hours. I put a timerange node between the timestamp and Get Solar Info function. The start time is dawn and the end time is dusk.
That works!
Thanks for posting this!!! It annoyed the crap outta me that I couldn’t see the individual inverter statuses.
I had an old “beaglebone” lying around that I used. I slapped a $10 TP-Link N-150 USB wifi adapter in it, installed the latest debian image, configured the Ethernet and Wifi settings (through the connmanctl command line interface) and followed your steps for the haproxy setup exactly.
It took some fiddling with the beaglebone connection manager but I got it working. I had to enable simultaneous connections over Ethernet and Wifi, the default settings were just selecting one or the other. I plugged into the sunpower USB ports for power using a USB A to mini USB cable. Using a USB A to barrel plug on the beaglebone surprisingly didn’t work, maybe it failed to handshake the power requirements with the sunpower controller?
With the USB mini power connection the entire assembly fits in the sunpower box. Your Node-red flow worked perfectly once I updated the URL with my IP address to the beaglebone.
Hi Scott,
Are you saying your PVS6 is constantly broadcasting and the Wifi Network for PVS6 is always available? I am not seeing that behavior, and was also told by my installer that Wifi is enabled for 4 hours after the system is switched on, so if you want the wifi network enabled again then switch the system off at the breaker and then switch it back on. If there is any option for constant Wifi, I would prefer that so that I can monitor panel level info without going through any complicated setup. Right now I am using the Sunpower Rest API to track panel level total generation.
Hi Nirav,
My PVS6 is always broadcasting its WiFi network (as well as a Bluetooth connection). I’d prefer that it switches off after 4 hours (though that seems like a really long time for setup), but unfortunately I don’t know how to turn that on (or in your case, turn it off!).
Hi Nirav,
I posted the links to the installer documentation above. The installer is correct about the 4 hour limit but that’s not the whole story in two different ways.
First, although the command WiFi switches off after 4 hours the LAN1 Ethernet port is always active. There may even be a command to keep the setup WiFi active though I don’t know if there is.
The second is that there are two different WiFi connections on the PVS6, just line there are two different Ethernet ports. The second one is for connecting to the remote SunPower monitoring system. Unfortunately they have a really poor setup that requires “no firewall” on your router which is highly risky. There “technical” support is anything but and so far I haven’t found out how the communication between SunPower and the PSV6 happens. Worse, the flood of connection attempts across many TCP (I think) ports looks like a denial of service attack.
There ineffective WiFi monitoring is why I do my own. They get some report info over the cellular connection.
Hi Scott,
DO NOT UPDATE YOUR PVS6 FIRMWARE
I believe SunPower is at it again! My PVS6 just updated its firmware to the latest Version 2021.1, Build 9197. Now when I log into the PVS6 it tells me that SunPower is dropping the PVS Management app come April 30th 2021 and will be replacing it with a proprietary SunPower App “SunPower Pro Connect” https://us.sunpower.com/products/software/sunpower-pro-connect that only installers will have access to. I do not know if this will disable our panel monitoring but it will for sure stop those who check their panels using the http://172.27.153.1/#/summary . We really should start a class action lawsuit against SunPower to force them to provide the panel level information we paid for and need to insure our panels are functioning properly. I will post any additional information I can get on this seemingly malicious firmware update.
Thanks for the tip! Does it automatically update? I’m still on 2020.11, Build 8616. I’m not sure if I understand; did it disable http://172.27.153.1/cgi-bin/dl_cgi?Command=DeviceList?
The update has not changed anything yet related to monitoring the PVS6 and will not until April 31. The PVS6 automatically updates firmware if you progress through the steps of the 172.27.153.1/#/landing , when you choose “Residential” then “Communication” then it automatically “Checks Firmware” and updates. My PVS6 now has a window that opens and states that SunPower will be “sunsetting” the app April 31, 2021, and at that time all will be forced to use the new “SunPower Pro App” with an installer account and password. I talked to my installer about this. His response was that he just found out about this mandatory update a few days ago. He also said that he has used the new app and that “the app is trash”. He did not know how it would affect our panel monitoring. I guess we will have to wait and see. But I wish I had not updated my PVS6 and would warn others not to do so especially if they use the simple method to check their panels of http://172.27.153.1/#/summary as it looks like this will go away with the new app.
Thanks. I wonder if the PVS6 updates its firmware automatically. I hope not as I want to keep my local monitoring!
The question is whether that update will prevent the current information reporting URL over LAN1/configuration WiFi. I know it’s speculation, but it seems unlikely that the feature will be turned off. To do so would require significant code changes to the firmware which is a very expensive thing to do (read: requires a lot of testing to minimize risk.)
I suspect they’ll just change the main configuration page to show content directing the installer elsewhere and leave all the other infrastructure in place.
I also suspect that the CGI commands that produce the data are code shared between the configuration WiFi and the external reporting WiFi/Cellular connections. The external reporting is definitely based on connecting to a web server on the PSV6 from the outside (hence all the “turn off the firewall” requests.)
Another reason for saying this is that the overall competence of the SunPower software engineering staff seems average at best. There’s lots of bad design decisions and blatant security holes, something that an experienced team would never do.
Let us keep our fingers crossed that all the update changes is the app and not the way the PVS6 communicates as SunPower has notoriously done whatever it takes to block consumer panel monitoring (recently doing away with sunpowermonitor.com consumer access to the panel level monitoring website). As my PVS6 has already updated its firmware, I will post if anything changes to my panel monitoring come April 31.
I’m in support of that. SunPower is not giving panel-level access because their inverters are not producing what they are rated to produce. For example, if an inverter is replaced on an existing, previously installed panel, the power output increases by appx. 16-19% IMMEDIATELY. Is it any wonder why SunPower does not want the customer to have access to this data?
Did you experience this power increase with your system? If so what age panels do you have? I had heard that some of the older SunPower inverters we’re failing and needed to be replaced. Maybe the lower power output is a sign that the inverter is starting to fail.
I am not sure if SunPower can force a firmware update, but I know that the first thing the technicians do on a service call is to check and update the PVS6. So you might want to have a chat with your technician beforehand.
I just had my system installed. I was able to check the summary by connecting a laptop to the PV6 LAN, and going to http://172.27.153.1/#/summary. Can confirm Garu’s comment about the app going away end of April.
However, I can’t connect wirelessly since the SSID doesn’t show up. I read that the SSID is only available for 4 hours after the PV6 is turned on so guessing that’s why I can’t see it. Any ideas to connect wirelessly?
Hi Marc – my PVS6 consistently broadcast wifi. However, if yours doesn’t, you can create a bridge to your network using a small travel router and/or use a pi. I believe both of those options are listed in the above comments
It looks like my PVS6 automatically updated to firmware version 2021.1, Build 9199 and I still have my local monitoring. I’m not sure if the status light colors changed, but mine is showing green most of the time.
After my PVS6 updated to the latest firmware I noticed a few changes:
1. Like Scott’s my monitor light is now green.
2. The panel information refresh has been slowed on my unit and has gone from 5 minutes to 15 minutes. (Bad)
3. The PVS consumption/productions meters seems to refresh faster under 5 seconds now. (Good)
4. The below information showed up on the consumption meter. Note I guessed on the meanings, but it seemed to fit with my data.
• “i1_a”: Amps on CT 1
• “i2_a”: Amps on CT 2
• “v1n_v”: Volts on Line 1
• “v2n_v”: Volts on Line 2
• “v12_v”: Volts Total Line 1&2
• “p1_kw”: K Watts + or – Line 1
• “p2_kw”: K Watts + or – Line 2
• “neg_ltea_3phsum_kwh”: Total Negative KWH consumed
• “pos_ltea_3phsum_kwh”: Total Positive KWH Consumed
Thanks for the info on the panel refresh; that’s really too bad that it has slowed so much. I really don’t know why it isn’t updated much faster.
Hi Gary,
Could you be more specific on what these lines mine and how to interpret them? I am looking for the fields that show my current and lifetime power consumption. I have:
“neg_ltea_3phsum_kwh”: “9856.6974”,
“pos_ltea_3phsum_kwh”: “10005.0955”,
But also
“net_ltea_3phsum_kwh”: “14535.2303”,
“p_3phsum_kw”: “0.8852”,
On two different monitors.
Thanks.
On your consumption monitor “C” – the 10005 indicates you have used that many kwh from your utility and you have sent 9856 back to your utility for a net use of 149kwh.
The net_ltea_3phsum_kwh on your “C” monitor should be 149.
The 14535 on your production monitor “P” indicates your lifetime production. You should see this on your sunpower site.
Thanks Garu.
A quick follow-up.
The following comes from my Consumption Power Meter:
“p_3phsum_kw”: “6.9333”,
When this number is positive, I means I am consuming 6.9kW of power and then it is negative, I am pushing this number back to the grid, but this represents the “net” (production – consumption).
Is there a data field that shows the raw consumption (before netting out the production). (I can get the production by summing the inverters). Alternatively, if this is not track, I guess I could calculate it from using the net value and then subtracting the sum of the current inverter production.
Please let me know if this makes sense.
Thanks.
On my unit the Power Meter p_3phsum_kw only reads the solar power being produced. It does go negative at night when no solar power is being produced. Only about -14watts as the panels consume some power to run the inverters. On my Consumption Meter side the p_3phsum_kw will go negative if I am producing more solar and positive when I am using more grid power than solar produced. I subtract the two p_3phsum_kw(s) to get how much power my house is actually using. The Power meter has current sensors (CTs) on the mains coming from Solar panels and can only read solar power produced. The Consumption meter is a separate entity in the PVS and has current sensors (CTs) on the mains coming from the grid. It can only read net power being used by the house. It is negative when my panels are producing more power than I am using and it is positive when I am using more. Right now, because it is somewhat cloudy, my system is producing 6468 watts of solar, 5312 watts to the grid and my house is using 1156 watts. I hope this helps and is not making your setup more confusing.
I believe you already received an answer from Alan, but this is what information I have on the PVS6 and inverters. Most of this info was from previous comments.
Inverters
• freq_hz: Operating Frequency
• i_3phsum_a: AC Current (amperes)
• i_mppt1_a: DC Current (amperes)
• ltea_3phsum_kwh: Total energy (kilowatt-hours)
• p_3phsum_kw: AC Power (kilowatts)
• p_mpptsum_kw: DC Power (kilowatts)
• t_htsnk_degc: Heatsink temperature (degrees Celsius)
• v_mppt1_v: DC Voltage (volts)
• vln_3phavg_v: AC Voltage (volts)
Power Meter
• CAL0: The calibration-reference CT sensor size (50A for production, 100A for consumption)
• ct_scl_fctr: The CT sensor size (50A for production, 100A/200A for consumption)
• freq_hz: Operating Frequency
• net_ltea_3phsum_kwh: Total Net Energy (kilowatt-hours)
• p_3phsum_kw: Average real power (kilowatts)
• q_3phsum_kvar: Reactive power (kilovolt-amp-reactive)
• s_3phsum_kva: Apparent power (kilovolt-amp)
• tot_pf_rto: Power Factor ratio (real power / apparent power)
Supervisor
• dl_comm_err: (?) Number of comms errors
• dl_cpu_load: (?) 1-minute load average
• dl_err_count: (?) Number of errors detected since last report
• dl_flash_avail: amount of free space, in KiB (assumed 1GiB of storage)
• dl_mem_used: amount of memory used, in KiB (assumed 1GiB of RAM)
• dl_scan_time: (?)
• dl_skipped_scans: (?)
• dl_untransmitted: (?) Number of untransmitted events/records
• dl_uptime: number of seconds the system has been running
• panid: (?) Panel ID
Some New Items showed up on the Power Consumption Meter when I did the latest PVS6 firmware upgrade
• “i1_a”: Amps on CT 1
• “i2_a”: Amps on CT 2
• “v1n_v”: Volts on Line 1
• “v2n_v”: Volts on Line 2
• “v12_v”: Volts Total
• “p1_kw”: K Watts + or – Line 1
• “p2_kw”: K Watts + or – Line 2
• “neg_ltea_3phsum_kwh”: Total Negative KWH consumed (from utility)
• “pos_ltea_3phsum_kwh”: Total Positive KWH Consumed (to utility)
You can sum the inverters but is not as accurate as the information from the CTs. There are some line losses and the inverters have low-end current sensors. They provide information mainly as a reference to panel operation. Also the inverters update much more slowly than the PVS meters.
Scott
This is the first time I’ve this and I’ve have hit a road block. I’ve got as far as connecting the PI to the PVS6 but the only response I get i node-red is ” no response from Server”. I can ping the PI and both network lights are flashing at the jack, what might I be missing?
Hi Bill,
You’ll want to make sure that this call: http://10.0.3.55/cgi-bin/dl_cgi?Command=DeviceList works (replace the IP address with that of your Pi). If it doesn’t, then your bridge isn’t setup correctly.
When I change it to my PI’s address I get the following
Error: connect ECONNREFUSED
Hi Bill,
You’ll want to double check that the proxy is setup correctly; I suspect it isn’t. If you use a browser, you should get JSON returned.
Scott
when I add in your step
#11: Add the following to /etc/haproxy/haproxy.cfg
the haproxy load balancer fails to start, any suggestions?
Hi Bill,
You might want to check the tabs/spaces for the lines. Look at what the errors are in /var/log/haproxy.log to see if it tells you what is wrong.
I double checked my running configuration and it matches what I posted.
Hi all, just to chime in with my relatively simple setup.
I have a wired connection to my pvs6. So I bought a pair of RJ45 splitters (you can find them for $8 on Amazon).
RJ45 splitters allows you to send 2 ethernet signals over 1 ethernet cable at the same time. No additional power adapters are needed.
First splitter is in the pvs6 box, LAN1 and LAN2 from pvs6 are connected to a splitter from one side and the ethernet cable that connects to my router is connected to the other side of the splitter.
Second splitter is connected to the other side of my ethernet cable (that was previously connected to my router). And then I connect LAN1 output from splitter 2 to my Pi and LAN2 from splitter to my router.
It was easier then drilling anther hole in the house and pulling another ethernet cable.
My Pi runs prometheus and grafana directly communicating to my pvs6.
I connect to grafana on my pi when I need to check the data (pi connects to my local network via wifi).
Also to report my system is 5.8kw, max AC is 4.8kw, max ever produced so far 3kw AC (only have the system for 2 months).
Hi Everyone,
Just got a notice SunPower is updating their APP.
ios users will get it by Feb 16th as will google Play, rest by end of spring 2021
Does anyone have the list of commands and definitions for the PVS6?
http://10.0.3.55/cgi-bin/dl_cgi?Command= ……………
I had it but I can not find it
https://github.com/ginoledesma/sunpower-pvs-exporter/blob/master/sunpower_pvs_notes.md
Start
Stop
Get_Comm
Device List
CheckFW
DeviceDetails (Extra parameter SerialNumber required)
GridProfile
GridProfileRefresh
GetCellPurchased
GetDiscoveryProgress
SetCellPurchased
Very useful information and discussion. While struggling with lack of data in the SunPower monitoring dashboard, I noted that there is still an API call to SunPower’s server under the browser’s covers that retrieves the panel-level data. The dashboard doesn’t display that data anywhere, but the API can be used (until SunPower disables it, anyway) instead of hooking directly to the PVS6.
You can see the call in a browser like Chrome by turning on Developer tools and looking in the Network tab. There is a call to
https://elhapi.edp.sunpower.com/v1/elh/address/
<
address id>/components
(where
<
address id> is a 6-digit code for your system). There are other parameters that must be sent in the header including an authorization token. The return JSON has rows with detailed data for AC_Module_Type_E (22 in my case), and a row each for PVS6M0400c (consumption, right?) and PVS6M0400p.
The next step is to write a little app to call the API every x minutes, store the results locally, and visualize the data.
Nice find Jim!
I was looking around at the different calls in the networking tab and see a few (device status, energy?), including the one you referenced (components). My address is a 5 digit one, the same one from the SunPower partner site.
Where are you finding the authorization token?
Hi Alan, one option is to click on “components”, a pane will open to the right. Click on the Headers tab and scroll down to the Request Headers section. I’m not sure whether this auth token is fixed until you change your password, or has to be refreshed at some interval. Earlier in the list you’ll see a “session” request that passes in and returns the auth token, and returns the address number.
Those other calls to energy, power, etc. are providing the data used by the javascript to populate the graphs. devicestatus has the status for various components of the pvs6 itself.
Thanks for the reply, guess I’m not going to figure it out without more detailed steps. Under the Request Headers, I see an “authorization” with the following value:
SP-CUSTOM xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
When I’m on the networking tab and I log into the site, i get an “authenticate”, then my address number, then a 6 digit user number, then a “session”. Am I anywhere close?
Would you mind sharing what you are passing in the url? You mentioned you had to pass the token plus some other parameters.