Enphase Envoy Plugin  

Developer: Glenn's Plugins     Like this plugin? Show your appreciation!
Category: Energy Monitoring
Github: Github Repo
Assistance: Get help!   
Plugin ID: com.GlennNZ.indigoplugin.EnphaseEnvoy
Latest release: v1.8.0 released on April 25, 2026
Requires: Indigo v2022.1.0 or higher
(Check the Releases tab below for older releases that may have different requirements)
  Download release v0.8.01

Enphase Envoy-S Plugin (including per Panel Individual Data/Monitoring)

https://github.com/Ghawken/IndigoEnphaseEnvoy/releases/latest

Emphase is a per panel solar generation solution - via the use of roof based microinverters. This plugin monitors each panels output, and reports all useful data from the solar Enphase system via the Envoy-S. See:[url]http://www.enphase.com[/url] & For a international map of their thousands of installs see. (last count I see 540,000 installations.... :P ) (gotta be some Indigo users out there ???) [url]https://enphase.com/en-us/map[/url]

This Plugin connects the the local Enphase [i]Envoy-S[/i] device and pulls all information; including individual panel output (regardless of whether you have that option with your install)

It connects locally to the envoy device - and does not use the enlighten / web-service API. The local connection provides much more information, is more UpToDate and can be pulled every few minutes without problem. Having compared the two over some time there is no comparison to this minute-minute data.

[size=100]Usage/Installation:[/size]

Install Plugin - from Github as above. (once installed can update from within Plugin)

I recommend you Create a New Folder for devices. Whilst you might only have one device - the Enphase Envoy-S: If you choose to use panel monitoring (and there is no reason not to - individual panel devices will be created in that folder)

Create "Enphase - Envoy-S Device" (the Panel devices must be generated by the plugin if needed)

Enter your IP address for you local Envoy (ideally will need static IP)

Enter your Envoy Serial Number (located on web page as seen below:)

Save.

The Plugin has a number of Custom states - showing current production, consumption, and net power (negative indicating exporting power). (amongst others)

Device states change from importing to exporting for triggering activity/control pages.

If that's all you want/need - leave it at that. :lol:

But: If you want Per Panel data (and no negative) - go back into the Envoy-S device & enable per Panel data and click the newly appeared generate panels button. (if change mind - this button will change to delete after checkbox unticked - beware though - if you re-generate panels a while later the Plugin will create a whole lot of new Devices which will mean Control Panels etc will need to be redone)

This will generate a PanelDevice for each Panel you have installed.

This shows current Panel output and any status reports and custom states as you can see.

This is still a work in progress, and expect some ongoing modifications(in fact can already see some typos on the pictures posted :<) - but hopefully useful for someone.

Glenn

Release details
Released on: April 25, 2026
Requires: Indigo v2022.1.0+
Changes in this release

Release 1.8.0 — Faster Panel Data, Grid State Reporting, DPEL Support and Installer Token Enhancements

Summary

Improved Enphase Envoy polling, faster panel reporting, grid import/export states, installer-token panel data, DPEL support, battery/tariff devices and multiple bug fixes.

DPEL

Changes and updates

Envoy and panel reporting

  • Added menu item to log the last time the Envoy heard from panels.
    • Useful for checking panel reporting delay.
    • Helps identify stale or offline panel data.
  • Added menu item to test the most up-to-date panel data endpoint.
    • Checks three available panel data options, including an installer-token endpoint.
    • In testing, the installer devstatus endpoint appears to provide the fastest updates.
  • Added installer-token panel updating where available.
    • Adds panel temperature.
    • Adds AC voltage.
    • Adds DC current.
    • Adds watts.
    • Allows more frequent and more accurate panel updates.
  • Added fallback to api/inverters if no installer token is available.
  • Added support for multiple panel endpoints.
    • Some Envoy units report correctly on older endpoints only.
    • Plugin now tests available options and uses the supported endpoint.
  • Added pending output/support states for panel data.
  • Panel offline logic now uses lastReading time greater than 15 minutes in the past.
  • envoyPollingInterval is now pulled once, which appears to commonly be 15 minutes.
  • Fixed lastCommunication resetting when a microinverter disappears.

Grid state and power reporting

  • Added grid_text summary for overall grid state.
  • Added grid_usage state:
    • Positive value = importing from grid.
    • Negative value = exporting to grid.
  • Added grid_in_use state:
    • true when grid is being used.
    • false when not meaningfully importing/exporting.
  • Added neutral power state when less than 100 W is being imported or exported.
  • Fixed grid_in_use logic.
  • Fixed voltage reporting not being divided correctly by channels.
  • Added per-phase reporting.
  • Added multiple Envoy states for each phase.
  • Moved reporting to stateLists.
  • Limited decimal places for cleaner display.

