sungazer

Current version is 0.2.5.

sungazer is a Python library that provides can be used to interact with the SunPower PVS6 API.

Why make this library?

When SunPower entered Chapter 11 bankruptcy in 2024 (see SunPower Bankruptcy and Current State), they sold their monitoring tools (among other other parts) to SunStrong Management. The new company has changed the already poor SunPower monitoring iOS and Android application such that it hides most of the functionality behind a subscription paywall, and the application is now very limited.

Furthermore, the SunPower PVS6 API provides a ton of functionality that is not available in the SunPower monitoring application, and the API is not documented anywhere. This library provides a way to interact with the SunPower PVS6 API using Python, granting access to the data that is available in the API.

Impact on Customers

The bankruptcy and subsequent asset sale had several major impacts on SunPower customers:

1. Monitoring Application Changes: The original SunPower monitoring iOS and Android applications were modified to hide most functionality behind subscription paywalls.

2. Limited Access: Many features that were previously free became premium features, requiring monthly or annual subscriptions.

3. API Access: While the underlying PVS6 API remained functional, official documentation and support for direct API access was discontinued.

4. Data Ownership: Customers found themselves with limited access to their own solar system data through official channels.

5. Customer Support: SunStrong only took over the leased SunPower systems, not the systems bought outright or via third party financing. SunStrong only answers support tickets – calling them says to use the ticket system. Unfortunately, the ticket system requires a login, which is only available if you are leasing a SunPower system. Thus you’re out of luck if you bought a system outright or via third party financing.

See SunStrong Management and you for more details.

Current State of SunPower monitoring

As of June 2025, with the firmware version “2025.06, Build 61839”, the situation for former SunPower customers is as follows:

  • Official Monitoring: The iOS/Android app provided by SunStrong is limited to real time data; all other data is hidden behind a subscription paywall, currently $9.99/month or $99.99/year (as of June 2025).

  • API Access: The API on the PVS6 accessed via the installer LAN1 port remains functional but undocumented

  • Installer website: The installer website on the PVS6 LAN1 port is up, but shows 403 Forbidden.

  • Customer Support: Only available via the SunStrong ticket system, which requires a login, which is only available if you are leasing a SunPower system (as of June 2025).

For those of us who bought a system outright or via third party financing, we are out of luck. SunStrong does not support us, and at any rate the SunPower/SunStrong applications were extremely limited in functionality (e.g. no per-panel data, no no export of data, etc.). We are left with a system that is not supported by SunStrong in terms of critical monitoring, and we are left to our own devices.

Commercial Alternatives to SunStrong Monitoring

If you don’t want to muck with building your own monitoring solution, there are a few commercial alternatives to SunStrong monitoring. We who support sungazer are not affiliated with any of these companies, and we are not endorsing them. We also have no experience with them, but we list them here for completeness.

All of these solutions seem to require replacing your PVS6 with a new monitoring device (which has associated costs for the hardware and installation), and using a different monitoring application.

The Future

While SunPower continues to operate under new ownership, the focus has shifted away from supporting legacy monitoring systems. This has created an opportunity for open-source solutions that can provide customers with the data access they need without the limitations and costs of official applications.

Libraries like sungazer help bridge this gap by providing reliable, documented access to the PVS6 API, allowing customers to maintain full control over their solar system data and monitoring capabilities.

References

The following documentation sources are tremendously helpful in understanding the PVS6 API and how to use it, and were referenced heavily in the development of this library. Many thanks to the authors for sharing their knowledge and experience.

And most especially, a truly invaluable and comprehensive resource:

Other Software

These are other software projects that are related to the SunPower PVS6 API, and may be useful for your own projects. Looking at their code may be useful for understanding the API and how to use it in different ways.

  • sunpower-pvs-exporter: A python based Prometheus exporter for the SunPower PVS6.

  • hass-sunpower: A Home Assistant integration for SunPower PVS6 systems.

  • sunpower_hass: An intermediate CGI script that can be used to get data from the PVS6 and expose it to Home Assistant. You run it on a Raspberry Pi connected to the PVS6, and use Home Assistant to display the data. Good docs for how to do the hardware setup.

  • sunpower-ess-monitor <https://github.com/webdeck/sunpower-ess-monitor>: Monitors a SunPower ESS (battery system), publishing metrics to a MQTT broker. Note that this is not for the PVS6, but for the battery system.

  • pysunpower: Another Python API client for the PVS6

  • SunPower_Solar: A Rust implementation of a SunPower API client that pulls data from the PVS6 and exports it to a MySQL database via a Raspberry Pi.

  • esphome-sunpower: This repo contains a series of experimental ESPHome components which gather data from SunPower PV Supervisor (PVS) devices. It requires ESPHome 2024.6.0 or later. This includes an interesting synthesized version of the “From Grid” and “To Grid” power data when that data is not available in the API.

  • pvs: A Ruby gem that can be used to get data from the PVS6.

  • Sunned: A python script that polls dl_cgi?Command=DeviceList and stores the results in a database.