homebridge-echonet-lite-plus 0.7.1 → 0.7.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.
- package/CHANGELOG.md +6 -0
- package/README.md +18 -0
- package/dist/mra.js +7 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,11 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 0.7.2
|
|
4
|
+
|
|
5
|
+
- Clarified how HEMS commonly uses ECHONET Lite and why some HEMS-compatible devices may be discoverable by this plugin.
|
|
6
|
+
- Documented that standard ECHONET Lite air-conditioner temperature control uses 1°C steps, while manufacturer-specific local APIs may support 0.5°C.
|
|
7
|
+
- Rejected fractional numeric writes that an ECHONET property schema cannot represent instead of silently rounding them.
|
|
8
|
+
|
|
3
9
|
## 0.7.1
|
|
4
10
|
|
|
5
11
|
- Added a bilingual `NOTICE-MRA.md` identifying the ECHONET Consortium as the copyright holder and documenting the source of the bundled MRA data.
|
package/README.md
CHANGED
|
@@ -8,6 +8,18 @@ ECHONET ConsortiumのMachine Readable Appendix Version 1.4.0を同梱し、EPC
|
|
|
8
8
|
|
|
9
9
|
MRAデータの著作権はエコーネットコンソーシアムに帰属します。出典およびライセンス適用範囲の詳細は、同梱の[NOTICE-MRA.md](NOTICE-MRA.md)を参照してください。本プラグインのMITライセンスはMRAデータの著作権、ライセンスその他の条件を変更するものではありません。
|
|
10
10
|
|
|
11
|
+
## HEMSとECHONET Liteの関係
|
|
12
|
+
|
|
13
|
+
HEMS(Home Energy Management System)は、家庭内の電力・発電量・ガス・水道などを見える化し、家電や住宅設備を管理・制御するシステムです。
|
|
14
|
+
|
|
15
|
+
ECHONET Liteは、HEMSを構成するコントローラーと、エアコン、照明、給湯器、分電盤などの機器が通信するために広く利用されている共通規格です。そのため、ECHONET Liteという名称を意識していなくても、ご自宅にある「HEMS対応機器」がECHONET Lite対応機器である場合があります。
|
|
16
|
+
|
|
17
|
+
本プラグインは、LAN内のECHONET Lite対応機器と直接通信し、対応する機能をHomebridge/Appleホームへ橋渡しします。メーカーがApple HomeやHomeKitへ直接対応していないHEMS対応機器でも、ECHONET Liteで通信できる場合は、本プラグインから検出・操作できる可能性があります。
|
|
18
|
+
|
|
19
|
+
ECHONET Liteの利用先はHEMSだけに限定されません。家電制御、住宅設備管理、セキュリティ、見守りなどにも利用されています。また、本プラグインはECHONET Liteによる機器通信を扱うものであり、エネルギー最適化、料金計算、需要予測などを行うHEMSそのものではありません。
|
|
20
|
+
|
|
21
|
+
なお、HEMS対応と表示されているすべての機器を操作できるとは限りません。ネットワークへの接続方法、メーカー独自の制限、機器が公開しているECHONET Liteプロパティ、HomeKitで表現可能な機能などによって対応範囲が異なります。
|
|
22
|
+
|
|
11
23
|
## 動作要件とインストール
|
|
12
24
|
|
|
13
25
|
- Node.js 18以降
|
|
@@ -62,6 +74,12 @@ Appleのホームアプリには電力・発電量・EV残量・水道・ガス
|
|
|
62
74
|
|
|
63
75
|
ECHONET Liteとして存在していても、HomeKit上で安全かつ自然に表現できない機器クラスは検出一覧にのみ表示し、対応マッピングを実装するまでHomeKitへは公開しません。
|
|
64
76
|
|
|
77
|
+
### エアコンの設定温度単位
|
|
78
|
+
|
|
79
|
+
本Standalone版は、家庭用エアコンの標準ECHONET Liteプロパティ「温度設定値」(EPC `B3`)に合わせ、設定温度を1℃単位で扱います。EPC `B3`では0.5℃を表現できないため、Appleホーム上で0.5℃単位を選択できるようにしても、その値を標準ECHONET Lite通信でそのまま実機へ送ることはできません。
|
|
80
|
+
|
|
81
|
+
Engine Plus構成のメーカー別プラグインでは、メーカーが提供する対応ローカルAPIなど、0.5℃を表現できる別の操作経路が設定されている場合に限り、0.5℃単位へ対応することがあります。標準ECHONET Lite通信へフォールバックする場合は1℃単位です。
|
|
82
|
+
|
|
65
83
|
## 構成
|
|
66
84
|
|
|
67
85
|
HomebridgeをECHONET Lite機器と同じLANで動かし、設定画面で自動探索を有効にします。複数NIC環境では対象ネットワークを指定してください。
|
package/dist/mra.js
CHANGED
|
@@ -45,7 +45,13 @@ class MraRepository {
|
|
|
45
45
|
if (typeof value === 'number' && Number.isFinite(value)) {
|
|
46
46
|
for (const number of this.schemasOfType(schema, 'number')) {
|
|
47
47
|
const multiple = number.multiple ?? 1, size = this.sizeOf(number.format), signed = number.format?.startsWith('int') ?? false;
|
|
48
|
-
const
|
|
48
|
+
const scaled = value / multiple;
|
|
49
|
+
// Do not silently round a value that the ECHONET schema cannot
|
|
50
|
+
// represent. For example, the standard air-conditioner B3 property
|
|
51
|
+
// is an integer Celsius value, so 25.5°C must not become 26°C.
|
|
52
|
+
if (!Number.isInteger(scaled))
|
|
53
|
+
continue;
|
|
54
|
+
const n = scaled;
|
|
49
55
|
if ((number.minimum !== undefined && n < number.minimum) || (number.maximum !== undefined && n > number.maximum))
|
|
50
56
|
continue;
|
|
51
57
|
const min = signed ? -(2 ** (size * 8 - 1)) : 0, max = signed ? 2 ** (size * 8 - 1) - 1 : 2 ** (size * 8) - 1;
|