赤外線リモコン

Raspberry Piにフォトトランジスタ(https://jp.rs-online.com/web/p/phototransistors/6655397/)接続して、
TVのリモコンの赤外線信号を読んでみた。
NEC方式で0x86, 0xfd, 0x10, 0xef で電源on/off

専用の赤外線モジュール使用していなかったのでlircではキャリアを捕まえられないとエラー。仕方ないので

sudo apt-get install lirc

sudo vi /boot/config.txt

dtoverlay=lirc-rpi, gpio_in_pin=14, gpio_out_pin=24

を追記してreboot。(私は入力しか定義しませんでしたけど)

mode2 -d /dev/lirc0 で直接pulseとspaceのusec単位の時間を出力して読みました。

オシロで見た段階でNEC方式というのはわかっていたので、
usecを標準の562usで割ってサイクル数を割り出して後は人間の目で読みました。

status μsec T on/off bit HEX
space 8991 16 0
pulse 4549 8 1
space 525 1 0
pulse 608 1 0 0
pulse 499 1 0
pulse 1698 3 0 1
space 540 1 0
pulse 1741 3 0 1
space 512 1 0
pulse 582 1 0 0
space 527 1 0
pulse 587 1 0 0
space 525 1 0
pulse 587 1 0 0
space 529 1 0
pulse 581 1 0 0
space 533 1 0
pulse 1703 3 0 1 86
space 551 1 0
pulse 1689 3 0 1
space 583 1 0
pulse 525 1 0 0
space 585 1 0
pulse 1665 3 0 1
space 551 1 0
pulse 1703 3 0 1
space 537 1 0
pulse 1675 3 0 1
space 577 1 0
pulse 1668 3 0 1
space 587 1 0
pulse 1663 3 0 1
space 552 1 0
pulse 1694 3 0 1 fd
space 555 1 0
pulse 567 1 0 0
space 546 1 0
pulse 554 1 0 0
space 570 1 0
pulse 539 1 0 0
space 554 1 0
pulse 611 1 0 0
space 500 1 0
pulse 1698 3 0 1
space 550 1 0
pulse 568 1 0 0
space 546 1 0
pulse 563 1 0 0
space 546 1 0
pulse 556 1 0 0 10
space 560 1 0
pulse 1671 3 0 1
space 574 1 0
pulse 1708 3 0 1
space 555 1 0
pulse 1663 3 0 1
space 575 1 0
pulse 1666 3 0 1
space 577 1 0
pulse 529 1 0 0
space 582 1 0
pulse 1669 3 0 1
space 574 1 0
pulse 1716 3 0 1
pulse 529 1 0
pulse 1649 3 0 1 ef