Edited at

エコキュートのECHONETパケットを覗いてみた。

More than 1 year has passed since last update.


はじめに


  • ウチでは、10年以上前にエコキュートを設置して使用してきました。

  • 最近になって、LANアダプターを付加するとタブレットで状態監視や操作を行えることを知り、色々と調べてみたところ、スマートメーターとの通信にも使われている、ECHONET Lite準拠とのこと。

  • エコキュートの最新機種への置き換えと合わせて、有線LANアダプターも設置したので、どんなパケットが流れているのかをパケットキャプチャしてみました。





パケットの流れ


  • ホームコントローラ(タブレットアプリ)を起動していると、


    • 最初に、自ノードインスタンスリストS、プロパティマップの取得

    • 以降、エコキュート状態1、消費電力、エコキュート状態2、エコキュート状態3の取得がサイクリックに行われているようです。





自ノードインスタンスリストS(EPC=0xd6)の取得



  • EOJ(ECHONETオブジェクト)は、0x026b01(電気温水器クラス)であるようです。

    ECHONET Lite
    
    ECHONET Lite Header (EHD)
    Transaction ID (TID): 0x00c0
    ECHONET Lite Data (EDATA)
    Source ECHONET Lite object (SEOJ): 0x0ef001 (Node profile)
    Destination ECHONET Lite object (DEOJ): 0x0ef001 (Node profile)
    ECHONET Lite service (ESV): Get_Res (0x72)
    Property size (OPC): 1
    Property 1: Self-node instance list S
    ECHONET Property (EPC): 0xd6 (Self-node instance list S)
    Property Data Counter (PDC): 4
    ECHONET Property Value Data (EDT): 01026b01
    Instance count: 1
    - Electric water heater (ID: 1)




プロパティマップの取得



  • 状変アナウンスプロパティマップ(EPC=0x9d)、Setプロパティマップ(EPC=0x9e)、Getプロパティマップ(EPC=0x9f)の3種類のプロパティマップを取得しているようです。

    ECHONET Lite
    
    ECHONET Lite Header (EHD)
    Transaction ID (TID): 0x00c1
    ECHONET Lite Data (EDATA)
    Source ECHONET Lite object (SEOJ): 0x026b01 (Electric water heater)
    Destination ECHONET Lite object (DEOJ): 0x05ff01 (Controller)
    ECHONET Lite service (ESV): Get_Res (0x72)
    Property size (OPC): 3
    Property 1
    ECHONET Property (EPC): 0x9d
    Property Data Counter (PDC): 6
    ECHONET Property Value Data (EDT): 05808188c3ea
    Property 2
    ECHONET Property (EPC): 0x9e
    Property Data Counter (PDC): 12
    ECHONET Property Value Data (EDT): 0b8190919798b0b4b6c0e3e4
    Property 3
    ECHONET Property (EPC): 0x9f
    Property Data Counter (PDC): 17
    ECHONET Property Value Data (EDT): 241b6b4971796148020341410000020202


EPC
状変
Set
Get
プロパティ

0x80

×

動作状態

0x81



設置場所

0x82
×
×

規格Version情報

0x83
×
×

識別番号

0x84
×
×

瞬時消費電力計測値

0x85
×
×

積算消費電力計測値

0x88

×

異常発生状態

0x89
×
×

異常内容

0x8a
×
×

メーカーコード

0x90
×


ONタイマ予約設定

0x91
×


ONタイマ時刻設定値

0x97
×


現在時刻設定

0x98
×


現在年月日設定

0x9d
×
×

状変アナウンスプロパティマップ

0x9e
×
×

Setプロパティマップ

0x9f
×
×

Getプロパティマップ

0xb0
×


沸き上げ自動設定

0xb1
×
×

沸き上げ湯温自動設定

0xb2
×
×

沸き上げ中状態

0xb4
×


手動沸き上げ停止日数設定値

0xb6
×


タンク運転モード設定

0xc0
×


昼間沸き増し許可設定

0xc3

×

給湯中状態

0xc4
×
×

風呂保温運転相対時間設定値

0xd1
×
×

