UPDATE: Serge A. Levin has updated my jailbreak to remove the need for the precise timing, so it's no longer "temporary". If you are already jailbroken, you don't need to do anything, but if the old 3.2.1 jailbreak doesn't work or you can't get the timing right, try the new version: http://yifan.lu/2011/09/01/kindle-3-...lbreak-update/

I never planned to release a 3.2.1 jailbreak, but I see more and more people asking for it and I heard that Amazon ships 3.2.1 on non-ad kindles now. I'm not ready to release the planned jailbreak as Amazon is slowly closing all the holes so we don't need to play our best hand yet, so here's a "temporary" solution until I release the next jailbreak at the next major Kindle update.

The reason why I call it a temporary jailbreak is because it requires some precise timing. You need to run the update IMMEDIATELY after restarting in order for it to work. I've included some very detailed directions in the readme, but it may still take a few tries (which is bothersome because each try requires another restart).

I only tested it on a Kindle 2 running 3.2.1, so I may not have coded the timings right, therefore if it doesn't work in 3 or so tries, stop and tell me.

Just registered so that I could say good work. I DO have an ad-supported Kindle, but I intend to keep them as I've agreed. I just also want the tweaks and fonts and such that jailbreaking allows. Thanks again.

Yifanlu, I am so impressed by your cunningness in dissecting and hijacking the Kindle. And that you do it - as in this case - not for your own need but for the sport and for helping others. I am a bit worried though that you publish and explain the loopholes you exploited since it makes it easier for the Kindle developers to close them. Saying that, I wonder why they bother since I really don´t see the harm for Amazon in letting the Kindle be an open system. It is a great e-reader that becomes even more useful and popular by the hacks and improvements developed by the end users. Only when it comes to circumventing the ads on the ad-supported Kindle or misuse the free 3G service, I can understand that Amazon have their objections. I therefore hail the attitude of jjfs85: "I DO have an ad-supported Kindle, but I intend to keep them as I've agreed." A sign of high moral standards and trustworthiness.

I am a bit worried though that you publish and explain the loopholes you exploited since it makes it easier for the Kindle developers to close them.

@yifanlu: I remain thankful that you do. Though it puts hacking at a disadvantage, security by obscurity rarely works. Moreover, the learning is much rewarding, perhaps more so than the end result. For the sad day when Amazon succeeds in definitely locking the Kindle I will have been able to say So Long, and Thanks for All the Fish

Thanks so much yifanlu! I just snagged this and installed it a minute ago. I figured I'd share a little trick for fellow Mac users to make the timing easier. Instead of dragging the update file to your device, you can use terminal to copy the file and eject the kindle in one go. First, with the Kindle attached to your computer in USB mode, open a Terminal window and type "mount" (without quotes) and hit return. This will give you a list of all the disks mounted in your system, one of which should be /Volumes/Kindle. There should be a line like this:

the /dev/disk4s1 part is what we're after. Now type "cp " (note the space) and drag the update file for your device into the terminal window. This will copy its filename into the window. Then, without pressing return, type " /Volumes/Kindle && diskutil eject /dev/disk4s1" (but be sure to use the disk you found earlier with the mount command).

Don't press return yet, just leave that window open and eject your kindle and unplug it. Restart it and plug in the USB cable while it's restarting. Click on the terminal window to make it active, but leave a finder window open so you can see the sidebar, or make sure you can see the desktop. As soon as the Kindle drive icon appears, hit return. The kindle's screen should immediately go blank, and you can immediately press menu. When the screen refreshes, the menu should be showing and you can go into settings, press menu again and update the kindle.

That's probably needlessly complicated, but using it I was able to successfully apply the hack while holding a baby in one hand

Also, I'm not sure if this made a difference, but I had a lot of books and lots of collections, so I made a backup of my documents folder and my collections.json and then deleted them from the device. I think that it failed the first couple of times because scanning the collections was spawning a bunch of new processes and the pid of the update process was outside the range allowed in the jailbreak. Anyway, once I deleted my stuff and used the terminal trick, it worked great.

Yifanlu, I am so impressed by your cunningness in dissecting and hijacking the Kindle. And that you do it - as in this case - not for your own need but for the sport and for helping others. I am a bit worried though that you publish and explain the loopholes you exploited since it makes it easier for the Kindle developers to close them. Saying that, I wonder why they bother since I really don´t see the harm for Amazon in letting the Kindle be an open system. It is a great e-reader that becomes even more useful and popular by the hacks and improvements developed by the end users. Only when it comes to circumventing the ads on the ad-supported Kindle or misuse the free 3G service, I can understand that Amazon have their objections. I therefore hail the attitude of jjfs85: "I DO have an ad-supported Kindle, but I intend to keep them as I've agreed." A sign of high moral standards and trustworthiness.

I believe all information should be open. I give out these information so others (not just amazon) can see some of the flaws in their systems and fix them. And even if I don't say how it works, it's very simple to extract the package and see how it works. I'm just saving them a couple of minutes.

...
Don't press return yet, just leave that window open and eject your kindle and unplug it. Restart it and plug in the USB cable while it's restarting. Click on the terminal window to make it active, but leave a finder window open so you can see the sidebar, or make sure you can see the desktop. As soon as the Kindle drive icon appears, hit return. The kindle's screen should immediately go blank, and you can immediately press menu. When the screen refreshes, the menu should be showing and you can go into settings, press menu again and update the kindle.

For those of you trying to change the "special offer" ad screensavers, this jailbreak does not allow you to do that. It lets you run the old jailbreak, and the screensaver hack will have no effect on the special offer screensavers.

For those of you trying to change the "special offer" ad screensavers, this jailbreak does not allow you to do that. It lets you run the old jailbreak, and the screensaver hack will have no effect on the special offer screensavers.

Oh ok... maybe Yifanlu can collaborate with the Duokan team to make a new one

I desperately need to get rid of the ads as i didn't want this one and was accidently given one. I'm halfway across the world now with no way to exchange it. I would willingly pay to upgrade and remove the ads as they are totally useless for me.