Raspberry Piで先取りHomekit Vol.2
前回、Raspberry Piから赤外線リモコン経由(irMagician)して家電の操作ができましたが今回はHomokitに対応させるためHomeBridgeをインストールしていきます。
HomeBridgeのインストール方法はRunning HomeBridge on a Raspberry PiにRaspberry Pi専用の解説があるので指示通りすすめていきます。
まずは念の為アップデート
$ sudo apt-get update
$ sudo apt-get upgrade
次にgitをインストール(makeは既にあったので飛ばしました)
$ sudo apt-get install git
(私の環境はJessieなのでC++の項目も飛ばします)
HomeBridgeはnode.jsで作られてるのでまずはRaspberry PiにNode.jsの環境をインストール。(armv7lはRaspberry Pi2の場合です)
$ wget https://nodejs.org/dist/v4.0.0/node-v4.0.0-linux-armv7l.tar.gz
$ tar -xvf node-v4.0.0-linux-armv7l.tar.gz
$ cd node-v4.0.0-linux-armv7l
$ sudo cp -R * /usr/local/
$ node -v
$ npm -v
$ cd ~
$ rm -R node-v4.0.0-linux-armv7l
$ rm node-v4.0.0-linux-armv7l.tar.gz
4.0.0と記述を見つけて「4.0.0をインストールしなきゃ」と思い込んでましたが、よく読むと新しいバージョンでもよさそうなのでnode.jsをアップデートすることにした。
(こんな事なら普通にapt-getからインストールした方が良かった・・・)
まずはnode.js自身のパッケージ管理をするn packageをインストール
$ sudo npm install n -g
最新版に更新(今回latest:最新版とstable:安定版は同じでした)
$ sudo n latest
npm(Node.js製パッケージマネージャ)をアップデート
$ sudo npm cache clean -f
$ sudo npm update -g npm
avahiのライブラリとscreenをインストール
$ sudo apt-get install libavahi-compat-libdnssd-dev screen
準備は整ったのでようやくHomebridgeのインストール(インストールは割と時間がかかります。)
$ sudo npm install -g homebridge
続いてHomebridgeからコマンドを実行する為のプラグインをインストール。
(コマンド実行以外にもnpmに多数のプラグインが用意されています。)
$ sudo npm install -g homebridge-cmd
起動してみると設定していないので色々怒られるのでCtr+Cで終了させる。
$ homebridge
すると関連ファイル(.homebridgeフォルダ)が作られる。
昨日作った「DLC303V-ON.json」と「DLC303V-OFF.json」とnetbuffaloさんの「irm.py」をdataフォルダに直す。
$ mkdir ~/.homebridge/data
$ mv ~/DLC303V-ON.json ~/.homebridge/data
$ mv ~/DLC303V-OFF.json ~/.homebridge/data
$ mv ~/irm.py ~/.homebridge/data
自動生成されたconfig.jsonを編集する。
$ vi ~/.homebridge/config.json
{
"bridge": {
"name": "Homebridge",
"username": "CC:22:3D:E3:CE:30",
"port": 51826,
"pin": "031-45-154"
},
"description": "irMagcian Control",
"platforms": [],
"accessories": [
{
"accessory": "CMD",
"name": "電気",
"on_cmd": "python ~/.homebridge/data/irm.py -p -f ~/.homebridge/data/DLC303V-ON.json",
"off_cmd": "python ~/.homebridge/data/irm.py -p -f ~/.homebridge/data/DLC303V-OFF.json"
}
]
}
(ポート51826とあるのでiptablesでフィルタリングしてる場合は許可する必要があります。)
そして再度homebridgeを起動する。
$ homebridge
「WARNING」というメッセージがいくつか出て不安になるが公式によると気にする事は無いらしい。
あとはiPhoneのアプリ「ホーム」を起動して「アクセサリを追加」から追加し、スイッチをタップしてON/OFFしてみる。
アプリから操作できることを確認したら次は「Hey Siri」と言ってsiriを立ち上げ「電気をつけて」と言うと電気が付いて「電気を消して」というと電気が消えた。
キタ━━━━ヽ(゚∀゚ )ノ━━━━!!!!
未来を体験してる気分です。
なお、config.jsonを変更するだけでは反映されず。config.jsonの「username」の値を変更し別の機器として「ホーム」に改めて追加する必要があります。(nameも変えた方が新旧分りやすいです。)
Raspberry Piで先取りHomekit Vol.3に続く
Tags: Homekit, Raspberry Pi, Siri
[…] Raspberry Piで先取りHomekit Vol.2に続く […]
[…] Raspberry Piで先取りHomekit Vol.2 […]