太陽光発電データと売買電力の見える化は、なんとなくできちゃったので、今度はECHONET Liteを使って家電製品(と言ってもうちにあるECHONET Lite製品はエアコンとEcoCute位ですが)の制御を行おうと思います。。
ちょっと敷居が高かったのですが、年明けから色々と始めました。
とりあえず、手始めにECHONET Liteを使って、エアコンの室内外の気温とか、部屋の湿度データなんかを取れるようになったので、EcoCuteのデータも取れるようにしてみました。詳しくは次回以降に。
今回は、ECHONET Lite関連についていくつか参考になる情報を整理します。初心者なのでなかなかまとまった情報がなくて苦労しました。
そう言えば、色々とECHONET Liteの仕様書を物色していたら、なんと委員の名前の中に昔の同僚の名前をみつけてびっくりしました。こんな事やってたんだ、と今ころわかりました、、。ご苦労様です。
ちなみに、ECHONET Liteは、IPv4,IPv6上でudp(port=3610)で通信をします。
私は、Windows11の上でVScode+Python+Pyenvでやってみて動いたので、ESP32の上でCircuitPythonに移植して、多少手は入れていますが一応動くことは確認できました。CircuitPythonのsocket周りにいくつかversionがあるようで比較的新しい?socketpoolライブラリがあります。WEBを見ると、違うライブラリで作ったものの記載が混在しているのでググるときには注意して下さい。
ちなみに、私はVScodeもPythonもちょっと毛が生えたくらいのど素人なので、ここに来るまでには十分に苦労をしてきております、、、。
◆「本家」ECHONET Lite規格の概要@エコーネットコンソシアム
◆ECHONET Lite規格書@エコーネットコンソシアム
ここに規格書やインタフェース仕様書などの各種情報があります。接続する装置毎に細かく仕様が決まっていますので、それを参照。
ちなみに、EcoCuteは、「電気温水器」クラスの範疇になります。エアコンは「家庭用エアコン」クラスの範疇です。
コマンドに対するレスポンスの内容が当初よくわからなかったのですが、これは、「APPENDIX ECHONET機器オブジェクト詳細規定」に記載されています。600ページになる大作です。ここから該当するクラスを探します。
◆Wireshark用のECHONET Liteアダプタ
Wiresharkはご存知、network上のデータをキャプチャやプロトコル解析するソフトで、これはそれ用のECHONET Liteアダプタです。LAN上でコントローラ(PC)からデータが出ているのか、各種デバイスからデータが戻ってきているのか、とか、市販のコントローラとのやり取りを解析する、とか切り分け、分析に使えます。私は当初、Pythonでudpを使ったアプリを作ったことがなかったので、データが出ているのか分からなかったのでとても助かりました。
ちなみに、Wiresharkでは、udp.port=3610とかでフィルタを掛けるとECHONET Liteのトラフィックだけに絞れるので良いです。(ECHONET Liteが使うportは3610です)
◆神奈川工科大学
”HEMS(ECHONET Lite)認証支援センター”、をやっているようです。
そこの「SDKs」の中に「SSNG」というツールがあります。
これは、任意のECHONET Liteクライアントに向けて簡単にコマンドを送りつけて、それを受信してみることができる単独アプリです。テスト用にお手軽に使えます。
とりあえず、ドキュメントやツール類はこんな感じです。あともちろん、Qiitaとかの先人の皆さんの記事はもちろん大変に参考にさせて頂いています。ありがとうございます。
今回は参考先とかToolの在処などをまとめてみました。