mame-n / tank

0 stars 0 forks source link

HomebridgeでのSiriとの結合 #6

Closed mame-n closed 7 years ago

mame-n commented 7 years ago

まずIF考える、Webiopiを利用して、前後左右、回旋等の単純なIFに置き換える インストール マイホームへの登録

mame-n commented 7 years ago

http://qiita.com/caad1229/items/eac59fc5615ff5701e86

mame-n commented 7 years ago

$ sudo apt-get install libavahi-compat-libdnssd-dev コンポーネントがないと怒られたが、sudo apt-get update/upgrade で解決した、と思う

mame-n commented 7 years ago

Refer to https://github.com/nfarina/homebridge/wiki/Running-HomeBridge-on-a-Raspberry-Pi#install-avahi-and-other-dependencies

=======

Node.js package manager install (Easiest, Preferred)

If you are running a newish Raspberry Pi with an ARMv7 chip or better, you can install NodeJS using their apt-get repository. Follow the instructions here.

Example:

curl -sL https://deb.nodesource.com/setup_7.x | sudo -E bash - sudo apt-get install -y nodejs To check what chip your Raspberry Pi has, type:

uname -a The response will look something like:

Linux raspberrypi 4.4.50-v7+ 970 SMP Mon Feb 20 19:18:29 GMT 2017 armv7l GNU/Linux Notice the armv7l which indicates that this method will work.

Node.js binaries install

If you have an older ARM chip, you can grab Node binaries for armv6 from here.

Example:

wget https://nodejs.org/dist/v6.9.5/node-v6.9.5-linux-armv6l.tar.xz tar xJvf node-v6.9.5-linux-armv6l.tar.xz sudo mkdir -p /opt/node sudo mv node-v6.9.5-linux-armv6l/* /opt/node/ sudo update-alternatives --install "/usr/bin/node" "node" "/opt/node/bin/node" 1 sudo update-alternatives --install "/usr/bin/npm" "npm" "/opt/node/bin/npm" 1 Node.js manual install

To manually install Node.js you can follow either of these guides:

Installing Node.js v4.0.0 on a Raspberry Pi (All Models). Installing Node.js on a Raspberry Pi 3 Following those instructions explicitly will install version 4.0.0. There are many new versions published since then; to install the latest version (or any other version, Homebridge now requires a minimal Node.js version of v5.10.0), modify those instructions with the appropriate directory in the nodejs.org repository.

mame-n commented 7 years ago

この通りにやったらできた。

https://github.com/nfarina/homebridge/issues/905

mame-n commented 7 years ago

pi@raspi-02:/usr/local/lib/node_modules/homebridge $ homebridge WARNING The program 'node' uses the Apple Bonjour compatibility layer of Avahi. WARNING Please fix your application to use the native API of Avahi! WARNING For more information see http://0pointer.de/avahi-compat?s=libdns_sd&e=node WARNING The program 'node' called 'DNSServiceRegister()' which is not supported (or only supported partially) in the Apple Bonjour compatibility layer of Avahi. WARNING Please fix your application to use the native API of Avahi! WARNING For more information see http://0pointer.de/avahi-compat?s=libdns_sd&e=node&f=DNSServiceRegister [2017-9-18 00:31:47] Loaded plugin: homebridge-http [2017-9-18 00:31:47] Registering accessory 'homebridge-http.Http' [2017-9-18 00:31:47] --- [2017-9-18 00:31:47] config.json (/home/pi/.homebridge/config.json) not found. Scan this code with your HomeKit App on your iOS device to pair with Homebridge:

┌────────────┐     
│ 031-45-154 │     
└────────────┘     

[2017-9-18 00:31:48] Homebridge is running on port 42671.

mame-n commented 7 years ago

homebridgeを起動するとエラーになっていた。 原因1 nodeがRaspi B用ではなかった。 CPUアーキテクチャがARMv7用で、うちのRaspiはARMv6。 手動で入れ直した。V8.4.0がV6.11.3に。 実はhomebridgeとhomebridge-httpもエラーになっていて、nodeを正しくした後に インストールしたらエラーが出なくなった。

原因2 mdnsのインストールが必要。 npmでmdnsインストールとパッケージの再構築をした。 これはnodeのバージョンが変わると必ずやらなければならないらしい。

原因3 config.jsonに文法エラーあり。 https://jsonlint.com にて文法チェックした。 webが間違っていたようだ。

ホームアプリでデバイスhomebridgeを選択したら、Siriでのコントロールは可能に。 言葉尻はうまく保管してくれた。