Kindle 7th 拆机硬件调试串口越狱教程

旧的 Kindle 7th(KT2)已经被我拆机过一次来练手,正面外条没有贴回去,因此成色也极差。后升级到最新系统(5.11.2)、登录美区亚马逊并准备越狱当备用机时,突然发现可以软越狱的系统版本早已停到了 5.8 年代——情有可原,毕竟这已经是一款有年代的 Kindle 了,关注维护它的开发者越来越少。细细研究发现理论上所有机子所有系统版本均支持拆机越狱,一不做二不休,过程便记录下来。这或许是中文互联网唯三的拆机越狱教程。

写在前面:

Quick tips:

  1. PW3 with 5.12.1、KT3 with 5.11.2、KV with 5.9 都被笔者或者小伙伴证实可以硬件越狱,起码目前没有反馈失败的例子。目前最新的 5.12.1 版本依旧可以越狱。
  2. 一定要注意不同机型 RX、TX 触点的顺序可能不同,假如终端没有收到信息可以试一下交换连接线。
  3. 一定要在下文给出的链接中下载最新的越狱用文件,再不济也要验证一下文件哈希值。因为修补类更新,文件名可能不会变化,但是更新日期和哈希值会变,单独看文件名无法知道是否有最新的越狱文件,而旧的文件可能会出一些问题。
  4. 最新的 5.12 系统版本会 “激进” 地进行 OTA 更新,如果要避免被更新,建议断网使用。

什么时候才需要拆机越狱?

当你手中的 Kindle 系统版本新于支持越狱的版本时。
——由于 Kindle 越狱一直是由民间爱好者钻研攻克的,而越新发售的 Kindle 相较于旧机型更被人所关注,因此往往旧机型可供越狱的系统版本较低。又因为 Kindle 不支持降级更新,因此当手误更新到较新版本、又需要越狱带来的便利时,只能拆机越狱了。请注意,理论上而言,拆机越狱适用于任何系统版本(5.12 版本较难控制 OTA 更新,建议越狱后断网使用)。

拆机越狱和非拆机越狱的最终效果会不同么?会对硬件造成伤害么?

完全相同。取决于你的手艺。
——拆机越狱的原理是通过串口调试接口来绕过系统的限制,直接刷写越狱相关的文件;而非拆机越狱则是通过发现的系统漏洞,来刷写文件。
刷机越狱仅需接触到主板两个空焊点,无论是采用电烙铁或者胶带,理论上都可以完美还原,但这对操作人的手艺是有要求的。


本文基于混沌小鳄鱼的 KPW3 教程发呆蛋糕的 KPW3 教程以及 grant2 的 KPW2 教程以及作者自身尝试写成~

No.1 拆前准备工作

