Quantcast
Channel: MobileRead Forums - Kindle Developer's Corner
Viewing all 4430 articles
Browse latest View live

PW2 need help! how to flash a kernel?

$
0
0
Hi, my PW2 wasn't starting,
I tried to rescue it,connected to TTL
boot into recovery menu.
but i select 4.Erase MMC0 by mistake :wall:
that's the only thing i can see in putty.

U-Boot 2009.08-lab126 (Sep 04 2013 - 15:37:40)

CPU: Freescale i.MX6 family TO0.0 at 996 MHz
Temperature: 36 C, calibration data 0x55a4dc5f
mx6sl pll1: 996MHz
mx6sl pll2: 528MHz
mx6sl pll3: 480MHz
mx6sl pll8: 50MHz
ipg clock : 66000000Hz
ipg per clock : 66000000Hz
uart clock : 80000000Hz
cspi clock : 60000000Hz
ahb clock : 132000000Hz
axi clock : 198000000Hz
emi_slow clock: 22000000Hz
ddr clock : 396000000Hz
usdhc1 clock : 198000000Hz
usdhc2 clock : 198000000Hz
usdhc3 clock : 198000000Hz
usdhc4 clock : 198000000Hz
MMC: FSL_ESDHC: 0,FSL_ESDHC: 1,FSL_ESDHC: 2
Board: Pinot WFO
Boot Reason: [ POR ]
Boot Device: NAND
Board Id: 02722011336703Q1
S/N: B0 [SN edited out for security reason - MODERATOR]
I2C: ready
DRAM: 256 MB
Using default environment

In: serial
Out: serial
Err: serial
Quick Memory Test 0x80000000, 0xfff0000
POST done in 59 ms
Battery voltage: 3803 mV

Hit any key to stop autoboot: 0
Wrong Image Format for bootm command
ERROR: can't get kernel image!
uboot > bootm 0xE41000
Wrong Image Format for bootm command
ERROR: can't get kernel image!




it seems i have to flash a kernel.



Hit any key to stop autoboot: 0
Wrong Image Format for bootm command
ERROR: can't get kernel image!
uboot > bist fastboot


U-Boot 2009.08-lab126 (Sep 04 2013 - 15:38:09)

CPU: Freescale i.MX6 family TO0.0 at 996 MHz
Temperature: 47 C, calibration data 0x55a4dc5f
mx6sl pll1: 996MHz
mx6sl pll2: 528MHz
mx6sl pll3: 480MHz
mx6sl pll8: 50MHz
ipg clock : 66000000Hz
ipg per clock : 66000000Hz
uart clock : 80000000Hz
cspi clock : 60000000Hz
ahb clock : 132000000Hz
axi clock : 198000000Hz
emi_slow clock: 22000000Hz
ddr clock : 396000000Hz
usdhc1 clock : 198000000Hz
usdhc2 clock : 198000000Hz
usdhc3 clock : 198000000Hz
usdhc4 clock : 198000000Hz
MMC: FSL_ESDHC: 0,FSL_ESDHC: 1,FSL_ESDHC: 2
Board: Pinot WFO
Boot Reason: [ POR ]
Boot Device: NAND
Board Id: 02722011336703Q1
S/N: B05 [Edited out for security reason - MODERATOR]
I2C: ready
DRAM: 256 MB
Using default environment

In: serial
Out: serial
Err: serial
POST done in 0 ms
Battery voltage: 3780 mV

running cmd: fastboot
Entering fastboot mode...
USB speed: HIGH
Connected to USB host!
USB speed: HIGH
Connected to USB host!
Battery voltage: 3781 mV




then i use a android fastboot tool.



E:\kindle\fastboot\fastboot>fastboot flash kernel main_kernel.img
< waiting for device >



that's what i have now.
i'm waiting for along time,and never changed.
putty just comes out battery voltage,never changed too.

Is there anyone could help me?i don't what to do now.
i think i didn't get the right fastboot tool.



Thanks very much.

Updating my Paperwhite (first gen) from 5.4.4.2 to 5.6.1.1 just reboots it without ac

$
0
0
It happens the same both over the normal wifi update and manually downloading and placing the 5.6.1.1 .bin in the root directory. I select "Update Your Kindle", choose "OK" at the verification prompt, and the Kindle just reboots. Upon checking the firmware version, it's still on 5.4.4.2.
Any suggestions?

Kindle dxg jail break

$
0
0
hi,

I read several threads regarding jail breaking Kindle DXG and seems like

jailbreak 0.4 will work the best.

I tried searching for kindle-jailbreak-0.4.N.zip but couldn't find it, can anybody

please provide me this file.

I will greatly appreciate the help.

Double Kindle PW3 purchase mistake?

$
0
0
So, without further ado - I'm a dumbass.
What did I do?
I just bought my girlfriend and myself the newest Kindle Paperwhites (June 2015 release), I see these are called Paperwhite 3 around the web, so that's what I will refer to them as.

Now, that's awesome right? New kindles, yay!
Yes, except I didn't do any research or read any of the (not-so) fine print, and I'm just now discovering that:

1. They have adds, and
2. I can't load personal screensavers on them.