DPEL support

  • Added DPEL support using installer token.

DPEL — Dynamic Power Export Limiting — controls how much power your solar system exports to the grid. This requires an installer-level token. The Envoy enforces the limit by curtailing inverter output in real time.

  • Added support for enabling/disabling power production where supported.
  • Accepts HTTP 204 responses as successful empty responses for power production changes.
  • Awaiting broader real-world testing.

Token handling and authentication

  • Added local Enphase device token generation support.
  • Expanded installer-token usage.
  • Added token type and expiry logging.
    • Logs whether token is Owner or Installer.
  • Added larger expiry buffer.
    • Token is regenerated if within 10 minutes of expiry.
  • Added force-clear-token option in plugin configuration.
  • Regenerates token if username or password changes.
  • Improved handling when switching between manual and generated token modes.
  • Added PKCE attempt followed by usual token method to improve installer-token generation reliability.

Battery and tariff devices

  • Added Battery and Tariff device.
  • Added new Battery device.
  • Added multiple action groups for change actions.
  • Note: Battery and tariff functions are not fully tested by the author and may still be buggy.

Bug fixes and reliability

  • Fixed restart-related device issue.
  • Fixed JSON connection error when response is empty.
  • Fixed manual/generated token switching issue where the previous method could be reused incorrectly.
  • General stability improvements across Envoy polling, token handling and state updates.
Release details
Released on: March 28, 2026
Requires: Indigo v2022.1.0+
Changes in this release

Version 1.1.0

Bug fix for changing from manual token to generate token - may continue to use old token if old token not deleted first.

Add Production Enable/Production Disable for turning off / on production. Can be buggy (reported by other uses), manually communicates with each micro inverter which may be delayed pending communication. Needs Installer Token. (Difficult) Add logging to plugin reporting what Token and What class is in use.

Reported steps seem to be here: https://community.home-assistant.io/t/option-to-enable-disable-power-production-in-ephase-envoy/575962/25

Release details
Released on: Feb. 1, 2026
Requires: Indigo v2022.1.0+
Changes in this release

Version 1.0.01:

Fix and return to automatic token generation, or manual token if preferred. Select in settings. Use pyenphase library for token authentication - hopefully no compiling issues for this library Add Device states firmware_version, token_expires, serial_number Code changes. Change to logging Bug fixes for multiple devices. Changes to stop/start reporting, and device start up - should refresh immediately

Release details
Released on: Jan. 31, 2026
Requires: Indigo v2022.1.0+
Changes in this release

Update:

Fix and return to automatic token generation, or manual token if preferred. Select in settings. Use pyenphase library for token authentication - hopefully no compiling issues for this library Add Device states firmware_version, token_expires, serial_number Code changes. Change to logging Bug fixes for multiple devices. Changes to stop/start reporting, and device start up - should refresh immediately

Release details
Released on: Aug. 24, 2025
Requires: Indigo v2022.1.0+
Changes in this release

0.7.01

Firmware 7 fixes

Fixes for multiple Envoys on same account (fixes timing issue that caused one to reported infrequently) Reuses sessions for same IPs

Release details
Released on: Jan. 29, 2024
Requires: Indigo v2022.1.0+
Changes in this release

Enphase Plugin 0.6.8

Changelog

0.6.8 Log all endpoints tried not just successful ones

0.6.7 Add code to display installer password (unused) Add new endpoints which may or may require installer access

0.6.6

Add Checkbox to Envoy-S Device Edit page to set Device as unMetered Needed for Firmware >7 Unmetered Envoy devices that now, with Firmware >7 don't report much data

Changes since pre-release

0.6.5

Allow redirect for serial Number as seems to have moved to https (verify=False as per all https calls) Check check_jwt locally to create a Session ID Move to using requests.Sessions across all calls so that cookies are applied across all, and we use a single session for all calls. Debug log cookies with production 0.6.7 Add code to display installer password (unused) Add new endpoints which may or may require installer access

0.6.6

Add Checkbox to Envoy-S Device Edit page to set Device as unMetered Needed for Firmware >7 Unmetered Envoy devices that now, with Firmware >7 don't report much data

0.6.5

Allow redirect for serial Number as seems to have moved to https (verify=False as per all https calls) Check check_jwt locally to create a Session ID Move to using requests.Sessions across all calls so that cookies are applied across all, and we use a single session for all calls. Debug log cookies with production

