|
本帖最后由 simonliu009 于 2015-3-17 19:16 编辑
首先我想说的是,no zuo no die,root和修砖问题折腾了我3-4天,最后两天修砖的期间看电视没有天猫盒子只能看机顶盒,好不习惯啊。
缘起:
因为客厅老LCD TV只有一个HDMI,所以把它留给了天猫盒子,因为AV线在液晶电视上看天猫盒子惨不忍睹(盒子版本TMB100a),原先的M880高清机就只能从HDMI转到色差线,然后可能是线的原因或者高清机电源的原因,色差总是出现干扰横纹。所以想到用天猫盒子用XBMC通过NFS或者Samba直接播放高清机上面的文件。然后XBMC如果要正常播放就需要root,然后就拆解折腾root(1.7版本)。
以下是root的方法经验教训总结:
1. 我的TF卡是4G卡,默认在windows和mac上都无法把TF格式化为FAT16(简称FAT),只能格式化为FAT32,我用FAT32试了两天都只能进入原厂recovery,无法刷机。后来搜索到一个方法,就是进入winxp的命令行模式,用
format x: /fs:FAT
命令就能把4G卡格式化为FAT16格式。用FAT32的时候总是进入官方recovery,后来换成FAT16才能进入到第三方recovery。
2. 网上介绍的主流短接法root在我这里不好用,短接以后上电始终灯不亮也不启动,只有先上电然后迅速短接1秒左右,然后灯比正常启动延迟1秒左右,这时候启动才能进第三方recovery。即使这样,能进入第三方的recovery的概率大概也就是10%左右。
3. 第三方recovery在网上下载了很多个,最后能让我成功刷机的是奇铂的其中一个版本的recovery,大小是6.2M(5.1M的貌似不好用,5.8M的那个无法显示刷机进度)。所有的recovery在我的老液晶上都是向左偏置显示,有部分字符看不到。但是6.2M的那个是显示得最多的。
4. 如果你刷root包,总是出现installation aborted,那八成是你没进入第三方recovery,而是官方recovery。第三方recovery都有明显的他们的图片和logo,官方recovery背景就是画面中间一个带感叹号的灰色显示器。
在一天快半夜的时候我终于折腾进入第三方recovery,第一次大概由于没有双清,所以刷完没有任何改变,由于进入recovery概率较低,就先去睡觉了。然后第二天起来一怒之下重新下载1.7的rooted包,刷的时候一切正常,然后重启之后完蛋了,上电亮蓝灯,但是无任何显示,捅菊花上电也无法进入跑马灯恢复模式,还是过N久之后蓝灯常亮。此时我郁闷了,蹲在电视机前面,盯着冷冷地一直亮着的那盏蓝灯,终于接受了一个现实:它变砖了......
修砖过程:
然后上网各种搜索,各种分析,把root包又刷了好几遍,都是刷的时候没有任何错误,但是就是只亮蓝灯,没有显示。然后想刷原厂包,结果1.7和1.5的原厂包都无法刷入,刷到中间提示 get.prop.....的各种信息,然后中断。无奈之下,只好考虑TTL线刷了,既然刷rom的时候没有提示错误,先考虑uboot的问题。
TTL修砖所需硬件:
1. 电烙铁
2. USB转TTL线,推荐CH340 USB转TTL线(这东西的好处是可以跳线选择3.3V和5V电压,这里选择3.3V)。
3. 导线
4. 面包板(可选)、杜邦线(可选),在连接的时候我使用了这两样东西,就不需要焊接每根线的两头了,只需要从天猫盒子飞出3条线即可。然后通过面包板和杜邦线连接到USB转TTL模块。
TTL修砖所需软件:
1. putty或者其他终端软件,比如超级终端之类。
2. USB转TTL模块驱动
3. tmb100a的SPI Flash内的Uboot(最后我没用上,因为不是uboot的问题)。
上烙铁,焊接,从主板飞线3条。线序如下:
GND<->GND, LINUX_TX<->RX, LINUX_RX<->TX
Putty的左侧的serial设置里面选正确的com口(winxp的硬件管理中能看到,如果不是com1-com3,建议改为com1-com3),波特率选为115200,然后其他设置不改,右侧选择模式为seial点击open打开。然后盒子上电,读信息,刷刷一大堆,然后关键信息是:
.............
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)
(注:嗯,上面应该显示系统已经启动了)
................
1 NAND detect Bad block at 5a00000
(注:Nand在5a00000处发现坏块)
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#
(注:嗯,上面显示无法启动kernel 镜像,大概是因为Nand损坏)
好吧,既然Nand坏了就修复之,修复命令其实上面已经提示了,我还参考了其他帖子,
先输入 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)命令,避免擦除原厂坏块标记。
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
然后断电,上电短接进入第三方recovery,直接刷1.7 rooted包,刷完重启,当当当,系统回来了,热泪盈眶啊。然后rooted包已经装好了supersu和root explorer,进入system/app,把osupdate.apk改名,搞定。
|
评分
-
查看全部评分
上一篇: 天猫魔盒2recovery方法下一篇: 教你一招!如何给魔盒进行网络测速,四种方法解决
|