The adds I can live with, it's the screensaver thing I'm not happy with. :(
I know you guys probably get asked this ALL the time, so I tried finding an answer elsewhere before asking directly, and what I got was that my issues can both be solved by jailbreaking the devices, and that it can be done in one of two ways, either by downgrading to a previous version or by using the serial port to crack it.

So, my questions are as follows:

1. As I'm not very proficient with soldering and fiddling with small electronics, the serial port jailbreak doesn't seem the way to go.

Now, is there an option for me that doesn't require doing it this way?

2. If I go the downgrading route (as detailed here: http://www.howtogeek.com/168844/how-...apps-and-more/)

What features can I expect to lose, and is this method safe?

Thanks for any and all help that you guys can give!

KV Kindle Voyage 5.6.2.1 Serial Jailbreak

$
0
0
Things you will need for a successful jailbreak:
  • Kindle Voyage
  • USB TTL Serial Cable 1.8V
  • Thin wire (best 28g…36g)
  • Soldering equipment
  • Linux PC or Linux Virtual Machine (where you can attach USB devices)
    • I used a Ubuntu 14.04 VMWare Virtual machine (no extra drivers were needed)
  • Kindle jailbreak from here
  • KUAL from here

I’ll assume that you will use the TTL-232RG-VREG1V8-WE and Ubuntu 14.04

  1. Connect you're kindle to your PC and copy the content of 'kindle-5.4-jailbreak.zip' to the root folder of you're kindle
  2. Copy the KUAL-KDK-2.0.azw2 to the kindle documents folder
  3. Write down kindles serial nr. ('Home' -> 'Menu' -> 'Setting' -> 'Menu' -> 'Device info')
  4. Unconnect your kindle
  5. Open the device and remove the battery connection (you can follow these instructions up to step 5)
  6. Solder the thin wire to the kindle as shown

  7. Now connect the thin wire to the USB TLL Serial Cable.
    • If you use the TTL-232RG-VREG1V8-WE USB TTL Serial Cable then connect as:
      1. Kindle TX -> USB Serial RX (Yellow)
      2. Kindle RX -> USB Serial TX (Orange)
      3. Kindle GND -> USB Serial GND (Black)
    • If you use other USB to Serial connector you’re on your own :)
  8. Connect the USB cable to your PC (if using VM also connect the USB device to the virtual machine)
  9. Lets find you're kindle root password (serial number should be without spaces!), open a terminal window and execute
    Quote:

    python -c 'import hashlib,sys;print "fiona%s" % hashlib.md5("%s\n" % sys.argv[1]).hexdigest()[13:16]' YOUR_SERIAL_NUMBER
    Should see something like
    Quote:

    fionac5f
  10. Next you need to find the tty device name linux assigned
    Quote:

    sudo dmesg | grep tty
    You should see somethind like this, my tty interface is ttyUSB0
    Quote:

    [ 0.000000] console [tty0] enabled
    [ 0.925346] 00:06: ttyS0 at I/O 0x3f8 (irq = 4, base_baud = 115200) is a 16550A
    [ 0.952802] 00:07: ttyS1 at I/O 0x2f8 (irq = 3, base_baud = 115200) is a 16550A
    [ 103.111933] usb 2-2.1: FTDI USB Serial Device converter now attached to ttyUSB0
  11. Now you need to setup minicom
    Quote:

    sudo minicom -s
    Select 'Serial port setup' then insert into 'A - Serial device' -> '/dev/ttyUSB0'
    and 'F - Hardware Flow Control' set to 'No'



    Next 'Save setup as dfl' and 'Exit from Minicom'
  12. Start minicom console
    Quote:

    sudo minicom
    You should see somthing like this


  13. Now you need to connect you're kindles battery and power up the kindle (you can connect a USB power adapter to charge your kindle)
  14. When the kindle is starting you should see some output from your kindle startup in minicom console. You need to stop the autoboot by pressing any key. You must be quick because you have only 1 second delay. If you miss it, you have to restart your kindle.
    Quote:

    ...
    sing default environment

    In: serial
    Out: serial
    Err: serial
    Quick Memory Test 0x80000000, 0xfff0000
    POST done in 59 ms
    Battery voltage: 4163 mV

    Hit any key to stop autoboot: 1
  15. If you were successful then run command
    Quote:

    bootm 0xE41000
  16. On the kinle tap 'Exit' and then 'Reboot or Disable Diags', then 'Exit to login prompt'
  17. Now you should have a login prompt in mincom type user 'root' and password from above

    Quote:

    Welcome to Kindle!

    kindle login: root
    password: *****
  18. Lets create a mount point in /tmp
    Quote:

    mkdir /tmp/main
  19. Then mount the main file system at that point:
    Quote:

    mount /dev/mmcblk0p1 /tmp/main
  20. Now you need to edit the root password for the main login
    Quote:

    vi /tmp/main/etc/passwd
    On the first line there should be

    Quote:

    root:!:0:0:root:/:/bin/sh
    delete the ! and save
  21. Now you can reboot, by typing in 'reboot' and wait for the kindel to boot fully
  22. Now you can log in to the main system with username 'root' and password ''
  23. You can change the root password by executing
    Quote:

    passwd
  24. Next we need to apply the jailbreak, by executing the following commands
    Quote:

    cd /mnt/us && sh jb.sh
  25. Finaly we have to reboot and the jailbreak is complete

    Quote:

    reboot
  26. To test that the jailbreak works open the KUAL from your kindle book list
  27. Now you can disconnect the kindle from the USB TLL Serial Cable and tape the thin wire and close your Kindle Voyage

I hope this step by step guide was useful, let me know if you see any mistakes!

I have successfully installed the LibrarianSync to synchronize my collections between calibre and kindle, if there is interest I can make a guide for that to :)