Release details
Released on: May 2, 2023
Requires: Indigo v2022.1.0+
Changes in this release

0.6.1 Finalising support for Firmware >=7 that requires a token from Enphase

Note: This version for full functionality requires cryptography module to be installed. pip3 install cryptography Run above from Terminal.

Hopefully will run without cryptography - just limit function, to manual token only (which will not be able to check expiry date of)

Adds: Plugin will login to enphase with details and create own token Valid for a year with then ongoing local access only. Checks token validity and when expired should update. Remove redirects from endpoint testing Remove Serial Number as seems to be still accessible in all versions PluginConfig changes

Release details
Released on: May 13, 2022
Requires: Indigo v2022.1.0+
Changes in this release

0.4.0

Python 3 Indigo 2022.1 Version

Release details
Released on: June 26, 2020
Requires: Indigo v7.0.2 thru v2022.2
Changes in this release

0.3.1

Another fix (productionWattsNow) for unmetered Envoy-S (made hard by lack of device...in my defence...) Hopefully last one

Release details
Released on: June 25, 2020
Requires: Indigo v7.0.2 thru v2022.2
Changes in this release

0.3.0

Re-write timing of calls, Panels 2 minutes, main devices 1 minute, with extra delays for each device that is created. Fix for serialno error. Add panelLastUpdated string and UTC Number to Envoy-S Device States - showing last time successfully received Panel Data

Release details
Released on: June 23, 2020
Requires: Indigo v7.0.2 thru v2022.2
Changes in this release

0.2.8

Bug fix for Legacy device not updating Fix for DeviceUpdated time for legacy Fix for Sensor, add PowerStatus showing idle/producing states

Release details
Released on: June 23, 2020
Requires: Indigo v7.0.2 thru v2022.2
Changes in this release

0.2.7

Combines support for Envoy-S devices into the one Plugin Device (Supports Envoy-S Metered and unmetered) Bug fix for legacy device updates (which shouldn't be needed) for those with Envoy-S unmetered anymore

Release details
Released on: April 10, 2020
Requires: Indigo v7.0.2 thru v2022.2
Changes in this release

Enphase Plugin

0.2.5

Change to how panels are created/updated, allows editing and re-generation Remove some github code - USE Plugin Store Few fixes here and there

Release details
Released on: Sept. 6, 2018
Requires: Indigo v5.0.0 thru v2022.2
Changes in this release

Enphase Envoy Indigo Plugin

0.1.8 Fix for updating code. Add option to open Pluginstore (checks against github releases) Fix for Refresh Devices manually via menu (Warning - cannot refresh envoy to frequently -- if hammer envoy will timeout and freeze; typically takes an hour or two to come back to life; worse case need to restart)

0.1.7 Add Last Communication state from Panel to Panel Device (this is reported time by Panel to Envoy-S - not related to Plugin communication) Can be used to check if micro-inverter issues

Release details
Released on: June 7, 2018
Requires: Indigo v5.0.0 thru v2022.2
Changes in this release

0.1.6

Fix for Generate Panels deleting main device in some circumstances! Allows GeneratePanel to add new microinverters if ever upgraded

Release details
Released on: June 28, 2017
Requires: Indigo v5.0.0 thru v2022.2
Changes in this release

0.1.5

Fixes for Envoy new 14th June 2017 software (avoids storage percent full error)

(Will have slower look/check and see whether new software exposes any further useful information)

Release details
Released on: Jan. 17, 2017
Requires: Indigo v5.0.0 thru v2022.2
Changes in this release

Minor fixes for calculation to keep inline with report data (Negative results = exporting, positive results = Watts being used)

Release details
Released on: Jan. 16, 2017
Requires: Indigo v5.0.0 thru v2022.2
Changes in this release

Fix for missing netConsumption and storage result from production.json Should calculate it if missing Likely needs testing.

Release details
Released on: Dec. 25, 2016
Requires: Indigo v5.0.0 thru v2022.2
Changes in this release

Add Envoy Legacy Support (limited reporting) Fix for UiValue code error for panels

Release details
Released on: Dec. 24, 2016
Requires: Indigo v5.0.0 thru v2022.2
Changes in this release

Updated logic for checks. Deals with timeouts; and no connection without error. Changed to timing to enable best use, without 'hammering' envoy-s Fix for UiImages - green for exporting; red for a not producing panel Correctly removes states and UI images on stop (for triggers based on wattage) Added a few states (powergenerating true/false, amongst others)

Release details
Released on: Dec. 21, 2016
Requires: Indigo v5.0.0 thru v2022.2
Changes in this release

0.0.6 Beta Release