首页 > Linux, Windows > 电子书Kindle Touch变砖后的修复记录

电子书Kindle Touch变砖后的修复记录

2013年1月26日 LTNS     访问次数 920 发表评论 阅读评论

前两天手上的Kindle Touch(下面简称KT)莫名其妙地死机后就不幸变砖了,重启、30秒大法均无效,借用一张网上的图片,重启后就停留在这个画面。
kindle-repair

插电脑usb上KT会自动重启,重启后电脑上会出现U盘模式的KT,但一会儿就会自动卸载,所以没法在U盘模式下恢复系统文件。

经Google搜索,网上有多人遇到过类似问题,于是参考了其中的两篇教程(见参考文章,其中第2篇文章也是在第1篇文章的基础上细化的,且收集齐全了相关的工具和文件,第1篇文章里有的下载链接已经失效了),并根据自己的实际情况做了点调整,在此做一个记录。

先说明一下,我是在win7 x64环境下修复成功的,之前在x230的win7 x86环境下尝试但在MfgTool这个步骤时无法识别出KT,猜测可能是x230硬件较新的缘故。另外,教程中提到的两个ssh客户端软件 WinSCPPutty,具体使用方法请自行网上搜索。

1. 首先运行inf-wizard.exe,两次点Next,接下来在Vendor Id项填0x1949、Product ID项填0xD0D0、MI项不填、Manufacturer Name项随便填、Device Name项填Kindle-fastboot,然后点Next,按提示保存,保存之后点Install Now.. ,这样就完成了fastboot驱动的安装。
inf-wizard

2. 将KT插到电脑的usb口上,长按KT电源键直到指示灯熄灭,不要松电源键,按住Home键,再松开电源键,最后再松开Home键。这时,win7设备管理器的“人体学输入设备”下应会出现一个新的HID-compliant device。

3. 运行MfgTool.exe,在左下角的下拉菜单中选择Kindle fastboot,再点右边的“Start”。
MfgTool_start

这时左上角会提示“Please connect device”,不用管它,这时KT应该已进入fastboot模式,尽管屏幕上没有任何变化。
MfgTool_stop

4. 把fastboot.exe和带ssh的diags镜像(mmcblk0p2.img,参考文章1里面的下载链接失效了,我是在参考文章2的压缩包“和fastboot放到同一目录的数据文件.rar”里面找到的)放在同一个文件夹下,在文件夹空白处按住shift点击鼠标右键,选择“在此处打开命令窗口”,在cmd窗口里运行以下命令

fastboot.exe flash diags mmcblk0p2.img

不过在win7 x64环境下提示缺少libusb0.dll文件,于是从步骤1时inf-wizard.exe保存的文件夹里找到同名文件,将其复制到fastboot.exe和mmcblk0p2.img的同一文件夹下,再次运行如上命令通过。

继续在cmd窗口里执行如下命令,KT会自动重启

fastboot.exe setvar bootmode diags
fastboot.exe reboot

5. KT重启后会进入diag模式(工程模式),依次选择N)、U)、Z)、X)
kindle touch_diag

6. 这时电脑上就会自动发现一个RNDIS/Ethernet的硬件,这里需要注意的是本步骤之前先要在MfgTool软件里点右边的“Stop”,否则win7自动安装RNDIS/Ethernet的驱动时会失败。
RNDIS_driver_error

win7正常安装RNDIS/Ethernet的驱动之后,在其属性里将IP地址和子网掩码分别改为192.168.15.1和255.255.255.0
RNDIS_setting

7. 分别通过Putty和WinSCP登录KT的ssh服务端(192.168.15.244),前者用来执行命令而后者用于上传文件(登录用户名root,密码mario,注意WinSCP只能采取scp方式才能登录到KT)。先通过WinSCP上传mmcblk0p1-kt-5.0.0.img到KT的/mnt/us目录下,然后在Putty里执行如下命令

df -h    
#反馈如下
   Filesystem                Size      Used Available Use% Mounted on
   /dev/root                62.2M     53.5M      5.5M  91% /
   tmpfs                   124.9M      4.0K    124.9M   0% /dev
   tmpfs                   124.9M         0    124.9M   0% /dev/shm
   /dev/mmcblk0p3           31.0M      8.4M     21.0M  29% /var/local
   fsp                       3.2G    881.3M      2.4G  27% /mnt/us
   /dev/loop/0               3.2G    881.3M      2.4G  27% /mnt/base-us
fdisk -l
#反馈如下
   Disk /dev/mmcblk0: 3959 MB, 3959422976 bytes
   4 heads, 16 sectors/track, 120832 cylinders
   Units = cylinders of 64 * 512 = 32768 bytes
           Device Boot      Start         End      Blocks  Id System
   /dev/mmcblk0p1   *        1025       12224      358400  83 Linux
   /dev/mmcblk0p2           12225       14272       65536  83 Linux
   /dev/mmcblk0p3           14273       15296       32768  83 Linux
   /dev/mmcblk0p4           15297      120832     3377152   b Win95 FAT32
