A few disclaimers!
- This thread is very much a work in progress, I'm just documenting things (and asking questions to the more experienced members). I wouldn't recommend anyone attempting what I'm doing.
- You will probably brick your Kindle a lot. I know I bricked mine a few times last night messing around with different things. Make backups. You'll be thanking yourself when you need it. I just used knc1's script (https://www.mobileread.com/forums/sh...d.php?t=289690) to back everything up twice and checking the md5 to make sure they're good. As for the user partition I just used dd to back it up just in case..
- According to katadelos, the PW2 (and by extension, KT2) will run 5.14.1 just fine as long as you're using the old UI (https://www.mobileread.com/forums/sh...3&postcount=12), the memory exhaustion only becomes a problem when you're trying to run the React Native (new) UI. That said it isn't impossible to make it run at least on the KT2. (https://www.reddit.com/r/kindle/comm...newest_update/)
- The Paperwhite 2's partition layout is different to the other imx6_wario devices, All of them (KT2, KV, PW3) has mmcblk0p1 the size of ~440MiB, except the Paperwhite 2, which is ~350MiB. (This is where I'm stumped on..)
With all that out of the way, let's get to the main meat and potato.
The actual thread.
Last week, I decided to buy an FT232RL adapter, and a 1.8v regulator since I had some left over eBay points I got from selling things. It arrived, is all and well, so I soldered 3v3 to the right leg, GND to the left, and then the middle leg to VCC of the board. Then RXD to RX of the Paperwhite 2, TXD to TX, and GND to a shield, you know the drill.
![]()
(Not my finest soldering job, but it'll hold.)
From there, I plugged it in to my screw-around-and-find-out laptop(s) and thankfully it didn't blow up in my face. Red power light and both the green LEDs were lit up so I fired up Tera Term, set baud to 115200, then rebooted my Kindle, got to uboot, sent "bootm 0xE41000" and... it did not boot into DIAGS. it would just kernel panic.
Hmm, well that's not good, is that why I couldn't install the rescue pack before? It did say something about not being able to change password but I'm not entirely sure.
It was at this point I decided to look through katadelos' threads and posts, and turns out he did have his own snapshot thread, with a DIAGS partition for the PW2.
I grabbed that, then knc1's backup script, ran it once, copied files to pc, ran it again, copied files, compared MD5, it was all good. Now to try and flash katadelos' DIAGS partition.
I used TobiasWooldridge's fork of yifanlu's fastboot-kindle (https://github.com/TobiasWooldridge/Fastboot-Kindle) since the Makefile included there supported Linux, which certainly helped a linux beginner like me and avoid having to reboot to my macOS partition on my main pc/hackintosh. Then flashed diags image to well, diags. Rebooted it, interrupted and gave it the diags boot command again. This time it actually booted into diags properly!
From there, I checked that everything was working properly and that my battery was above 80%. Now to drop into the login prompt.
"Login incorrect"
Well. that's bad. I checked the password using kindletool's info, and used my serial number, but the password just wasn't correct. I thought "Maybe it's because I'm using katadelos' DIAGS instead of mine, and thus the password would match a serial of his. But how am I supposed to know his PW2's serial number?", then I googled and scoured through the forum, seeing if there is a way to somehow crack the root password. Then I found that on some Kindles there's an account called "framework" with the password "mario", and thankfully, this DIAGS partition did have it.
I looked through /etc/, and found that I can expose the contents inside of both passwd and shadow using cat. And from there I found out that you can use a tool called John the Ripper to decipher the password for me. I also stumbled upon a filelist for all the possible fiona password combinations (https://www.mobileread.com/forums/sh...d.php?t=160490) which was helpful. I grabbed the contents inside both passwd and shadow, combined them with unshadow, then used John to crack the code. It was indeed another password that's different from my serial number. And from there I was finally able to log into the system as root in DIAGS.
![]()
I've never been more happy to see that notice. Now, NOW I can finally try the sacred, PW3's rootfs. I followed the "How to boot 5.14.1 on KV" thread (https://www.mobileread.com/forums/sh...d.php?t=343385) and obviously, I didn't think to check the partition layout first.
I followed it right up to DDing the image, I did that thing until I noticed DD was saying it ran out of space. Panicking, I decided to check "fdisk -l" and then reality hit me in the face. Obviously it's never gonna be that easy for me. my mmcblk0p1 is only 350M in size, while the rootfs image of PW3's 5.14.1 is 440M. Just to check my sanity, I downloaded the update image for the KT2 and KV to check what size it has, and it was also 440M. At this point, my kindle was "bricked", but thankfully I was able to restore my mainsys.bin using DD and have it booted up all fine and dandy again.
So now, I'm currently very stumped on what to do next. If I want to continue, I'll probably have to repartition the eMMC, increasing the size of mmcblk0p1 to 440M, and shift all the other partitions (and reducing the size of mmcblk0p4) accordingly. I don't know how I should go about it though.
My current idea is to delete all the partitions except p1 using fdisk in main mode, recreate them again but with the space increase needed for p1 accounted for, reflash p2 with the diags, p3 with local, but I don't know yet what to do with p4 since I would need it to transfer files using USBMS.
Skipping the last part, assuming it'll all work properly, I boot into diags, extend the p1 partition, make sure it still boots up and everything, then try and flash 5.14.1 and see how things go. From this part I would need help from people with more experience doing Linux stuff (and Kindle Linux stuff) than me. Feel free to post down your thoughts and help (and prayers :rofl:) in this thread, I'll respond to them when I can.
Also, thanks to all the amazing members of this community for making modding the Kindles possible. I'm looking forward to do more with it and hopefully also grow a collection of the hardware.
Hopefully my wall of text didn't disorient anyone, if I did, oops, sorry. I'm still not really used to BB Code formatting.
- This thread is very much a work in progress, I'm just documenting things (and asking questions to the more experienced members). I wouldn't recommend anyone attempting what I'm doing.
- You will probably brick your Kindle a lot. I know I bricked mine a few times last night messing around with different things. Make backups. You'll be thanking yourself when you need it. I just used knc1's script (https://www.mobileread.com/forums/sh...d.php?t=289690) to back everything up twice and checking the md5 to make sure they're good. As for the user partition I just used dd to back it up just in case..
- According to katadelos, the PW2 (and by extension, KT2) will run 5.14.1 just fine as long as you're using the old UI (https://www.mobileread.com/forums/sh...3&postcount=12), the memory exhaustion only becomes a problem when you're trying to run the React Native (new) UI. That said it isn't impossible to make it run at least on the KT2. (https://www.reddit.com/r/kindle/comm...newest_update/)
- The Paperwhite 2's partition layout is different to the other imx6_wario devices, All of them (KT2, KV, PW3) has mmcblk0p1 the size of ~440MiB, except the Paperwhite 2, which is ~350MiB. (This is where I'm stumped on..)
With all that out of the way, let's get to the main meat and potato.
The actual thread.
Last week, I decided to buy an FT232RL adapter, and a 1.8v regulator since I had some left over eBay points I got from selling things. It arrived, is all and well, so I soldered 3v3 to the right leg, GND to the left, and then the middle leg to VCC of the board. Then RXD to RX of the Paperwhite 2, TXD to TX, and GND to a shield, you know the drill.

(Not my finest soldering job, but it'll hold.)
From there, I plugged it in to my screw-around-and-find-out laptop(s) and thankfully it didn't blow up in my face. Red power light and both the green LEDs were lit up so I fired up Tera Term, set baud to 115200, then rebooted my Kindle, got to uboot, sent "bootm 0xE41000" and... it did not boot into DIAGS. it would just kernel panic.
Hmm, well that's not good, is that why I couldn't install the rescue pack before? It did say something about not being able to change password but I'm not entirely sure.
It was at this point I decided to look through katadelos' threads and posts, and turns out he did have his own snapshot thread, with a DIAGS partition for the PW2.
I grabbed that, then knc1's backup script, ran it once, copied files to pc, ran it again, copied files, compared MD5, it was all good. Now to try and flash katadelos' DIAGS partition.
I used TobiasWooldridge's fork of yifanlu's fastboot-kindle (https://github.com/TobiasWooldridge/Fastboot-Kindle) since the Makefile included there supported Linux, which certainly helped a linux beginner like me and avoid having to reboot to my macOS partition on my main pc/hackintosh. Then flashed diags image to well, diags. Rebooted it, interrupted and gave it the diags boot command again. This time it actually booted into diags properly!
From there, I checked that everything was working properly and that my battery was above 80%. Now to drop into the login prompt.
"Login incorrect"
Well. that's bad. I checked the password using kindletool's info, and used my serial number, but the password just wasn't correct. I thought "Maybe it's because I'm using katadelos' DIAGS instead of mine, and thus the password would match a serial of his. But how am I supposed to know his PW2's serial number?", then I googled and scoured through the forum, seeing if there is a way to somehow crack the root password. Then I found that on some Kindles there's an account called "framework" with the password "mario", and thankfully, this DIAGS partition did have it.
I looked through /etc/, and found that I can expose the contents inside of both passwd and shadow using cat. And from there I found out that you can use a tool called John the Ripper to decipher the password for me. I also stumbled upon a filelist for all the possible fiona password combinations (https://www.mobileread.com/forums/sh...d.php?t=160490) which was helpful. I grabbed the contents inside both passwd and shadow, combined them with unshadow, then used John to crack the code. It was indeed another password that's different from my serial number. And from there I was finally able to log into the system as root in DIAGS.

I've never been more happy to see that notice. Now, NOW I can finally try the sacred, PW3's rootfs. I followed the "How to boot 5.14.1 on KV" thread (https://www.mobileread.com/forums/sh...d.php?t=343385) and obviously, I didn't think to check the partition layout first.
I followed it right up to DDing the image, I did that thing until I noticed DD was saying it ran out of space. Panicking, I decided to check "fdisk -l" and then reality hit me in the face. Obviously it's never gonna be that easy for me. my mmcblk0p1 is only 350M in size, while the rootfs image of PW3's 5.14.1 is 440M. Just to check my sanity, I downloaded the update image for the KT2 and KV to check what size it has, and it was also 440M. At this point, my kindle was "bricked", but thankfully I was able to restore my mainsys.bin using DD and have it booted up all fine and dandy again.
So now, I'm currently very stumped on what to do next. If I want to continue, I'll probably have to repartition the eMMC, increasing the size of mmcblk0p1 to 440M, and shift all the other partitions (and reducing the size of mmcblk0p4) accordingly. I don't know how I should go about it though.
My current idea is to delete all the partitions except p1 using fdisk in main mode, recreate them again but with the space increase needed for p1 accounted for, reflash p2 with the diags, p3 with local, but I don't know yet what to do with p4 since I would need it to transfer files using USBMS.
Skipping the last part, assuming it'll all work properly, I boot into diags, extend the p1 partition, make sure it still boots up and everything, then try and flash 5.14.1 and see how things go. From this part I would need help from people with more experience doing Linux stuff (and Kindle Linux stuff) than me. Feel free to post down your thoughts and help (and prayers :rofl:) in this thread, I'll respond to them when I can.
Also, thanks to all the amazing members of this community for making modding the Kindles possible. I'm looking forward to do more with it and hopefully also grow a collection of the hardware.
Hopefully my wall of text didn't disorient anyone, if I did, oops, sorry. I'm still not really used to BB Code formatting.