2016年1月31日日曜日

Orange Pi PCのKodiで赤外線リモコンを使ってみた。

やはりOpenELEC版のKodiはAndroid版と違って起動が速いし動作も更にサクサク!

テレビで使うにはやっぱりリモコンが使えたほうが便利なので赤外線リモコンを使ってみることに。Raspberry Piの時はOSMCで簡単にいろんなリモコンが使えていたんだけど、Orange Pi PCの赤外線受光部はSunxi-irの制約があるみたいでNECプロトコルしか使えない模様。(GPIOに別なモジュール繋げばいけるのかな?

とりあえず今回はフォーラムに乗っていたやり方でNECプロトコル対応のリモコンを使えるようにしてみた。
たまたま東芝のテレビのリモコンがNECプロトコル対応だった。

設定にはシリアルコンソールかSSHが必要。今回はSSHを使用した。
sshでrootでログオンする。デフォルトパスワードはopenelec。
リモコンのデバイスはKodiで予め使用されてるのでkodiを終了。
systemctl stop kodi

まずは赤外線リモコンが受信できるかテスト。これでNECプロトコルかどうかも判断できるかも。
ir-keytable -t --sysdev=devinput -d /dev/input/event1
この状態でリモコンのボタンを押すとNECプロトコル対応のリモコンの場合は画面に何か表示されるはず。

うまく認識出来てるようなら次はリモコンの登録。
この画面はCtrl+cで終了できる。

irrecord /storage/lircd.conf -H devinput -d /dev/input/event1
このコマンドでリモコンを登録していく。
一度実行すると設定ファイルができるので、もし失敗してもう一回実行する場合は設定ファイル名を変更するか、
rm /storage/lircd.conf
で先ほど使った設定ファイルを削除すると良いかも。

早速このコマンドを実行すると説明が表示されるのでとりあえずEnterキーを押す。
次にリモコンの適当なボタンを数秒ずついろんなボタンを押して見る。
画面にピリオドで埋まるはず。(ピリオドが増えない時は長押ししてみると良い。)

そして次はリモコン登録
登録したいキー名を入力してエンターをおした後にリモコンの割り当てたいボタンを押す。
これの繰り返し。

登録を終わりたいときは登録したいキー名を入力せずにEnterを押すと登録完了。

登録したらそのままでは使えないのが面倒なところ…
先ほど作成した設定ファイルを編集します。
sed -i -e "s/ 0x00000000000000//g" /storage/lircd.conf
で余計なリモコンコードを削除します。
なぜか各リモコンコードの後ろに0x00000000000000が付くらしい。

次に
nano /storage/lircd.conf
で設定ファイルを開いて
name /storage/lircd.conf
ってなってる部分を
name devinput
に変更します。
ctrl+x → Y → Enterで保存。

これでKodiが認識できるようになる模様。

最後に起動時にlircがこの設定ファイルを読み込むようにします。
nano /storage/.config/autostart.sh
でシェルスクリプトを新規に作成して
中身に以下をコピペ

#!/bin/sh

killall lircd
lircd -H devinput -d /dev/input/event1 /storage/lircd.conf

そしてctrl+x → Y → Enterで保存。

次に実行権限を与える。
chmod +rx /storage/.config/autostart.sh
これで再起動すればリモコンが使えるようになってるはず!
rebootコマンドで再起動できます。

リモコンで電源付けられるようになると便利なんだけどなぁ


P.S
2016/02/07以降ではNECプロトコル以外に対応したため登録方法が変わりました。
その2を参照ください。

0 件のコメント:

コメントを投稿