#如上两条命令确认一下mmcblk0p1分区存在且未被挂载
dd if=/mnt/us/mmcblk0p1-kt-5.0.0.img of=/dev/mmcblk0p1 bs=4K   #用上传的镜像覆盖mmcblk0p1
#反馈如下
   k0p1 bs=4K
   89600+0 records in
   89600+0 records out
   367001600 bytes (350.0MB) copied, 145.348547 seconds, 2.4MB/s

8. 退出Putty和WinSCP,接下来在KT的diag模式的主界面,依次选择D)、D)、Q) (如提示 device_info.xml not found 无法退出diag模式,则先在最上一层的菜单上点一下 “Device setting” 并退出,然后重试D)、D)、Q),之所以要多一个步骤是因为diag模式的一个bug,),过一会儿KT就会自动重启,重启后变砖的KT应该就可以恢复正常了。

9. 如果还是不行,则重复步骤3~步骤7,然后通过WinSCP上传mmcblk0p2-kt-5.0.0.img到KT的/mnt/us目录,并在Putty里执行

umount /var/local   #卸载mmcblk0p3
dd if=/dev/zero of=/dev/mmcblk0p3 bs=4K
#反馈如下
   dd: writing '/dev/mmcblk0p3': No space left on device
   8193+0 records in
   8192+0 records out
   33554432 bytes (32.0MB) copied, 0.180696 seconds, 177.1MB/s
dd if=/mnt/us/mmcblk0p2-kt-5.0.0.img of=/dev/mmcbl
#反馈如下
   k0p2 bs=4K
   16384+0 records in
   16384+0 records out
   67108864 bytes (64.0MB) copied, 12.959580 seconds, 4.9MB/s

然后再执行步骤8,我的Kindle Touch就是这样恢复正常的。这时变砖之前的书都还在,但自定义的字体、屏保什么的都没了。

 

补充:
这样恢复的KT其固件版本是5.0.0,可以从参考文章2提供的链接,或者到Kindle官网下载最新的固件版本5.1.0。

另,按照官网的说法,固件5.1.0之前的Kindle Touch必须先升级到5.1.0然后才能升级更高的版本(目前最新5.3.2)。考虑到我准备安装的多看系统目前只支持最新5.1.2的Kindle Touch,所以恢复后我就只升级到5.1.0为止(因为找不到5.1.2单独的升级包),具体升级方法请见 Kindle官网

多看系统的安装方法请见 多看官网

 

最后上一张Kindle Touch和Paperwhite的合影。 :)
KT&KPW

 
 

参考文章
1. http://sping.in/2012/04/14/kindle-touch-debricking-complete-guide/
2. http://qing.weibo.com/tj/537c3e8b330021kw.html
 

分类: Linux, Windows 标签: , , ,
  1. 2013年12月3日11:29 | #1

    楼主,你会按XP修kt变砖吗?

  2. LTNS
    2013年12月3日11:51 | #2

    @have
    没试过,按理XP系统也能用同样的步骤

  3. findslowly
    2014年2月22日11:14 | #3

    楼主你好!我在输入第一条fastboot的命令后,cmd里面就显示 就没反应了,你知道这是怎么回事么?

  4. findslowly
    2014年2月22日11:15 | #4

    是显示 waiting for device

  5. LTNS
    2014年2月22日12:12 | #5

    @findslowly
    感觉像你的Kindle Touch未进入fastboot模式,请重试一下步骤2和3。

    如果还是不行,请检查一下你的电脑操作系统是不是64位的,如不是就建议换个Win7 x64的电脑再试试。文中我也提到曾在Win7 x86环境下MfgTool无法识别出Kindle Touch的问题,当时还以为是个例。

  6. findslowly
    2014年2月22日12:27 | #6

    @LTNS
    恩,我的电脑的确不是64位的,我换换试试,多谢!

  7. LTNS
    2014年2月22日12:42 | #7

    @have @findslowly
    从这个帖子看也有在xp环境下修复的,xp一般情形下多是32位的版本,难道只是win7 x86的问题?
    http://bbs.xiaomi.cn/thread-8159528-1-1.html

  8. nick
    2015年11月4日13:16 | #8

    请问我的fastboot运行时提示 0xc000007b错误,这是怎么回事?

  9. 你好
    2016年8月26日00:10 | #9

    参考2连接失效了,请楼主再发一个吧

  10. 你好
    2016年8月26日02:09 | #10

    楼主您好!我用的是win7 64位系统,也是停留在输入第一条fastboot的命令后,cmd里面就显示 就没反应了,显示 waiting for device。这是怎么回事啊?

  11. LTNS
    2016年8月29日08:30 | #11

    @你好

    修复工具我已上传
    http://pan.baidu.com/s/1nv72SZZ

  12. LTNS
    2016年8月29日08:34 | #12

    @你好

    可能是你的Kindle Touch未进入fastboot模式

  13. Gotop
    2017年4月8日17:58 | #13

    @nick

    win7 64位使用你提供的工具,在执行fastboot命令的时候提示0xc000007b错误

    使用自己下载的64位的fastboot,提示 waiting for device

    这是怎么回事啊?

  1. 本文目前尚无任何 trackbacks 和 pingbacks.
20 / 5 = (必填)