ブログ

Armadillo-640:homebridgeを使用してスマホからArmadilloのLEDを音声操作してみる

at_yukari.hara
2021年12月13日 11時27分

Armadillo-640で、homebridgeを使用してスマートフォンからArmadilloのLEDを音声操作してみました。

環境構築の為にインストールするもの

  • node.js
  • homebridge

homebridgeとは

Apple社が開発しているHomeKitに対応していないデバイスをHomeKitから制御できるようにするOSSです。

手順

1.Node.jsの準備

Armadillo-640: npm(Node Package Manager)でNode.js用のパッケージを管理する方法を参考にNode.jsの動作環境を構築します。
※当ブログ記事では、「17.1.0」を使用して動作確認を行いました。

2.必要なパッケージのインストール

下記コマンドを実行して、必要なパッケージとhomebridgeをインストールします。

# apt update && upgrade
# apt install git make libavahi-compat-libdnssd-dev
# npm install -g homebridge
# npm install -g homebridge-cmd

3.設定ファイルの作成

下記コマンドを実行して、root以下に「.homebridge」ディレクトリを作成します。

# mkdir .homebridge

4.設定ファイルの作成

「~/.homebridge/」以下に「config.json」という名前で下記設定ファイルを作成します。

{
    "bridge": {
        "name": "Homebridge",
        "username": "(お手持ちのArmadilloのMACアドレスを記載してください)",
        "port": 51826,
        "pin": "031-45-154"
    },

    "description": "This is an example configuration file with one fake accessory and one fake platform. You can use this as a template for creating your own configuration file containing devices you actually own.",

    "accessories": [
        {
            "accessory": "CMD",
            "name": "LED",
             "on_cmd": "echo 1 > /sys/class/leds/red/brightness",
            "off_cmd": "echo 0 > /sys/class/leds/red/brightness"
        }
    ]
}

5.実行

下記コマンドを実行してhomebridgeを起動します。

# homebridge

すると、以下のように接続に必要な8桁の数字が表示されます。

TAG index

6.スマートフォンアプリのインストール

AppStoreで「insteon+」をインストールします。
利用にはアカウント登録が必要となりますので、ご注意ください。

7.デバイスの追加

「insteon+」を起動して、「Home」->「All room」->「All Device」->「+」の順にクリックして、「Add Device」をクリックします。
「5.実行」が正常に出来ていて、Armadilloとスマートフォンが同一ネットワーク上にいる場合は画面の下に「homebridge」の表示が出てきますので、こちらをクリックします。
注意書きが表示されますが、「このまま追加」をクリックします。
コードは手動で入力を選択して、「5.実行」で表示された8桁のコードを入力しましょう。
※コードの入力はQRコードの読み込みでも可能ですが、手動入力の方がミスが起きにくいです。

8.テスト

デバイスが正常に接続できていれば、設定ファイルで設定した「LED」の項目を認識しています。
試しにアプリ上でLEDのON/OFFを行ってみましょう。
Armadillo-640の赤LEDが制御出来ていれば成功です。

9.動作確認

insteon+はHOMEアプリと連携している為、siriによる音声制御が可能です。
siriを起動して、「LEDをつけて」と話すと、Armadillo-640のLEDが点灯する事が確認できます。

TAG index