|
本帖最后由 simonliu009 于 2015-3-17 19:16 編輯
首先我想說的是,no zuo no die,root和修磚問題折騰了我3-4天,最后兩天修磚的期間看電視沒有天貓盒子只能看機(jī)頂盒,好不習(xí)慣啊。
緣起:
因?yàn)榭蛷d老LCD TV只有一個(gè)HDMI,所以把它留給了天貓盒子,因?yàn)锳V線在液晶電視上看天貓盒子慘不忍睹(盒子版本TMB100a),原先的M880高清機(jī)就只能從HDMI轉(zhuǎn)到色差線,然后可能是線的原因或者高清機(jī)電源的原因,色差總是出現(xiàn)干擾橫紋。所以想到用天貓盒子用XBMC通過NFS或者Samba直接播放高清機(jī)上面的文件。然后XBMC如果要正常播放就需要root,然后就拆解折騰root(1.7版本)。
以下是root的方法經(jīng)驗(yàn)教訓(xùn)總結(jié):
1. 我的TF卡是4G卡,默認(rèn)在windows和mac上都無法把TF格式化為FAT16(簡(jiǎn)稱FAT),只能格式化為FAT32,我用FAT32試了兩天都只能進(jìn)入原廠recovery,無法刷機(jī)。后來搜索到一個(gè)方法,就是進(jìn)入winxp的命令行模式,用
format x: /fs:FAT
命令就能把4G卡格式化為FAT16格式。用FAT32的時(shí)候總是進(jìn)入官方recovery,后來換成FAT16才能進(jìn)入到第三方recovery。
2. 網(wǎng)上介紹的主流短接法root在我這里不好用,短接以后上電始終燈不亮也不啟動(dòng),只有先上電然后迅速短接1秒左右,然后燈比正常啟動(dòng)延遲1秒左右,這時(shí)候啟動(dòng)才能進(jìn)第三方recovery。即使這樣,能進(jìn)入第三方的recovery的概率大概也就是10%左右。
3. 第三方recovery在網(wǎng)上下載了很多個(gè),最后能讓我成功刷機(jī)的是奇鉑的其中一個(gè)版本的recovery,大小是6.2M(5.1M的貌似不好用,5.8M的那個(gè)無法顯示刷機(jī)進(jìn)度)。所有的recovery在我的老液晶上都是向左偏置顯示,有部分字符看不到。但是6.2M的那個(gè)是顯示得最多的。
4. 如果你刷root包,總是出現(xiàn)installation aborted,那八成是你沒進(jìn)入第三方recovery,而是官方recovery。第三方recovery都有明顯的他們的圖片和logo,官方recovery背景就是畫面中間一個(gè)帶感嘆號(hào)的灰色顯示器。
在一天快半夜的時(shí)候我終于折騰進(jìn)入第三方recovery,第一次大概由于沒有雙清,所以刷完沒有任何改變,由于進(jìn)入recovery概率較低,就先去睡覺了。然后第二天起來一怒之下重新下載1.7的rooted包,刷的時(shí)候一切正常,然后重啟之后完蛋了,上電亮藍(lán)燈,但是無任何顯示,捅菊花上電也無法進(jìn)入跑馬燈恢復(fù)模式,還是過N久之后藍(lán)燈常亮。此時(shí)我郁悶了,蹲在電視機(jī)前面,盯著冷冷地一直亮著的那盞藍(lán)燈,終于接受了一個(gè)現(xiàn)實(shí):它變磚了......
修磚過程:
然后上網(wǎng)各種搜索,各種分析,把root包又刷了好幾遍,都是刷的時(shí)候沒有任何錯(cuò)誤,但是就是只亮藍(lán)燈,沒有顯示。然后想刷原廠包,結(jié)果1.7和1.5的原廠包都無法刷入,刷到中間提示 get.prop.....的各種信息,然后中斷。無奈之下,只好考慮TTL線刷了,既然刷rom的時(shí)候沒有提示錯(cuò)誤,先考慮uboot的問題。
TTL修磚所需硬件:
1. 電烙鐵
2. USB轉(zhuǎn)TTL線,推薦CH340 USB轉(zhuǎn)TTL線(這東西的好處是可以跳線選擇3.3V和5V電壓,這里選擇3.3V)。
3. 導(dǎo)線
4. 面包板(可選)、杜邦線(可選),在連接的時(shí)候我使用了這兩樣?xùn)|西,就不需要焊接每根線的兩頭了,只需要從天貓盒子飛出3條線即可。然后通過面包板和杜邦線連接到USB轉(zhuǎn)TTL模塊。
TTL修磚所需軟件:
1. putty或者其他終端軟件,比如超級(jí)終端之類。
2. USB轉(zhuǎn)TTL模塊驅(qū)動(dòng)
3. tmb100a的SPI Flash內(nèi)的Uboot(最后我沒用上,因?yàn)椴皇莡boot的問題)。
上烙鐵,焊接,從主板飛線3條。線序如下:
GND<->GND, LINUX_TX<->RX, LINUX_RX<->TX
Putty的左側(cè)的serial設(shè)置里面選正確的com口(winxp的硬件管理中能看到,如果不是com1-com3,建議改為com1-com3),波特率選為115200,然后其他設(shè)置不改,右側(cè)選擇模式為seial點(diǎn)擊open打開。然后盒子上電,讀信息,刷刷一大堆,然后關(guān)鍵信息是:
.............
Boot From SPI0x12345678
Boot from internal device 1st SPI RESERVED
System Started
?C?H?H?????00000-g3e9c579(m6_mbx_g32@jb42-0630) (Apr 08 2014 - 12:22:39)
(注:嗯,上面應(yīng)該顯示系統(tǒng)已經(jīng)啟動(dòng)了)
................
1 NAND detect Bad block at 5a00000
(注:Nand在5a00000處發(fā)現(xiàn)壞塊)
nandnormal initialized ok
detect mx chiprevD :1 and nand_type: 0
nand_curr_device =1
MMC: SDIO Port B: 0, SDIO Port C: 1
SPI BOOT,spi_env_relocate_spec : env_relocate_spec 53
Hit Enter key to stop autoboot: 0
compatible nand
Booting from nand ...
nand - NAND sub-system
Usage:
nand info - show available NAND devices
test - test available NAND devices
nand device [dev] - show or set current device
nand read - addr off|partition size
nand write - addr off|partition size
read/write 'size' bytes starting at offset 'off'
to/from memory address 'addr', skipping bad blocks.
nand erase [clean|whole] [off size] - erase 'size' bytes from
offset 'off' (entire device if not specified)
nand bad - show bad blocks
nand scrub_safe - clean NAND erasing bad blocks except factory bad blocks
-just do it (SAFE)!!
nand dump[.oob] off - dump page
nand scrub_detect - detect bad blk again
nand scrub - really clean NAND erasing bad blocks (UNSAFE)
nand markbad off [...] - mark bad block(s) at offset (UNSAFE)
nand biterr off - make a bit error at offset (UNSAFE)
nand rom_protect on/off
nand wr_rd_cmp src dst off|partition size
nand rom_write addr off|partition size
nand factory_info addr block_offset block_count part|all
nand errstat
......................
Wrong Image Format for bootm command
ERROR: can't get kernel image!
m6_mbx_g32#
(注:嗯,上面顯示無法啟動(dòng)kernel 鏡像,大概是因?yàn)镹and損壞)
好吧,既然Nand壞了就修復(fù)之,修復(fù)命令其實(shí)上面已經(jīng)提示了,我還參考了其他帖子,
先輸入 nand bad 查找壞塊,
顯示返回
#nand bad
Device 1 bad blocks:
aml nand read data ecc plane0 failed at page 23040 chip 0
aml nand read data ecc plane1 failed at page 23040 chip 0
1 NAND detect Bad block at 5a00000
005a00000
然后,輸入nand scrub屏蔽壞塊,Really scrub this NAND flash? <y/N>處輸入y回車。
#nand scrub (此處建議用nand scrub_safe)命令,避免擦除原廠壞塊標(biāo)記。
NAND scrub: whole chip
Warning: scrub option will erase all factory set bad blocks!
There is no reliable way to recover them.
Use this command only for testing purposes if you
are sure of what you are doing!
Really scrub this NAND flash? <y/N>
Erasing at 0x5000000 -- 2% complete.after wirte,read 1 status =225 fail
after wirte,read 2 status =225 fail
after wirte,read 3 status =225 fail
nandnormal: MTD Erase failure: -5 5a00000
Erasing at 0xffe00000 -- 100% complete.
OK
然后斷電,上電短接進(jìn)入第三方recovery,直接刷1.7 rooted包,刷完重啟,當(dāng)當(dāng)當(dāng),系統(tǒng)回來了,熱淚盈眶啊。然后rooted包已經(jīng)裝好了supersu和root explorer,進(jìn)入system/app,把osupdate.apk改名,搞定。
|
評(píng)分
-
查看全部評(píng)分
上一篇: 天貓魔盒2recovery方法下一篇: 教你一招!如何給魔盒進(jìn)行網(wǎng)絡(luò)測(cè)速,四種方法解決
|