购买或下载:

  • USB to TTL 转换器(推荐 1.8V,3.3V 也可)及杜邦线 3 根或以上-> 华强北¥5
  • Kindle 数据线
  • 拆解套装(螺丝刀套装及撬棒,卡片等)-> 淘宝南旗 24 合 1+附赠工具¥113
  • 尖端电烙铁(35W 上下)-> 笔者不会用就没有买
  • 胶带剪刀若干
  • SecureCRT(推荐 8.5.4 或更新)->30 天试用,安装时可自定义仅安装 Serial 功能
  • K5 JailBreak
  • K5 JailBreak Hotfix
  • MR Package Installer
  • KUAL(以上 4 项于 mobileread.com 论坛下载,机型为 Kindle 5(Touch/PW1/PW2/KT2/KV/PW3/KOA/KT3/KOA2/PW4/KT4 及其他)

查看 Kindle 序列号(仅由数字及大写英文字母组成)并在sven.de/kindle处填写计算出可能的 root 密码并全部保存记录下来。(这个是天坑,不要用其他教程的 python 算法,因为部分机器是 mario 这个固定密码,并不是通过 S/N 码计算出来的……笔者吃了这个亏,研究了半个小时。)


(修改 root 密码的 Plan B 第一步,未经实验)将以下文本转存名为 cp.sh 的文件。请注意必须使用*nix 行尾符而不是 Windows 行尾符(用 Notepad++)。

#!/bin/sh

# Disable passwd for 'root'
cp /etc/passwd /mnt/us/passwd-frm
sed "s/^root:[^:]*:/root::/" </mnt/us/passwd-frm >/mnt/us/passwd-to

mntroot rw
cp /mnt/us/passwd-to /etc/passwd
mntroot ro

之后将文件复制到 Kindle “根” 目录备用。

No.2 拆机进行时

请在 iFixit 网站查看不同 Kindle 拆机教程。以下以题设为演示。

首先用撬棒翘起移除正面外条(略)并拧去暴露出来的 T5 螺丝,最终拆卸后盖。注意,后盖和前板间有卡扣固定,请借巧力。

主板右下方写有 SERIAL DEBUG 的区域为串口调试区域,即为我们今天的重头戏。

主板上白色方框标识处的上方有三个空焊点。左、中两个较饱满的空焊点为 TX、RX 中的某一个。笔者的 Kindle 7th 分别为 TX、RX,好像 Kindle Paperwhite 3 分别为 RX、TX。

根据
主板 RX<-> 转换器 TXD
主板 TX<-> 转换器 RXD
主板 GND<-> 转换器 GND(接地用,可以接在主板上面的大螺丝口或者芯片表面)
的原则,将转换器和主板通过一端杜邦线母口、一端裸露导线焊接或黏贴到主板对应空焊点处。之后请将 Kindle 数据线插入 Kindle,但暂时不连接到计算机,以备之后使用。最后将转换器插入计算机并安装驱动(Win10 可于硬件管理器自动搜索安装对应驱动并自行重启)。请注意,之后 Kindle 仍需触屏交互,因此一定要确保屏幕朝上时接触也良好。笔者由于技术不佳,耗时一个多小时才想到一个绝妙的方法来确保接触良好——上面放一本牛津高阶词典来施压,下面用橡皮和红外发射器形成一个突起顶到黏贴处,perfect!

蓝线接主板左 TX,黄线接主板中 RX,绿线接在随便一个芯片表面接地用
“绝妙” 的固定方法

特别强调,倘若转换器有 RXD、TXD 工作指示灯,在搭接过程中并不能以指示灯是否亮作为判断连接成功与否的依据。事实上,指示灯常亮说明 RXD、TXD 可能误接到了接地处,真正连接好时由于 Debug 口并没有数据交换,RXD、TXD 指示灯并不会亮,只有在后面重启开机时才会因为有数据交换而闪烁。

No.3 进入 diagnostics 启动模式

将 Kindle 与计算机通过转换器连接后,打开 SecureCRT,进入 Quick Connect 页面,选择正确的 COM 口并如下图设置

看到下图所示的这个小绿勾只能说明转换器正常工作。连接是否正常还要等接下来重启。

一切就绪后,在 Kindle 上进入设置-重新启动,重启 Kindle 并紧盯软件信息接受区域,看到 Hit any key to stop autoboot: 开头文字时(此时 Kindle 屏幕还处于没有进度条的大树图,还没有闪屏进入有进度条的大树图。假如 Kindle 已经有进度条了,而你仍然没有看到任何文本,恭喜你,接触不良/装反了),马上马上马上敲击计算机键盘任意键,确保下一行为uboot开头文字
倘若慢了错过了,只能等 Kindle 启动完后再重启。

uboot > 之后键入bootm 0xE41000然后回车,观察 Kindle 页面是否变成下图。若没有,再输入并回车一次。(笔者就遇到了这样的情况)
若出现,先点击 Kindle 屏幕上显示的 Exit(或者在终端输入 d

再点击 Reboot or Disable Diags(或者在终端输入 l

最后同理,Exit to login prompt(或者在终端输入 q),后等待。

No.4 以 root 账户登录

当 Kindle 出现下图(DIAGS EXIT, Please use serial port)时

并且终端显示如下图的登录页面时

输入 root 并回车
在接下来的 password: 行输入准备阶段算出的密码,输入一个完成后按下回车。若出现登录失败字样,重新输入 root 账户回车,再输入下一个算出的密码后回车,依次尝试。
注意:在你输入密码的时候,密码不会显示在屏幕上。如果 4 个密码均不正确,你可能是在准备阶段输错了序列号,你可以在终端搜索 S/N 字样并复制其后的序列号重新计算。

出现上图字样后,恭喜你登录成功~

No.5 编辑密码文件以去除 root 密码

(修改 root 密码的 Plan B 第二步,未经实验)在以 #开头的终端行依次输入以下命令,一次一行,一行一回车。

cd /mnt/us
sh cp.sh

运行完后,应该修改完成了,之后在 #之后输入 reboot 并回车,等待 Kindle 正常重启,进入正常页面,跳到本教程下一步即可。


(修改 root 密码的 Plan A)使用 Vi 软件以编辑文本文件,这需要一点点 Linux 使用经验。假如你不熟悉,不用怕!你只是需要一点勇气。

在以 #开头的终端行依次输入以下命令,一次一行,一行一回车。

mkdir /tmp/main
mount /dev/mmcblk0p1 /tmp/main
vi /tmp/main/etc/passwd

此时你的终端应该如上图所示,打开了这一个文本文件。第一行红色处有一个 x(也可能是!),我们需要做的就说把这个字符去掉,来让之后登录 root 账户时无需输入密码。

使用键盘上的方向键把光标移动到 x(也可能是!)之上,然后按下键盘上的 X 来去掉文件中的 x 字符。
注意:“delete” 按键在 Vi 中并不充当删除字符的功能。

现在终端应如上图所示。按下键盘上的 Esc 键,之后输入:wq 以保存并退出编辑。此时 root 账户已不受密码保护。

之后在 #之后输入 reboot 并回车,等待 Kindle 正常重启,进入正常页面。

No.6 Jailbreak now!

还记得 No.2 步骤让你事先插上的 Kindle 数据线么,现在把它连接到计算机。将预先下载好的 K5 JailBreak 压缩包内的 kindle-*.*-jailbreak.zip 内的内容解压缩到与 Documents 同级的 Kindle“根” 目录。现在 Kindle 内的文件应该大致如下图:

回到终端,按下回车键之后输入 root 并回车,直接登录。
如之前一样依次键入如下命令

cd /mnt/us
sh jb.sh

此时留心 Kindle 屏幕,Kindle 上下部会有**** JAILBREAK ****字样。

当终端输出稳定时,键入 reboot 并回车,让 Kindle 正常重启。之后如之前步骤将预先下载的 K5 JailBreak Hotfix 压缩包内的.bin 文件复制到 Kindle“根” 目录,在 Kindle 设置中 “更新”。重启后,大功告成!

No.7 最后收尾

去除美亚等特惠:仍然在终端登录 root 账户,后依次输入以下代码,最后等待重启。

rm /mnt/us/system/.assets/*
rm /mnt/us/system/.mrch/*
cd /var/local/
rm adunits/*
rm merchant/*
sqlite3 appreg.db "update properties set value='false' where handlerid='dcc' and name='adunit.viewable'"
sqlite3 appreg.db "update properties set value='false' where handlerid='dcc' and name='dtcp_pref_ShowBannerPref'"
sqlite3 appreg.db "update properties set value='false' where handlerid='dcc' and name='dtcp_pref_ShowRecsPref'"
sqlite3 appreg.db "update properties set value='false' where handlerid='dcc' and name='dtcp_pref_ShowScreensaverPref'"
reboot

现在你可以拔掉转换器以及 Debug 区的导线,复原 Kindle 了。

之后,去 bookfere.com 的这一篇文章来安装 MR Package Installer 和 KUAL,以及更多的插件。

《Kindle 7th 拆机硬件调试串口越狱教程》有43个想法

    1. 你好,你是在搭接 Debug 焊点之后重启的时候,没有在终端上进行任何操作的前提下,卡住的么?假如是这样的话,因为仅仅搭接焊点而没有发送命令给 Kindle,Kindle 的系统并没有任何更改,可能是硬件出了问题😂,建议你长按电源键强行重启看一下。
      btw,重启过程中,终端有收到 Kindle 传来的信息么?

  1. 请问我安装了国际象棋但在 kual 里打开时直接退出,没反应是怎么回事,有些其他插件也是这样

    1. 这个插件我也没有研究过,我只装了 koreader。我建议你去 bookfere 评论一下。XD

  2. 你好,我的 CRT 里没有文本(代码)怎么办? kpw3
    接线试了好几次,重启好其次,都没代码

    1. 1. 检查接线:KPW3 好像从左到右为 RX、TX(实在不行调换一下顺序)。假如你不是焊接的话,建议你用手按着接线地方来重启,整个重启过程都会有输出的。
      2. 重启的时候要在设置菜单中点重启,好像不可以长按电源键重启。
      祝你成功 XD

  3. 你好,我已经去了 “x”,接下来说按 Esc 键,我按了没反应,之后输了 “;wp” 请问,哪里有 #,我该怎么办?

    1. 不要紧张,我当时这里也是遇到了和你差不多的情况。
      你在输入 ;wq 的时候有注意到终端下方有反显 ;wq 么,假如有的话并且你按下了回车的话,就已经修改好了,你之后可以按实体按键重启,我当时就是直接重启的。假如没有注意到的话,你也可以重启看看。
      当然,我不承担任何后果😅

          1. sos
            又有问题了!!!!!
            为什么回车输入 root,无法直接登录?? 还要 password?
            怎么判断 我之前的操作是否成功??

          2. 那你就再走一次修改 root 密码的流程看一下文件修改成功了没有😅

          3. 你可以查一下 vi 命令,因为这个就是在终端用 vi 修改文本,我当时也胆战心惊的…

          4. 哈哈,这次真的好了,越狱成功,谢谢了!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

  4. 大神,没工具也不会焊,已经拆好了,想问下你你是怎么粘上去的,那么小一个点,有什么技巧吗?

    1. 我是先用胶带把无关触点先贴上防止误触,然后先用一块胶带贴一个点,再另一块胶带贴另一个点。
      这样子弄好之后,接触基本是不良的,要么你一直用手按着,要么就像我拿重物压着。

  5. No.5 编辑密码文件以去除 root 密码

    使用 Vi 软件以编辑文本文件
    这一段我不懂,群主方便教教我

    1. 登录 root 账户成功账户成功后,依次输入三行命令以用 vi 打开密码文件并自动进入了编辑模式,此时界面显示的就是一个文本文件的内容,我们的目的就是修改它。
      之后用方向键移动光标到 x 上,按下键盘 X 字母键,此时删掉了文件中的 x 字符。
      之后按下 Esc 键以退出编辑模式进入命令模式,此时终端下面应该会有一行闪烁的光标,键入:wq 并回车来保存并退出编辑器。
      之后重启就可以了。
      假如有困惑可以查一下 vi 程序的用法😜

    1. 我稍微在 Google 上查了一下,好像目前降级方法就只有书伴提到的特制固件降级,应该不能针对越狱后的机子任意降级。

  6. kpw3,5.12.1,到拷七个文件进 kindle 这一步后,一弹出 kindle 后,bin 文件就被删除,所以估计 jb.sh 不会成功,虽然会出来 jailbreak 字样。到后面;log mrpi 也没反应,不知道怎么弄才行。一弹出就删除 bin,长按重启也不行。

    1. 是 “预先下载的 K5 JailBreak Hotfix 压缩包内的.bin 文件” 这个 .bin 文件拷贝到根目录后,会自动消失么,这个没有理由啊。
      不过假如是之后 MRPI 的安装,.bin 不是拷贝到根目录,而是拷贝到 Kindle 根目录下的 mrpackages 文件夹。

      1. kindle kpw2 及之后出的 kpw3、ko、kv,5.11 之后的版本都是,任何 bin 文件,弹出 kindle 就自动删除,根本不让你更新。不知道 kindle 7 是不是不是这样的?kindle8 和 kindle10 也不知道。

      2. 弹出 kindle 自动删除 bin 后,在 secureCRT 里拷进去,再 jb.sh,还是没用。是不是 jailbreak 文件不能用在 kpw3 上?

        1. 你好,这个应该是 5.12 系统的问题,我上午帮你查了一会的资料还没有找到解决方案,我下午、明天再帮你查一下,争取找到方法。
          你也可以以 kindle 5.12 hotfix site:mobileread.com 的关键词在 Google 搜一下,我能找到的最新是 5.11 的问题,而针对 5.11 作者 7 月推了最新 hotfix 包解决了,但是我还没有找到针对 5.12 的解决方法。

          1. 搞定了,果然是换了 hotfix 的文件,就不被删除了,可以更新然后就好了。
            谢谢!

          2. 请问成功的是哪一个 hotfix 啊,我找到的最新的是 2019-Jul-31 00:29:12 这个时间的。
            是最开始不是用最新 hotfix 刷的,还是现在找到了魔改版本的?谢谢

        2. btw,我理解你的问题是,jb.sh 运行之后显示了 JAILBRRAK 字样,但是之后无法更新刷入 hotfix 的 bin 文件,对么

          1. 好,那我这两天查一下资料,有最新消息会回复你的😄

          2. 运行 jb.sh 后 kindle 没有重启,也有可能这七个文件里的 update_jb 这个 bin 文件没起到作用吧?因为这个不起作用,所以 hotfix 也不给更新。

          3. 运行 jb.sh 后 kindle 是不会自行重启的,显示出 JAILBREAK 之后要手动重启一下,之后再刷 hotfix 的 bin 文件看一下?

          4. 是最新的 hotfix 修复了 5.11 的问题,没有专门的 5.11 的 hotfix。准备工作的 mobileread 链接去的网页,里面的 hotfix 就是最新的支持 5.11 的版本。

          5. 7 月 16 日 NiLuJe 回复说 Jury’s still out on 5.12.x until I get some logs, but it appears to be more evil at a glance. 这个问题可能暂时没有法子,只能等 hotfix 更新了😂

          6. 你 jb.sh 之后,Kindle 里面有生成 mkk 文件夹么?
            你是尝试过忽略安装 hotfix,直接装 KUAL,但是失败了是么。(假如没有,麻烦试一下)
            因为我在书伴评论看到有越狱后的 PW3 在升级到 5.12 之后刷 hotfix,恢复越狱状态的。

  7. 就是你文件里的链接。我之前下载过和你链接一样文件名的。就没下载,后来重新下载发现你的链接的文件 hotfix,132k,我原来同样文件名的只有 128k。

发表评论

电子邮件地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据