- 取得連結
- X
- 以電子郵件傳送
- 其他應用程式
軟體:LIRC
功能:傳送/接收 紅外線遙控
樹莓派因為沒有 BIOS,所以 Raspbian 對設備的加載都是依賴在 /boot/config.txt 中的配置來加載
當 Linux 內核加載時,會讀取 /boot/config.txt 中的設備配置和設備參數配置來把設備動態加載到 Device Tree(DT) 中
raspberry-lirc
Easy Setup IR Remote Control Using LIRC for the Raspberry PI (RPi) - July 2019 [Part 1]
Using a simple IR receiver such as IR5040 or TSOPxxxxx and a Raspberry Pi running LibreELEC + Kodi
Raspberry Pi + LIRC 紅外線遙控實做
Using an IR Remote with a Raspberry Pi Media Center
在樹莓派3上使用紅外遙控器控制libreELEC
- Package:
- lirc
- ir-keytable
功能:傳送/接收 紅外線遙控
用 ir-keytable 測試 IR 硬體
# 查看 gpio,確認接線 pinout # 設定 /boot/config.txt,依接線設定 gpio dtoverlay=gpio-ir,gpio_pin=17 dtoverlay=gpio-ir-tx,gpio_pin=18 # 重開機 sudo reboot # 安裝 ir-keytable sudo apt install ir-keytable # 開始測試,隨意按下遙控器 sudo ir-keytable -p all -tconfig.txt的配置語法
樹莓派因為沒有 BIOS,所以 Raspbian 對設備的加載都是依賴在 /boot/config.txt 中的配置來加載
當 Linux 內核加載時,會讀取 /boot/config.txt 中的設備配置和設備參數配置來把設備動態加載到 Device Tree(DT) 中
dtoverlay=<device> dtparam=<param1>,<param2>,...
安裝 LIRC
sudo apt update sudo apt install lirc # 安裝會出錯,此時再將 lirc_options.conf.dist 改名為 lirc_options.conf,再重新安裝 sudo mv /etc/lirc/lirc_options.conf.dist /etc/lirc/lirc_options.conf sudo apt install lirc
# 設備/dev/lirc1 是接收器,設備/dev/lirc0 是發送器 # 編輯 /etc/lirc/lirc_options.conf driver = default device = /dev/lirc1 # 啟動服務 sudo systemctl stop lircd.service sudo systemctl start lircd.service sudo systemctl status lircd.service # 重開機 sudo reboot # 測試 sudo systemctl stop lircd.service sudo mode2 -d /dev/lirc1
設定按鍵
錄製方法如下,建議到官網抓取品牌範例,再修改
# 列出可錄製的按鍵名 irrecord -l # 錄製按鍵,並存檔至 ~/remoteName.lircd.conf # 常用 KEY_UP, KEY_DOWN, KEY_LEFT, KEY_RIGHT, KEY_OK irrecord -d /dev/lirc1 ~/lircd.conf # 依序為 # 輸入表的名字 # 任意鍵長按至 1 秒,同樣的鍵不超過十個點 # 輸入要記錄鍵的名字,短按即可,結束請按 enter # 任意一個鍵,快速重覆按lircd.conf 內容如下
# this config file was automatically generated # using lirc-0.8.3pre1(default) on Mon Nov 26 23:16:08 2007 # # contributed by Chris Moates <six|mox.ne> # # brand: Vizio # model no. of remote control: Unknown. Black remote with no backlighting. # devices being controlled by this remote: Vizio LCD TV # # I recorded this with irrecord, but then reversed the flags because they # make a lot more sense that way. I did try the other combinations according # to the pattern that is evident, but found no other codes aside from the # ones on the remote, so no discreets to switch to a particular HDMI input, # for example. :( begin remote name Vizio bits 16 flags SPACE_ENC|CONST_LENGTH|REVERSE eps 30 aeps 100 header 8939 4447 one 547 1684 zero 547 565 ptrail 539 pre_data_bits 16 pre_data 0xFB04 gap 107074 toggle_bit_mask 0x0 begin codes KEY_INPUT 0xD02F # Was: input KEY_POWER 0xF708 # Was: power KEY_MENU 0xB04F # Was: menu KEY_INFO 0xE41B # Was: info KEY_UP 0xBA45 # Was: up KEY_LEFT 0xB847 # Was: left KEY_OK 0xBB44 # Was: ok KEY_RIGHT 0xB748 # Was: right KEY_DOWN 0xB946 # Was: down KEY_BACK 0xB54A # Was: back KEY_HOME 0xD22D # Was: home KEY_CC 0xC639 # Was: cc KEY_VOLUMEUP 0xFD02 # Was: volup KEY_LAST 0xE51A # Was: last KEY_CHANNELUP 0xFF00 # Was: chup KEY_VOLUMEDOWN 0xFC03 # Was: voldn KEY_MUTE 0xF609 # Was: mute KEY_CHANNELDOWN 0xFE01 # Was: chdown KEY_1 0xEE11 # Was: 1 KEY_2 0xED12 # Was: 2 KEY_3 0xEC13 # Was: 3 KEY_4 0xEB14 # Was: 4 KEY_5 0xEA15 # Was: 5 KEY_6 0xE916 # Was: 6 KEY_7 0xE817 # Was: 7 KEY_8 0xE718 # Was: 8 KEY_9 0xE619 # Was: 9 KEY_PIC 0x9867 # Was: pic KEY_0 0xEF10 # Was: 0 KEY_DASH 0x00FF # Was: dash KEY_WIDE 0x8877 # Was: wide KEY_EXIT 0xB649 # Was: exit end codes end remote
# 將按鍵表放到 /etc/lirc sudo cp ~/lircd.conf /etc/lirc/lircd.conf
IR 接收
# 設備/dev/lirc1 是接收器,設備/dev/lirc0 是發送器 # 編輯 /etc/lirc/lirc_options.conf driver = default device = /dev/lirc1
# 重啟服務 sudo systemctl restart lircd.service # 測試接收,隨意按遙控器,會看到對應按鍵名 irw
IR 傳送
# 設備/dev/lirc1 是接收器,設備/dev/lirc0 是發送器 # 編輯 /etc/lirc/lirc_options.conf driver = default device = /dev/lirc0
# 重啟服務 sudo systemctl restart lircd.service # 列出所有 remote name irsend LIST "" "" # 檢查特定 remote 可以送出的按鈕 irsend LIST remoteName "" # 測試傳送 irsend SEND_ONCE remoteName KEY_UP irsend SEND_ONCE remoteName KEY_UP KEY_Down
參考
IR Remote Control Support on Raspbian Buster – JustBoomraspberry-lirc
Easy Setup IR Remote Control Using LIRC for the Raspberry PI (RPi) - July 2019 [Part 1]
Using a simple IR receiver such as IR5040 or TSOPxxxxx and a Raspberry Pi running LibreELEC + Kodi
Raspberry Pi + LIRC 紅外線遙控實做
Using an IR Remote with a Raspberry Pi Media Center
在樹莓派3上使用紅外遙控器控制libreELEC
留言
張貼留言