anatsuk1のウェブログ

ブログを書いてみたい!

Raspberry PiでDyson Cooling FanをSiriする

Dysonで快適な生活

エアコンの能力をフルに使おうと、Bic Cameraでサーキュレーターを左から右に見ている。

Dysonはひとつのハードウェアで空気清浄機、加湿器、扇風機の機能を持つ。すごく良いサーキュレータになると想う。

キレイな空気、空気の循環、夏には強風にして、吹き出し口の前に行く。動いている部分は危ないが、止まって見えるので安全で良い。

今回はDysonをSiriで風を出そう!

homebridge-dyson-linkプラグイン

DysonをlinkするHomeBridgeプラグインを使ってみる。

Dysonは非公開のMQTTプロトコルで、センサー情報の取得、風速、風量の設定をする。

インストール

sudo npm install -g homebridge-dyson-link

config.json設定

       {
         "platform": "DysonPlatform",
         "name": "DysonPlatform",
         "accessories": [
            {
               "displayName": "DysonFan",
               "ip": "DYSON-IP",
               "serialNumber": "DYSON-SERIALNUMBER",
               "password": "DYSON-PASSWORD",
               "focusModeVisible" : false
            }
         ]
      },

"DYSON-IP"、"DYSON-SERIALNUMBER"、"DYSON-PASSWORD"は内緒にしたいので、ローカルで書き換えてね。

IPはブロードバンドルータDHCP固定割当設定で固定IPにね。

SSIDWi-Fiパスワードはマニュアルに貼ってるシールで確認してね😊

俺は、自分のGitHubからCloneして、config.jsonをデプロイするときに、DYSON-*ワードを、bashスクリプトで自動で置換する。 bashスクリプトを見てね😄

#!/usr/bin/env bash

echo "Copy config.json to /var/lib/homebridge/"
cp ./config.json /var/lib/homebridge/

echo "Modifiy /var/lib/homebridge/config.json"
sed -i -e 's/DYSON-IP/192.168.10.XX/g' /var/lib/homebridge/config.json
sed -i -e 's/DYSON-SERIALNUMBER/DYSON-XXX-XX-XXXXXXXX-XXX/g' /var/lib/homebridge/config.json
sed -i -e 's/DYSON-PASSWORD/XXXXXXXX/g' /var/lib/homebridge/config.json

秘密の文字は、Xでマスクしているよ。

感想

エアコンと連動してDysonを自動運転にしてる。空気がきれい。暖かくもなったのよ。

参考

id:aakiraのハック。wiresharkは便利。俺もハックで使用するよ。

aakira.hatenablog.com

homebridge-dyson-linkプラグインGitHub。今も開発を継続している。期待できるよ。

github.com

MQTTで操作をJavaで。

【Java】Dysonの家電をプログラム経由で操作したり室温を取得したりする | のんぽぐ