ラズパイリモコンで家電を操作
赤外線レシーバーと、赤外線LEDでラズパイから家電を操作します
今回お世話になったのがこちらのサイト↓
Stacks-Raspberry Pi 3 Model B で赤外線リモコン学習&操作
赤外線レシーバーでリモコンの信号を受信して記録する
※回路の写真掲載予定
Raspbian Stretchの場合は、下記のように設定します
LIRC(Linux Infrared remote control) をインストール
$ sudo apt-get install lirc liblircclient-dev
/boot/config.txt ファイルの最後に下記の行を追加
dtoverlay=lirc-rpi
dtparam=gpio_in_pin=18
dtparam=gpio_out_pin=17
/etc/lirc/lirc_options.confを下記のように変える
driver = default
device = /dev/lirc0
再起動する
$ sudo reboot
モジュールが有効になっているか確認
$ lsmod | grep lirc
lirc_rpi 16384 2
lirc_dev 16384 1 lirc_rpi
$ ls -l /dev/lirc*
lirc_rpi 16384 2
lirc_dev 16384 1 lirc_rpi
デーモン停止
$ sudo systemctl stop lircd
テスト
$ sudo mode2 -d /dev/lirc0
TVのリモコンを赤外線レシーバーに向けて電源ONボタンを押すと
こんな感じで出力されます
space 16777215
pulse 3451
space 1786
pulse 403
space 474
pulse 426
リモコンの信号を保存
$ irrecord -n -d /dev/lirc0


TVのリモコンを登録してます
(1)Enter name of remote.
→TV
(2)Press RETURN now to start recording.
→電源ONボタンを細かく何回も押す(2行分)
(3)Please enter the name for the next button(press<ENTER> to finish recording)
→名前を入力
(4)Now fold down button "ボタンの名前"
→ボタンを押す
・・・・くりかえし・・・
(5)Please press any arbitray button repeatedly as fast as possible.
・・・・・・
→他のボタンを1つ同じように細かく何回も押す
これでTV.lircd.confファイルが作成されます
出力されたファイルを/etc/lirc/lircd.conf.d 以下にコピー
/etc/lirc/lircd.conf.d/devinput.lircd.conf はリネームしておく
lircをリスタート
$ sudo systemctl start lircd
登録したリモコンの定義内容を確認
$ irsend LIST "" ""
devinput
TV
devinput
↑TVありました
リモコンのボタンリスト
$ irsend LIST TV ""
000000000000bcbd power
0000000000900293 one
0000000000908213 two
000000000090c253 four
00000000009022b3 five
000000000090a233 six
00000000009062f3 seven
000000000090e273 eight

↑ TV.lircd.confの中身はこんな感じです
赤外線LEDでテレビのリモコンをつける
※赤外線LEDの写真追加予定
リモコン送信
$ irsend SEND_ONCE TV power
※編集中