天貓魔盒的遙控器壞了,于是買(mǎi)了個(gè)羅技k300r一體鍵盤(pán),開(kāi)始用起來(lái)挺爽,有關(guān)機(jī)鍵,可是。。。關(guān)掉后就起不來(lái)了,usb供電也被一起關(guān)閉~~!!
研究了一段時(shí)間,沒(méi)法解決這個(gè)問(wèn)題,果斷放棄。看到有大俠給魔盒裝IR的帖子,但一直擔(dān)心無(wú)法給遙控器修改代碼,一直沒(méi)有嘗試。今天偶然又看到一篇關(guān)于amlogic芯片紅外遙控器自定義按鍵的帖子,頓時(shí)來(lái)了念頭。立即開(kāi)始行動(dòng),從淘寶上買(mǎi)接收頭已經(jīng)不能滿足我的速度要求了,于是從家里兩臺(tái)過(guò)時(shí)的機(jī)頂盒上拆下兩個(gè)紅外接收頭,開(kāi)始嘗試。拆下來(lái)的兩個(gè)紅外接收器,完全沒(méi)有型號(hào),也沒(méi)有管腳定義,只能慢慢嘗試,過(guò)程是艱辛的,在此不表。
從機(jī)頂盒上拆下來(lái)的接收頭:
本部分設(shè)定了隱藏,您已回復(fù)過(guò)了,以下是隱藏的內(nèi)容第一版接線,經(jīng)過(guò)N次嘗試后,終于有輸出了。。
第二版,重要發(fā)現(xiàn)!發(fā)現(xiàn)板子上LED燈旁邊有三個(gè)空的引腳,難道就是紅外接收頭的位置?經(jīng)過(guò)嘗試,果然是的!
下面簡(jiǎn)單說(shuō)一下遙控器自定義。注意,需要root
按下電視機(jī)遙控器的按鍵,dmesg后出現(xiàn):
<4>[ 312.449689@0] Wrong custom code is 0xe11ebf40
修改remote.conf中的factory_code = 0xbf400001,使用remotecfg /etc/remote.conf應(yīng)用按鍵配置,繼續(xù)按遙控器看輸出:
<4>[ 1165.066331@0] scancode is 0x0018, invalid key is 0x0000.
說(shuō)明電視機(jī)遙控器上power的按鍵碼是0x18
修改
/etc/remote.conf
0x18 104 #116從下面的按鍵映射表看來(lái),就是音量+,于是改為0x18就OK了!
/system/usr/keylayout/Vendor_0001_Product_0001.kl
key 104 VOLUME_UP
原以為需要在盒子上拆一個(gè)窗口出來(lái),實(shí)測(cè)發(fā)現(xiàn)不需要,接受效果很好。
重點(diǎn)注意:
1. power按鍵請(qǐng)不要用自定義
我改了power按鍵后,可以關(guān)機(jī),但是!不能喚醒,我頓時(shí)傻了,難道魔盒連IR的電源都斷?測(cè)量后,發(fā)現(xiàn)電源沒(méi)斷。聯(lián)想到是否因?yàn)閗ernel down了,所以自定義的按鍵不能用了?
于是恢復(fù)0x57按鍵值,正好我使用的遙控器上有這個(gè)按鍵值的按鈕,測(cè)試后果然是可以從待機(jī)喚醒的。所以,power按鍵請(qǐng)不要用自定義。
2. 遙控器要NEC編碼的
測(cè)試了一下家里的幾個(gè)遙控器,只有長(zhǎng)虹的可以用
3. 接收頭要使用38Khz的,拆了兩臺(tái)機(jī)頂盒的接收頭,只有一臺(tái)可以用。
附按鍵定義【長(zhǎng)虹】:
factory_code = 0xbf400001
work_mode = 1
repeat_enable = 1
release_delay = 150
debug_enable = 1
reg_control = 0xfbe40
key_begin
0x57 116 #power
#0x5B 60 #NOTIFICATION
0x4e 121 #MEDIA_REWIND
0x4F 120 #MEDIA_FAST_FORWARD
0x49 103 #DPAD_UP
0x48 108 #DPAD_DOWN
0x53 105 #DPAD_LEFT
0x4b 106 #DPAD_RIGHT
0x44 97 #DPAD_CENTER
#0x57 125 #MENU
0x15 102 #HOME
0x50 15 #BACK
0x18 104 #VOLUME_UP
0x59 109 #VOLUME_DOWN
key_end
|