homebridge-enphase-envoy 10.3.0-beta.7 → 10.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +1 -1
- package/index.js +1 -2
- package/package.json +1 -1
- package/src/constants.js +4 -0
- package/src/envoydevice.js +21 -21
package/CHANGELOG.md
CHANGED
|
@@ -9,7 +9,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
9
9
|
|
|
10
10
|
- after update to v10.0.0 and above the accessory and bridge need to be removed from the homebridge / Home.app and added again
|
|
11
11
|
|
|
12
|
-
## [10.3.0] - (
|
|
12
|
+
## [10.3.0] - (20.10.2025)
|
|
13
13
|
|
|
14
14
|
## Changes
|
|
15
15
|
|
package/index.js
CHANGED
|
@@ -31,7 +31,7 @@ class EnvoyPlatform {
|
|
|
31
31
|
|
|
32
32
|
const deviceName = device.name;
|
|
33
33
|
const host = device.host || (i === 0 ? 'envoy.local' : `envoy-${i + 1}.local`);
|
|
34
|
-
const { envoyFirmware7xxTokenGenerationMode = 0,
|
|
34
|
+
const { envoyFirmware7xxTokenGenerationMode = 0, envoyToken, enlightenUser, enlightenPasswd } = device;
|
|
35
35
|
|
|
36
36
|
const logLevel = {
|
|
37
37
|
devInfo: device.log?.deviceInfo || true,
|
|
@@ -121,7 +121,6 @@ class EnvoyPlatform {
|
|
|
121
121
|
|
|
122
122
|
// start impulse generator
|
|
123
123
|
await impulseGenerator.state(true, [{ name: 'start', sampling: 120000 }]);
|
|
124
|
-
|
|
125
124
|
} catch (error) {
|
|
126
125
|
if (logLevel.error) log.error(`Device: ${host} ${deviceName}, Did finish launching error: ${error}`);
|
|
127
126
|
}
|
package/package.json
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"private": false,
|
|
3
3
|
"displayName": "Enphase Envoy",
|
|
4
4
|
"name": "homebridge-enphase-envoy",
|
|
5
|
-
"version": "10.3.0
|
|
5
|
+
"version": "10.3.0",
|
|
6
6
|
"description": "Homebridge p7ugin for Photovoltaic Energy System manufactured by Enphase.",
|
|
7
7
|
"license": "MIT",
|
|
8
8
|
"author": "grzegorz914",
|
package/src/constants.js
CHANGED
|
@@ -174,10 +174,13 @@ export const ApiCodes = {
|
|
|
174
174
|
"ENCHG_STATE_DISCHARGING": "Encharge state discharging",
|
|
175
175
|
"ENCHG_STATE_IDLE": "Encharge state idle",
|
|
176
176
|
"ENCHG_STATE_READY": "Encharge state ready",
|
|
177
|
+
"ENCMN_MDE_BMU_READY": "Encharge BMU ready",
|
|
177
178
|
"ENCMN_MDE_ENCHARGE_READY": "Encharge mode ready",
|
|
178
179
|
"ENCMN_MDE_ON_GRID": "Encharge mode on grid",
|
|
179
180
|
"ENCMN_MDE_OFF_GRID": "Encharge mode off grid",
|
|
181
|
+
"ENCMN_MDE_PCU_READY": "Encharge Microinverter ready",
|
|
180
182
|
"ENCMN_C6_CC_READY": "C6 Combiner Controller ready",
|
|
183
|
+
"ENCMN_C6_RGM_DEV_CONNECTED": "C6 Revenue Grade Meter connected",
|
|
181
184
|
"ENPOWER": "Enpower",
|
|
182
185
|
"ENS_DEVICE_STATE_READY": "Ensemble state ready",
|
|
183
186
|
"ENPWR_STATE_GRIDMODE_CONFIRM": "Enpower state grid mode confirm",
|
|
@@ -202,6 +205,7 @@ export const ApiCodes = {
|
|
|
202
205
|
"check-wiring": "Check Wiring",
|
|
203
206
|
"close": "Close",
|
|
204
207
|
"closed": "Closed",
|
|
208
|
+
"configured": "Configured",
|
|
205
209
|
"connected": "Connected",
|
|
206
210
|
"consumption": "Consumption Net",
|
|
207
211
|
"discharging": "Discharging",
|
package/src/envoydevice.js
CHANGED
|
@@ -4334,10 +4334,10 @@ class EnvoyDevice extends EventEmitter {
|
|
|
4334
4334
|
// Add to ensemble summary characteristics if live data not supported
|
|
4335
4335
|
if (!this.feature.liveData.supported || !this.feature.meters.storage.enabled) {
|
|
4336
4336
|
ensembleSummaryCharacteristics.push(
|
|
4337
|
-
{ type: Characteristic.AggMaxEnergy, value: secctrl.aggMaxEnergyKw },
|
|
4338
|
-
{ type: Characteristic.EncAggBackupEnergy, value: secctrl.encAggBackupEnergy },
|
|
4339
4337
|
{ type: Characteristic.AggSoc, value: secctrl.aggSoc },
|
|
4340
|
-
{ type: Characteristic.
|
|
4338
|
+
{ type: Characteristic.AggMaxEnergy, value: secctrl.aggMaxEnergyKw },
|
|
4339
|
+
{ type: Characteristic.EncAggSoc, value: secctrl.encAggSoc },
|
|
4340
|
+
{ type: Characteristic.EncAggBackupEnergy, value: secctrl.encAggBackupEnergy });
|
|
4341
4341
|
}
|
|
4342
4342
|
|
|
4343
4343
|
if (phaseA) {
|
|
@@ -4835,16 +4835,16 @@ class EnvoyDevice extends EventEmitter {
|
|
|
4835
4835
|
const info = tariffData.tariff ?? {};
|
|
4836
4836
|
const tariff = {};
|
|
4837
4837
|
tariff.info = {
|
|
4838
|
-
currencyCode: info.currency.code
|
|
4839
|
-
logger: info.logger
|
|
4838
|
+
currencyCode: info.currency.code,
|
|
4839
|
+
logger: info.logger,
|
|
4840
4840
|
date: this.functions.formatTimestamp(info.date, this.pv.homeData.timeZone),
|
|
4841
4841
|
};
|
|
4842
|
-
|
|
4842
|
+
|
|
4843
4843
|
// Storage Settings
|
|
4844
4844
|
const s = info.storage_settings ?? {};
|
|
4845
4845
|
tariff.storageSettings = {
|
|
4846
4846
|
mode: s.mode,
|
|
4847
|
-
operationModeSubType: s.operation_mode_sub_type
|
|
4847
|
+
operationModeSubType: s.operation_mode_sub_type,
|
|
4848
4848
|
reservedSoc: s.reserved_soc,
|
|
4849
4849
|
veryLowSoc: s.very_low_soc,
|
|
4850
4850
|
chargeFromGrid: !!s.charge_from_grid,
|
|
@@ -4884,30 +4884,30 @@ if (this.logDebug) this.emit('debug', `Requesting encharges tariff data1`);
|
|
|
4884
4884
|
return season;
|
|
4885
4885
|
});
|
|
4886
4886
|
};
|
|
4887
|
-
|
|
4887
|
+
|
|
4888
4888
|
tariff.seasons = processSeasons(info.seasons ?? []);
|
|
4889
4889
|
tariff.seasonsSell = processSeasons(info.seasons_sell ?? []);
|
|
4890
|
-
|
|
4890
|
+
|
|
4891
4891
|
// Schedule
|
|
4892
4892
|
const sched = tariffData.schedule ?? {};
|
|
4893
4893
|
tariff.schedule = {
|
|
4894
|
-
fileName: sched.filename
|
|
4895
|
-
source: sched.source
|
|
4894
|
+
fileName: sched.filename,
|
|
4895
|
+
source: sched.source,
|
|
4896
4896
|
date: this.functions.formatTimestamp(sched.date, this.pv.homeData.timeZone),
|
|
4897
|
-
version: sched.version
|
|
4897
|
+
version: sched.version,
|
|
4898
4898
|
reservedSoc: sched.reserved_soc,
|
|
4899
4899
|
veryLowSoc: sched.very_low_soc,
|
|
4900
4900
|
chargeFromGrid: !!sched.charge_from_grid,
|
|
4901
|
-
battMode: sched.batt_mode
|
|
4902
|
-
batteryMode: sched.battery_mode
|
|
4903
|
-
operationModeSubType: sched.operation_mode_sub_type
|
|
4901
|
+
battMode: sched.batt_mode,
|
|
4902
|
+
batteryMode: sched.battery_mode,
|
|
4903
|
+
operationModeSubType: sched.operation_mode_sub_type,
|
|
4904
4904
|
override: !!sched.override,
|
|
4905
4905
|
overrideBackupSoc: sched.override_backup_soc,
|
|
4906
4906
|
overrideChgDischargeRate: sched.override_chg_discharge_rate,
|
|
4907
4907
|
overrideTouMode: ApiCodes[sched.override_tou_mode] ?? sched.override_tou_mode,
|
|
4908
4908
|
schedule: sched.schedule ?? {}
|
|
4909
4909
|
};
|
|
4910
|
-
|
|
4910
|
+
|
|
4911
4911
|
// Encharge profile control updates
|
|
4912
4912
|
for (let i = 0; i < this.enchargeProfileControls.length; i++) {
|
|
4913
4913
|
const control = this.enchargeProfileControls[i];
|
|
@@ -4932,7 +4932,7 @@ if (this.logDebug) this.emit('debug', `Requesting encharges tariff data4`);
|
|
|
4932
4932
|
this.enchargeProfileControlsServices?.[i]?.updateCharacteristic(type, value);
|
|
4933
4933
|
}
|
|
4934
4934
|
}
|
|
4935
|
-
|
|
4935
|
+
|
|
4936
4936
|
// Encharge profile sensors update
|
|
4937
4937
|
for (let i = 0; i < this.enchargeProfileSensors.length; i++) {
|
|
4938
4938
|
const sensor = this.enchargeProfileSensors[i];
|
|
@@ -5073,8 +5073,8 @@ if (this.logDebug) this.emit('debug', `Requesting encharges tariff data5`);
|
|
|
5073
5073
|
gridActionBool: settings.gridAction !== 'none',
|
|
5074
5074
|
microGridAction: settings.microGridAction,
|
|
5075
5075
|
genAction: settings.genAction,
|
|
5076
|
-
essentialStartTime: settings.essentialStartTime
|
|
5077
|
-
essentialEndTime: settings.essentialEndTime
|
|
5076
|
+
essentialStartTime: settings.essentialStartTime,
|
|
5077
|
+
essentialEndTime: settings.essentialEndTime,
|
|
5078
5078
|
priority: settings.priority,
|
|
5079
5079
|
blackSStart: settings.blackSStart,
|
|
5080
5080
|
override: settings.override ?? 'false',
|
|
@@ -5592,8 +5592,8 @@ if (this.logDebug) this.emit('debug', `Requesting encharges tariff data5`);
|
|
|
5592
5592
|
|
|
5593
5593
|
// Agg Energy and Soc
|
|
5594
5594
|
const characteristics = [
|
|
5595
|
-
{ type: Characteristic.AggMaxEnergy, value: energySumKw, valueKey: 'aggMaxEnergyKw' },
|
|
5596
5595
|
{ type: Characteristic.AggSoc, value: percentFullSum, valueKey: 'aggSoc' },
|
|
5596
|
+
{ type: Characteristic.AggMaxEnergy, value: energySumKw, valueKey: 'aggMaxEnergyKw' },
|
|
5597
5597
|
];
|
|
5598
5598
|
|
|
5599
5599
|
// Update storage summary services
|
|
@@ -5662,8 +5662,8 @@ if (this.logDebug) this.emit('debug', `Requesting encharges tariff data5`);
|
|
|
5662
5662
|
// Update ensemble summary service
|
|
5663
5663
|
if (this.feature.inventory.esubs.secctrl.supported) {
|
|
5664
5664
|
const characteristics = [
|
|
5665
|
-
{ type: Characteristic.EncAggBackupEnergy, value: energySumEncKw, valueKey: 'encAggBackupEnergy' },
|
|
5666
5665
|
{ type: Characteristic.EncAggSoc, value: percentFullSumEnc, valueKey: 'encAggSoc' },
|
|
5666
|
+
{ type: Characteristic.EncAggBackupEnergy, value: energySumEncKw, valueKey: 'encAggBackupEnergy' },
|
|
5667
5667
|
];
|
|
5668
5668
|
|
|
5669
5669
|
// Update storage summary services
|