冬の寒さ対策:Siriに暖房をつけてもらう(homebridge + IRKit)


寒い日が続いていますね。

寒い朝にリビングの暖房をつけるために、ベッドから出てリビングまで行って暖房をオンにするのは一苦労です。

できれば「暖房つけてー」と言えば勝手に暖房がつくようにしたい。

ふと「Siriにお願いすればできるんじゃない?」と思い調べてみたところ、 まさに同じことを実践されている方の記事を発見!

Raspberry Pi + HomeKit + IRKit = Siriで家電を音声操作できるようにする

ちょうど必要なデバイスが揃っていたので、こちらの記事を参考にさせていただき設定してみました。

必要なもの

設定方法

サーバ側設定

cat .homebridge/config.json
{
    "bridge": {
        "name": "Homebridge",
        "username": "xx:xx:xx:xx:xx:xx(raspberry piのmacアドレス)",
        "port": (homebridge起動時に設定されたポート番号),
        "pin": "(homebridge起動時に設定されたpin番号)"
    },
    "description": "IRKit Control",
    "accessories": [
        {
            "accessory": "IRKit",
            "name": "暖房",
            "irkit_host": "10.0.1.15",
            "on_form": {"format":"raw","freq":38,"data":[xxxx]},
            "off_form": {"format":"raw","freq":38,"data":[xxxx]}
        },
        {
            "accessory": "IRKit",
            "name": "テレビ",
            "irkit_host": "10.0.1.15",
            "on_form": {"format":"raw","freq":38,"data":[xxxx]},
            "off_form": {"format":"raw","freq":38,"data":[xxxx]}
         }
    ]
}
  • homebridgeの永続化。以下を参考にさせていただき設定。

til/README.md at master · umesan/til

これでサーバ側の準備は整いました。

iPhone側設定

  • 「ホーム」アプリ起動
    siri1

  • 「アクセサリを追加」
    siri2

  • サーバ側の設定が正しくできていれば「Homebridge」が表示されるので選択
    siri3

  • 「コードを手動で入力」を選択
    siri4

  • config.jsonに記載したpinコードを入力
    siri5

  • 基本設定が表示されるので「次へ」
    siri6

  • テレビと暖房の設定が表示されるので「次へ」
    siri7

  • 設定が完了すると「マイホーム」に「テレビ」と「暖房」が追加されています
    siri8

これですべての準備が整いました。

実験

  • 暖房
    siri9

ちゃんとつけてくれました!

  • テレビ
    siri11

テレビの場合は「テレビをオンにして」「テレビをオフにして」と言えばつけてくれたのですが、「テレビつけて」「テレビ消して」だと頑なにお断りされました。

siri10

感想

homebridgeとIRKitを使うことで手軽に家の家電をSiriで操作できるようになりました。

これまで使い所が分からず全くSiriを使っていなかったのですが、ついに使い所を見つけたという感じです。

朝起きた時に「暖房つけてー」というだけでリビングの暖房をつけてもらえるのはなかなか便利です。

(タイマー起動にしてもよかったのですが、家に不在の時に設定を止め忘れたりするのも面倒だと思いこうしています)

音声入力で現実のモノを動かせる」というのは思ってた以上に新鮮な体験でした。