給湯温度設定値

0xd3
×
×

風呂温度設定値

0xd4
×
×

風呂湯量設定4

0xd5
×
×

風呂湯量設定4設定可能最大レベル

0xe1
×
×

残湯量計測値

0xe2
×
×

タンク容量値

0xe3
×


風呂自動モード設定

0xe4
×


手動風呂追い焚き動作設定

0xe5
×
×

手動風呂足し湯動作設定

0xe6
×
×

手動風呂ぬるめ動作設定

0xe9
×
×

浴室優先設定

0xea

×

風呂動作状態監視



エコキュート状態の取得1



  • ホームコントローラ(タブレットアプリ)に表示される内容が、ここで取得された値に由来していると思われます。

    ECHONET Lite
    
    ECHONET Lite Header (EHD)
    Transaction ID (TID): 0x00c4
    ECHONET Lite Data (EDATA)
    Source ECHONET Lite object (SEOJ): 0x026b01 (Electric water heater)
    Destination ECHONET Lite object (DEOJ): 0x05ff01 (Controller)
    ECHONET Lite service (ESV): Get_Res (0x72)
    Property size (OPC): 7
    Property 1
    ECHONET Property (EPC): 0x80
    Property Data Counter (PDC): 1
    ECHONET Property Value Data (EDT): 30
    Property 2
    ECHONET Property (EPC): 0x81
    Property Data Counter (PDC): 1
    ECHONET Property Value Data (EDT): 20
    Property 3
    ECHONET Property (EPC): 0x89
    Property Data Counter (PDC): 2
    ECHONET Property Value Data (EDT): 0000
    Property 4
    ECHONET Property (EPC): 0x8a
    Property Data Counter (PDC): 3
    ECHONET Property Value Data (EDT): 000008
    Property 5
    ECHONET Property (EPC): 0xe3
    Property Data Counter (PDC): 1
    ECHONET Property Value Data (EDT): 42
    Property 6
    ECHONET Property (EPC): 0xe1
    Property Data Counter (PDC): 2
    ECHONET Property Value Data (EDT): 01f4
    Property 7
    ECHONET Property (EPC): 0xb2
    Property Data Counter (PDC): 1
    ECHONET Property Value Data (EDT): 42


EPC
プロパティ

0x80
動作状態
起動中(0x30)

0x81
設置場所
浴室、バス(0x20)

0x89
異常内容
異常なし(0x0000)

0x8a
メーカーコード
?(0x000008)

0xe3
風呂自動モード設定
自動解除(0x42)

0xe1
残湯量計測値
500L(0x1f4)

0xb2
沸き上げ中状態
非沸き上げ中(0x42)



瞬時消費電力計測値(EPC=0x84)の取得



  • 文字通り、消費電力(W)で、このパケットでは100W(0x0064)を示しています。

    ECHONET Lite
    
    ECHONET Lite Header (EHD)
    Transaction ID (TID): 0x00c5
    ECHONET Lite Data (EDATA)
    Source ECHONET Lite object (SEOJ): 0x026b01 (Electric water heater)
    Destination ECHONET Lite object (DEOJ): 0x05ff01 (Controller)
    ECHONET Lite service (ESV): Get_Res (0x72)
    Property size (OPC): 1
    Property 1
    ECHONET Property (EPC): 0x84
    Property Data Counter (PDC): 2
    ECHONET Property Value Data (EDT): 0064




