|
讓所有遙控器都能遙控天貓魔盒,從此,就可以告別看電視時(shí)同時(shí)用兩個(gè)遙控器的尷尬,而且天貓魔盒遙控器功能極少,數(shù)字鍵都沒(méi)有。另一方面,學(xué)完本帖,你可以用任何一個(gè)遙控器,并且自定義遙控器按鍵的功能,遙控器壞了也不需要買(mǎi)原裝去替代!
需要工具:一個(gè)NEC紅外遙控器,電腦
第一,Amlogic的芯片機(jī)頂盒通常帶有一個(gè)38Khz的紅外接收器(相當(dāng)常見(jiàn)的廉價(jià)傳感器約$1.50)。在晶晨半導(dǎo)體的SOC中具有一個(gè)硬件NEC遠(yuǎn)程協(xié)議解碼器。晶晨半導(dǎo)體遠(yuǎn)程軟件還可以支持RC5和RC6軟件遠(yuǎn)程協(xié)議,但我還沒(méi)弄清楚。所以你需要個(gè)使用NEC遠(yuǎn)程協(xié)議的遙控器。我使用的是普通的紅外遙控器。在配置過(guò)程中,您將使用以下四個(gè)文件或程序:- * dmesg : 獲取內(nèi)核報(bào)告的信息
- * Remotecfg : 加載/system/etc/remote.conf文件、檢測(cè)其中的錯(cuò)誤
- * /system/etc/Remote.conf : 將scancodes與linux的keycodes對(duì)應(yīng)的配置文件
復(fù)制代碼 默認(rèn)情況下,原始 Remote.conf 都會(huì)啟用調(diào)試,并且設(shè)置為 0xff000001 工廠代碼。
如果您將遙控器對(duì)準(zhǔn)盒子,按幾個(gè)按鈕,然后在盒子終端里運(yùn)行"busybox dmesg",您應(yīng)該看到類(lèi)似于:- [ 5094.377000] Wrong custom code is 0xXXYYZZZZ
復(fù)制代碼 如果你沒(méi)有看到類(lèi)似的信息,說(shuō)明你的遙控器不是使用NEC協(xié)議,再換個(gè)遙控器試試。如果你看到,這個(gè)代碼以0x(十六進(jìn)制)中斷,XX(可能是Checksum),YY(scancode),ZZZZ(設(shè)備碼)
這樣的話,你就可以將factorycode=0xZZZZ0001寫(xiě)到 remote.conf。
在我們修改remote.conf文件之前,需要先將遙控器的各個(gè)按鍵的scancodes記下來(lái)
1、運(yùn)行 demsg -c 清理內(nèi)核中的信息
2、按順序按遍遙控器的每個(gè)按鈕(如果你覺(jué)得沒(méi)按到,你可以多按幾次,但一定要按順序)
3、運(yùn)行 dmesg | grep "code is 0x" | rev |cut -c 5-6 -c 9-10| rev |uniq >> /sdcard/IRdump.log
然后會(huì)在/sdcard/下創(chuàng)建包含scancodes的IRdump.log文件,這些會(huì)被用在remote.conf文件中,所以請(qǐng)務(wù)必按順序按下,否則 之后你會(huì)搞亂。
下一步就是remote.conf文件了,默認(rèn)路徑是/system/etc/remote.conf。這是安卓init進(jìn)程默認(rèn)加載的路徑。由于啟動(dòng)時(shí),/system 被默認(rèn)掛載為只讀,所以請(qǐng)先運(yùn)行下 mount -o remount rw /system ,然后備份下remote.conf文件 輸入 cp /system/etc/remote.conf /system/etc/remote.conf.bak
現(xiàn)在我們可以編輯remote.conf了,首先將之前獲取的 factorycode 填入對(duì)應(yīng)位置 (我的factorycode = 0x9c210001)
第二步 就是刪除 key_begin 和 key_end 之間的所有東西 ,然后將IRdump.log內(nèi)的文件復(fù)制進(jìn)去,
下面開(kāi)始煩人的操作了,將每個(gè)scancode 與 keycode 匹配,格式是:- 0x57 116 #scancode keycode;
- <span style="line-height: 28.8px;"> </span><span style="line-height: 1.8em;">0x5B 60</span><blockquote> 0x0B 121
復(fù)制代碼 在 scancode 和 keycode 之間只能是空格,不是用tab這其他的字符 不然 之后用 remotecfg 都會(huì)報(bào)錯(cuò)
amlogic默認(rèn)的keycode值在/system/usr/keylayout/Vendor_0001_Product_0001.kl文件里,格式是:
<font face="Arial" size="2">- #key Linux_keycode android_keycode
復(fù)制代碼 </font>
keycode 隨著 scancode的產(chǎn)生而產(chǎn)生,然后 Linux子系統(tǒng)會(huì)根據(jù)以上文件的對(duì)應(yīng)關(guān)系把a(bǔ)ndroid_keycode 傳給安卓系統(tǒng)
keycode 很?chē)?yán)格,必須將remote.conf 和 Vendor_0001_Product_0001.kl文件匹配一致。- <blockquote>Remote.conf | Vendor_0001_Product_0001.kl
復(fù)制代碼 就是說(shuō) 當(dāng)你按下 主頁(yè)鍵的時(shí)候,它會(huì)產(chǎn)生 scancode 0xff 然后你需要到Vendor_0001_Product_0001.kl文件中尋找 home鍵的keycode 將其填在 scancode后
當(dāng)然你也可以直接編輯 Vendor_0001_Product_0001.kl ,但是不建議這樣做。
修改好了之后,測(cè)試你做的remote.conf 運(yùn)行 remotecfg /system/etc/remote.conf
然后你會(huì)看到輸出一下東西,接著你可以按鍵了。。
最后你也可以配置同時(shí)支持多個(gè)遙控器哦!只需要再增加一個(gè)factorycode、 key_begin和key_end部分即可:- # Comcast Universal Remote NEC Code 00899 (Cable)
- <blockquote>repeat_enable = 1
復(fù)制代碼 由于天貓魔盒的接收器2.4G的而非紅外的,所以其他的紅外遙控器是無(wú)法適配的。我測(cè)試了6個(gè)遙控器(2.4G的除外),其中只有小米盒子1S的遙控器不能適配,其他均可以,理論上應(yīng)可以適配市面上絕大部分紅外遙控器。寫(xiě)在這里,只為有需要的人提供方便。
關(guān)于天貓盒子的代碼
修改安卓系統(tǒng)網(wǎng)絡(luò)電視盒子的遙控器代碼需要用到盒子安卓系統(tǒng)的\system\etc\remote.conf 文件(該文件定義遙控代碼的值),和\system\usr\keylayout\Vendor_0001_Product_0001.kl文件(該文件定義遙控代碼值的使用功能),關(guān)于remote.conf文件網(wǎng)上介紹的很多,下面我就Vendor_0001_Product_0001.kl文件給大家講解一下每個(gè)代碼代表的什么意思,翻譯的不一定對(duì),僅供參考。
例如remote.conf文件中的下面代碼:
*************************
#電源休眠
0x40 116
************************
“#電源休眠”是注釋?zhuān)灰懊鎺А?”系統(tǒng)認(rèn)為后面的都是注釋?zhuān)蛔鋈魏蔚拇a定義使用“0x40”是遙控器的按鍵的鍵值,就是與這個(gè)功能對(duì)應(yīng)的遙控器的按鍵鍵值,最后面的“116”代表的什么意思就要看\system\usr\keylayout\Vendor_0001_Product_0001.kl文件了,下面的表格就是這個(gè)文件的詳細(xì)內(nèi)容,對(duì)應(yīng)下面的第2列鍵值序號(hào),對(duì)應(yīng)的功能見(jiàn)第3列“鍵值功能”,是英文,第4列“中文說(shuō)明”是我給大家標(biāo)注的,有很多按鍵不知道是什么意思,是自己胡謅的,誰(shuí)知道請(qǐng)回帖告知,我馬上修改過(guò)來(lái),謝謝
另外很多鍵值的功能都是一樣的,我也不知道他們有什么區(qū)別,大家還是自己實(shí)驗(yàn)吧,我也不是很懂!
1 返回
2 按鍵1
3 按鍵2
4 按鍵3
5 按鍵4
6 按鍵5
7 按鍵6
8 按鍵7
9 按鍵8
10 按鍵9
11 按鍵0
12 減號(hào)=
13 等于號(hào)=
14 刪除
15 返回
16 Q
17 W
18 E
19 R
20 T
21 Y
22 U
23 I
24 O
25 P
26 左括號(hào)(
27 右括號(hào))
28 回車(chē)
30 A
31 S
32 D
33 F
34 G
35 H
36 J
37 K
38 L
39 分號(hào)
40 撇號(hào)'
42 左邊的SHIFT
43 反斜線符號(hào)/
44 Z
45 X
46 C
47 V
48 B
49 N
50 M
51 逗號(hào),
52 句號(hào).
53 \
54 右SHIFT
56 左邊的ALT
57 空格
58 右按鍵
60 通知?
61 呼叫?
62 結(jié)束呼叫?
70 瀏覽器
97 光標(biāo)中心
100 右邊的ALT
102 主頁(yè)
103 光標(biāo)上
104 音量上
105 光標(biāo)左
106 光標(biāo)右
107 結(jié)束呼叫?
108 光標(biāo)下
109 音量下
113 靜音
114 音量下
115 音量上
116 電源休眠/喚醒
117 電源關(guān)閉
119 媒體播放/暫停
120 媒體快進(jìn)
121 媒體倒退
122 媒體上一個(gè)
123 媒體下一個(gè)
125 菜單
127 搜索
128 媒體停止
130 放大
131 縮小
133 TAB切換
139 菜單
140 F10
155 郵件?
158 返回
212 相機(jī)?
215 AT
217 搜索
227 推薦?
228 付費(fèi)?
231 呼叫?
232 光標(biāo)中心
399 重點(diǎn)?
修改代碼時(shí)用adb可以方便地從電腦遠(yuǎn)程操作
天貓魔盒M13開(kāi)啟USB調(diào)試進(jìn)行遠(yuǎn)程操作的方法
親測(cè)可用,可以數(shù)字鍵換臺(tái),一鍵直達(dá)應(yīng)用
|
評(píng)分
-
查看全部評(píng)分
上一篇: 天貓魔盒用第三方軟件看視頻顯示比例出現(xiàn)問(wèn)題下一篇: 天貓魔盒打開(kāi)花屏,呈黑白的條狀的原因及解決辦法!
|