ラズパイオーディオをもう1台の赤外線レシーバ付ラズパイから操作 [Raspberry Pi]
赤外線受光モジュールを搭載したラズパイでリモコン信号を受け,リモートホストのラズパイオーディオを操作。
ラズパイ(赤外線受光モジュール付)については,
Raspberry Pi Zer o W で赤外線リモコン ユニバーサル基板に実装
ラズパイオーディオについては,
ラズパイオーディオ Raspberry Pi Zero W + IQAudIO Pi-DACZero
mpc コマンドは,リモートホストの mpd(music player daemon) をコントロールできる。
mpc –h 192.168.0.60 mpc play
なお,IPアドレスは固定。左のZero(W)は192.168.0.60(むう)で右のZeroは192.168.0.81(ぱい)としている。
lirc は,カーネル4.19 の raspbian buster の場合,ソースにパッチを当ててビルドしないと正常に動作しない。
kernel 4.19以降を搭載したRaspbian Stretch/Busterでlircを利用する
lircd にヤマハ・リモコンVQ95010のコンフィグをロードさせるため /etc/lirc/lircd.conf.d/下にVQ95010.lircd.confをおく。
irget_db コマンドでVQ95010のコンフィグをダウンロードする。
root@raspberrypi:/home/pi# irdb-get find yamaha
yamaha/AVPhile_715_RC.lircd.conf
yamaha/AX-960.lircd.conf
:
yamaha/VP60840.lircd.conf
yamaha/VP79430.lircd.conf
yamaha/VP84950.lircd.conf
yamaha/VQ08640.lircd.conf
yamaha/VQ95010.2
yamaha/VQ95010.lircd.conf
:
root@raspberrypi:/home/pi# irdb-get download yamaha/VQ95010.lircd.conf
Downloaded https://sourceforge.net/p/lirc-remotes/code/ci/master/tree/remotes/yamaha/VQ95010.lircd.conf as VQ95010.lircd.conf
root@raspberrypi:/home/pi# cp VQ95010.lircd.conf /etc/lirc/lircd.con.d/.
irexec はリモコンボタンの信号を受信すると指定したコマンドを実行する。
VQ95010.lircd.confには以下のようにボタン名とコードが書かれているので,ボタン名を参照しながら irexec.kircrc を設定する。
begin codes
KEY_OPEN 0x000000009E61807F # Was: OPEN/CLOSE
:
KEY_PLAY 0x000000009E6140BF # Was: PLAY
KEY_PAUSE 0x000000009E61AA55 # Was: PAUSE
KEY_STOP 0x000000009E616A95 # Was: STOP
:
SKIP_FWD 0x000000009E61E01F
SKIP_REV 0x000000009E6120DF
irexec の設定ファイル /etc/lirc/irexec.lircrc
# PLAY
begin
prog = irexec
button = KEY_PLAY
config = mpc -h 192.168.0.60 play
end
# PREV
begin
prog = irexec
button = KEY_REV
config = mpc -h 192.168.0.60 prev
end
# STOP
begin
prog = irexec
button = KEY_STOP
config = mpc -h 192.168.0.60 stop
end
# NEXT
begin
prog = irexec
button = KEY_FWD
config = mpc -h 192.168.0.60 next
end
irw を起動してからリモコンボタンを押してみて,応答があれば正しく設定されている。
root@raspberrypi:/etc/lirc# irw
000000009e6128d7 00 KEY_4 VQ95010
000000009e618877 00 KEY_1 VQ95010
000000009e616897 00 KEY_6 VQ95010
irexec の実行結果の確認 journalctl -b0 /usr/bin/irexec
root@raspberrypi:~# journalctl -b0 /usr/bin/irexec
-- Logs begin at Sat 2019-10-26 15:00:49 BST, end at Sat 2019-10-26 15:02:10 BST
Oct 26 15:01:57 raspberrypi irexec[264]: Igor Gehenot Trio - SANTIAGO
Oct 26 15:01:57 raspberrypi irexec[264]: [playing] #2/10 0:00/4:53 (0%)
Oct 26 15:01:57 raspberrypi irexec[264]: volume:100% repeat: off random: off
Oct 26 15:02:01 raspberrypi irexec[264]: Igor Gehenot Trio - SANTIAGO
Oct 26 15:02:01 raspberrypi irexec[264]: [paused] #2/10 0:04/4:53 (1%)
Oct 26 15:02:01 raspberrypi irexec[264]: volume:100% repeat: off random: off
Oct 26 15:02:08 raspberrypi irexec[264]: Igor Gehenot Trio - SANTIAGO
Oct 26 15:02:08 raspberrypi irexec[264]: [playing] #2/10 0:10/4:53 (3%)
Oct 26 15:02:08 raspberrypi irexec[264]: volume: 89% repeat: off random: off
手持ちのリモコンのコンフィグがlircのデータベースにあれば問題ないが,コンフィグがない場合は irrecord コマンドで学習してコンフィグを生成する。
受信レシーバがUSB接続のリモコンは,irrecord は使えなかった。
コメント 0