anatsuk1のウェブログ

ブログを書いてみたい!

Raspberry Piでスマートリモコンを作る!

スマートリモコン

スマート赤外線リモコン、Infrasmaconを遂にリリースした

InfrasmaconのGitHubページ github.com

電化製品を、赤外線を送信して、コントロールする!

Siriと連携することで、話しかけてシーリングライト、エアコンをONできる!

HomeKitネットワークに参加させよう!

Infrasmacon

Infrasmaconはスマートな赤外線リモートコントローラーだよ。

  • たくさんの電化製品をコントロールする!
  • HomeKitのデバイスにして、HomePodのSiriに声で楽しく依頼をする。
  • iPhoneのHomeアプリで、コントロールする。

構成

事前準備

赤外線デバイス「RPZ-IR-Sensor」

f:id:anatsuk1:20210224223644j:plain
RPZ-IR-Sensorを装着するRaspberry Pi 4B

pigpioライブラリ

pigpioサービスををインストールして即時スタートする!

サービスを有効にして再起動時に開始するようにもする!

sudo apt install pigpio
sudo service pigpiod start
sudo systemctl enable pigpiod.service

cgirが使うPython3パッケージ

pigpio、docoptパッケージをインストールするのよ。

sudo apt install python3-pip
sudo pip3 install pigpio docopt

cgirをインストール

インストール先は、/var/opt/が最近は好みかな。

git clone https://github.com/IndoorCorgi/cgir
sudo cp -R ./cgir /var/opt/

HomeKitエミュレータ「Homebridgeとプラグイン

Homebridge

Homebridge、PluginのHomebridge Config UI Xインストールコマンド

sudo npm install -g --unsafe-perm homebridge homebridge-config-ui-x

HomebridgeはHomeKit非対応デバイススマートデバイスにする。

Homebridge Config UI Xはコンフィグ画面のhttpサーバーだよ。 ブラウザでHomebridgeコンフィグするのが便利になる。おすすめ。

Homebridgeサービスをpiユーザーで動かす

sudo hb-service install --user pi

hb-serviceのhbはHomeBridgeの頭文字。 ユーザーはpiがおすすめ。ユーザーをhomebridgeにすると、Raspberry Pi OSのパーミッションを変更するのよね。

Homebridge Cmd4をインストール

MacOSのブラウザでhttp:<Raspberry Pi IP address>:8581を閲覧すると、Homebridge Config UI Xが表示される!

f:id:anatsuk1:20210224215337p:plain
Found Homebridge Cmd4

プラグイン」で、「Homebridge Cmd4」を検索してインストールしてね。

開発ソフトウェア「Infrasmacon」

Infrasmaconを知る。

github.com

Infrasmaconは赤外線デバイスをコントロールする。

  • 赤外線コードを電化製品に送信する。
  • 電化製品の状態を取得する。
  • 赤外線デバイスに登録済みの赤外線コードを選択する。

Infrasmaconの設定方法

  1. 好みに合わせて、config.jsonを記述する!
  2. 環境に合わせて、infrared_device.pyを設定と移植する。

詳しくは、GitHubのページを見てね。

インストール

スクリプトを用意しているから使ってね!

example.install_infrasmacon.shは、機微情報を置き換えているよ。 Dysonの扇風機を使うときは有効活用してね!

mv example.install_infrasmacon.sh install_infrasmacon.sh
install_infrasmacon.sh

スマートリモコン!

スマートリモコン操作イメージ

  1. 俺が、iPhoneのホームアプリを起動する。

  2. 俺が、ホームアプリのアクセサリーを操作する。

  3. Infrasmaconは、赤外線リモコンコードを送信する。

f:id:anatsuk1:20201207224652p:plain
ホームアプリでコマンド実行

Infrasmaconの動き

  1. ホームアプリのGUIイベントでソフトウェアが起動!
  2. ホームアプリの「デバイス」「明るさ」に応じて、シーリングライトのリモコンデータを送信する。
    • 100%: 光量は最大、白色
    • 99-20%: 光量は中間、暖色
    • 19-1%: 常夜灯
    • 0%: 消灯

シーリングライトは、リラックスシーンでは80%に設定しよう😊

それで、俺はリラックスする。

Homebridgeの設定ファイル

Homebridgeの設定ファイル、config.jsonを作成したい? HomebridgeのGitHubで書き方を調べよう! ファイルは/var/lib/homebridgeに置いてね。

設定ファイルにシーリングライトを加えるよ。state_cmd属性の値は、cmd4_adrsirを実行するパスを書くのん。

config.json設定ファイルの参考情報

シーリングライト

Siriにリラックスとお願いすると、Panasonicのシーリングライトは、オレンジ色で照明を少し落とした、暖かい雰囲気になる。

参考

Install Homebridge on Raspbian

Homebridgeのインストール、Homebridge Config UI X含む、のオフィシャルページ。

github.com

次回はとうとう、E17電球のONをSiriで依頼😆