homebridge-econet-rheem 1.0.4 → 1.0.5
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/README.md +11 -4
- package/dist/model/waterHeater.js +13 -7
- package/dist/model/waterHeater.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -4,12 +4,19 @@
|
|
|
4
4
|
|
|
5
5
|
# Homebridge EcoNet Rheem Plugin
|
|
6
6
|
|
|
7
|
-
This Homebridge plugin integrates Rheem EcoNet
|
|
7
|
+
This Homebridge plugin integrates Rheem EcoNet devices into Apple HomeKit.
|
|
8
8
|
|
|
9
9
|
> [!NOTE]
|
|
10
|
-
> This plugin uses an unofficial
|
|
10
|
+
> This plugin uses an unofficial EcoNet API and could stop working at any time without warning.
|
|
11
11
|
|
|
12
|
-
|
|
12
|
+
## Limitations
|
|
13
|
+
|
|
14
|
+
* Only water heaters in ºF have been fully tested
|
|
15
|
+
* Celcius should work but is untested
|
|
16
|
+
* *Let me know if you have successfully used ºC so I can remove this*
|
|
17
|
+
* Thermostat implementation is incomplete since I don't have access to the necessary hardware
|
|
18
|
+
* *Running in debug mode will generate the json output I need*
|
|
19
|
+
* Due to limitations in HomeKit, it is not possible to switch water heater modes, only enable/disable and adjust the desired temperature.
|
|
13
20
|
|
|
14
21
|
## Installation
|
|
15
22
|
|
|
@@ -64,4 +71,4 @@ This plugin is independently developed and is not in any way affiliated with or
|
|
|
64
71
|
|
|
65
72
|
## Credits
|
|
66
73
|
|
|
67
|
-
Econet API
|
|
74
|
+
Econet API leans heavily on earlier work done by [@w1ll1am23](https://github.com/sponsors/w1ll1am23) in [pyeconet](https://github.com/w1ll1am23/pyeconet), a Python 3 interface to the EcoNet API.
|
|
@@ -34,18 +34,24 @@ export class WaterHeater extends Equipment {
|
|
|
34
34
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
35
35
|
updateFromREST(update) {
|
|
36
36
|
super.updateFromREST(update);
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
37
|
+
if ('@ENABLED' in update) {
|
|
38
|
+
this.enabled = update['@ENABLED'].value === 1;
|
|
39
|
+
}
|
|
40
|
+
if ('@RUNNING' in update) {
|
|
41
|
+
this.running = update['@RUNNING'].replace(/\s/g, '').length > 0;
|
|
42
|
+
}
|
|
43
|
+
if ('@SETPOINT' in update) {
|
|
44
|
+
this.temp_units = update['@SETPOINT'].constraints.units === 'deg F' ? TemperatureUnits.FAHRENHEIT : TemperatureUnits.CELSIUS;
|
|
45
|
+
this.lower_limit = update['@SETPOINT'].constraints.lowerLimit || 100;
|
|
46
|
+
this.upper_limit = update['@SETPOINT'].constraints.upperLimit || 150;
|
|
47
|
+
this.set_point = update['@SETPOINT'].value || 0;
|
|
48
|
+
}
|
|
43
49
|
this.didUpdate();
|
|
44
50
|
}
|
|
45
51
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
46
52
|
updateFromMQTT(update) {
|
|
47
53
|
if ('@ENABLED' in update) {
|
|
48
|
-
this.enabled = update['@ENABLED'] === 1 || update['@ENABLED']
|
|
54
|
+
this.enabled = update['@ENABLED'] === 1 || update['@ENABLED'].value === 1;
|
|
49
55
|
this._api.log.debug(`${this.deviceName} enabled = ${this.enabled}`);
|
|
50
56
|
}
|
|
51
57
|
if ('@RUNNING' in update) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"waterHeater.js","sourceRoot":"","sources":["../../src/model/waterHeater.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAE3C,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAE9C,MAAM,OAAO,WAAY,SAAQ,SAAS;IAEhC,OAAO,GAAY,KAAK,CAAC;IACzB,OAAO,GAAY,KAAK,CAAC;IAEzB,UAAU,GAAG,gBAAgB,CAAC,OAAO,CAAC;IAEtC,WAAW,GAAG,GAAG,CAAC;IAClB,WAAW,GAAG,GAAG,CAAC;IAClB,SAAS,GAAG,CAAC,CAAC;IAEtB,8DAA8D;IAC9D,YAAY,GAAc,EAAE,UAAe;QACzC,KAAK,CAAC,GAAG,CAAC,CAAC;QACX,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC;IAClC,CAAC;IAED,IAAI,SAAS;QACX,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED,IAAI,SAAS;QACX,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,UAAU,CAAC;IACzB,CAAC;IAED,IAAI,MAAM;QACR,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;IAC9C,CAAC;IAED,uCAAuC;IACvC,IAAI,WAAW;QACb,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IAED,IAAI,QAAQ;QACV,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IAED,8DAA8D;IACpD,cAAc,CAAC,MAAW;QAClC,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;QAE7B,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,UAAU,CAAC,
|
|
1
|
+
{"version":3,"file":"waterHeater.js","sourceRoot":"","sources":["../../src/model/waterHeater.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
"displayName": "Homebridge Econet Rheem",
|
|
5
5
|
"description": "Homebridge plugin based on pyeconet for control of Rheem water heaters",
|
|
6
6
|
"type": "module",
|
|
7
|
-
"version": "1.0.
|
|
7
|
+
"version": "1.0.5",
|
|
8
8
|
"homepage": "https://github.com/mpatfield/homebridge-econet-rheem#readme",
|
|
9
9
|
"repository": {
|
|
10
10
|
"type": "git",
|