homebridge-solaxcloud-api 2.5.0 → 2.5.2

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.
@@ -1,113 +1,113 @@
1
- {
2
- "pluginAlias": "SolaxCloudAPI",
3
- "pluginType": "platform",
4
- "singular": false,
5
- "headerDisplay": "This Homebridge plugin uses Solax/QCells API cloud service to obtain real-time info of your inverters.",
6
- "schema": {
7
- "type": "object",
8
- "properties": {
9
- "inverters": {
10
- "title": "Inverters",
11
- "type": "array",
12
- "items": {
13
- "title": "Inverter",
14
- "type": "object",
15
- "properties": {
16
- "brand": {
17
- "title": "Inverter Brand",
18
- "type": "string",
19
- "required": true,
20
- "default": "solax",
21
- "oneOf": [
22
- { "title": "Solax", "enum": [ "solax" ] },
23
- { "title": "QCells", "enum": [ "qcells" ] }
24
- ],
25
- "description": "Brand for list of inverters below (API data fetch URL is brand dependent)."
26
- },
27
- "tokenId": {
28
- "title": "TokenID",
29
- "type": "string",
30
- "required": true,
31
- "description": "Users get information from the cloud API through the granted tokenID. Please obtain your tokenID on the API page of Solax/QCells cloud.",
32
- "default": "20200722185111234567890",
33
- "minLength": 23,
34
- "maxLength": 24
35
- },
36
- "name": {
37
- "title": "Inverter name (unique)",
38
- "type": "string",
39
- "required": true,
40
- "description": "Inverter name for description purposes.",
41
- "default": "My Solax Inverter",
42
- "minLength": 1,
43
- "maxLength": 30
44
- },
45
- "sn": {
46
- "title": "Inverter module SN",
47
- "type": "string",
48
- "required": true,
49
- "description": "Registration No. (inverter module SN)",
50
- "default": "ABCDEFGHIJ",
51
- "minLength": 10,
52
- "maxLength": 10
53
- },
54
- "hasBattery": {
55
- "title": "Battery installed?",
56
- "type": "boolean",
57
- "required": false,
58
- "description": "Whether this inverter has a battery installed.",
59
- "default": false
60
- }
61
- }
62
- }
63
- },
64
- "pollingFrequency": {
65
- "title": "Polling frequency (seconds)",
66
- "type": "integer",
67
- "required": false,
68
- "default": 300,
69
- "oneOf": [
70
- { "title": "300 (5 minutes)", "enum": [ 300 ] },
71
- { "title": "600 (10 minutes)", "enum": [ 600 ] },
72
- { "title": "900 (15 minutes)", "enum": [ 900 ] }
73
- ],
74
- "description": "Plugin data polling frequency from the cloud (in seconds)."
75
- },
76
- "smoothMeters": {
77
- "title": "Add accessories for smooth meters?",
78
- "type": "boolean",
79
- "required": false,
80
- "default": true,
81
- "description": "Enable this option to create accessories for smoothing raw values read from the cloud."
82
- },
83
- "smoothingMethod": {
84
- "title": "Smoothing method",
85
- "type": "string",
86
- "required": true,
87
- "default": "sma",
88
- "oneOf": [
89
- { "title": "Simple moving average", "enum": [ "sma" ] },
90
- { "title": "Exponential moving average", "enum": [ "ema" ] }
91
- ],
92
- "condition": {
93
- "functionBody": "return model.smoothMeters === true;"
94
- },
95
- "description": "Statistical method for smoothing power consumption data."
96
- },
97
- "pureHomeApp": {
98
- "title": "Add \"pure\" Home app accessories?",
99
- "type": "boolean",
100
- "required": false,
101
- "default": false,
102
- "description": "Enable this option to create light ambient sensors for power consumption."
103
- },
104
- "enableHistory": {
105
- "title": "Enable Eve history?",
106
- "type": "boolean",
107
- "required": false,
108
- "default": true,
109
- "description": "Enable this option to create fakegato history services for outlet power readings."
110
- }
111
- }
112
- }
113
- }
1
+ {
2
+ "pluginAlias": "SolaxCloudAPI",
3
+ "pluginType": "platform",
4
+ "singular": false,
5
+ "headerDisplay": "This Homebridge plugin uses Solax/QCells API cloud service to obtain real-time info of your inverters.",
6
+ "schema": {
7
+ "type": "object",
8
+ "properties": {
9
+ "inverters": {
10
+ "title": "Inverters",
11
+ "type": "array",
12
+ "items": {
13
+ "title": "Inverter",
14
+ "type": "object",
15
+ "properties": {
16
+ "brand": {
17
+ "title": "Inverter Brand",
18
+ "type": "string",
19
+ "required": true,
20
+ "default": "solax",
21
+ "oneOf": [
22
+ { "title": "Solax", "enum": [ "solax" ] },
23
+ { "title": "QCells", "enum": [ "qcells" ] }
24
+ ],
25
+ "description": "Brand for list of inverters below (API data fetch URL is brand dependent)."
26
+ },
27
+ "tokenId": {
28
+ "title": "TokenID",
29
+ "type": "string",
30
+ "required": true,
31
+ "description": "Users get information from the cloud API through the granted tokenID. Please obtain your tokenID on the API page of Solax/QCells cloud.",
32
+ "default": "20200722185111234567890",
33
+ "minLength": 23,
34
+ "maxLength": 24
35
+ },
36
+ "name": {
37
+ "title": "Inverter name (unique)",
38
+ "type": "string",
39
+ "required": true,
40
+ "description": "Inverter name for description purposes.",
41
+ "default": "My Solax Inverter",
42
+ "minLength": 1,
43
+ "maxLength": 30
44
+ },
45
+ "sn": {
46
+ "title": "Inverter module SN",
47
+ "type": "string",
48
+ "required": true,
49
+ "description": "Registration No. (inverter module SN)",
50
+ "default": "ABCDEFGHIJ",
51
+ "minLength": 10,
52
+ "maxLength": 10
53
+ },
54
+ "hasBattery": {
55
+ "title": "Battery installed?",
56
+ "type": "boolean",
57
+ "required": false,
58
+ "description": "Whether this inverter has a battery installed.",
59
+ "default": false
60
+ }
61
+ }
62
+ }
63
+ },
64
+ "pollingFrequency": {
65
+ "title": "Polling frequency (seconds)",
66
+ "type": "integer",
67
+ "required": false,
68
+ "default": 300,
69
+ "oneOf": [
70
+ { "title": "300 (5 minutes)", "enum": [ 300 ] },
71
+ { "title": "600 (10 minutes)", "enum": [ 600 ] },
72
+ { "title": "900 (15 minutes)", "enum": [ 900 ] }
73
+ ],
74
+ "description": "Plugin data polling frequency from the cloud (in seconds)."
75
+ },
76
+ "smoothMeters": {
77
+ "title": "Add accessories for smooth meters?",
78
+ "type": "boolean",
79
+ "required": false,
80
+ "default": true,
81
+ "description": "Enable this option to create accessories for smoothing raw values read from the cloud."
82
+ },
83
+ "smoothingMethod": {
84
+ "title": "Smoothing method",
85
+ "type": "string",
86
+ "required": true,
87
+ "default": "sma",
88
+ "oneOf": [
89
+ { "title": "Simple moving average", "enum": [ "sma" ] },
90
+ { "title": "Exponential moving average", "enum": [ "ema" ] }
91
+ ],
92
+ "condition": {
93
+ "functionBody": "return model.smoothMeters === true;"
94
+ },
95
+ "description": "Statistical method for smoothing power consumption data."
96
+ },
97
+ "pureHomeApp": {
98
+ "title": "Legacy Apple Home power sensors",
99
+ "type": "boolean",
100
+ "required": false,
101
+ "default": false,
102
+ "description": "Expose power as ambient light sensors when Matter is unavailable. This setting is ignored when Matter is enabled for the bridge."
103
+ },
104
+ "enableHistory": {
105
+ "title": "Enable Eve history?",
106
+ "type": "boolean",
107
+ "required": false,
108
+ "default": true,
109
+ "description": "Enable this option to create fakegato history services for outlet power readings."
110
+ }
111
+ }
112
+ }
113
+ }
@@ -55,6 +55,11 @@ export declare class SolaxCloudAPIPlatformInverter {
55
55
  * Whether this inverter is a virtual accessory.
56
56
  */
57
57
  private virtual;
58
+ /**
59
+ * Whether power meters are exposed as Matter electrical sensors or legacy
60
+ * HomeKit ambient light sensors.
61
+ */
62
+ private readonly useNativePowerSensors;
58
63
  /**
59
64
  * Virtual motion sensor triggered by data updates from Solax Cloud.
60
65
  */
@@ -1 +1 @@
1
- {"version":3,"file":"platformInverter.d.ts","sourceRoot":"","sources":["../src/platformInverter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,GAAG,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAgB3E;;GAEG;AACH,eAAO,MAAM,cAAc;;;CAG1B,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,cAAc;;;;;;;;CAQ1B,CAAC;AA4BF;;;;GAIG;AACH,qBAAa,6BAA6B;IACxC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAU;IAC9B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAiB;IACxC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAM;IAE1B;;OAEG;IACH,OAAO,CAAC,IAAI,CAAS;IAErB;;QAEI;IACJ,OAAO,CAAC,EAAE,CAAS;IAEnB;;QAEI;IACJ,OAAO,CAAC,gBAAgB,CAAU;IAElC;;OAEG;IACH,OAAO,CAAC,eAAe,CAAS;IAEhC;;OAEG;IACH,OAAO,CAAC,aAAa,CAAC,CAAsB;IAE5C;;OAEG;IACH,OAAO,CAAC,SAAS,CAAS;IAE1B;;OAEG;IACH,OAAO,CAAC,OAAO,CAAU;IAEzB;;OAEG;IACH,OAAO,CAAC,YAAY,CAAwB;IAE5C;;OAEG;IACH,OAAO,CAAC,OAAO,CAAyB;IAExC;;OAEG;IACH,OAAO,CAAC,UAAU,CAAwB;IAE1C;;;;QAII;IACJ,OAAO,CAAC,aAAa,CAAwB;IAE7C;;QAEI;IACJ,OAAO,CAAC,eAAe,CAA6B;IAEpD;;;;QAII;IACJ,OAAO,CAAC,kBAAkB,CAA6B;IAEvD,iCAAiC;IACjC,OAAO,CAAC,gBAAgB,CAAyB;IAEjD;;;;;;;;;;;;QAYI;gBACS,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,GAAG,EAAE,GAAG,EACzD,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAC1C,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EACjC,eAAe,EAAE,MAAM,EACvB,OAAO,UAAQ,EACf,SAAS,SAA4D;IAqLvE;;;;OAIG;WACW,oBAAoB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;IASzD;;;QAGI;IACJ,OAAO,CAAC,iBAAiB;IAuCzB;;;OAGG;IACI,qBAAqB,CAAC,KAAK,EAAE,MAAM;IAI1C;;;OAGG;IACI,qBAAqB,IAAI,MAAM;IAItC;;;OAGG;IACI,eAAe,CAAC,UAAU,EAAE,MAAM;IAIzC;;;OAGG;IACI,eAAe,IAAI,MAAM;IAIhC;;OAEG;IACI,eAAe;IAItB;;;;OAIG;IACI,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM;IAIvC;;;;OAIG;IACI,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM;IAQ7C;;;;OAIG;IACI,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM;IAIxC;;;;OAIG;IACI,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;IAQ/C;;;OAGG;IACI,cAAc,CAAC,GAAG,EAAE,MAAM;IAUjC;;OAEG;IACI,2BAA2B;IAwBlC;;;OAGG;IACI,UAAU,IAAI,OAAO;IAI5B;;;OAGG;IACI,cAAc,IAAI,eAAe,EAAE;CAK3C"}
1
+ {"version":3,"file":"platformInverter.d.ts","sourceRoot":"","sources":["../src/platformInverter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,GAAG,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAgB3E;;GAEG;AACH,eAAO,MAAM,cAAc;;;CAG1B,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,cAAc;;;;;;;;CAQ1B,CAAC;AA4BF;;;;GAIG;AACH,qBAAa,6BAA6B;IACxC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAU;IAC9B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAiB;IACxC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAM;IAE1B;;OAEG;IACH,OAAO,CAAC,IAAI,CAAS;IAErB;;QAEI;IACJ,OAAO,CAAC,EAAE,CAAS;IAEnB;;QAEI;IACJ,OAAO,CAAC,gBAAgB,CAAU;IAElC;;OAEG;IACH,OAAO,CAAC,eAAe,CAAS;IAEhC;;OAEG;IACH,OAAO,CAAC,aAAa,CAAC,CAAsB;IAE5C;;OAEG;IACH,OAAO,CAAC,SAAS,CAAS;IAE1B;;OAEG;IACH,OAAO,CAAC,OAAO,CAAU;IAEzB;;;OAGG;IACH,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAU;IAEhD;;OAEG;IACH,OAAO,CAAC,YAAY,CAAwB;IAE5C;;OAEG;IACH,OAAO,CAAC,OAAO,CAAyB;IAExC;;OAEG;IACH,OAAO,CAAC,UAAU,CAAwB;IAE1C;;;;QAII;IACJ,OAAO,CAAC,aAAa,CAAwB;IAE7C;;QAEI;IACJ,OAAO,CAAC,eAAe,CAA6B;IAEpD;;;;QAII;IACJ,OAAO,CAAC,kBAAkB,CAA6B;IAEvD,iCAAiC;IACjC,OAAO,CAAC,gBAAgB,CAAyB;IAEjD;;;;;;;;;;;;QAYI;gBACS,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,GAAG,EAAE,GAAG,EACzD,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAC1C,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EACjC,eAAe,EAAE,MAAM,EACvB,OAAO,UAAQ,EACf,SAAS,SAA4D;IA8LvE;;;;OAIG;WACW,oBAAoB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;IASzD;;;QAGI;IACJ,OAAO,CAAC,iBAAiB;IAuCzB;;;OAGG;IACI,qBAAqB,CAAC,KAAK,EAAE,MAAM;IAI1C;;;OAGG;IACI,qBAAqB,IAAI,MAAM;IAItC;;;OAGG;IACI,eAAe,CAAC,UAAU,EAAE,MAAM;IAIzC;;;OAGG;IACI,eAAe,IAAI,MAAM;IAIhC;;OAEG;IACI,eAAe;IAItB;;;;OAIG;IACI,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM;IAIvC;;;;OAIG;IACI,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM;IAQ7C;;;;OAIG;IACI,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM;IAIxC;;;;OAIG;IACI,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;IAQ/C;;;OAGG;IACI,cAAc,CAAC,GAAG,EAAE,MAAM;IAUjC;;OAEG;IACI,2BAA2B;IAwBlC;;;OAGG;IACI,UAAU,IAAI,OAAO;IAI5B;;;OAGG;IACI,cAAc,IAAI,eAAe,EAAE;CAK3C"}
@@ -85,6 +85,11 @@ export class SolaxCloudAPIPlatformInverter {
85
85
  * Whether this inverter is a virtual accessory.
86
86
  */
87
87
  virtual;
88
+ /**
89
+ * Whether power meters are exposed as Matter electrical sensors or legacy
90
+ * HomeKit ambient light sensors.
91
+ */
92
+ useNativePowerSensors;
88
93
  /**
89
94
  * Virtual motion sensor triggered by data updates from Solax Cloud.
90
95
  */
@@ -138,9 +143,16 @@ export class SolaxCloudAPIPlatformInverter {
138
143
  this.name = name;
139
144
  this.brandName = brandName;
140
145
  this.virtual = virtual;
146
+ this.useNativePowerSensors = Boolean(this.api.matter) || this.config.pureHomeApp === true;
141
147
  this.smoothingWindow = smoothingWindow;
142
148
  this.batteryInstalled = hasBattery;
143
149
  this.log.info(`Initialing acessories for inverter "${name}" (SN="${sn}") from ${this.brandName}...`);
150
+ if (this.api.matter) {
151
+ this.log.info('Matter enabled - exposing native electrical sensors.');
152
+ }
153
+ else if (this.config.pureHomeApp) {
154
+ this.log.info('Matter unavailable - exposing legacy Apple Home power sensors as ambient light sensors.');
155
+ }
144
156
  let inverterModel = 'Unknown';
145
157
  if (!this.virtual) {
146
158
  // init new Solax Cloud API object with give tokenID and sn
@@ -177,9 +189,10 @@ export class SolaxCloudAPIPlatformInverter {
177
189
  this.battery = new SolaxBatteryAccessory(this.log, this.api, `${this.name} Battery`, `bat-${this.sn}`, inverterModel);
178
190
  this.solaxAccessories.push(this.battery, this.rawOutlets.inverterFromBattery, this.rawOutlets.inverterToBattery);
179
191
  }
180
- // check if "pure" Home App accessories are needed
181
- if (this.config.pureHomeApp) {
182
- // add raw light sensors
192
+ // Matter electrical sensors take precedence. Without Matter, pureHomeApp
193
+ // retains the legacy ambient-light-sensor fallback.
194
+ if (this.useNativePowerSensors) {
195
+ // add raw power sensors
183
196
  this.rawLightSensors = {
184
197
  pv: new SolaxLightSensorAccessory(this.log, this.api, `${this.name} ${ACCESSORY_NAMES.pv} sensor`, `${ACCESSORY_SERIAL_PREFIXES.pv}-light-${this.sn}`, inverterModel),
185
198
  inverterFromBattery: new SolaxLightSensorAccessory(this.log, this.api, `${this.name} ${ACCESSORY_NAMES.inverterFromBattery} sensor`, `${ACCESSORY_SERIAL_PREFIXES.inverterFromBattery}-light-${this.sn}`, inverterModel, false, this.batteryInstalled),
@@ -194,7 +207,7 @@ export class SolaxCloudAPIPlatformInverter {
194
207
  this.solaxAccessories.push(this.rawLightSensors.inverterFromBattery, this.rawLightSensors.inverterToBattery);
195
208
  }
196
209
  if (this.config.smoothMeters) {
197
- // add smooth light sensors
210
+ // add smooth power sensors
198
211
  this.smoothLightSensors = {
199
212
  pv: new SolaxLightSensorAccessory(this.log, this.api, `${this.name} ${ACCESSORY_NAMES.pv} sensor (smooth)`, `${ACCESSORY_SERIAL_PREFIXES.pv}-light-smooth-${this.sn}`, inverterModel),
200
213
  inverterFromBattery: new SolaxLightSensorAccessory(this.log, this.api, `${this.name} ${ACCESSORY_NAMES.inverterFromBattery} sensor (smooth)`, `${ACCESSORY_SERIAL_PREFIXES.inverterFromBattery}-light-smooth-${this.sn}`, inverterModel, false, this.batteryInstalled),
@@ -210,22 +223,20 @@ export class SolaxCloudAPIPlatformInverter {
210
223
  }
211
224
  }
212
225
  }
213
- else {
214
- if (this.config.smoothMeters) {
215
- // setup smooth outlet accessories
216
- this.smoothOutlets = {
217
- pv: new SolaxOutletAccessory(this.log, this.api, `${this.name} ${ACCESSORY_NAMES.pv} (smooth)`, `${ACCESSORY_SERIAL_PREFIXES.pv}-smooth-${this.sn}`, inverterModel, this.config.enableHistory),
218
- inverterFromBattery: new SolaxOutletAccessory(this.log, this.api, `${this.name} ${ACCESSORY_NAMES.inverterFromBattery} (smooth)`, `${ACCESSORY_SERIAL_PREFIXES.inverterFromBattery}-smooth-${this.sn}`, inverterModel, this.config.enableHistory),
219
- inverterToBattery: new SolaxOutletAccessory(this.log, this.api, `${this.name} ${ACCESSORY_NAMES.inverterToBattery} (smooth)`, `${ACCESSORY_SERIAL_PREFIXES.inverterToBattery}-smooth-${this.sn}`, inverterModel, this.config.enableHistory),
220
- inverterAC: new SolaxOutletAccessory(this.log, this.api, `${this.name} ${ACCESSORY_NAMES.inverterAC} (smooth)`, `${ACCESSORY_SERIAL_PREFIXES.inverterAC}-smooth-${this.sn}`, inverterModel, this.config.enableHistory),
221
- inverterToGrid: new SolaxOutletAccessory(this.log, this.api, `${this.name} ${ACCESSORY_NAMES.inverterToGrid} (smooth)`, `${ACCESSORY_SERIAL_PREFIXES.inverterToGrid}-smooth-${this.sn}`, inverterModel, this.config.enableHistory),
222
- inverterToHouse: new SolaxOutletAccessory(this.log, this.api, `${this.name} ${ACCESSORY_NAMES.inverterToHouse} (smooth)`, `${ACCESSORY_SERIAL_PREFIXES.inverterToHouse}-smooth-${this.sn}`, inverterModel, this.config.enableHistory),
223
- gridToHouse: new SolaxOutletAccessory(this.log, this.api, `${this.name} ${ACCESSORY_NAMES.gridToHouse} (smooth)`, `${ACCESSORY_SERIAL_PREFIXES.gridToHouse}-smooth-${this.sn}`, inverterModel, this.config.enableHistory),
224
- };
225
- this.solaxAccessories.push(this.smoothOutlets.pv, this.smoothOutlets.inverterAC, this.smoothOutlets.inverterToGrid, this.smoothOutlets.inverterToHouse, this.smoothOutlets.gridToHouse);
226
- if (this.batteryInstalled) {
227
- this.solaxAccessories.push(this.smoothOutlets.inverterFromBattery, this.smoothOutlets.inverterToBattery);
228
- }
226
+ if (this.config.smoothMeters) {
227
+ // Smooth outlets remain available alongside Matter electrical sensors.
228
+ this.smoothOutlets = {
229
+ pv: new SolaxOutletAccessory(this.log, this.api, `${this.name} ${ACCESSORY_NAMES.pv} (smooth)`, `${ACCESSORY_SERIAL_PREFIXES.pv}-smooth-${this.sn}`, inverterModel, this.config.enableHistory),
230
+ inverterFromBattery: new SolaxOutletAccessory(this.log, this.api, `${this.name} ${ACCESSORY_NAMES.inverterFromBattery} (smooth)`, `${ACCESSORY_SERIAL_PREFIXES.inverterFromBattery}-smooth-${this.sn}`, inverterModel, this.config.enableHistory),
231
+ inverterToBattery: new SolaxOutletAccessory(this.log, this.api, `${this.name} ${ACCESSORY_NAMES.inverterToBattery} (smooth)`, `${ACCESSORY_SERIAL_PREFIXES.inverterToBattery}-smooth-${this.sn}`, inverterModel, this.config.enableHistory),
232
+ inverterAC: new SolaxOutletAccessory(this.log, this.api, `${this.name} ${ACCESSORY_NAMES.inverterAC} (smooth)`, `${ACCESSORY_SERIAL_PREFIXES.inverterAC}-smooth-${this.sn}`, inverterModel, this.config.enableHistory),
233
+ inverterToGrid: new SolaxOutletAccessory(this.log, this.api, `${this.name} ${ACCESSORY_NAMES.inverterToGrid} (smooth)`, `${ACCESSORY_SERIAL_PREFIXES.inverterToGrid}-smooth-${this.sn}`, inverterModel, this.config.enableHistory),
234
+ inverterToHouse: new SolaxOutletAccessory(this.log, this.api, `${this.name} ${ACCESSORY_NAMES.inverterToHouse} (smooth)`, `${ACCESSORY_SERIAL_PREFIXES.inverterToHouse}-smooth-${this.sn}`, inverterModel, this.config.enableHistory),
235
+ gridToHouse: new SolaxOutletAccessory(this.log, this.api, `${this.name} ${ACCESSORY_NAMES.gridToHouse} (smooth)`, `${ACCESSORY_SERIAL_PREFIXES.gridToHouse}-smooth-${this.sn}`, inverterModel, this.config.enableHistory),
236
+ };
237
+ this.solaxAccessories.push(this.smoothOutlets.pv, this.smoothOutlets.inverterAC, this.smoothOutlets.inverterToGrid, this.smoothOutlets.inverterToHouse, this.smoothOutlets.gridToHouse);
238
+ if (this.batteryInstalled) {
239
+ this.solaxAccessories.push(this.smoothOutlets.inverterFromBattery, this.smoothOutlets.inverterToBattery);
229
240
  }
230
241
  }
231
242
  }
@@ -331,7 +342,7 @@ export class SolaxCloudAPIPlatformInverter {
331
342
  */
332
343
  setRawPower(key, power) {
333
344
  this.rawOutlets[key].setPowerConsumption(power);
334
- if (this.config.pureHomeApp) {
345
+ if (this.useNativePowerSensors) {
335
346
  this.rawLightSensors[key].setAmbientLightLevel(power);
336
347
  }
337
348
  }
@@ -350,7 +361,7 @@ export class SolaxCloudAPIPlatformInverter {
350
361
  */
351
362
  setRawEnergy(key, energy) {
352
363
  this.rawOutlets[key].setTotalEnergyConsumption(energy);
353
- if (this.config.pureHomeApp) {
364
+ if (this.useNativePowerSensors) {
354
365
  this.rawLightSensors[key].setTotalEnergyConsumption(energy);
355
366
  }
356
367
  }
@@ -360,12 +371,10 @@ export class SolaxCloudAPIPlatformInverter {
360
371
  */
361
372
  setSmoothPower(key) {
362
373
  const smoothPower = this.rawOutlets[key].getSmoothPowerConsumption(this.config.smoothingMethod, this.smoothingWindow);
363
- if (this.config.pureHomeApp) {
374
+ if (this.useNativePowerSensors) {
364
375
  this.smoothLightSensors[key].setAmbientLightLevel(smoothPower);
365
376
  }
366
- else {
367
- this.smoothOutlets[key].setPowerConsumption(smoothPower);
368
- }
377
+ this.smoothOutlets[key].setPowerConsumption(smoothPower);
369
378
  }
370
379
  /**
371
380
  * Update data from this inverter by using the Solax Cloud API
@@ -1 +1 @@
1
- {"version":3,"file":"platformInverter.js","sourceRoot":"","sources":["../src/platformInverter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"platformInverter.js","sourceRoot":"","sources":["../src/platformInverter.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,59 +1,60 @@
1
- {
2
- "private": false,
3
- "displayName": "Homebridge Solax Cloud API",
4
- "name": "homebridge-solaxcloud-api",
5
- "type": "module",
6
- "version": "2.5.0",
7
- "description": "Integrates solar production info using public Solax/QCells Cloud API into Homebridge accessories.",
8
- "license": "Apache-2.0",
9
- "repository": {
10
- "type": "git",
11
- "url": "git://github.com/AllMightySauron/homebridge-solaxcloud-api.git"
12
- },
13
- "bugs": {
14
- "url": "https://github.com/AllMightySauron/homebridge-solaxcloud-api/issues"
15
- },
16
- "engines": {
17
- "node": "^22 || ^24 || ^26",
18
- "homebridge": ">=2.4.0"
19
- },
20
- "main": "dist/index.js",
21
- "scripts": {
22
- "test": "tsx ./node_modules/mocha/bin/mocha.js --exit test/**/*.test.ts",
23
- "lint": "eslint src/**.ts --max-warnings=0",
24
- "watch": "npm run build && npm link && nodemon",
25
- "build": "rimraf ./dist && tsc",
26
- "prepublishOnly": "npm run lint && npm run build"
27
- },
28
- "keywords": [
29
- "homebridge",
30
- "homebridge-plugin",
31
- "supports-matter",
32
- "solax",
33
- "qcells",
34
- "solaxcloud"
35
- ],
36
- "peerDependencies": {
37
- "homebridge": "^2.4.0"
38
- },
39
- "dependencies": {
40
- "fakegato-history": "^0.6.7",
41
- "homebridge-lib": "^8.1.0",
42
- "solax-cloud-api": "^0.2.0",
43
- "string-hash-64": "^1.0.3",
44
- "sync-fetch": "^0.3.1"
45
- },
46
- "devDependencies": {
47
- "@types/mocha": "^10.0.10",
48
- "@types/node": "^24.19.2",
49
- "@typescript-eslint/eslint-plugin": "^8.72.1",
50
- "@typescript-eslint/parser": "^8.72.1",
51
- "eslint": "^8.57.1",
52
- "homebridge": "^2.4.0",
53
- "mocha": "^12.0.3",
54
- "nodemon": "^3.1.0",
55
- "rimraf": "^3.0.2",
56
- "tsx": "^4.23.15",
57
- "typescript": "^5.9.3"
58
- }
59
- }
1
+ {
2
+ "private": false,
3
+ "displayName": "Homebridge Solax Cloud API",
4
+ "name": "homebridge-solaxcloud-api",
5
+ "type": "module",
6
+ "version": "2.5.2",
7
+ "description": "Integrates solar production info using public Solax/QCells Cloud API into Homebridge accessories.",
8
+ "license": "Apache-2.0",
9
+ "repository": {
10
+ "type": "git",
11
+ "url": "git://github.com/AllMightySauron/homebridge-solaxcloud-api.git"
12
+ },
13
+ "bugs": {
14
+ "url": "https://github.com/AllMightySauron/homebridge-solaxcloud-api/issues"
15
+ },
16
+ "engines": {
17
+ "node": "^22 || ^24 || ^26",
18
+ "homebridge": ">=2.4.0"
19
+ },
20
+ "main": "dist/index.js",
21
+ "scripts": {
22
+ "test": "tsx ./node_modules/mocha/bin/mocha.js --exit test/**/*.test.ts",
23
+ "lint": "eslint src/**.ts --max-warnings=0",
24
+ "watch": "npm run build && npm link && nodemon",
25
+ "build": "rimraf ./dist && tsc",
26
+ "prepublishOnly": "npm run lint && npm run build"
27
+ },
28
+ "keywords": [
29
+ "homebridge",
30
+ "homebridge-plugin",
31
+ "supports-matter",
32
+ "supports-hap",
33
+ "solax",
34
+ "qcells",
35
+ "solaxcloud"
36
+ ],
37
+ "peerDependencies": {
38
+ "homebridge": "^2.4.0"
39
+ },
40
+ "dependencies": {
41
+ "fakegato-history": "^0.6.7",
42
+ "homebridge-lib": "^8.1.0",
43
+ "string-hash-64": "^1.0.3",
44
+ "sync-fetch": "^0.3.1",
45
+ "solax-cloud-api": "^0.2.0"
46
+ },
47
+ "devDependencies": {
48
+ "@types/mocha": "^10.0.10",
49
+ "@types/node": "^24.19.2",
50
+ "@typescript-eslint/eslint-plugin": "^8.72.1",
51
+ "@typescript-eslint/parser": "^8.72.1",
52
+ "eslint": "^8.57.1",
53
+ "homebridge": "^2.4.0",
54
+ "mocha": "^12.0.3",
55
+ "nodemon": "^3.1.0",
56
+ "rimraf": "^3.0.2",
57
+ "tsx": "^4.23.15",
58
+ "typescript": "^5.9.3"
59
+ }
60
+ }
@@ -1,16 +1,16 @@
1
- import assert from 'assert';
2
-
3
- import { BATTERY_CHARGING_STATE, SolaxBatteryAccessory } from '../src/batteryAccessory.js';
4
- import { createApi, createLog } from './helpers.js';
5
-
6
- describe('SolaxBatteryAccessory', () => {
7
- it('keeps charge state getter in sync after updates', () => {
8
- const battery = new SolaxBatteryAccessory(createLog(), createApi(), 'Battery', 'bat-test', 'Test Model');
9
-
10
- battery.setChargeState(BATTERY_CHARGING_STATE.CHARGING);
11
- assert.equal(battery.getChargeStateValue(), BATTERY_CHARGING_STATE.CHARGING);
12
-
13
- battery.setChargeState(BATTERY_CHARGING_STATE.NOT_CHARGEABLE);
14
- assert.equal(battery.getChargeStateValue(), BATTERY_CHARGING_STATE.NOT_CHARGEABLE);
15
- });
16
- });
1
+ import assert from 'assert';
2
+
3
+ import { BATTERY_CHARGING_STATE, SolaxBatteryAccessory } from '../src/batteryAccessory.js';
4
+ import { createApi, createLog } from './helpers.js';
5
+
6
+ describe('SolaxBatteryAccessory', () => {
7
+ it('keeps charge state getter in sync after updates', () => {
8
+ const battery = new SolaxBatteryAccessory(createLog(), createApi(), 'Battery', 'bat-test', 'Test Model');
9
+
10
+ battery.setChargeState(BATTERY_CHARGING_STATE.CHARGING);
11
+ assert.equal(battery.getChargeStateValue(), BATTERY_CHARGING_STATE.CHARGING);
12
+
13
+ battery.setChargeState(BATTERY_CHARGING_STATE.NOT_CHARGEABLE);
14
+ assert.equal(battery.getChargeStateValue(), BATTERY_CHARGING_STATE.NOT_CHARGEABLE);
15
+ });
16
+ });