Some images & text were copied from the following threads, thank you for your hard work :thanks:

Attached Thumbnails
Click image for larger version

Name:	Picture3.jpg
Views:	N/A
Size:	43.1 KB
ID:	140426   Click image for larger version

Name:	Picture4.jpg
Views:	N/A
Size:	21.4 KB
ID:	140427   Click image for larger version

Name:	Picture2.jpg
Views:	N/A
Size:	50.3 KB
ID:	140430  

Kindlepdfreader doesn't launch

$
0
0
hi,

After updating reader.lua due to below bug, i am unable to launch kindlepdfviewer

https://github.com/koreader/kindlepdfviewer/issues/814

as per crash.log
/mnt/us/kindlepdfviewer/kpdf.sh: line 25: ./reader.lua: not found

but reader.lua in present in root directory, just at same location as kpdf.sh.

Add 3G module to non-3G Kindle Touch?

$
0
0
Hello team,

Is it possible to transplant a 3G module from a faulty Kindle Touch to a working WiFi-only Touch?

I'm guessing it's physically possible, but would it work afterwards?

Thank-you in advance!

Matthew

Kindle PW screen rotation

$
0
0
I have a kindle pw version 1, which I've jailbroken and am using with kterm. I'd really like to get it into landscape orientation. However the rotation set seems to be ignored for all apps except the actual booklet reader.

The command I'm using is this -
lipc-set-prop com.lab126.winmgr orientationLock L

I've had a good poke around all the lipc events and properties, but I can't seem to get this to work. Has anyone managed to get this working?

How to enable browser's landscape in KPW 5.4.4?

PW3 (2015) serial Jailbreak working ?

$
0
0
Hi,

my PW2 has given up on me (or rather my kid has killed it).

I am looking to replace with the PW3 but i really need calibre and collections manager.

Is a jailbreak available yet, even using a serial connection ?

Searches don't really show that there has been any success yet, other than suggesting it may be possible.

Thanks for any reply

:help:

Can't update my Kindel

$
0
0
Hi
I have just purchased a Kindle paperwhite and wanted to jailbreak it. But when I look at "update your Kindle" it is greyed out.
The seller did advise me that the serial number had been removed and I would be unable to register with Amazon, not a problem as I never download books from them.
Unfortunately I am also unable to create collections

Anyone help?

Success! Downgraded firmware from 5.6.1.1

$
0
0
Moderator -- Split off thread from: http://www.mobileread.com/forums/showthread.php?p=3141315

Well, I have what I think is great news - I downgraded back to 5.3.9 and got everything working the way I want it again!

In case anyone else is reading this and wants to give it a try, here's my info:

* I had originally jailbroken my Kindle PW 1 a long time ago (back on the 5.3.x firmware). So I don't know if this would work for people who haven't yet jailbroken their kindles - but as others say on here, it sounds like probably not or that it would be incredibly difficult, such as the serial hack. I hadn't used it on internet (wifi) for a long time, but after having it on for a couple hours, it OTA updated to 5.6.1.1 and (in my opinion) functionality dropped significantly. Not a good update for me. I'm a windows 7 user too, in case that makes a difference to anyone.

1. I re-jailbroke my kindle (from the original jailbreak thread where they talk about the bridge) and reinstalled KUAL and everything else that I would normally want to, as well as the MR Package Installer.

