電子ペーパーを使った Xiaomi の温湿度計

最近買った温湿度計が思っていたよりも良かったので紹介します.

製品概要

購入したのは Xiaomi Mijia Thermometer Temperature Humidity Sensor.特長は表示に電子ペーパを使っていることです.Kindle とかでおなじみのあれです.そのため,視認性が圧倒的に良いです.

こんな感じ.

肝となる温度センサーには Sensirion の SHT-30が使われており,温湿度計としての信頼度が高いです.具体的なスペックは下記になります.

温度精度
±0.3℃
湿度精度
±3%

2つ並べて置いておくと,次のように数字がぴったり一致します.

構造

中身が気になったの分解してみました.

センサーとマイコンのみのシンプルな構成です.センサー部分は浮島のようになっていて,応答性に対してちゃんと配慮されています.電源IC はありません.

マイコンは,HOLTEK の HT66F0182 [データシート] というものです.ブロック図は次のようになります.A/D 変換器で STH-30 がアナログ出力する温度と湿度を読み取り,GPIO で電子ペーパと通信を行っていそうです.

消費電流はこんな感じ.電池の持ちを考えると,LIRC モードで動かしていると思われます.値としては ESP32 の ULP と同等ですね.

解析

マイコンの端子をオシロでみたところ,次のような通信を行っていました.

もう少し拡大するとこんな感じ.

さらに拡大していくと,次のような波形が続いていました.

観測したのは SPI 通信の CS と CLK と思われます.CS が L の区間は 9 クロックなので,8bit + パリティ1bit で通信しているようです.クロック周波数は 8kHz.

この通信量だと,電子ペーパ側に対しては数値のみを送って,電子ペーパ側で描画を行っていそうです.