Custom Screensaver On The Non-touch Kindle 4

[Kubbur87] put together a guide to replacing the Non-touch Kindle 4 screensavers with your own images. We’ve already seen a way to remove the Special Offers banners from the newest version of Kindle Hardware, this hack lets you use your own 600×800 Portable Network Graphics (.png) file instead of the images pushed to the device by Amazon.

Frankly, we’re shocked at how easy this hack is. [Kubbur87] puts the device into developer mode, enables SSH, and then goes to work on the Linux shell within. It seems the only line of protection is the root password which he somehow acquired.

After the break you’ll find his videos which show how to enable developer mode and how to perform this hack. By putting a file named “ENABLE_DIAGS” with no extension on the device when it is recognized as a USB storage device you’ll gain access to the diagnostic menu system. From there it’s just a matter of cruising that menu to get SSH access. Like we said, you’ll need the root password, that that’s as easy as naming your favorite video game character from the 1980’s.

Getting into developer mode:

[youtube=http://www.youtube.com/watch?v=XZEhsCKgMHw&w=470]

Replacing the screensavers:

[youtube=http://www.youtube.com/watch?v=fG_pGDMsAYo&w=470]

98 thoughts on “Custom Screensaver On The Non-touch Kindle 4

  1. So amazon set the root password to “mario”??? That’s not even a long password. I would expect a bunch of random numbers and letters. I mean seriously that’s the most secure thing they could come up with?

    1. the administrator password for all of the computers, and the root password for all of the switches/routers on the network at my highschool was ‘wintergreen.’ and it’s not even a small school district; my graduating class was 900 students.

  2. Buy a Nook Touch.

    Cheaper, smaller, 4 page-turn buttons, appears as a USB storage device (where you can upload any books you want just by copying them there), and there’s even a nice “screensaver” image folder built-in.

      1. Nice work, but why does everything need to be a friggin youtube video now. root password + the folder the screensavers are in would save me nearly 5 minutes of incredibly slow typing and shit music

  3. You might want to note that this is only for non-special offers kindle from what I can tell. Spent 5 minutes doing this before I realized this wasn’t compatible with the other kindle hack.

    1. I realized that as well, but not until I had restarted my kindle several times over, constantly going into the filesystem of the kindle to figure out how to remove the “special offers”. Maybe next time.

    1. I had trouble removing ads and getting the screensaver to work on my Kindle 4 with Special Offers, but after some trial and error, the following has worked. I’ll report back if the ads come back:

      mntroot rw

      mkdir /mnt/us/screensaver

      mount /dev/mmcblk0p1 /mnt/base-mmc

      mv mnt/base-mmc/opt/amazon/screen_saver/600×800

      ln -sfn /mnt/us/screensaver /mnt/base-mmc/opt/amazon/screen_saver/600×800

      mnt/base-mmc/etc/init.d/framework stop
      mv /var/local/adunits /var/local/adunits.bkp
      touch /var/local/adunits
      mnt/base-mmc/etc/init.d/framework start

      Reply if it worked for you

      1. Hi, this method was successful. It seem to work even when I’m on line- no ads were downloaded.

        One thing bothers me- Before using this method I already had created “screen_saver” and had two pictures in it. After using Your method these pics were seen as screen savers. When I added some new pics to this folder, they didn’t show up as screen savers.
        What I did was repeating whole thing with your method, and now all the pictures that were in “screen_savers” are used as they should be :D

        Thanks for this great idea :D

  4. I used these:

    mntroot rw
    mkdir /mnt/us/screensaver
    mount /dev/mmcblk0p1 /mnt/base-mmc
    mv /mnt/base-mmc/opt/amazon/screen_saver/600×800 /mnt/base-mmc/opt/amazon/screen_saver/600×800.old
    ln -sfn /mnt/us/screensaver /mnt/base-mmc/opt/amazon/screen_saver/600×800

    But I get an error half way through. I’ve never used Linux before, so I don’t know what’s going on. =(

    login as: root
    root@192.168.15.244‘s password:
    #################################################
    # N O T I C E * N O T I C E * N O T I C E #
    #################################################
    Rootfs is mounted read-only. Invoke mntroot rw to
    switch back to a writable rootfs.
    #################################################
    [root@[192_168_15_244] root]# mntroot rw
    system: I mntroot:def:Making root filesystem writeable
    [root@[192_168_15_244] root]# mkdir /mnt/us/screensaver
    [root@[192_168_15_244] root]# mount /dev/mmcblk0p1 /mnt/base-mmc
    mount: /dev/mmcblk0p1 already mounted or /mnt/base-mmc busy
    mount: according to mtab, /dev/mmcblk0p1 is mounted on /cust

  5. Dear All,
    I can do it upto SSH and got root reply, but the password really tripped me a lot: it replied me “access denied” all the time after I input password. I got password “fionaldef” for my serial number “1331440003” from Putty, and the website mentioned above as well, but it seems it was wrong or something else I did not do it right?

    Thanks for advice.

    1. did you restart the kindle after putting the pictures on it ?
      restarting means going to the settings menu, pressing the alternative menu button and highlighting restart and pressing the middle way button

      1. I “restart” several time but in vain, the sreen still showed “blank” when Kindle slept or I pushed the power button.

        Let me make sure one thing I was doing right or wrong: after SSH and write in those commands shown in your video, I leave diagnostic mode and restart Kindle, then it showed a “screensaver” folder under Kindle, on my Windows screen. Then I drop in .PNG file into the folder, then I restart Kindle. Is the procedure right?

        Thank you for reply.

      2. >>did you restart the kindle after putting the pictures on it ?
        restarting means going to the settings menu, pressing the alternative menu button and highlighting restart and pressing the middle way button

        I “restart” several time but in vain, the sreen still showed “blank” when Kindle slept or I pushed the power button.

        Let me make sure one thing I was doing right or wrong: after SSH and write in those commands shown in your video, I leave diagnostic mode and restart Kindle, then it showed a “screensaver” folder under Kindle, on my Windows screen. Then I drop in .PNG file into the folder, then I restart Kindle. Is the procedure right?

        Thank you for reply.

        Yung Jung Chang

      3. verify the symbolic link in the console by typing
        “ls -l”
        without the quotas

        you should see a symbolic link to the screensaver folder in the root, if not, you have done something wrong

  6. I’ve had good success with the screensaver hack. However, I notice that now the screensavers don’t transition through the images. A new image only shows up after you take it out and put it back into screensaver mode. Is there any way to set a transition timer for it to go through the photos in the folder?

  7. So, this worked great, but now I’m in a bind. I have a small scratch on the surface, and I want to swap it out before the warranty is up. Is there a reverse to this? I thought the factory reset would work, but it didn’t. Now, instead of custom screensavers, I’ve got blank white?

    Any thoughts?

    Thanks.

    1. delete the screensaver folder and then
      go back to console and remove the 600×800 folder, then rename the 600×800.old to 600×800 and you should be fine
      command for remove a folder is rm -r “folder”
      command for rename is mv “/pathtofolder/folder.old” “/pathtofolder/folder”
      all this without quotas

      example:
      #mv /home/kubbur/sdb/backup /home/kubbur/sdb/backup.old
      ##this renames the folder backup to backup.old

      example:
      #rm -r /home/kubbur/sdb/backup

      this removes the folder backup and all its contents

      just remember to enable write access when u start the console with “mntroot rw”

      1. Thank you for responding. I tried doing this a couple times before giving up. I’m just now seeing that the reason I was having difficulties was because the backup folder was created wrong. In the pastebin.com raw data, the 4th step shows up as two lines, so it created a folder called /mnt/base-

        Thank you so much for your quick response and help.

      2. Tried this, but received this message in putty:

        mv: can’t rename ‘/mnt/base-mmc/opt/amazon/screen_saver/600×800.old’: No such file or directory

        I followed your original guide, so the folders should be as you’d listed?

        Any help would be appreciated.

  8. Thanks Kubbur, now I successfully hacked kindle 4 and I can put one picture into it and it showed on the screen when I turns the kindle off.

    But, however,screensaver can only show one pic and the name need to be 01N .png, even I rename the other pic as:
    02N2, 03n4, 04N, 05N”.”.”””

    Again, Thanks for helping so farm

  9. Hi Guys,
    First of all thanks for tips and advices. But i have some problems. I’m not good with these things.

    According to the video, after clicking on the right button in the enable usbnet section my kindle’s connection with my computer’s lost. Is it normal?

    Second problem, i really don’t know how to use PuTTY :S and that’s why i can’t connect that with my kindle. By the way do i have to change my ip address to kindle’s?

  10. FInally, I got through it.

    I deleted linked 600×800 folder and made another 600×800 folder, then I copied all the new .png files I want into this new folder, with the file name coding 01N, 02N2, 03N2, 04N, 05N……as original screensaver files.

    Then it worked!!

    Note it is really a SSH work, but that is not so difficult as I thought before.

    Thnak you all especially Kubbur’s great help!!

    1. An Update:
      Directly put 600×800 *.png file into the path as below, and no need to change file name,IT ALSO WORK!! every pic will be displayed.

      /mnt/base-mmc/opt/amazon/screen_saver/600×800

  11. If you have access to a *nix shell, whether that’s a Linux/BSD box, a Mac, or even an Android phone with local shell, here’s a script to find the password for a Kindle 4 Non-Touch. Just change the second line so that the value of $serno is your Kindle’s serial number.

    #!/bin/sh
    serno=LOLNOTTELLINGTHEINTERNET
    echo fiona$(echo $serno | md5sum | cut -b 8-11)

  12. WELL…I GOT A CHALLENGE FOR YOU UNLIKE ANY OTHER. I GOT A “STORE MODEL” KINDLE DX DEMO. AND IT ONLY PLAYS THE “DEMO SCREEN” OVER AND OVER AGAIN… HOW CAN I GET IT TO BE A REGULAR KINDLE DX AGAIN AND GET THE “DEMO MODE” OFF?? NOBODY…I MEAN NOBODY HAS BEEN ABLE TO FIGURE IT OUT. ARE YOU GOOD ENOUGH TO HELP ME WITH IT?? I WILL BE VERY HAPPY IF YOU CAN!

      1. ACTUALLY, IM SORRY, BUT MY CAPS BUTTON IS STUCK. EMBARRASSING, YES. DONT WORRY IM NOT TRYING TO BE RUDE WITH CAPS ALL THE TIME. I SHOULD BE GETTING MY NEW ON IN THE MAIL SOON. BUT THANK YOU FOR RESPONDING TO ME. I REALLY APRECIATE IT. BUT ANYWAYS, YEA, IS THERE SOME KIND OF ‘FORCE OVERIDDE” THAT YOU CAN LINK ME TO SO I CAN WIPE EVEN THE FIRMWARE THATS ON IT AND THEN RE INSTALL THE SOFTWARE?

  13. So I have done the hack and get my screen savers to come up when I hit the button. When I go to register with my account it replaces them with the ads and I can’t get them back (I am sure I can reset to factory defaults and do everything again if I need to).

    Is there a way to have custom screensavers and register to make buying books easy? or will I have to download purchased books to computer and then transfer them that way.

    Thanks!

  14. Any1 help me too? I can’t even get in diag mode… I edit the diag thing in the kindle root then go to settings and restart. then nothing happens. it just restarts as it should. the video doesn’t explain much. Am I doing it wrong?

  15. Bummer, I followed the instructions and get a white screen. I saw the answer to the other person who got the white screen, but I am new to putty and have no idea how to delete and replace lines of code. I am now stuck with a white screen kindle, or can restore back to the ads. I appreciate the instructions, but I wish it was correct straight from the beginning. I have a beautiful star trek screen I wanted to use.

  16. For Mac´s, you have to know which device to configure. In Terminal:

    MacBook-Air:~ aramos$ ifconfig
    lo0: flags=8049 mtu 16384
    inet 127.0.0.1 netmask 0xff000000
    inet6 ::1 prefixlen 128
    inet6 fe80::1%lo0 prefixlen 64 scopeid 0x1
    gif0: flags=8010 mtu 1280
    stf0: flags=0 mtu 1280
    en0: flags=8863 mtu 1500
    ether 58:55:ca:fa:2f:45
    inet6 fe80::5a55:caff:fefa:2f45%en0 prefixlen 64 scopeid 0x4
    inet 192.168.0.13 netmask 0xffffff00 broadcast 192.168.0.255
    media: autoselect
    status: active
    en4: flags=8863 mtu 1500
    ether ee:29:00:00:00:15
    inet6 fe80::ec29:ff:fe00:15%en4 prefixlen 64 scopeid 0x5
    inet 169.254.64.99 netmask 0xffff0000 broadcast 169.254.255.255
    media: autoselect (10baseT/UTP )
    status: active
    vboxnet0: flags=8842 mtu 1500
    ether 0a:00:27:00:00:00
    MacBook-Air:~ aramos$ sudo ifconfig en4 192.168.15.1
    Password:
    MacBook-Air:~ aramos$ ssh root@192.168.15.244 -p 22
    The authenticity of host ‘192.168.15.244 (192.168.15.244)’ can’t be established.
    RSA key fingerprint is a7:cc:49:1d:64:b0:3c:73:ab:38:fd:dd:6e:a0:aa:aa.
    Are you sure you want to continue connecting (yes/no)? y
    Please type ‘yes’ or ‘no’: yes
    Warning: Permanently added ‘192.168.15.244’ (RSA) to the list of known hosts.
    root@192.168.15.244‘s password:
    #################################################
    # N O T I C E * N O T I C E * N O T I C E #
    #################################################
    Rootfs is mounted read-only. Invoke mntroot rw to
    switch back to a writable rootfs.
    #################################################
    [root@[192_168_15_244] root]# mntroot rw
    system: I mntroot:def:Making root filesystem writeable
    [root@[192_168_15_244] root]# mkdir /mnt/us/screensaver
    [root@[192_168_15_244] root]# mount /dev/mmcblk0p1 /mnt/base-mmc

    and the rest of directions…

  17. Hi, I cannot mount mmcblk0p1

    [root@[192_168_15_244] root]# mount /dev/mmcblk0p1 /mnt/base-mmc
    mount: /dev/mmcblk0p1 already mounted or /mnt/base-mmc busy
    mount: according to mtab, /dev/mmcblk0p1 is mounted on /cust

    so I tried:

    [root@[192_168_15_244] root]# mv /cust/opt/amazon/screen_saver/600×800 /cust/opt
    /amazon/screen_saver/600×800.old
    mv: can’t rename ‘/cust/opt/amazon/screen_saver/600×800’: Read-only file system

    I’m stuck now… any idea?

  18. This tutorial ERASE all the files necessary to Kindle screensaving, so be careful. Do a copy in your computer before playing with your Kindle. Even I was unable to restore the files by doing a firmware update, ´cause my Kindle is in the last update and doesn´t permit upgrades to it.

    1. Erase? It’s only “make directory”, “rename” and “create link” commands, they can’t erase anything! It shows you to enter the mode when you can erase important files all right, but if followed verbatim it does not delete anything from your Kindle. “Backup files” is always good advice none the less.

  19. Hello

    I have a problem – only one of screensavers is ever shown. I don’t care so much, but I’d love to have all 3 rotate around. Any ideas what I might get fucked up?

  20. I’ve done this correctly, but now there’s an update for the software, and the install fails. There’s some way to undo the hack and install the update? Please, help!

  21. Please, help me. I’ve managed to use my screensavers but now i can’t update the software with the new 4.10 version. Here’s someway i can undo the hack? Please!

    1. Have not tested it myself, but it should work (will test it this evening, don’t have time now.

      follow the same procedure, BUT:
      instead of typing these 2 commands:

      mv /mnt/base-mmc/opt/amazon/screen_saver/600×800 /mnt/base-mmc/opt/amazon/screen_saver/600×800.old

      ln -sfn /mnt/us/screensaver /mnt/base-mmc/opt/amazon/screen_saver/600×800

      use these 2:

      unlink /mnt/base-mmc/opt/amazon/screen_saver/600×800

      mv /mnt/base-mmc/opt/amazon/screen_saver/600×800.old /mnt/base-mmc/opt/amazon/screen_saver/600×800

      this should revert everything (all the other stuff was just to get to a position where you could type those commands ;)

      If it doesn’t work, I’ll leave a reply this evening (Europe)

      1. Thanks, but it doesn’t work, at leaste on my kindle. When i type
        unlink /mnt/base-mmc/opt/amazon/screen_saver/600×800
        it says -sh: unlink not found
        and when i type the other command, it says “no such file or directory”.
        I am afraid i wrecked up something O.o

      2. Oh yes, sry, use

        rm /mnt/base-mmc/opt/amazon/screen_saver/600×800

        instead of unlink, since kindle doesn’t know unlink.
        But don’t do this unless you can also do the next step (if you have already done this, the ln command from the tutorial will undo this).

        And now to the second step:

        did you already move the folder into your custom-screensaver folder? look if it is there And tell me. (If you executed the second command before the first (or after the first one failed), you may have moved it there ;) )

        did you use another tutorial? If yes, can you give me a link?
        use

        ls /mnt/base-mmc/opt/amazon/screen_saver/

        to get a list of files/directories in this directory. Is there anything that looks like a backup of the original screensavers? the “adunits” (or similar) folder is unimportant here.

        Or: where did you move the original folder? (tell me how the mv command you used looked like)

        Just to tell you what you’re even doing ;)

        ln arg0 arg1
        arg0 is an existing file or folder, arg1 a non-existing one.
        creates a link from arg1 to arg0

        rm arg0
        removes/deletes arg0

        mv arg0 arg1
        arg0 is an existing file folder
        if arg1 is a folder: moves arg0 into this folder
        otherwise it will move arg0 to arg1 (and overwrite an existing file)

        and sorry for this a-bit-untidy-post ;)

      3. As i tought i screwed something. When i list the resources in the screen_saver folder, there is only the adunits foder, and nothing else. Maybe i managed to delete the old screensavers? Can i do something to fix it?

      4. The 600×800 folder: which files does it contain?

        ls /mnt/base-mmc/opt/amazon/screen_saver/600×800/

        are those your custom screensavers or the original ones?
        If they are your custom screensavers, just ignore them, they will be deleted by the rm command.
        If they are the original ones, you’re done.

    2. Find them in the internet (or somewhere else).
      Make sure that they are complete and unchanged (I think the update procedure checks your device for modifications, and when it detects the custom screensavers, it is cancelled)

      copy them to your kindle (plug it in in normal mode, like you would copy your custom screensavers) into a new folder (e.g. a new folder named “orig_screensavers”

      then repeat the whole procedure, but instead of the mv command, use:

      cp -r /mnt/us/orig_screensavers /mnt/base-mmc/opt/amazon/screen_saver/600×800

      PS: if you can access another kindle with existing wallpapers, you can copy them to the drive you could insert to your PC with

      cp -r /mnt/base-mmc/opt/amazon/screen_saver/600×800 /mnt/us/orig_screensavers

      (you need to gain console access again – you know the procedure ;)
      In this case, only use the mntroot and mount commands; those will not change anything that lasts until after the reboot.

      PPS: cp: works like mv, but copies instead of moving; -r to copy whole folders.

    3. I have the same problem, but none of the passwords will work any more, mario worked when i first did the hack, but now it doesn’t, and neither does the one that that website provided after putting in my serial code. Help Please!

  22. Hello sylar_5,

    I followed carefully your instructions and executed all these commands in order:

    mntroot rw
    mkdir /mnt/us/screensaver
    mount /dev/mmcblk0p1 /mnt/base-mmc
    rm /mnt/base-mmc/opt/amazon/screen_saver/600×800
    mv /mnt/base-mmc/opt/amazon/screen_saver/600×800.old /mnt/base-mmc/opt/amazon/screen_saver/600×800

    This has restored the original wallpapers, but I still cannot upgrade to 4.1 (erreor U006).

    What should I do?

    Thanks for your help!

    1. I am no expert on this device. I just knew what I did when applying this hack because it’s some simple linux commands…

      Get to know the Linux shell (at least a bit) and then try to restore the original folder. Maybe download the original wallpapers again and then store them at the right location.

      If you execute those commands twice, you may have deleted the original folder.

      And never apply such hacks if you do not know what you are doing!!

      A quick google search for “kindle update error u006” gave me:
      http://www.mobileread.com/forums/showthread.php?t=181493
      Maybe this will help.
      Use some kindle forums to discuss your problem. A comment thread doesn’t seem appropriate…

  23. Hmm…
    Trying to remove hack to upgrade sw from 4.0.1 to 4.1, but the host password appears to have changed.

    I’m sure that it was ‘mario’ when I applied hack, but that no longer works.
    Tried the serial-number-generator, but the ‘fionaxxx’ passwords aren’t working either. (tried using the serial no on box & a different one under ‘settings’ on kindle itself)

    Any ideas?

  24. Just reverted my 4.0.1 hack back to normal to install 4.1.0! It took a while (mainly due to my absent-minded decision to delete the .old file that backs it up) but this is what I did:

    1. The password here worked for me: http://members.ping.de/~sven/kindle.html# I typed in my serial code sans spaces and it worked first time.

    2. If you still have the .old folder, do the mv /mnt/base-mmc/opt/amazon/screen_saver/600×800.old /mnt/base-mmc/opt/amazon/screen_saver/600×800 command. Make sure to take care when copying and pasting commands, as my putty client replaces Xs with ?s.

    3. If you don’t, you can find all the old screensavers here: http://www.kubizo.com/kindle-screensaver-images/displayimage.php?pid=3411. DO NOT RENAME THE IMAGES. Their names are exactly how the kindle likes them. Put them all into a folder on your kindle root.

    4. Do a ls /mnt/base-mmc/opt/amazon/screen_saver/ command to see what files are there. If you have 800×600 and adunits, that’s fine. If your 800×600 file has vanished (like mine!) do a mkdir /mnt/base-mmc/opt/amazon/screen_saver/600×800 command to make it. Fill this folder with the images in step 3, by doing cp -r /mnt/us/>>FILENAME<>IMAGENAME<< /mnt/base-mmc/opt/amazon/screen_saver/600×800 for each image. When I did the move command for a folder, it just slapped the folder into the destination folder, which is no use. If you know a better way, use it!

    Basically, the ideal solution is to have ls /mnt/base-mmc/opt/amazon/screen_saver/ report back '800×600' and 'adunits', and ls /mnt/base-mmc/opt/amazon/screen_saver/800×600 to report back all the files from the link above with their correct names. If any directories exist which are weird, use rm -r -f <> to get rid of them.

    Once I had it set up as such, trying an update worked! :)

  25. Will any of this work with 4.1? I’m reluctant to try until I hear of some successes. Also, the root password generator page doesn’t have a listing for 4.1, so I don’t know if the generated password will work.

    1. Yes, it does work with 4.1. The root password generator works as well.

      Before you start, take some time to read all the steps and get an idea of what you are doing. It always helps.

      – Get root password
      – SSH to your device using the password by the usbNet method
      – Backup the existing folders by renaming [Very important step]
      – execute the commands to link custom screensavers folder

      This method is much better than some of the other methods you’ll find that involve updating firmware on the device.

      It is possible to revert to default setting, by just removing the links and reverting to the backed-up folders. Hence, always remember to backup and cross-check before proceeding.

      1. Can you please give more info? I used this hack when I first got my kindle, and I want to do the software update, and remove the hack, but I don’t know how. Also it appears that the root password has changed since I did the hack, is that possible?

  26. Hey all,

    For linux users trying to ssh into the kindle 4, assign the ip via ifconfig to usb0. For me to get it to work (after trying all the basic approaches) I needed to put the desired wallpapers directly into a real folder (not symlink) located at /mnt/base-mmc/opt/amazon/screen_saver/600×800. The symlink wouldn’t work – someone else mentioned this in the comments and that tipped me off, but I thought I’d explicitly second this approach.

Leave a Reply to JudyCancel reply

Please be kind and respectful to help make the comments section excellent. (Comment Policy)

This site uses Akismet to reduce spam. Learn how your comment data is processed.