2. I tried the "downgrader" as described in this thread, and as downloaded in the tools snapshot thread. (BTW... for windows users, I used 7-zip to read and extract the archives on that tool snapshot thread, and it worked just fine.) I downloaded the 5.3.9 from the ixtab website (I chose 5.3.9 because my main goal is to use kindle collections manager, and that firmware still works well with it. I put the firmware in the "old_update" folder as described in the downgrader thread. BUT... the downgrader didn't work as usual, because with 5.6.1.1 firmware update, I can no longer "update my kindle" with package installers from here on Mobile Reads. The "update my kindle" is grayed out.

3. So, I put the "downgrader" thing in the MRPackages folder (according to the MR PI thread explaining how to use it through the KUAL helper utility). And I still put the old firmware update in the "old_firmware" folder. When I tried installed through MR Package Installer, it initially seemed to work well and said it was a success... though it didn't follow through and do a full firmware update. (Still at firmware 5.6.1.1 at this point.)

4. I plugged back into my computer and saw the MR Packages Installer "downgrader" was removed (i.e. deleted after success presumably), and the old firmware update (the 5.3.9) was moved into the root directory of the kindle. So, then I tried what others have said on here (in this thread and others) about a forced reboot while plugged into the computer. I *DID NOT* eject my kindle from the computer, nor did I unplug it, but I held down the power button on it for a long time (over 30 sec.). I think somewhere before all that, the computer dinged as if disconnected and the green light on the kindle went off (actually, maybe it was the orange light, I don't remember which - but the light on the kindle). So 30 sec. may not be a requirement, but I held it down for a long time just to be sure and to see if it would reboot while I was holding the power button down. It didn't reboot while I had the button down, but as soon as I un-pressed the power button, the kindle started going into the reboot cycle. Then it said it was updating and it would take a long time (took probably 5-10 minutes, so I just had to be patient). I left it *PLUGGED IN TO THE COMPUTER* this whole time. When the Kindle was clearly no longer updating or anything else (back on its home screen I think) - I "ejected" it from the computer and turned it on and off again (to be sure) - and VOILA! My kindle was downgraded to 5.3.9! I then reinstalled the jailbreak (not with the bridge, but with the full most-up-to-date file on the original jailbreak thread here), KUAL, MR Packages Installer, all my apps (especially screensavers and collections manager, etc. And I MADE SURE to install the backdoor lock this time before trying to access the wi-fi again.

5. Everything's working great! My kindle is back the way I want it! My screensavers were never lost, my collections info had to be re-imported from calibre, but I didn't have to re-upload my books or anything. It's a miracle! (I read my kindle all the time, so I was devastated when most my books disappeared because their collections were lost (previously nested sub-directories of other collections). I didn't want to restore my kindle to factory and lose all my highlights, etc. So I'm very glad this worked. I have no idea if trying to install the downgrader through MR PI is what made it work or if I got lucky with the manual reboot or what. But I wanted to list my steps here in case anyone else wants to try to replicate it and get back to older Kindle firmware.

To Knc1 and eschwartz: Two of the main functions I like about Collections Manager that's not listed elsewhere in the LibrarianSync thread (that I've read so far) are that Collections Manager allows me to nest collections inside each other (i.e. a "Wheel of time" collection inside the "fantasy" collection, that sort of thing) and also that I can "hide" books from the homescreen, or cause them to re-appear if I want quick access to them. I also have some books in multiple collections. I do that so the current few books I'm reading are accessible immediately, but my older books (or books I haven't read yet) are searchable in their topical categories rather than cluttering the homescreen with a hundred pages. Does LibrarianSync do that? Of course, I do my original creation of categories on Calibre, so it sounds like LibrarianSync does that... but if it doesn't have the nested collections and the hide on homescreen options, then LibrarianSync wouldn't improve my kindle experience very much.

Thanks again for your input guys, and I hope my experience can help others as well. (P.S. - if there are any mods here who think this little step-by-step downgrade from 5.6.1.1 would help people by being posted in other threads, then please do that, or let me know where I should copy and paste it.)

PW2 How to tell if I'm jailbroken?

$
0
0
Below is long story of stupidity with a nice tl;dr at the bottom.

Got a hold of a Kindle PW2 from my aunt, it had only been connected to the internet during initial setup and was running FW 5.4.2.1.

When I got a hold of it I didn't initially connect it to the internet and I successfully jailbroke it and managed to get the collection manager on it (which is all I really wanted to jailbreak for).

Then I stupidly connected it to the internet. I wasn't aware that the Kindle would auto-update or that there was a way of preventing it.

So now I have a Kindle running 5.6.1.0.6 which I believe was still jailbroken.

I then (probably stupidly) went into the settings and chose the reset device option.

Fast forward a few weeks and I read this post by madagascaradam about a similar situation to mine in which he was able to downgrade to a version of the FW on which the collection manager works fine.

I've tried following the steps but haven't had any success in downgrading it though.

I can still access KUAL and I've got the mkk folder with five files in it.

So rather than derail the collection manager thread with potentially solving my problem I thought I'd make a new thread.

tl;dr
How to tell whether or not my device is still jailbroken so I might be able to potentially downgrade.

K5 PW1 Brick Recovery - Rescue Pack installed, stuck on Tree/Logo Screen

$
0
0
Hey,

This is, obviously, self-inflicted - I was attempting to install the Screensaver Hack's Python package on my (downgraded) 5.3.9 Paperwhite 1 using MRPackageInstaller, and the installation process hung for upward of ten minutes - having taken leave of my senses, I decided to force-reboot the Kindle at that point to try and escape that process.

The result's that my Kindle's now hanging on the Kindle Logo/Tree screen with a spinning progress wheel underneath it - with no progress beyond that. I've already tried discharging/fully recharging my battery- obviously, that wouldn't have helped in this case, but it cropped up in every prior thread I could find as the first thing that ought to be tried.

I'd just installed the Rescue Pack package a single reboot before this happened, and I was hoping to be able to activate that - but the Kindle doesn't show up as an accessible drive in Windows Explorer. It's clearly recognised as a USB Storage device, and shows up in Explorer as a grayed-out drive, but attempting to open it doesn't seem to make anything happen. Thus, I've no immediately obvious way of getting into Diags mode/forcing a factory reset, since they require the ability to push files to the device to activate.

However, since something is being recognised at the other end of the USB link, I went and booted into Linux to check some logs. Here's the output of /var/log/syslog upon plugging in the Kindle:

Code:

Aug  4 20:04:07 ubuntu kernel: [  600.398194] usb 1-1: new high-speed USB device number 7 using xhci_hcd
Aug  4 20:04:07 ubuntu kernel: [  600.532601] usb 1-1: New USB device found, idVendor=1949, idProduct=0004
Aug  4 20:04:07 ubuntu kernel: [  600.532611] usb 1-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
Aug  4 20:04:07 ubuntu kernel: [  600.532617] usb 1-1: Product: Amazon Kindle
Aug  4 20:04:07 ubuntu kernel: [  600.532622] usb 1-1: Manufacturer: Amazon
Aug  4 20:04:07 ubuntu kernel: [  600.532626] usb 1-1: SerialNumber: B0241502247402Q0
Aug  4 20:04:07 ubuntu kernel: [  600.536671] usb-storage 1-1:1.0: USB Mass Storage device detected
Aug  4 20:04:07 ubuntu kernel: [  600.537055] scsi host10: usb-storage 1-1:1.0
Aug  4 20:04:07 ubuntu mtp-probe: checking bus 1, device 7: "/sys/devices/pci0000:00/0000:00:1c.3/0000:04:00.0/usb1/1-1"
Aug  4 20:04:07 ubuntu mtp-probe: bus: 1, device: 7 was not an MTP device
Aug  4 20:04:08 ubuntu kernel: [  601.536494] scsi 10:0:0:0: Direct-Access    Kindle  Internal Storage 0100 PQ: 0 ANSI: 2
Aug  4 20:04:08 ubuntu kernel: [  601.537770] sd 10:0:0:0: Attached scsi generic sg3 type 0
Aug  4 20:04:08 ubuntu kernel: [  601.546385] sd 10:0:0:0: [sdc] Attached SCSI removable disk
Aug  4 20:04:08 ubuntu systemd-udevd[4074]: error: /dev/sdc: No medium found

Is there any way forward possible here without a serial cable? Perhaps a way of forcing it to mount the device manually?

I mean, I'm probably out of luck here given the nature of what caused this in the first place- but it would be nice to know for certain.

Amazon Kindle eBook: return link problem

$
0
0
Hello everyone,

I'm a student from Switzerland and I'm trying to write an ebook for Amazon's kindle devices (in HTML CSS).
I already generated the .mobi and everything is working well.
I still have only one problem, I want to add a link "back to page" having the same behaviour as the back button and I was wondering if there was a function I can call or anything else that I can use to trigger this button or mimic its behavior.

More precisely, when I press a hyperlink (in page 1) going to a new page (page 2) inside the book, I am enable to recover page 1 with the same view because I don’t know where page 1 starts (different from one kindle to another). Also using a Hyperlink in page 2 pointing to the hyperlink in page 1 brings a shifted view where the hyperlink in page 1 is set at the top of the page.
The back button that is present on kindle resolve this problem, allowing me to came back to the original view of page 1, but I cannot find a way to call this button.
I’m looking for something like: Back to book, is this possible?
Also if this is not possible, is there a way to create popups in the book like the traduction popups when I hover words?

Thank you very much for your help,
Abdel Badou

Which hacks for a Kindle DX with a 3.2.1 firmware?

$
0
0
Which hack is the right one for Kindle DXi with 3.2.1 firmware?

I have a Kindle DX (white; international edition; 3G-only) from ~2009 with YifanLu's 3.2.1 firmware - the one originally from Kindle 3 Keyboard.

Recently, I noticed many secure websites (e.g. https://www.instapaper.com) does not work, I always get "Web Browser is unable to establish a secure connection to this web site" warning.

I originally thought it's rotten-old certificate root of the Kindle's Web Browser based on WebKit. But then I went to https://www.howsmyssl.com and noticed that the most recent implementation of SSL/TLS on that 3.2.1 firmware is SSL 3.0, i.e. no version of TLS what so ever. I believe that because of POODLE, BEAST, and co. many websites disabled SSL and run TLS-only, which is not supported on 3.2.1 firmware.

Can someone with recent Kindle 3 Keyboard firmware (as of writing it's 3.4.2) visit https://www.howsmyssl.com and tell me what protocol is said to be supported in the "Version" section?

Can someone enter https://www.instapaper.com with 3.4.2 firmware and tell me whether they are able to see the homepage?

If I am correct and the problem with 3.2.1 firmware is that it does not support TLS and 3.4.2 does, it may be necessary for me to somehow update to 3.4.2, or at least update libs related to WebKit. To do that I need to JB and USBnet my Kindle, so...

I read "Font, ScreenSaver & USBNetwork Hacks for Kindle 2.x, 3.x & 4.x" by NiLuJe but I am unsure which hacks (JB, USBnet) to use? If I was running the original DXi firmware (2.5.8), I'd choose: Update_jailbreak_0.13.N_dxi_install.bin. And it would work, but it didn't for me when I tried.

Same with USBnet. Which one should I choose? Is my DXi now "K3"?
  • kindle-usbnetwork-0.55.N-k2.rar
  • kindle-usbnetwork-0.55.N-dx.rar
  • kindle-usbnetwork-0.55.N-k3.rar
  • kindle-usbnetwork-0.55.N-k4.rar

Should I build my own hack from "Snapshots of NiLuJe's hacks".

Thanks for your patience & help.

Can I turn off the front-light (KV,PW2/3)?Thanks.

$
0
0
Hello,I am going to buy a Kindle(KV,PW2/3)
However, my friend told me that these devices cannot turn off the light
My questions are:
1.Is that true?for KV,PW2,PW3?:blink:
2.Can we turn off the light ?;)

Thank you very much!:rolleyes:

KV Book Cover Art Aspect Ratio Limits?

$
0
0
I was wondering if anybody knew what the lower and upper aspect ratio limits are for book cover art display in the Kindle Voyage? I know that certain sizes of book covers will be replaced by a generic Kindle cover art if it exceeds a certain size, even if cover art is associated with the eBook.

Moreover, is there anyway to place this constraint for metadata download in Calibre? That is, to force Calibre to select cover art for books that meet the required aspect ratio size?

How to update Kindle 2/DX/DXG with YifanLu's firmware from 3.2.1 to 3.4.2

$
0
0
How to update Kindle 2/DX/DXG with YifanLu's firmware from 3.2.1 to 3.4.2

This guide comes with no warranty, you may brick your device. Here I describe how it worked for me, I don't know if this guide can be directly applied to any other device than the one I used - be cautious.

Why Would I Do That?
The only sound reason I know of is TLS (Transport Layer Security) support in experimental web browser. After 2014 and 2015 revelations of fatal shortcomings of SSL 3.0 (a secure protocol used in HTTPS communication) like POODLE, many sites disabled it's support in web servers resulting in Kindle's experimental web browser being unable to connect to many secured web sites. The protocol to which many web sites migrates is TLS. However, that protocol (set of protocols) was not enabled in Kindle until 3.4.1 firmware. In 3.4.2 this is still enabled.

As a bonus you'll get tons of general fixes all around Kindle, though I don't know of any particular bugfix, nor enhancement.
It's fun to learn about Kindle's internals.

Any Shortcomings?
  • You may brick your Kindle.
  • It takes some time to figure the right approach to upgrade. Every Kindle may be a bit different.
  • With additional code to system tight on RAM you may get even more sluggish system.

Prerequisites
  • Strong familiarity with UNIX shell.
  • Kindle 2/DX/DXG (all flavors -- international or US, 3G-only or whatever) with 3.2.1 or higher version of the firmware.
  • Jailbroken Kindle (since you have Kindle with 3.2.1 firmware, your Kindle had to be jailbroken in the past, just make sure the JB is still in place and effective, e.g. by installing USBnet hack).
  • Recent version of kindle_update_tool (I used this one)
  • Patience.

Optional Prerequisites
  • USBnet hack in place and running SSH may be useful should anything went horribly wrong.
  • Remove other hacks not deemed helpful in case of emergency rescue (e.g. ScreenSaver hack, Fonts hack, ...), you may also be tight on space on root partition as well as on operating memory (RAM), every megabyte counts.
  • Backup your data on Kindle, and leave there some 100 MB of free space.
  • Using Kindle's "Reset to factory Defaults" (erases all your documents!) may be of some help too in making sure Kindle is as close to what Amazon expects it to be.

Get The Right Upgrade Files
Once prerequisites are met, start by downloading Kindle 3 firmwares. There are three flavors for three similar versions of Kindle. Basically, I believe - though I am not entirely sure about that - they are all the same, so, feel free to download firmwares from any flavor, I used "B006" on DXi.

Since I expect you to have 3.2.1 firmware, we will follow the official upgrade path: 3.2.1→3.3→3.4→3.4.2 (note: the first step is the same if you start from 3.1 or from 3.2, you just have to use different BIN file and may face different challenges; but if you start from 3.0 or 3.0.1, you have to upgrade to 3.1 first -- for such an upgrade you can alter the upgrade method presented here to your needs but I can't be specific since I started from 3.2.1). Download upgrade files for 3.3, 3.4, and 3.4.2.

3.2.1→3.3 Upgrade
This is by far the easier upgrade. Now I'll mostly paraphrase YifanLu's comment in this regard.

Use kindle_update_tool to extract Update_kindle_3.3_B006.bin:

Code:

$ kindle_update_tool.py e Update_kindle_3.3_B006.bin
Signature: FC02 (OTA update)
min version: 525120101
max version: 611680021
device code: 06
optional: no
md5 of tgz: f90023068f5556befd51c9522dab4c60

Decompress newly created file Update_kindle_3.3_B006.bin.tgz:

Code:

$ tar xvvf Update_kindle_3.3_B006.bin.tgz
-rw-r--r-- signdaemon/signdaemon      192 2011-09-09 20:44 update-Update_525120101-611680021.dat
-rw-r--r-- signdaemon/signdaemon    2469 2011-09-09 20:44 111111111-k3.ffs
-rw-rw-rw- signdaemon/signdaemon      128 2011-09-09 20:45 111111111-k3.ffs.sig
-rw-r--r-- signdaemon/signdaemon 24760248 2011-09-09 20:44 Update_525120101-611680021.bin
-rw-rw-rw- signdaemon/signdaemon      128 2011-09-09 20:45 Update_525120101-611680021.bin.sig
-rw-rw-rw- signdaemon/signdaemon      128 2011-09-09 20:45 update-Update_525120101-611680021.dat.sig

Find "Update_525120101-611680021.bin" and use the kindle_update_tool to extract it:

Code:

$ kindle_update_tool.py e Update_525120101-611680021.bin
Signature: FC02 (OTA update)
min version: 525120101
max version: 611680021
device code: 06
optional: no
md5 of tgz: c14a5f16c6dfbf8e606fb039daafdf89

And decompress the TAR:

Code:

$ tar xvvf Update_525120101-611680021.bin.tgz
-rw-r--r-- signdaemon/signdaemon    1008 2011-09-09 20:41 update-06-525120101-611680021.dat
-rwxr-xr-x signdaemon/signdaemon    6205 2011-09-09 20:40 525120101-611680021.ffs
-rw-r--r-- signdaemon/signdaemon 6031949 2011-09-09 20:41 06/update-06-525120101-611680021.bin
drwxrwxr-x                            Creating directory: 06
-rw-rw-rw- signdaemon/signdaemon    128 2011-09-09 20:41 06/update-06-525120101-611680021.bin.sig
-rw-r--r-- signdaemon/signdaemon 5878741 2011-09-09 20:41 06/update-06-529960105-611680021.bin
-rw-rw-rw- signdaemon/signdaemon    128 2011-09-09 20:41 06/update-06-529960105-611680021.bin.sig
-rw-r--r-- signdaemon/signdaemon 5863321 2011-09-09 20:40 06/update-06-553210206-611680021.bin
-rw-rw-rw- signdaemon/signdaemon    128 2011-09-09 20:41 06/update-06-553210206-611680021.bin.sig
-rw-r--r-- signdaemon/signdaemon 1926999 2011-09-09 20:40 06/update-06-558700031-611680021.bin
-rw-rw-rw- signdaemon/signdaemon    128 2011-09-09 20:41 06/update-06-558700031-611680021.bin.sig
-rw-r--r-- signdaemon/signdaemon 1369833 2011-09-09 20:40 06/update-06-572340009-611680021.bin
-rw-rw-rw- signdaemon/signdaemon    128 2011-09-09 20:41 06/update-06-572340009-611680021.bin.sig
-rw-r--r-- signdaemon/signdaemon 1519255 2011-09-09 20:41 06/update-06-576290015-611680021.bin
-rw-rw-rw- signdaemon/signdaemon    128 2011-09-09 20:41 06/update-06-576290015-611680021.bin.sig
-rw-rw-rw- signdaemon/signdaemon    128 2011-09-09 20:41 525120101-611680021.ffs.sig
-rw-r--r-- signdaemon/signdaemon 2153983 2011-09-09 08:48 kernels/611680021-kernel.tar.gz
drwxrwxr-x                            Creating directory: kernels
-rw-rw-rw- signdaemon/signdaemon    128 2011-09-09 20:41 kernels/611680021-kernel.tar.gz.sig
-rw-r--r-- signdaemon/signdaemon    3880 2011-09-09 20:40 support.tar.gz
-rw-rw-rw- signdaemon/signdaemon    128 2011-09-09 20:41 support.tar.gz.sig
-rw-rw-rw- signdaemon/signdaemon    128 2011-09-09 20:41 update-06-525120101-611680021.dat.sig



Now you’ll have a bunch of files. Go into the "06" folder and find "update-06-576290015-611680021.bin" (if you don't upgrade from 3.2.1, find the right BIN file numbers here). Open that in a hex editor of your choice and go to offset 0xC. Change the byte to 0x02 for K2, 0x03 for K2i, 0x04 for DX, 0x05 for DXi, and 0x09 for DXG. Save it.

Code:

$ hexedit 06/update-06-576290015-611680021.bin
Copy that file to Kindle's USB root and run it from Kindle's interface. YifanLu adds: "You might get an error and it's OK because some of the modem files may be different, but your Kindle will be updated regardless." I did not get any error, so I can't verify that.

After restart your Kindle should be upgraded to "3.3 (611680021)", verify that in Settings.

3.3→3.4 Upgrade
In theory you could hexedit Update_kindle_3.4_B006.bin on byte 0xC to contain your specific Kindle code (see paragraph above), and it may work -- feel free to try it -- and you could fast-forward to 3.4→3.4.2 upgrade. However, in my case (1) file /etc/fb.modes was changed from what the update file expected and when Kindle tried to apply a patch on it, it failed; (2) my DXi always hanged on patching libwebkit and libwebkitgtk -- two libraries of size about 14-22 MB which, to be patched by bspatch tool, require at least 20 MB of free RAM, which my Kindle did not have.
  • Extract "Update_kindle_3.4_B006.bin" with kindle_update_tool.
  • Decompress resulted "Update_kindle_3.4_B006.bin.tgz".
  • Remove all *.sig and *.dat files, we will create our own signatures afterwards.
  • Rename all .ffs files to .sh:
    Code:

    $ rename ffs sh 611680021-1725970040.ffs 999999999-reboot.ffs
  • Open "611680021-1725970040.sh" in text editor of your choice and add following code snippet on new line after #!/bin/sh. They will provide logging useful for debugging:

    Code:

    set -x
    exec > /mnt/us/my-upgrade.out
    exec 2> /mnt/us/my-upgrade.err


Verify you did not mess anything in the script:

Code:

$ bash -n 611680021-1725970040.sh
Create you own signed upgrade BIN, replace "--dxi" with appropriate flag which suits your Kindle type:

Code:

$ kindle_update_tool.py m --dxi --sign kindle_3.4_B006-my-log 611680021-1725970040.sh 999999999-reboot.sh rootfs_md5_list.tar.gz update-adds.tar.gz update-kernel.tar.gz update-patches.tar.gz
calculating signature for 611680021-1725970040.sh
cmd = openssl dgst -sha256 -sign /tmp/tmplDABFe -out /tmp/tmp9hCOlU 611680021-1725970040.sh
calculating signature for 999999999-reboot.sh
cmd = openssl dgst -sha256 -sign /tmp/tmplDABFe -out /tmp/tmpfJzg2A 999999999-reboot.sh
calculating signature for rootfs_md5_list.tar.gz
cmd = openssl dgst -sha256 -sign /tmp/tmplDABFe -out /tmp/tmpZ_tyBa rootfs_md5_list.tar.gz
calculating signature for update-adds.tar.gz
cmd = openssl dgst -sha256 -sign /tmp/tmplDABFe -out /tmp/tmpGXsunh update-adds.tar.gz
calculating signature for update-kernel.tar.gz
cmd = openssl dgst -sha256 -sign /tmp/tmplDABFe -out /tmp/tmpj7ERcV update-kernel.tar.gz
calculating signature for update-patches.tar.gz
cmd = openssl dgst -sha256 -sign /tmp/tmplDABFe -out /tmp/tmpWtd2nD update-patches.tar.gz
adding 611680021-1725970040.sh
adding 999999999-reboot.sh
adding rootfs_md5_list.tar.gz
adding update-adds.tar.gz
adding update-kernel.tar.gz
adding update-patches.tar.gz
calculating signature for bundle file
cmd = openssl dgst -sha256 -sign /tmp/tmplDABFe -out /tmp/tmp_VkSLM /tmp/tmp4HgOUe
making bin file
output written to update_kindle_3.4_B006-my-log.bin



Upload "update_kindle_3.4_B006-my-log.bin" to Kindle and run the upgrade. It will fail, probably. You'll see a couple of restarts (or resets to factory defaults?!) but at least in my case Kindle always survived. Now, in Kindle USB root you'll find two logs my-upgrade.out and my-upgrade.err. Inspect them to see what was the problem which prevented the upgrade. Now, you're bit on your own...

In my case /etc/fb.modes file was different to what was was expected (be it a result of some hack I applied or be it the same for all YifanLu's franken-upgrades) and a patched result did not match expected MD5 hash (see appropriate parts of 611680021-1725970040.sh for the verification process):

Code:

...
local4.info  ota_install I def:patch:patchinfo="/etc/fb.modes":patching file
ota_install: I def:patch:patchinfo="/etc/fb.modes":patching file
local4.crit  ota_install C def:patch:patchinfo="/etc/fb.modes":checksum failure
ota_install: C def:patch:patchinfo="/etc/fb.modes":checksum failure
local4.info  ota_install I def:patch:current_md5=f0845d7fe22da159acbf1fef65302abd,expected_md5=645ec280a0ac85ac6c4672d614d7388d,patch_md5=e8f0742b63cfa44f2cc77582557ae9d6:checksum verify



I had to copy out system /etc/fb.modes file, patch it with appropriate file from "update-adds.tar.gz", edit the result a bit to fit my Kindle's display resolution, create a proper patch (see man bsdiff), replace the old patch from "update-adds.tar.gz" by the new one, and finally change the expected MD5 in "611680021-1725970040.sh". Also MD5 hash of /etc/fb.modes should be changed in "rootfs_md5_list" file from "rootfs_md5_list.tar.gz". There are other ways to fix this problem (e.g. local patching and transfer of the file, see how libwebkit{,gtk} was handled, but I did not know it was possible back then).

Once fixed, upgrade process hanged later on patching libwebkit. The line where the upgrade process stopped before being killed by Kindle was, according to the logs:

Code:

bspatch /usr/lib/libwebkit-1.0.so.2.5.0 patch/usr/lib/libwebkit-1.0.so.2.5.0 147.libwebkit-1.0.so.2.5.0.patch
So I copied out /usr/lib/libwebkit-1.0.so.2.5.0 from Kindle (use USBnet or copy it by a suitable command at suitable place in the script) to my computer, patched it by bspatch, verified that MD5 hash of the patched file is the one expected in "611680021-1725970040.sh", put it to Kindle's USB root and added this line instead of the broken bspatch line:

Code:

cp /mnt/us/libwebkit-1.0.so.2.5.0.NEW patch/usr/lib/libwebkit-1.0.so.2.5.0
Repack with kindle_update_tool, upgrade, see if it got fixed. If successful, this upgrade should take some 20 minutes.

3.4→3.4.2 Upgrade
In 3.4.1 (sic) upgrade Amazon added TLS and disabled SSL 3.0 support, so another big library got updated: libwebkitgtk (about 22 MB). Do the same you did when upgrading to 3.4 (extract TGZ from downloaded BIN, unpack TGZ, rename FFS to SH). Add the logging shell code snippet to "1725970040-2687240004.sh". Also MD5 hash of /etc/fb.modes should be changed in "rootfs_md5_list" file from "rootfs_md5_list.tar.gz", if you did that change in 3.3→3.4 upgrade before. Repack, upgrade and see what went wrong. Again, upgrade process will probably fail on bspatch-ing of libwebkit and then on libwebkitgtk, do the same fixing you have done in upgrade to 3.4.

If successful, this upgrade should take about 5 minutes and you'll end up with 3.4.2 on your Kindle, verify you are able to see TLS support in "Version" paragraph at howsmyssl.com and some site which runs TLS-only, e.g. instapaper.com. Enjoy!

How to add fonts without linkfont?

$
0
0
I'm planning add fonts (eg. Minion Pro) to Voyage (FW 5.6.5), but dont want to using linkfonts.

My reader got JB and USBNet. My /usr/java/lib/fonts.cramfs.img is modified.

What else I must modify for new font in Aa menu?
Viewing all 4430 articles
Browse latest View live