UNPKG

homebridge-enphase-envoy

Version:

Homebridge plugin for Photovoltaic Energy System manufactured by Enphase.

2,077 lines (1,327 loc) 54.8 kB
# Changelog All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). ## Warning - For plugin < v10.4.0 use Homebridge UI <= v5.5.0 - For plugin >= v10.4.0 use Homebridge UI >= v5.13.0 - after update to v10.0.0 and above the accessory and bridge need to be removed from the homebridge / Home.app and added again ## [10.7.4] - (04.06.2026) ### Fixed - RESTful / MQTT: after a power restart, when the Envoy gateway took several minutes to come back online, the REST server returned `"This data is not available in your system."` for all endpoints and never recovered without a manual plugin restart; root cause: each retry attempt created a new Express server on the same port — the second and subsequent servers silently failed to bind (port already in use, no error handler), leaving `restFulConnected = false`, so all `update()` calls were skipped even after the device successfully reconnected; fixed by creating the RESTful and MQTT instances once before the retry loop so the port is bound a single time and survives all connect attempts; the `'set'` (POST/MQTT command) handler is attached once via an `activeDevice` reference that is updated to the current `EnvoyDevice` instance only after a successful connect ## [10.7.3] - (14.05.2026) ### Changed - Energy history: `prit`, `cnit`, `ctit` spike after a connection gap is now distributed evenly across all preceding null records and the first real record; when data resumes after N missing minutes, each slot receives `delta / (N + 1)` instead of all accumulation appearing in one record; previously saved null records on disk are also retroactively backfilled when a real record finally follows them ## [10.7.2] - (14.05.2026) ### Fixed - Energy meter (`energyMeter`) with meters enabled: `EveCurrent` and `EveVoltage` characteristics were never updated because `characteristics2.push([...])` inserted a nested array instead of two separate objects; changed to `push(item1, item2)` - Energy history: `prit`, `cnit`, `ctit` returned `null` for the first record of each day (when previous record is from a different day or history is empty); changed to `0` - Energy history: `r3()` rounding helper now strictly checks `typeof v === 'number' && isFinite(v)` to prevent `NaN` or `Infinity` from being serialised as string `"null"` by `JSON.stringify` ## [10.7.1] - (14.05.2026) ### Changed - Energy history file format optimized: switched from pretty-printed array-of-objects to compact columnar JSON (object of arrays); key names appear once instead of per record; reduces file size by ~80% (e.g. 10 000 records: ~7 MB → ~1.3 MB); backward-compatible — existing files in old format are automatically migrated on first save; REST and MQTT output unchanged (still array-of-objects) - All numeric values in energy history records rounded to 3 decimal places ## [10.7.0] - (14.05.2026) ### Changed - Energy history saving reworked: - Records are now saved every minute at the `:00` second and additionally at `23:59:59` each day - Timestamps are aligned to the start of each minute (`HH:MM:00`) instead of the actual poll time - Missing records (plugin offline, save error) are automatically backfilled with `null` values to maintain a continuous timeline - Added new record keys: - `prit` — production energy interval in `Wh` between consecutive saved points (same day only, `null` on day boundary) - `cnit` — net consumption energy interval in `Wh` between consecutive saved points (same day only, `null` on day boundary) - `ctit` — total consumption energy interval in `Wh` between consecutive saved points (same day only, `null` on day boundary) - Removed fixed 7-day retention limit; retention is now controlled by configuration - Added `energyHistoryTime` config option: time in years for which history is retained; `0` — no time limit (keep all data) - Added `energyHistoryReserveSpace` config option: minimum free disk space in `GB` to maintain; when free space falls below this value the oldest records are deleted to free storage; `0` — disable - README and sample-config.json updated ## [10.6.13] - (10.05.2026) ### Fixed - Config schema: `powerConsumptionNetLevelSensors`, `energyConsumptionTotalLevelSensors` and `energyConsumptionNetLevelSensors` had `compareType` listed as a required field in `allOf` validation rules, but the property was not defined in the schema — the Homebridge UI could never set it, so saving the config always failed when any of these sensors had `displayType > 0`; `compareType` removed from `required` in all three sensors (they are level sensors, not quality sensors) ## [10.6.12] - (08.05.2026) ### Fixed - RESTFul / MQTT data not updating after plugin restart: `externalIntegrations()` was returning before `app.listen()` had finished binding the port, so `restFulConnected` / `mqttConnected` were still `false` when the first data events arrived; both integrations are now awaited via `Promise` that resolves on the `connected` event (5 s timeout for RESTFul, 10 s for MQTT) ## [10.6.11] - (08.05.2026) ### Fixed - RESTFul / MQTT data not updating after nightly Envoy reset (22:57–23:10 window): - `handleError` was clearing `jwtToken.token` on every 401 response, forcing a 30-second delay and a full JWT re-fetch from the Enlighten API even when only the session cookie had expired; now only `tokenValid` is invalidated — `checkToken` already checks `expires_at` independently - cron 23:10 restart changed to `runOnStart=false` to prevent all update handlers firing simultaneously right after the Envoy reset, which caused cascading 401 errors - `handleWithLock` now catches exceptions thrown by `checkToken` (e.g. from `validateToken`) instead of leaking unhandled promise rejections ## Changed - `Characteristic.Shedule` → `Characteristic.Schedule` (class name corrected; UUID unchanged) - `Service.AcBatterieService` → `Service.AcBatteryService`, `Service.AcBatterieSummaryService` → `Service.AcBatterySummaryService` (class names corrected; UUIDs unchanged) - `ApiUrls.EnchrgeStatus` → `ApiUrls.EnchargeStatus`, `ApiUrls.InternalMeterRevelsalEid` → `ApiUrls.InternalMeterReversalEid` - corrected display strings: `"Generstor"` → `"Generator"`, `"Powwr on unused phase"` → `"Power on unused phase"`, `"State oF Charge"` → `"State of Charge"`, `"AC Batterie"` → `"AC Battery"`, `"Shedule"` → `"Schedule"`, `acvoltagehighline2` / `acvoltagelowline2` descriptions fixed - removed unused imports `XMLBuilder`, `XMLValidator` from `envoydata.js` - internal variable renames: `lockControTime` → `lockControlTime`, `generatorModeContols` → `generatorModeControls`, `comsumptionNet` → `consumptionNet` - missing `await` added to `axiosInstance.put` in `setEnchargeSettings` ## [10.6.0] - (20.03.2026) ## Changes - RESTFul and MQTT stored last 7 days energy histor every minute - RESTFul and MQTT added `inventorybyserialnumber`, `detaileddevicesdatabyserialnumber` - Energy history extend: - `ts - timestamp` - `pr - production lifetime` - `prt - production today` - `pru - production lifetime upload` - `prut - production today upload` - `cn - consumption net lifetime` - `cnt - consumption net today` - `cnu - consumption net lifetime upload` - `cnut - consumption net today upload` - `ct - consumption total lifetime` - `ctt - consumption total today` - `ctp - consumption total lifetime from pv` - `ctpt - consumption total today from pv` - bump deependencies - redme updated - cleanup ## [10.5.4] - (04.03.2026) ## Changes - RESTFul and MQTT added energy history, stored every minute - Energy history contain: - `ts - timestamp` - `pr - production lifetime` - `pru - production lifetime upload` - `cn - consumption net lifetime` - `cnu - consumption net lifetime upload` - `ct - consumption total lifetime` - `ctp - consumption total lifetime from pv` - bump deependencies - redme updated - cleanup ## [10.5.1] - (02.03.2026) ## Changes - added energy consumpion from P.V. today/lifetime statistics - fix power and energy statistics data - cleanup ## [10.5.0] - (01.03.2026) ## Changes - added energy history stored - stability and performance improvements - RESTFul and MQTT: - added detailed devices data transformed (json objects by serial number) - added more statistics outputs to the power and energy data - bump dependencies - redme updated - cleanup ## [10.4.9] - (24.02.2026) ## Changes - disable refresh data at 23:00 and start at 23:05 due to envoy logic restart - bump dependencies - cleanup ## [10.4.4] - (16.02.2026) ## Changes - refactor mqtt - bump dependencies - cleanup ## [10.4.2] - (09.01.2026) ## Changes - fix [#224](https://github.com/grzegorz914/homebridge-enphase-envoy/issues/224) - fix [#223](https://github.com/grzegorz914/homebridge-enphase-envoy/issues/223) - fix hide log success - cleanup ## [10.4.1] - (03.01.2026) ## Changes - config validation improvements - config schema updated - cleanup ## [10.4.0] - (02.01.2026) ## Changes - added support for Homebridge UI >= v5.13.0 - config schema updated - readme updated - cleanup ## [10.3.8] - (17.12.2025) ## Changes - fix [#222](https://github.com/grzegorz914/homebridge-enphase-envoy/issues/222) - bump dependencies ## [10.3.7] - (09.12.2025) ## Changes - moved MQTT to v5 - cleanup ## [10.3.5] - (13.11.2025) ## Changes - added encharges support connected to all phases - cleanup ## [10.3.4] - (12.11.2025) ## Changes - fix [#221](https://github.com/grzegorz914/homebridge-enphase-envoy/issues/221) - bump dependencies - cleanup ## [10.3.2] - (30.10.2025) ## Changes - fix [#220](https://github.com/grzegorz914/homebridge-enphase-envoy/issues/220) ## [10.3.1] - (29.10.2025) ## Changes - bump dependencies - redme updated - cleanup ## [10.3.0] - (20.10.2025) ## Changes - extend Eve Energy Meter to support (Production, Consumption Net, Consumption Total) - fix [#218](https://github.com/grzegorz914/homebridge-enphase-envoy/issues/218) - stability and performance improvements - config schema updated - readme updated - cleanup ## [10.2.6] - (18.10.2025) ## Changes - fix [#216](https://github.com/grzegorz914/homebridge-enphase-envoy/issues/216) - fix [#217](https://github.com/grzegorz914/homebridge-enphase-envoy/issues/217) - fix wireless connections kit publish - added network interface service and characteristics - cleanup ## [10.2.5] - (17.10.2025) ## Changes - update EVE Energy Meter - cleanup ## [10.2.3] - (15.10.2025) ## Changes - fix [#215](https://github.com/grzegorz914/homebridge-enphase-envoy/issues/215) - update EVE Energy Meter - other small fixes - cleanup ## [10.2.2] - (12.10.2025) ## Changes - fix power level not refresh if meter production not enabled [#213](https://github.com/grzegorz914/homebridge-enphase-envoy/issues/213) - fix enable live data stream [#214](https://github.com/grzegorz914/homebridge-enphase-envoy/issues/214) - changed OFF state to < 0.5% for power and backup level accessory, before was OFF if level < 1% - stability and performance improvements - other small fixes - redme updates - cleanup ## [10.2.1] - (03.10.2025) ## Changes - fix power level not refresh if meter production not enabled [#213](https://github.com/grzegorz914/homebridge-enphase-envoy/issues/213) ## [10.2.0] - (03.10.2025) ## Changes - fix encharge profile control UI interface - fix [#205](https://github.com/grzegorz914/homebridge-enphase-envoy/issues/205) - fix [#206](https://github.com/grzegorz914/homebridge-enphase-envoy/issues/206) - fix [#207](https://github.com/grzegorz914/homebridge-enphase-envoy/issues/207) - fix [#209](https://github.com/grzegorz914/homebridge-enphase-envoy/issues/209) - fix [#211](https://github.com/grzegorz914/homebridge-enphase-envoy/issues/211) - workaround for [#210](https://github.com/grzegorz914/homebridge-enphase-envoy/issues/210), envoy firmware issue - prepare to add encharge profile controls option to allow charge from grid - added configurable system auto lock time - added EVE energy monitor option (need to be paired as a separate accessory) - added support for EVSE, PV3P, BackFeed meters - added support for C6 Combiner Controller, C6 RGM, IQ Meter Collar - refactor code of ensemble section - stability and improvements - config UI updated - bump dependencies - redme updated - cleanup ## [10.1.0] - (01.07.2025) ## Changes - fix update plc level for microinverters - added lockcontrol system for envoy section ## [10.0.3] - (29.06.2025) ## Changes - fix scale plc level to 100% ## [10.0.2] - (29.06.2025) ## Changes - fix generator mode - changed RESTFul path `powermode` to `productionstate` - changed MQTT set key `PowerProductionState` to `ProductionState` - stability and performance improvements - redme updated - cleanup ## [10.0.1] - (25.06.2025) ## Changes - fix RESTFul `detaileddevicesdata` and `token` paths - fix Mqtt `token` refresh - redme updated ## [10.0.0] - (24.06.2025) ## Changes - full code refactor - stability and performance improvements - added many detailed data for microinverters, meters, qrelays - RESTFul code refactor and updated - cleanup custom characteristics - cleanup - readme updated - many more small changes ## [9.20.1] - (15.06.2025) ## Changes - fix [#202](https://github.com/grzegorz914/homebridge-enphase-envoy/issues/202) - cleanup ## [9.20.0] - (14.06.2025) ## Changes - stability and performance improvements - added devicesdata, metersRportsto to the RESTFul rquests - added Energy and Productin Consumption Total service if present - added energyLifetimeUpload characteristic for Production(mean self consumption) and Consumption Net(mean upload to the grid) - added node.js 24 support - bump dependencies - redme updated - cleanup ## [9.19.0] - (04.06.2025) ## Changes - added microinverters additional data (voltage, frequency, temperature, energy today, yesterday, last seven days, lifetime) - redme updated - cleanup ## [9.18.0] - (30.05.2025) ## Changes - removed extra production control accessory - added production control in the main lightbulb accessory - added control lock accessory to prevent device control accidentially - device control possible after unlock - locked automatically 30sec after unlock - config UI updated - redme updated - cleanup ## [9.17.7] - (28.05.2025) ## Changes - stability and performance improvements - cleanup ## [9.17.5] - (27.05.2025) ## Changes - prevent update meters characteristics if value are not valid ## [9.17.4] - (27.05.2025) ## Changes - fix voltage divide - cleanup ## [9.17.3] - (27.05.2025) ## Changes - fix power peak update characteristics - cleanup ## [9.17.2] - (26.05.2025) ## Changes - cleanup ## [9.17.1] - (26.05.2025) ## Changes - fix [#199](https://github.com/grzegorz914/homebridge-enphase-envoy/issues/199) ## [9.17.0] - (26.05.2025) ## Changes - removed duplicated power and energy state sensors, the state sensor can be create by level sensors > 0 - removed meters refresh time - fix consumption power peak detected - refactor production all code - refsctor charcteristics update - added conparator (!==) to sensors - config UI improvements - mqtt clientId and prefix updated - redme update - cleanup ## [9.16.0] - (21.05.2025) ## Changes - added grid quality sensors for(Current, Voltage, Frequency, Power Factor) if meters are installed - fix qRelay state update - redme update - cleanup ## [9.15.0] - (18.05.2025) ## Changes - fix [#198](https://github.com/grzegorz914/homebridge-enphase-envoy/issues/198) - refactor code of production and consumption data update (support fw. >= 8.2.4xx) - bump dependencies - redme update - cleanup ## [9.14.6] - (12.05.2025) ## Changes - fix [#197](https://github.com/grzegorz914/homebridge-enphase-envoy/issues/197) - bump dependencies ## [9.14.4] - (09.05.2025) ## Changes - fix read meters reading with envoy firmware 8.3.xx - better handle some errors/warn - bump dependencies - cleanup ## [9.14.3] - (20.04.2025) ## Changes - fix [#195](https://github.com/grzegorz914/homebridge-enphase-envoy/issues/195) - fix [#196](https://github.com/grzegorz914/homebridge-enphase-envoy/issues/196) - cleanup ## [9.14.2] - (20.04.2025) ## Changes - many cleanup and optimizations - cleanup ## [9.14.1] - (18.04.2025) ## Changes - fix namePrefix and call production state even not supported ## [9.14.0] - (18.04.2025) ## Changes - added multiphase support for q-relay sensor - digestauth refactor - passwdcalc refactor - envoytoken refactor - redme update - cleanup ## [9.13.4] - (18.04.2025) ## Changes - fix power peak level display and detected in consumption total and net - cleanup ## [9.13.3] - (18.04.2025) ## Changes - fix reference error in debug mode - cleanup ## [9.13.2] - (17.04.2025) ## Changes - fix microinverters publish in v9.13.0 and v9.13.1 - refresh grid profile and update status in runtime - display in envoy db size and percent full of db only if supported - display update status in envoy only if supported - stability and performance optimizations - cleanup ## [9.13.1] - (16.04.2025) ## Changes - RESTFul and MQTT update - stability and performance optimizations - redme update - cleanup ## [9.13.0] - (15.04.2025) ## Changes - added pdm energy and production data to RESTFul and MQTT for Envoy FW >= 8.2.4xx - removed production all from RESTFul and MQTT - redme update - cleanup ## [9.12.6] - (08.04.2025) ## Changes - fix stop data sampling if error occured durig cookie refresh - fix set correct accessory category - added production state data refresh timer - config UI improvements in section Envoy - config schema updated - redme update - cleanup ## [9.12.0] - (05.04.2025) ## Changes - after update the plc level refresh control need to be configued again - after update the production state control and sensor need to be configued again - added production state sensor - config UI improvements in section Envoy - config schema updated - bump dependencies - redme update - cleanup ## [9.11.0] - (03.04.2025) ## Changes - after update the credentials method need to be configued again - after update the dry contact sensor and control need to be configued again - config UI improvements - config schema updated - bump dependencies - redme update - cleanup ## [9.10.9] - (30.03.2025) ## Changes - fix energyConsumptionNetStateSensor UI - config schema updated ## [9.10.8] - (28.03.2025) ## Changes - stability and performance improvements - config schema updated - cleanup ## [9.10.7] - (26.03.2025) ## Changes - fix [#192](https://github.com/grzegorz914/homebridge-enphase-envoy/issues/192) ## [9.10.6] - (26.03.2025) ## Changes - fix Q-Relay state monitoring sensor ## [9.10.5] - (25.03.2025) ## Changes - added Q-Relay state monitoring sensor - stability and performance improvements - config schema updated - redme updated - cleanup ## [9.10.0] - (23.03.2025) ## Changes - added possibility to select accessory type for Envoy - added possibility to select accessory type for AC Battery, indyvidual and summary - added possibility to select accessory type for Encharge, indyvidual and summary - added possibility to set min SoC for light bulb Encharge accessory [#191](https://github.com/grzegorz914/homebridge-enphase-envoy/issues/191) - stability and performance improvements - config schema updated - redme updated - cleanup ## [9.9.10] - (21.03.2025) ## Changes - fix [#190](https://github.com/grzegorz914/homebridge-enphase-envoy/issues/190) - cleanup ## [9.9.9] - (21.03.2025) ## Changes - fix [#189](https://github.com/grzegorz914/homebridge-enphase-envoy/issues/189) - cleanup ## [9.9.8] - (20.03.2025) ## Changes - config UI improvements from [#185](https://github.com/grzegorz914/homebridge-enphase-envoy/issues/185) - config schema updated ## [9.9.7] - (20.03.2025) ## Changes - added possibility to set custom encharge name displayed in the home app, closes [#188](https://github.com/grzegorz914/homebridge-enphase-envoy/issues/188) - added possibility to disable/display encharge light bulb accessory in the home app - bump dependencies - config schema updated - redme updated - cleanup ## [9.9.4] - (19.03.2025) ## Changes - fix backup level sensor update [#186](https://github.com/grzegorz914/homebridge-enphase-envoy/issues/186) - config UI improvements [#185](https://github.com/grzegorz914/homebridge-enphase-envoy/issues/185) - config schema updated - cleanup ## [9.9.3] - (18.03.2025) ## Changes - added default values to fix [#183](https://github.com/grzegorz914/homebridge-enphase-envoy/issues/183) - cleanup ## [9.9.2] - (15.03.2025) ## Changes - fix [#182](https://github.com/grzegorz914/homebridge-enphase-envoy/issues/182) - cleanup ## [9.9.1] - (15.03.2025) ## Changes - fix [#181](https://github.com/grzegorz914/homebridge-enphase-envoy/issues/181) - cleanup ## [9.9.0] - (14.03.2025) ## Changes - added possibility to disable indyvidual accessory - added read production all (pcm, rgm, eim) and consumption (eim) - fix debug log - bump dependencies - config schema updated - redme updated - cleanup ## [9.8.7] - (04.03.2025) ## Changes - token handling improvements - digest installer and envoy handling improvements - error handling improvements - cleanup ## [9.8.6] - (02.03.2025) ## Changes - token and cookie handling improvements - impulse generator corect start state - cleanup ## [9.8.5] - (28.02.2025) ## Changes - token and digest authorization handling improvements - bump dependencies - cleanup ## [9.8.4] - (27.02.2025) ## Changes - token handling improvements - plugin start time improvements - cleanup ## [9.8.3] - (26.02.2025) ## Changes - bump dependencies ## [9.8.2] - (26.02.2025) ## Changes - refactor start external integrations - bump dependencies - cleanup ## [9.8.0] - (20.02.2025) ## Changes - fix enpower grid state error - added encharge grid state sensor - added solar grid state sensor - bump dependencies - cleanup ## [9.7.6] - (18.02.2025) ## Changes - stability and improvements - chore(config): tweak wording, thanks @nstuyvesant - Updates to the read me (spelling, punctuation, clarification), thanks @nstuyvesant - bump dependencies - cleanup ## [9.7.5] - (15.02.2025) ## Changes - moved custom characteristics and services to seperate file - added new opt_cheduless properties to storage setting - stability and improvements - cleanup ## [9.7.4] - (07.02.2025) ## Changes - stability and improvements ## [9.7.3] - (04.02.2025) ## Changes - update RESTFul ## [9.7.0] - (16.01.2025) ## Changes - added possibility to disable/enable log success, info, warn, error - config schema updated - redme updated - cleanup ## [9.6.12] - (03.01.2025) ## Changes - limit microinverters count to 70 due [#175](https://github.com/grzegorz914/homebridge-enphase-envoy/issues/175) - fix powerLevel characteristics warning - fix display only active phase in live data ## [9.6.10] - (18.12.2024) ## Changes - update encharges led status - fix apparent power in live data - cleanup ## [9.6.9] - (17.12.2024) ## Changes - fix livedData characteristics warning [#173](https://github.com/grzegorz914/homebridge-enphase-envoy/issues/173) - cleanup ## [9.6.8] - (16.12.2024) ## Changes - increase data refresh time issue [#172](https://github.com/grzegorz914/homebridge-enphase-envoy/issues/172) - bump dependencies - cleanup ## [9.6.6] - (06.12.2024) ## Changes - better handle of error and cookies - bump dependencies - config.schema updated - cleanup ## [9.6.5] - (03.12.2024) ## Changes - check JWT toke is installer or user - add JWT Token installer option if use own generated token - config.schema updated - redme updated - cleanup ## [9.6.4] - (02.12.2024) ## Changes - prevent crasch if PLC Level is enabled and credentials data is not installer ## [9.6.3] - (02.12.2024) ## Changes - prevent crasch if production control is enabled and credentials data is not installer ## [9.6.0] - (30.11.2024) ## Changes - move from commonJS to esm module - moved constants.json to constants.js - cleanup ## [9.5.3] - (28.11.2024) ## Changes - better handle cookie and own token - config schema updated - cleanup ## [9.5.2] - (28.11.2024) ## Changes - fix display duplicate credentials in UI - better handle cookie and token - bump dependencies - config schema updated - cleanup ## [9.5.1] - (20.11.2024) ## Changes - fix reference error before initialization ## [9.5.0] - (19.11.2024) ## Changes - added possibility to select compare mode for power and energy level sensors - config schema updated - readme updated - cleanup ## [9.4.4] - (18.11.2024) ## Changes - fix data refresh after error occured - fix validate own token ## [9.4.3] - (17.11.2024) ## Changes - fix [#163](https://github.com/grzegorz914/homebridge-enphase-envoy/issues/163) - added node 23 support - jwt token get and check refactor - correct some logs wording - cleanup ## [9.4.2] - (11.11.2024) ## Changes - fix reconnect if error ocurred during start - correct some logs wording - config.schema updated - cleanup ## [9.4.1] - (30.10.2024) ## Changes - fix stop data updating after error occured [#161](https://github.com/grzegorz914/homebridge-enphase-envoy/issues/161) - added config schema validation - update dependencies - config.schema updated - cleanup ## [9.4.0] - (17.09.2024) ## Changes - added encharge profile sensors - fix battery/encharge state and backup level delay - fix grid state sensor - move some message to warn - use async/await for impulse generator - update dependencies - cleanup ## [9.3.5] - (31.08.2024) ## Changes - required upcomming homebridge 2.x.x required - fix [#153](https://github.com/grzegorz914/homebridge-enphase-envoy/issues/153) - error handle improvements - increase axios timeout to 25sec - cleanup ## [9.3.4] - (27.08.2024) ## Changes - fix restFul data sampling response - fix duplicate start run afer error occur - fix characteristic Rest Power warning - increase axios timeout to 20sec - cleanup ## [9.3.3] - (23.08.2024) ## Changes - fix [#151](https://github.com/grzegorz914/homebridge-enphase-envoy/issues/151) ## [9.3.0] - (23.08.2024) ## Changes - add control over RESTFul POST JSON Object - fix RESRFul enable - add timeout to axios - return axios error message instead of object if exist ## [9.2.9] - (21.08.2024) ## Changes - fix energy level sensors - refactor backbone app code to get envoy dev id - refactor envoy password calculate code - refactor installer password calculate code - add some warn message and allow app working without some not mandatory data ## [9.2.8] - (20.08.2024) ## Changes - fix encharge live data display - fix data refresh control - fix backup level sensors - cleanup ## [9.2.6] - (19.08.2024) ## Changes - fix [#149](https://github.com/grzegorz914/homebridge-enphase-envoy/issues/149) ## [9.2.5] - (19.08.2024) ## Changes - fix correct display error instead empty object - move some error to warn and prevent to reconnect to envoy ## [9.2.4] - (19.08.2024) ## Changes - fix [#150](https://github.com/grzegorz914/homebridge-enphase-envoy/issues/150) - fix voltage divide - correct some error logs - cleanup ## [9.2.3] - (18.08.2024) ## Changes - use warn instead error for not required data - cleanup ## [9.2.2] - (18.08.2024) ## Changes - fix [#149](https://github.com/grzegorz914/homebridge-enphase-envoy/issues/149) - loging refactor - corect catch error - cleanup ## [9.2.0] - (16.08.2024) ## Changes - add generator mode Off/On/Auto control from home app as a extra tiles - arf profile refactor - cleanup ## [9.1.3] - (16.08.2024) ## Changes - decrease homebridge requirements to 1.8.0 ## [9.1.2] - (16.08.2024) ## Changes - dynamically display arf profile only if supported ## [9.1.1] - (16.08.2024) ## Changes - fix PLC Level warning [#148](https://github.com/grzegorz914/homebridge-enphase-envoy/issues/148) ## [9.1.0] - (16.08.2024) ## Changes - added enchrge profile cintrol over mqtt - added enpower state control over mqtt - added generator mode control over mqtt - cleanup ## [9.0.2] - (14.08.2024) ## Changes - fix threw new error characteristics ## [9.0.1] - (14.08.2024) ## Changes - fix corect remove sensitive data from config mqtt - remove sensitive data from debug log - hide passwords, tokens, serial numbers, by typing and display in Config UI - remove return duplicate promises from whole code ## [9.0.0] - (14.08.2024) ## Changes ### After update to v9.0.0 RESTFull and MQTT config settings need to be updated - support for Homebridge v2.0.0 - full code refactor - RESTFul and MQTT config refactor - renamed config properties, `supportProductionPowerMode` to `supportPowerProductionState` - renamed config properties, `powerProductionControl` to `powerProductionStateControl` - system data refresh - added native control from home app as a extra tile - added control direct from envoy section, 3rd party app - added state sensor - plc level refresh: - added native control from home app as a extra tile - power production: - added native control from home app as a extra tile - generator: - added state native control from home app as a extra tile - added state direct control from envoy section, 3rd party app - added state sensor - added mode sensors - enpower: - added grid state native control from home app as a extra tile - added grid state control direct from envoy section, 3rd party appp - added grid state sensor - added dry contacts native control from home app as a extra tile - added dry contacts state sensors - encharge: - added state sensor - added profile native control from home app as a extra tile - other changes - added possibility to enable accessory name as a prefix for all services - stability and performance improvements - dependencies updated - config schema updated - bug fixes - cleanup ## [8.1.1] - (04.08.2024) ## Changes - fix display and publish ensemble status and sensors ## [8.1.0] - (04.08.2024) ## Changes - added new ensemble/encharge/solar sensor profile, grid-tied and grid-forming - config schema updated - redme updated - cleanup ## [8.0.2] - (04.08.2024) ## Changes - fix [#142](https://github.com/grzegorz914/homebridge-enphase-envoy/issues/142). - fix characteristic name for encharge profile - add missing optional characteristic for enphaseWirelessConnectionKitService - redme updated - cleanup ## [8.0.0] - (07.07.2024) ## Changes ### After update to v8.0.0 and above from plevious version all sennsors need to be activated in plugin config again - added possibility to set indyvidual characteristic type for sensors, `0 - None/Disabled`, `1 - Motion Sensor`, `2 - Occupancy Sensor`, `3 - Contact Sensor`. - config schema updated - redme updated - cleanup ## [7.16.0] - (23.06.2024) ## Changes - added possibility to use Your own generated Token [#140](https://github.com/grzegorz914/homebridge-enphase-envoy/issues/140) - config schema updated - redme updated - cleanup ## [7.15.4] - (18.06.2024) ## Changes - bump node modules ws [#139](https://github.com/grzegorz914/homebridge-enphase-envoy/pull/139) ## [7.15.3] - (18.06.2024) ## Changes - polling code refactor, added impulse generator - remove production properties from Q-Relay accessory - cleanup ## [7.15.2] - (09.06.2024) ## Changes - remove possibility to enable/disable support for live data and ensemble status, now is check automatically - moved refresh ensemble status refres time to envoy section - config schema updated - cleanup ## [7.15.1] - (08.06.2024) ## Changes - added compare mode to the encharge backup level sensors - config schema updated ## [7.15.0] - (08.06.2024) ## Changes - added encharge backup level sensors - readme updated - config schema updated - cleanup ## [7.14.9] - (08.06.2024) ## Changes - refactor check JWT token - refactor check arf profile - correct some logs - cleanup ## [7.14.8] - (01.06.2024) ## Changes - fix 401 error after envoy reboot and refresh cocies - fix characteristics warning for arf profile - increase time for check token expired = bump dependencies - cleanup ## [7.14.5] - (12.05.2024) ## Changes - refactor token check and request - added infot about token time expired - cleanup ## [7.14.4] - (06.05.2024) ## Changes - stop data polling if token expired, start after refreshed - fixed power peak handle - refactor code in passwords calculation and check jwt token ## [7.14.0] - (27.04.2024) ## Changes - added support to check and control Production Power Mode, firmware 7.x.x required installer credentials data - added support to check PLC Level, firmware 7.x.x required installer credentials data - added support to check and control Production Power Mode over MQTT protocol, firmware 7.x.x required installer credentials data - added support to check PLC Level over MQTT protocol, firmware 7.x.x required installer credentials data - config.schema updated - cleanup ## [7.13.0] - (27.04.2024) ## Changes ### After update to v7.13.0 and above from plevious version the refresh time need to be configured again - changed data refresh time from (ms) go (sec) and precision 0.5 - prevent to set refresh time to 0, now minimum is 0.5 sec - config.schema updated - cleanup ## [7.11.14] - (26.02.2024) ## Changes - fix [#127](https://github.com/grzegorz914/homebridge-enphase-envoy/issues/127) - fix [#126](https://github.com/grzegorz914/homebridge-enphase-envoy/issues/126) - fix [#125](https://github.com/grzegorz914/homebridge-enphase-envoy/issues/125) - cleanup ## [7.11.0] - (11.02.2024) ## Changes ### After update to v7.11.0 and above from plevious version the grid mode sensors need to be configured again - added support to create multiple enpower/encharge/solar grid mode sensors and select grid mode to match - config.schema updated - cleanup ## [7.10.0] - (10.02.2024) ## Changes - added support for Envoy Firmware 8.x.x - added support for storage CT meters - fixed [#114](https://github.com/grzegorz914/homebridge-enphase-envoy/issues/114) - config.schema updated - cleanup ## [7.9.0] - (01.01.2024) ## Changes - added [#118](https://github.com/grzegorz914/homebridge-enphase-envoy/issues/118) - added state and level lightbulb for ac bateries and encharges - config.schema updated - cleanup ## [7.8.0] - (23.12.2023) ## Changes ### After update to v7.8.0 and above from plevious version the sensors need to be configured again - added [#117](https://github.com/grzegorz914/homebridge-enphase-envoy/issues/117) - added possibility to set custom name for sensors - added possibility to activate/deactivate sensors - added possibility to create multiple sensors for power and energy level - config.schema updated - cleanup ## [7.7.5] - (05.12.2023) ## Changes - fix missing aasync/wait for microinverters data update - refactor code in section data update - fix characteristic warning [#115](https://github.com/grzegorz914/homebridge-enphase-envoy/issues/115) - better handle to fix [#112](https://github.com/grzegorz914/homebridge-enphase-envoy/issues/112) - config.schema updated - cleanup ## [7.7.4] - (02.12.2023) ## Changes - fix [#112](https://github.com/grzegorz914/homebridge-enphase-envoy/issues/112) - cleanup ## [7.7.3] - (29.11.2023) ## Changes - fix [#112](https://github.com/grzegorz914/homebridge-enphase-envoy/issues/112) - cleanup ## [7.7.2] - (26.11.2023) ## Changes - added debug log for services prepare - prepare for generators support - cleanup ## [7.7.1] - (26.11.2023) ## Changes - dynamically add *Live Data* characteristics based on installed devices - cleanup ## [7.7.0] - (26.11.2023) ## Changes - added *Live Data PV* cheracteristics to the HomeKit - added *Live Data Storage* cheracteristics to the HomeKit - added *Live Data Grid* cheracteristics to the HomeKit - added *Live Data Load* cheracteristics to the HomeKit - added *Live Data Generator* cheracteristics to the HomeKit - fix [#85](https://github.com/grzegorz914/homebridge-enphase-envoy/issues/85) - config schema updated - cleanup ## [7.5.0] - (20.10.2023) ## Changes ### After update to v7.5.0 and above from plevious version the sensors need to be configured again - added *Power State* contact sensor (Consumption Total) for automations and notifications in HomeKit - added *Energy State* contact sensor (Consumption Total) for automations and notifications in HomeKit - added *Energy Level* contact sensor (Consumption Total) for automations and notifications in HomeKit - added *Power State* contact sensor (Consumption Net) for automations and notifications in HomeKit - added *Energy State* contact sensor (Consumption Net) for automations and notifications in HomeKit - added *Energy Level* contact sensor (Consumption Net) for automations and notifications in HomeKit - added *Enpower Grid State* contact sensor for automations and notifications in HomeKit - added *Encharge Grid State* contact sensor for automations and notifications in HomeKit - added *Solar Grid State* contact sensor for automations and notifications in HomeKit - bump node to min 18.x.x and homebridge to 1.6 - config schema updated - redme update - cleanup ## [7.4.0] - (25.07.2023) ## Changes - added *Energy State* contact sensor for production monitoring, which can be used for notification and automations in HomeKit. - added *Energy Level* contact sensor for production monitoring, which can be used for notification and automations in HomeKit. - config schema updated - cleanup ## [7.3.0] - (20.07.2023) ## Changes - added *Power Production On/Off* contact sensor for production monitoring, which can be used for notification and automations in HomeKit. - Use encodeURIComponent in EnvoyToken URLs - thanks @chrisjshull - config schema updated - cleanup ## [7.2.0] - (17.07.2023) ## Changes - added power production level (0-100%) displayed as brightness level in Home app based on all microinvertzers power configured in plugin config - config schema updated ## [7.1.0] - (16.07.2023) ## Changes - added accessory switch to display in Home app curren state of power production, if Production Power > 0 then switch is ON - config schema updated ## [7.0.0] - (14.07.2023) ## After Update to this version need to make corespondent changes in plugin config ## Changes - added support to get JWT Token automatically from enlighten server using user credentials data - added support to check expired JWT Token and get new if expired - added debug for RESTFul server - added `token` to the RESTFul server request - added `Token` to the MQTT publisher - config schema updated - cleanup ### Removed properties - `envoyFirmware7xxToken` ### Added properties - `enlightenUser` - `enlightenPasswd` - `envoySerialNumber` ## [6.7.0] - (27.02.2023) ## Changes - added powerful RESTFul server to use with own automations - cleanup - config.schema updated ## [6.6.0] - (26.02.2023) ## Changes - added for ensemble summary Rest Power - added for ensemble summary AGG Max Energy - added for ensemble summary Encharges AGG SoC - added for ensemble summary Encharges AGG Rated Power - added for ensemble summary bias frequency, voltage for phasa L2/B and L3/C - prevent HB crash if for some reason prepare accessory fail - properties updated/added - bump dependencies - cleanup ## [6.5.0] - (17.01.2023) ## Changes - added possibility to set refresh time for live dta, meters data and production ct ## [6.4.1] - (16.01.2023) ## Changes - fix wirreles konnections kit crash ## [6.4.0] - (15.01.2023) ## Changes - code cleanup - config schema updated - stability improvements - reduce memory and cpu ussage - added *Power Peak* contact sensors for production, consumption total/net which can be used for notification and automations in HomeKit. - fix display wirelesskit characteristics hovewer is not instlled - fix [#73](https://github.com/grzegorz914/homebridge-enphase-envoy/issues/73) ## [6.3.2] - (14.01.2023) ## Changes - fix [#71](https://github.com/grzegorz914/homebridge-enphase-envoy/issues/71) - fix [#72](https://github.com/grzegorz914/homebridge-enphase-envoy/issues/72) - fix read grid profile name - added new properties to ensemble status data - added profile data to mqtt ## [6.3.1] - (12.01.2023) ## Changes - code cleanup - stability and performance improvement ## [6.3.0] - (10.01.2023) ## Changes - added possibility enable/disable support to check *Laive Data* - Envoy cpu load reduction - code cleanup - performance improvement ## [6.2.0] - (10.01.2023) ## Changes - added possibility enable/disable support to check *Ensemble Status* - code cleanup/refactor - config schema updated ## [6.1.0] - (09.01.2023) ## Changes - fix [#70](https://github.com/grzegorz914/homebridge-enphase-envoy/issues/70) - added possibility enable/disable support to check *PLC Level* - added possibility enable/disable support to check/control production *Power Mode* - code cleanup ## [6.0.9] - (09.01.2023) ## Changes - fix [#69](https://github.com/grzegorz914/homebridge-enphase-envoy/issues/69) - added missing promise - code cleanup - some log corrections ## [6.0.8] - (05.01.2023) ## Changes - code cleanup - log units and text corrections - added auto check plc communication level on startup - added encharges plc level characteristic ## [6.0.7] - (30.12.2022) ## Changes - fixed wireless connection kit set to true ## [6.0.6] - (30.12.2022) ## Changes - fixed wireless connection kit characteristics ## [6.0.5] - (29.12.2022) ## Changes - fixed ensembles, encharges and enpowers read data [#66](https://github.com/grzegorz914/homebridge-enphase-envoy/issues/66) - publish live data to MQTT if Envoy firmware >= 7.x.x - bump dependencies ## [6.0.4] - (14.12.2022) ## Changes - code optimize ## [6.0.3] - (14.12.2022) ## Changes - fix axios instance with token ## [6.0.2] - (14.12.2022) ## Changes - digestAuth code refactor - code cleanup ## [6.0.1] - (13.12.2022) ## Changes - fixed JWT authorization proces and store cookies for data request - code optimization - big thanks @NoSnow3 and @BenouGui for test ## [6.0.0] - (11.12.2022) ## Changes - added support for Envoy with firmware 7.x.x and Token Authorization - config schema updated - big thanks @NoSnow3 for test ## [5.9.7] - (06.12.2022) ## Changes - bump dependencies ## [5.9.6] - (15.09.2022) ## Changes - fix refresh inventory data - bump dependencies ## [5.9.4] - (10.09.2022) ## Changes - cleanup - fix mqtt - bump dependencies ## [5.9.3] - (29.08.2022) ## Changes - cleanup - update mqtt topics ## [5.9.2] - (26.08.2022) ## Changes - cleanup ## [5.9.1] - (26.08.2022) ## Changes - convert password generator to iuse promises async/await - cleanup ## [5.9.0] - (25.08.2022) ## Changes - added installer password generator, no need generate it manually in external generator - config schema updated ## [5.8.4] - (25.08.2022) ## Changes - rebuild refresh data process - config schema updated - cosmetics changes ## [5.8.3] - (23.08.2022) ## Changes - fix [#55](https://github.com/grzegorz914/homebridge-enphase-envoy/issues/55) ## [5.8.2] - (21.08.2022) ## Changes - code cleanup - better fix Power characteristic warning negative value [#54](https://github.com/grzegorz914/homebridge-enphase-envoy/issues/54) ## [5.8.1] - (13.08.2022) ## Changes - fix Power characteristic warning negative value [#54](https://github.com/grzegorz914/homebridge-enphase-envoy/issues/54) ## [5.8.0] - (12.08.2022) ## Changes - added possibility automatically 'Power peak reset' every day, week, month - config schema updated ## [5.7.8] - (08.08.2022) ## Changes - fix [#53](https://github.com/grzegorz914/homebridge-enphase-envoy/issues/53) ## [5.7.7] - (08.08.2022) ## Changes - fix production *Power peak detected* state - rebuild log ## [5.7.6] - (07.08.2022) ## Changes - fix auto/manual consumptions 'Power peak reset and save' - log updated - properties in code updated ## [5.7.3] - (07.08.2022) ## Changes - fix auto 'Power peak reset' at midnight ## [5.7.2] - (06.08.2022) ## Changes - fix characteristic 'Power peak reset' warning ## [5.7.1] - (06.08.2022) ## Changes - fix update button state characteristics for power peak reset ## [5.7.0] - (06.08.2022) ## Changes - added possibility to manuall reset *Power peak* (in accessory using button) - added possibility to automatically reset *Power peak* at midnight (in plugin setting configurable) - updated config schema ## [5.6.22] - (06.08.2022) ## Changes - rename *Power Max* to *Power Peak* - added extra refresh data for production (microinverters) ## [5.6.21] - (03.08.2022) ## Changes - fix [#52](https://github.com/grzegorz914/homebridge-enphase-envoy/issues/52) ## [5.6.20] - (03.08.2022) ## Changes - added possibility to disable display device info in log after plugin restart - check required properties to create accessory - correct some logs typos ## [5.6.15] - (02.08.2022) ## Changes - fix refresh power and energy production data if no meters are installed ## [5.6.14] - (02.08.2022) ## Changes - fix display undefinded Power and Energy type if no meters are installed ## [5.6.13] - (23.07.2022) ## Changes - refactor information service ## [5.6.12] - (11.05.2022) ## Changes - fix [#50](https://github.com/grzegorz914/homebridge-enphase-envoy/issues/50) ## [5.6.9] - (25.04.2022) ## Changes - update dependencies ## [5.6.8] - (25.04.2022) ## Changes - refactor send mqtt message ## [5.6.7] - (24.04.2022) ## Changes - update config.schema.json ## [5.6.6] - (30.03.2022) ## Changes - prevent poll Meters Reading Data if no Meters are installed - prevent poll Microinverters Power Data if envoy password is not set ## [5.6.5] - (30.03.2022) ## Changes - refresh time for Meters Reading Data to 1,5sec and Production CT Data to 3 sec. ## [5.6.4] - (29.03.2022) ## Changes - fixed read microinverters data (error 401) if envoy uses standard password, fix [#48](https://github.com/grzegorz914/homebridge-enphase-envoy/issues/48) ## [5.6.3] - (29.03.2022) ## Added - debug mode for MQTT Client - ## Changes - update check state data - update debug logging - removed refresh interval - update config schema - removed Entrez Authorization functionality for Envoy with firmware 7.x.x at this time ## [5.6.1] - (20.02.2022) ## Added - wrire envoy device id to file ## [5.6.0] - (19.02.2022) ## Added - Entrez Authorization for Envoy with firmware 7.x.x (test phase) ## [5.5.0] - (17.02.2022) ## Added - MQTT Client, publish all PV installation data - Debug mode - Prepare for entrez authorization ## Changes - update dependencies - code refactor ## [5.4.34] - (18.01.2022) ## Changes - update dependencies ## [5.4.33] - (17.01.2022) ## Changes - update dependencies ## [5.4.32] - (29.12.2021) - prepare directory and files synchronously ## [5.4.30] - (28.12.2021) - update node minimum requirements ## [5.4.29] - (20.11.2021) ## Changes - cosmetics ## [5.4.21] - (25.09.2021) ## Changes - code cleanup ## [5.4.19] - (24.09.2021) ## Changes ### WARNING - after this update nedd to remove and add accessory to the HomeKit again - code cleanup - stability improvements ## [5.4.18] - (24.09.2021) ## Changes - code cleanup - fix wrong voltage display, 1-phase instalation ## [5.4.17] - (19.09.2021) ## Changes - code cleanup ## [5.4.15] - (09.09.2021) ## Changes - bump dependencies - stability improvements - performance improvements ## [5.4.14] - (05.09.2021) ## Changes - bump dependencies ## [5.4.13] - (04.09.2021) ## Changes - bump dependencies ## [5.4.1] - (22.08.2021) ## Changes - removed *envoyDevId* property, now is detect automatically ## [5.4.0] - (21.08.2021) ## Changes - removed urllib - added digestAuth method to Axios - code rebuild and cleanup - some fixes and improvements ## [5.3.1] - (21.08.2021) ## Changes - charcterristics data format fixes - added grid profile characteristic for ensemble - code rebuild and cleanup ## [5.3.0] - (17.08.2021) ## Changes - added wireless connection kit characteristics - code rebuild and cleanup ## [5.2.15] - (16.08.2021) ## Changes - finally fixed not reconized ensemble (enpower and encharges) devices in previous versions ## [5.2.0] - (15.08.2021) ## Changes - added possibility Enable/Disable Power Production (in envoy section) ## [5.1.0] - (13.08.2021) ## Changes - added system Power Production state(in envoy section) - added enpower status service - fixed not reconized ensemble (enpower and encharges) devices in previous versions - updated SKU and Part Nr. - code rebuild and cleanup - other fixes and improvements ## [5.0.0] - (05.08.2021) ## Changes - removed deprecated inherits and moved all characterictics to use ES6 class ## [4.9.0] - (03.08.2021) ## Changes - added support for Ensemble (Enpowers and Encharges) - fixed wrong named Encharges to AC Batteries - other fixes and performance improvements ## [4.8.0] - (12.03.2021) ## Changes - added possibility to check communications level of all devces on user request - fixed many small bugs - code cleanup ## [4.7.0] - (04.03.2021) ## Changes - update config.chema - fixed many small bugs - correct identyfi all hardware - code cleanup ## [4.6.0] - (24.02.2021) ## Changes - added Characteristics for Apparent and Reactive Power - fixed some bugs ## Important note v4.5.0 and above Version 4.5.0 and above need to be used with Homebridge min. v1.3.0. ## [4.5.0] - (23.02.2021) ## Changes - code rebuild, use Characteristic.onSet/onGet - require Homebridge 1.3.x or above ## [4.4.0] - (10.02.2021) ## Changs - restored possibility to set own user and password for envoy - added characteristic for communication level Q-Relays, Encharges, Microinverters - added characteristic for all data f