エコキュート状態の取得2



  • ホームコントローラ(タブレットアプリ)に表示される内容が、ここで取得された値に由来していると思われます。

    ECHONET Lite
    
    ECHONET Lite Header (EHD)
    Transaction ID (TID): 0x00c6
    ECHONET Lite Data (EDATA)
    Source ECHONET Lite object (SEOJ): 0x026b01 (Electric water heater)
    Destination ECHONET Lite object (DEOJ): 0x05ff01 (Controller)
    ECHONET Lite service (ESV): Get_Res (0x72)
    Property size (OPC): 6
    Property 1
    ECHONET Property (EPC): 0xc3
    Property Data Counter (PDC): 1
    ECHONET Property Value Data (EDT): 42
    Property 2
    ECHONET Property (EPC): 0xb2
    Property Data Counter (PDC): 1
    ECHONET Property Value Data (EDT): 42
    Property 3
    ECHONET Property (EPC): 0xea
    Property Data Counter (PDC): 1
    ECHONET Property Value Data (EDT): 42
    Property 4
    ECHONET Property (EPC): 0xd1
    Property Data Counter (PDC): 1
    ECHONET Property Value Data (EDT): 2a
    Property 5
    ECHONET Property (EPC): 0xd3
    Property Data Counter (PDC): 1
    ECHONET Property Value Data (EDT): 29
    Property 6
    ECHONET Property (EPC): 0xe1
    Property Data Counter (PDC): 2
    ECHONET Property Value Data (EDT): 01f4


EPC
プロパティ

0xc3
給湯中状態
非給湯中(0x42)

0xb2
沸き上げ中状態
非沸き上げ中(0x42)

0xea
風呂動作状態監視
停止中(0x42)

0xd1
給湯温度設定値
42度(0x2a)

0xd3
風呂温度設定値
41度(0x29)

0xe1
残湯量計測値
500L(0x1f4)



エコキュート状態の取得3



  • ホームコントローラ(タブレットアプリ)に表示される内容が、ここで取得された値に由来していると思われます。

    ECHONET Lite
    
    ECHONET Lite Header (EHD)
    Transaction ID (TID): 0x00c7
    ECHONET Lite Data (EDATA)
    Source ECHONET Lite object (SEOJ): 0x026b01 (Electric water heater)
    Destination ECHONET Lite object (DEOJ): 0x05ff01 (Controller)
    ECHONET Lite service (ESV): Get_Res (0x72)
    Property size (OPC): 9
    Property 1
    ECHONET Property (EPC): 0x80
    Property Data Counter (PDC): 1
    ECHONET Property Value Data (EDT): 30
    Property 2
    ECHONET Property (EPC): 0xe3
    Property Data Counter (PDC): 1
    ECHONET Property Value Data (EDT): 42
    Property 3
    ECHONET Property (EPC): 0x90
    Property Data Counter (PDC): 1
    ECHONET Property Value Data (EDT): 42
    Property 4
    ECHONET Property (EPC): 0x91
    Property Data Counter (PDC): 2
    ECHONET Property Value Data (EDT): 1100
    Property 5
    ECHONET Property (EPC): 0xb4
    Property Data Counter (PDC): 1
    ECHONET Property Value Data (EDT): 00
    Property 6
    ECHONET Property (EPC): 0xb0
    Property Data Counter (PDC): 1
    ECHONET Property Value Data (EDT): 41
    Property 7
    ECHONET Property (EPC): 0xb6
    Property Data Counter (PDC): 1
    ECHONET Property Value Data (EDT): 42
    Property 8
    ECHONET Property (EPC): 0xc0
    Property Data Counter (PDC): 1
    ECHONET Property Value Data (EDT): 42
    Property 9
    ECHONET Property (EPC): 0xe4
    Property Data Counter (PDC): 1
    ECHONET Property Value Data (EDT): 42


EPC
プロパティ

0x80
動作状態
起動中(0x30)

0xe3
風呂自動モード設定
自動解除(0x42)

0x90
ONタイマ予約設定
予約切(0x42)

0x91
ONタイマ時刻設定値
17:00(0x1100)

0xb4
手動沸き上げ停止日数設定値
0日(0x00)

0xb0
沸き上げ自動設定
自動沸き上げ(0x41)

0xb6
タンク運転モード設定
節約(0x42)

0xc0
昼間沸き増し許可設定
昼間沸き増し禁止(0x42)

0xe4
手動風呂追い焚き動作設定
追い焚き切(0x42)



まとめ


  • 時系列データを取ってみようと思えるデータとしては、消費電力値と残湯量計測値くらいですね。

  • いずれの値も、あまり細かい数値は取れない(100W未満の消費電力値は取得できない模様)ようで、思っていたより面白みがないですが。