Kindle Hacking: It's a "lovely little Linux box"


I took this photo of a Kindle 2 hacked by Jesse Vincent at Foo Camp this past weekend. Apparently, aside from being a popular e-book reader, the Kindle is like Lego for Linux geeks. Here's Jesse's description of what we're looking at:

What you see there is a Kindle 2 with the Ubuntu 9.04 port to ARM running in a chrooted environment. On the screen you see xdaliclock in front of an xterm with the remains of a "top" command and a few mildly embarrassing typos.

To open up the Kindle, I used the USB networking debug mode Amazon left hanging around when they first shipped the Kindle 2, a statically linked telnetd and a cross-compiler to bootstrap myself. From there, I built a daemon that can convert DRM-free PDFs and ePubs into something Amazon's reader on the Kindle can deal with.

After that, I started to get curious about what else might be possible. It only took a few evenings to get a moderately usable Ubuntu environment running.

Mostly, the Kindle is a lovely little Linux box. Getting X working took a bit of hacking, but everything else "just works" with very little configuration.

Got that? Okay.

Published by Lisa Katayama

I'm a contributing editor here at Boing Boing. I also have a blog (TokyoMango), a book (Urawaza), and I freelance for Wired, Make, the NY Times Magazine, PRI's Studio360, etc. I'm @tokyomango on Twitter.

Join the Conversation


  1. that’s pretty sweet. Do you know if there is a way to lockdown the applications so that a user can only use it as an internet device and not toggle to any other apps??

  2. I’d love to see a video of this in action… I’m trying to wrap my head around what scrolling text looks like on an eink display… Does it blank the screen (black, then white) for each line it displays? I imagine scrolling through a long directory listing would induce seizures and take several minutes.

  3. This is quite impressive.
    Do you plan on publishing detailed instructions?

    While I don’t have access to a Kindle myself (not available in my part of the world), it would still be very interesting.

  4. @KEVIN It’s just software, but I haven’t seen any special support for such a thing.

    @ANONYMOUS (#3) There’s a video of xdaliclock linked from my blog.

    @DAVID PITKIN “Yes, but don’t do that.”

    @SECRET_LIFE_OF_PLANTS *blush* This really has nothing to do with being smart or not…just with being too bloody-minded to have the common sense to walk away. Like most cool hacks, I stood on the shoulders of giants. In this case, did the really hard bit (unlocked the kindle update format) long before I or the Kindle 2 came on the scene.


  5. Now of course, the real question is what’s it like when you load up gsnes9x? Now THAT will really induce seizures.

  6. I’d be interested to see if it’d run Perl/PHP and control things onboard my trailer via the 1-wire file system. By any chance is there a GPS in it, and at least one serial port?

    (A GPS would likely consume one port, the OWFS, the other)


  7. Android is Linux too and already runs on ARM-11 phones. Seeing that on the Kindle 2 or the DX might get me to buy one.

  8. A few questions:

    – I understand that Kindle’s screen is some sort of special power-saving stays in a state until changed device. Does running X damage the display (ie, lifespan)?

    – You said that the 3g still works but that you souldn’t use it. Could you extrapolate? Should we not use it at all, or just not use it on anything other than Wikipedia, or just mind bandwidth so Amazon doesn’t cut us off.

    – In your OSCON talk, you mention that your running in a chrootable environment and that the original environment sends stuff back to Amazon. Have you stopped this? If you did, do you think that they’d kill the 3g? Have you though of overwriting the original environment?

    – Have you heard from Amazon?

  9. If you start to screw around 3g and not pay for it, you will screw it for everyone, Amazon will soooooo put the screw to the whole hackathon.

Leave a comment

Your email address will not be published. Required fields are marked *