赤外線リモコンでコマンドを実行する


前回は赤外線リモコンでGPIOを制御する方法を紹介しました。
今回は赤外線リモコンを使って、様々なコマンドを実行する方法を紹介します。
GPIOを操作するコマンドを実行すれば、前回と同じ結果となります。

使用するリモコンは前回と同じ「RW-PCM37BK」です。
lircのインストールとリモコンの学習も前回と 同じです。

定義ファイル

以下のファイルを[/etc/lirc/lircrc](Raspbian Jessieの場合)、あるいは[/etc/lirc/irexec.lircrc](Raspbian Stretchの場合)として作成します。
button=XXXXの部分は「/etc/lirc/lircd.conf」に定義したボタン名称
config=XXXXの部分はそのボタン が押されたときに、実行するコマンドです。
begin
 button = POWER
 prog   = irexec
 config = sudo shutdown -h now
end

begin
 button = ButtonB
 prog   = irexec
 config = sudo shutdown -r now
end

begin
 button = Play
 prog   = irexec
 config = mpc play
end

begin
 button = Stop
 prog   = irexec
 config = mpc clear;mpc stop
end

begin
 button = VolUp
 prog   = irexec
 config = mpc volume +10
end

begin
 button = VolDown
 prog   = irexec
 config = mpc volume -10
end

上記のファイルを作成後、マシンを再起動します。
Raspbian Jessieの場合、[/etc/lirc/lircrc]が有ると、irexecが自動的にデーモンで起動します。
$ ps -ef | grep irexec
root       489     1  0 Jun21 ?        00:00:00 /usr/bin/irexec -d /etc/lirc/lircrc
pi        3154  3132  0 09:58 pts/0    00:00:00 grep --color=auto irexec

Raspbian Stretchの場合、[/etc/lirc/irexec.lircrc]が有ると、irexecが自動的にデーモンで起動します。
$ ps -ef | grep irexec
root       317     1  0 09:52 ?        00:00:00 /usr/bin/irexec /etc/lirc/irexe .lircrc
pi         643   589  0 09:56 pts/0    00:00:00 grep --color=auto irexec

リモコンを操作すると、irexecデーモンがボタンに応じたコマンドを実行します。

続く....