こんにちは。Tedです。 前回、下記のようにラズパイ4を使ってHomeKit対応カメラを作りました。
作成したシステムを使っていく内に、いくつか気になるところがでてきました。
気になる点
- カメラの画角にて広角が足りない。
- Mac, iPhoneなどからHomeアプリで接続する際、タイムアウトで繋がらないことがよく起こる。
そこで...
そこで、下記を行うことにしました。
広角カメラに換える。そのカメラはラインアップ豊富なWin, Mac用USBカメラ(Webカメラ)を使う。
Win, Mac用のWebカメラであれば比較的安価に広角カメラが手に入ります。今回は以下のWebカメラを使うことにしました。
問題を切り分けるために、別のHomebridge用カメラプラグインを使ってみる。
タイムアウトの原因を探るために、別のカメラプラグインでの動作を試すことにします。また、前回利用したhomebridge-camera-rpiプラグインはUSBカメラに対応していない(ビデオソースの選択ができない)ため、USBカメラを使うためにもプラグインの変更の必要がありました。 今回使用するプラグインは homebridge-camera-ui としました。
まずは不要なモジュールの削除から
まずは前回構築したシステムから、今回不要なもの、残しておくと衝突が起きそうなものを削除します。 具体的には下記を行います。
- カメラモジュールをオフにする。
- カメラプラグインを削除する。
それぞれ以下のように進めます。
カメラインタフェースをオフにする
pi@raspberrypi:~ $ sudo raspi-config
これでシステムからカメラインタフェースは削除されました。 本体に接続しているカメラモジュールのケーブルも取り外してOKです。(その際は電源OFFで行ってください)
カメラプラグインを削除する
いったんHomebridgeを停止
pi@raspberrypi:~ $ ps -aux | grep homebridge #homebridgeプロセスIDを表示 root 432 0.2 1.8 181880 72148 ? Sl Dec18 36:25 homebridge #この場合プロセスIDは 432 pi@raspberrypi:~ $ sudo kill <killしたいPID(上記の場合は432)> #いったんHomebridgeプロセスを終了
config.jsonから該当設定を削除
Homebridge設定ファイルであるconfig.jsonから削除するプラグインに該当する設定を削除します。 他にHomebridgeプラグインを使っていない場合は、いったんconfig.jsonを削除してもよいかと思います。
編集する場合:
pi@raspberrypi:~ $ vi .homebridge/config.json
削除する場合:
pi@raspberrypi:~ $ rm .homebridge/config.json
プラグインをアンインストール
pi@raspberrypi:~ sudo npm uninstall -g homebridge-camera-rpi
新たにシステムを構築
USBカメラの取り付け
WebカメラをUSB端子に接続したら、そのカメラが使えるか確認を行います。
pi@raspberrypi:~ $ lsusb #USB接続されているデバイス一覧を表示 ... Bus 001 Device 003: ID 0458:708c KYE Systems Corp. (Mouse Systems) Genius WideCam F100 ...
このようにカメラが認識されていればOKです。
次にOSがビデオデバイスとして認識しているのかを確認します。
pi@raspberrypi:~ $ ls /dev/video*
/dev/video0 /dev/video1 /dev/video10 /dev/video11 /dev/video12
上記のように /dev/video から始まるデバイスが表示されればOKです。
homebridge-camera-uiのインストール
pi@raspberrypi:~ $ sudo npm i -g homebridge-camera-ui@latest
設定
pi@raspberrypi:~ $ vi .homebridge/config.json
ファイル内に下記を記述します。
{ "bridge": { "name": "Homebridge", #名称を設定 "username": "1A:2B:3C:4D:5E:6F", #16進数で自由に設定 "port": 46183, "pin": "111-22-333" #自由に設定 }, "description": "HomeCamera", #名称を設定 "platforms": [ { "platform" : "CameraUI", "videoProcessor": "ffmpeg", "cameras": [{ "name": "Home Camera 2", #名称を設定(Homeアプリでのデバイス名) "active": true, "videoConfig": { "source": "-re -i /dev/video0", "maxStreams": 3, "maxWidth": 1920, "maxHeight": 1080, "maxFPS": 10 } }] } ] }
以上でインストール・設定は完了です。 最後に以下のコマンドでシステムを再起動します。
pi@raspberrypi:~ $ sudo reboot
最後に
MacやiPhoneでの利用方法は前回書いたとおりになります。 広角カメラに換えたのでこのように視野角が十分広くなりました。
以前はこんな感じでした。
しかも、一ヶ月くらい使っていますがタイムアウトは全く起こらなくなりました。