2011|08|
2013|10|11|12|
2014|01|02|03|04|05|06|07|08|09|10|11|12|
2015|01|02|03|05|06|07|08|09|10|11|12|
2016|01|03|04|05|06|07|08|09|10|11|12|
2017|01|02|03|04|05|06|07|08|09|10|11|12|
2018|01|02|03|04|05|06|07|08|09|10|11|12|
2019|01|02|03|04|05|06|07|08|09|10|11|12|
2020|01|02|03|04|

2018-09-23 ラズパイ2で学習リモコンを作る. [長年日記]

ラズパイ2で学習リモコンを作る.

ラズパイ2で学習リモコンを作る.

  •  
    • 2018-08-26(日) 09:57:44
  •  
  • 1.背景
  •  
  • 2.経緯
  •  
  • 3.作業内容
    • pigpioのインストール
      • $ sudo apt update
      • $ sudo apt upgrade
      • $ sudo apt install pigpio python3-pigpio
      • $ sudo systemctl enable pigpiod.service    # ラズパイ再起動時に pigpiod を自動的に起動
      • $ sudo systemctl start pigpiod             # いますぐ pigpiod を起動
    • GPIOの設定
      • $ echo 'm 17 w   w 17 0   m 18 r   pud 18 u' > /dev/pigpio
        • たまたま、WINGONEER 38KHz赤外線リモートコントロールトランシーバと同じ設定
        • 正直、助かった
    • 自動的にGPIOを設定
      • crontab -e
        • "corntab"の内容を追記する
      • @reboot until echo 'm 17 w   w 17 0   m 18 r   pud 18 u' > /dev/pigpio; do sleep 1s; done
    • pigpioによる送受信プログラムのダウンロード
  •  
  • 4.リモコンの学習
    • 赤外線コードを学習するには、以下のコマンドを実行してから、リモコンのONボタンを押す。
    • $ python3 irrp.py -r -g18 -f codes black:dengen  --post 30
      • Recording
      • Press key for 'light:on'
      • Okay
    • 私の設定したコマンド(手で一つ一つ)
      • python3 irrp.py -p -g18 -f codes black:dengen
      • python3 irrp.py -p -g18 -f codes black:nyuuryoku-kirikae
      • python3 irrp.py -p -g18 -f codes black:tv-dengen
      • python3 irrp.py -r -g18 -f codes black:chideji --post 30
      • python3 irrp.py -r -g18 -f codes black:bs --post 30
      • python3 irrp.py -r -g18 -f codes black:cs --post 30
      • python3 irrp.py -r -g18 -f codes black:1 --post 30
      • python3 irrp.py -r -g18 -f codes black:2 --post 30
      • python3 irrp.py -r -g18 -f codes black:3 --post 30
      • python3 irrp.py -r -g18 -f codes black:4 --post 30
      • python3 irrp.py -r -g18 -f codes black:5 --post 30
      • python3 irrp.py -r -g18 -f codes black:6 --post 30
      • python3 irrp.py -r -g18 -f codes black:7 --post 30
      • python3 irrp.py -r -g18 -f codes black:8 --post 30
      • python3 irrp.py -r -g18 -f codes black:9 --post 30
      • python3 irrp.py -r -g18 -f codes black:10 --post 30
      • python3 irrp.py -r -g18 -f codes black:11 --post 30
      • python3 irrp.py -r -g18 -f codes black:12 --post 30
      • python3 irrp.py -r -g18 -f codes black:channel-up --post 30
      • python3 irrp.py -r -g18 -f codes black:channel-down --post 30
      • python3 irrp.py -r -g18 -f codes black:sound-up --post 30
      • python3 irrp.py -r -g18 -f codes black:sound-down --post 30
      • python3 irrp.py -r -g18 -f codes black:rokuga-ichiran --post 30
      • python3 irrp.py -r -g18 -f codes black:bangumi-hyou --post 30
      • python3 irrp.py -r -g18 -f codes black:menu --post 30
      • python3 irrp.py -r -g18 -f codes black:modoru --post 30
      • python3 irrp.py -r -g18 -f codes black:gamen-hyouzi --post 30
      • python3 irrp.py -r -g18 -f codes black:ue --post 30
      • python3 irrp.py -r -g18 -f codes black:shita --post 30
      • python3 irrp.py -r -g18 -f codes black:hidari --post 30
      • python3 irrp.py -r -g18 -f codes black:migi --post 30
      • python3 irrp.py -r -g18 -f codes black:makimodoshi --post 30
      • python3 irrp.py -r -g18 -f codes black:saisei --post 30
      • python3 irrp.py -r -g18 -f codes black:hayaokuri --post 30
      • python3 irrp.py -r -g18 -f codes black:10modoshi --post 30
      • python3 irrp.py -r -g18 -f codes black:teishi --post 30
      • python3 irrp.py -r -g18 -f codes black:30okuri --post 30
      • python3 irrp.py -r -g18 -f codes black:rokuga --post 30
      • python3 irrp.py -r -g18 -f codes black:yoyaku --post 30
      • python3 irrp.py -r -g18 -f codes black:shoukyo --post 30
      • python3 irrp.py -r -g18 -f codes black:shousai --post 30
      • python3 irrp.py -r -g18 -f codes black:hayami-saisei --post 30
      • python3 irrp.py -r -g18 -f codes black:3keta --post 30
      • python3 irrp.py -r -g18 -f codes black:blue --post 30
      • python3 irrp.py -r -g18 -f codes black:red --post 30
      • python3 irrp.py -r -g18 -f codes black:green --post 30
      • python3 irrp.py -r -g18 -f codes black:yellow --post 30
      • python3 irrp.py -r -g18 -f codes black:zoom --post 30
      • python3 irrp.py -r -g18 -f codes black:shouon --post 30
      • python3 irrp.py -r -g18 -f codes black:kettei --post 30
    • 学習させると、そのディレクトリに、"codes"というファイルができる(その一部)
      • "black:30okuri": [8890, 4418, 577, 560, 577, 560, 577, 1642, 577, 1642, 577, 560, 577, 560, 577, 560, 577, 560, 577, 1642, 577, 1642, 577, 1642, 577, 560, 577,1642, 577, 1642, 577, 1642, 577, 560, 577, 560, 577, 560, 577, 560, 577, 1642,577, 1642, 577, 560, 577, 1642, 577, 1642, 577, 1642, 577, 1642, 577, 1642, 577,560, 577, 560, 577, 1642, 577, 560, 577, 560, 577],

        codes

  •  
  • 5.赤外線コードの送信テスト
    • 実際のテレビやらHDDレコーダやらを使ってチェックする
    • $ irrp.py -p -g17 -f codes black:kettei
  •  
  • 6.感想
    • lircのうっとうしさに比べて、格段に簡単に動き、面倒くさい設定トラブルがない。実に素晴しい。
      • なぜ"lirc"は、たかだか赤外線の設定するのに、管理者権限やら、パスワードやら、うっとうしいことを要求してくるのか?
    • 送信のコマンドが戻ってくる時間が長い。テレビやHDDレコーダで使うには、ちょっと辛いかな
      • python使っているからかなぁ
    • ソースコードをオープンして頂いているので、これから調べさせて貰おうと思っている
    • これで、我が家のヘタッてきたリモコンが完全に壊れる時の心配が、かなり軽くなった
      • 一定期間を過ぎた商品のリモコンは手に入らなくなる
      • 本当に、これでエラい目に遭っているので