樹莓派 用lirc 複製遙控器,並進行遙控。
LIRC是我們需要的軟體.
LIRC 是 Linux Infrared remote control的縮寫,是linux系統下開源的軟體包。從名字中可知,這個軟體讓你的Linux系統能夠控制紅外線訊號。
LIRC有個具有圖形使用者介面的前端,叫做KDELirc
在使用LIRC之前建議瞭解一下紅外協議,這樣有助於你理解互動過程和debug
安裝
sudo apt-get install lirc
載入驅動
sudo modprobe lirc_rpi
測試lirc是否正常
- sudo mode2 -d /dev/lirc0 # 按遙控上的任何鍵,檢視是否有輸出類似
- space 4960669
- pulse 2697
- ……
- pulse 2697
配置
#sudo vim /boot/config.txt #在檔案結尾新增 dtoverlay=lirc-rpi gpio_in_pin=18 gpio_out_pin=17 #sudo vim /etc/lirc/hardware.conf #編輯LRIC的配置檔案 LIRCD_ARGS="--uinput --listen" DRIVER="default" DEVICE="/dev/lirc0" MODULES="lirc_rpi" # 重啟生效 sudo /etc/init.d/lircd restart //這裡是lircd了。
輸入如下指令選一個喜歡的名字。
# irrecord --list-namespace
下面開始錄製
sudo /etc/init.d/lircd restart
irrecord -f -d /dev/lirc0 ~/lircd.conf //啟用raw原始碼錄製的方式。
1.先輸入一個檔名。
2.根據提示,首先隨機按遙控器上的任意按鈕,每個按鈕不要連續點選超過10次。知道點走完一行。
3.重複剛才的步驟,再走一行。
4.開始輸入按鍵的名字,按鍵的名字只能從上面namespace裡面選,例如KEY_UP KEY_DOWN KEY_ENTER等等
5.每次輸入名字以後,就開始複製,點選想複製的按鈕即可。
6.按回車鍵結束。
成功以後,會看到如下提示。
Successfully written config file hezi.lircd.conf
hezi.lircd.conf檔案內容如下
下面開始發射複製的原始資料。
1.sudo cp hezi.lircd.conf /etc/lirc/lircd.conf.d/ //將剛才生成的檔案複製到lircd.conf.d資料夾裡面。
2.sudo /etc/init.d/lircd restart
//重新啟動服務,以呼叫hezi.lircd.conf。
3. irsend SEND_ONCE hezi KEY_RIGHT //發射hezi檔案中的KEY_RIGHT命令。
至此,已完成了遙控器的複製。