Get-EnphaseData-v7.py

Enphase has caused an ongoing kerfuffle by changing the authorisation mechanism of their Envoy solar controllers, usually without notice, by virtue of a firmware update.

Where previously you could login to your Enphase solar setup with basic username and password authorisation, now you need to provide an authorisation token created by the Enphase website.

We fell foul of the same update and have lost some data, but here I present the updated version of the script.

If you’re still running v5, this script is the one you need. To determine your own Envoy version, login to the Enlighten website, click the hamburger then System / Devices / Gateway.

Additional Pre-Requisites

The pre-requisites for this script are the same as for v5, but with some extras:

  • You need to provide the script with your (Enphase/Enlighten) username, password, and the serial number of your Envoy.
  • Your Envoy now needs access to the Internet (so it can request the token as required). The tokens are “long-lived”, and could last a year, so if you’re concerned by the open internet access you can allow it for the setup, then block it until it stops working and requires another token. (The script automatically attempts to update the token if the one it’s been using dies.)

Download and install the Script

You’ll find the script Get-EnphaseData-v7.py on Github.

Setup

The PRTG side of things is unchanged from the v5 version here.

Where the v5 version had your *local* credentials baked into the script, now it requires your *online* cred’s, as outlined above. Don’t forget to edit the script with these details before proceeding. You’ll find them at around line 30.

Revision History

25th July 2023. This is the initial publication.
 
– Greig.

Leave a Reply

Your email address will not be published. Required fields are marked *

... and please just confirm for me that you're not a bot first: Time limit is exhausted. Please reload the CAPTCHA.

This site uses Akismet to reduce spam. Learn how your comment data is processed.