03-31-2012, 11:38 AM | #151 | |
Carpe diem, c'est la vie.
Posts: 6,433
Karma: 10773668
Join Date: Nov 2011
Location: Multiverse 6627A
Device: K1 to PW3
|
Quote:
I once bricked a K4 when the PCBSN idme var got corrupted (as you can read in my forum posts). I had to modify a custom uboot to hijack idme var reads and replace the values with my own known values. This allowed u-boot to finish booting. On a K4, u-boot needs to know the PCBSN to decide how to initialize the device, and it halts if that is bad. This does not appear to be a problem when using the "smarter" Touch u-boot (even when using it to boot a K4, as my MfgTool custom profiles do). MfgTool is a big program with a lot of capabilities, designed for Manufactures to flash and test new devices. As I understand it, some things require multiple stages, by sending a running a series of increasingly complicated but capable code blocks to the device. There is much in that system that I have not studied yet. Regarding the serial port, I have discovered that on the K4 and Touch, the third pin does NOT seem to act as a reliable GND (electrical ground). It works MUCH better to keep the USB cable connected from the kindle to the same host PC that has the USB serial adapter, relying on a "ground loop" connection over the kindle USB cable to supply the serial ground. When connected this way, you can also simplify the "serial port level shifter" circuit that I posted in its own thread. With a USB ground, you can connect a 3.3v or 5v serial adapter TxD directly to the kindle RxD (which has a 1K series protection resistor). Some USB serial adapters will require level shifting to see the low voltage signal on the kindle TxD, but if the serial adapter pulls its RxD line to 3.3v or 5V, you just need a small diode connecting the Kindle TxD to the adapter RxD, such that the diode cathode (end with the stripe painted on it) goes to the kindle. This allows the adapter RxD to float to its supply voltage for a logic 1, and the kindle can pull that RxD down to the voltage drop of the diode (0.7v for silicon) for a logic 0. The only problem is that the kindle internal 1K protection diode becomes part of a voltage divider circuit, increasing the logic 0 voltage seen at that serial adapter if too much current is supplied by the adapter. On my USB adapter, the RxD pin was connected to an LED that got its power from a 1K resistor to supply voltage. I had to change that resistor to about 22K to get the RxD voltage seen from the kindle low enough to work correctly. You can get silicon diodes from the circuit board in a defective CFL (compact fluorescent light). Did you read the docs supplied with the full MfgTool for the iMX50 from Freescale? Download and read the iMX50 Reference Manual too (or at least the relevant parts). It *is* complicated. I *was* planning to make large changes to a custom u-boot to read and write mmc for me, converting it into a proxy to allow me to read and modify mmc from a host PC. You may want to explore that path yourself too. Lately, I have been spending my "free" time (very little available) playing with simple but interesting shell scripts, because I have other extremely complex projects occupying most of my attention, and scripts are a fun and simple diversion that are not overly distracting, unlike working with MfgTool. Good luck. TTYL. Back to work... Last edited by geekmaster; 06-02-2012 at 06:50 PM. |
|
04-12-2012, 06:45 AM | #152 | ||
Member
Posts: 14
Karma: 12366
Join Date: Mar 2012
Device: Kindle 4GNT
|
Quote:
I finally got one of those USB-cables for mobile phones and patched it into a generic (PL2303) USB-serial@3.3V. Btw: I guess it can't hurt to have this information here, too: Kindle 4 Nontouch-serial port is P2 (east on the main board), GND is top one (easily identifyable as it's connected to large ground areas), RxD is middle, TxD is bottom (identifyable by the 1.8V level compared to GND) As those pads are very fragile, I soldered some small wires to them and to a small adapter piece allowing for easier soldering, later. http://imgur.com/nkU2o,TMQqe,rfV7n Connecting the PC-RxD to Kindle-TxD already showed me the boot-messages (without the pullup-resistors). If I ever connect the other direction, I'll use the resistor for voltage dividing but right now it seems like there is no need for that. Quote:
I found surprisingly few information about the downloader mode and the commands in the reference manual. It's nice to see the serial output - as it shows that internally, the kindle is still working. Still, it further fundaments my guesses of something really being broken on hardware level: Bootmode Override is fastboot. There is this "Battery Voltage too low. Please plug in a charger" message and although a charger is connected, the voltage goes down in the next messages. I've watched it decrease from 3360 to 2952. Still, it's up at 33xx or so when I reboot. Well.. I guess, I'll attach the resistor and interrupt the boot process - just to see what I can do at that point. Regards, TCC Update: With a 20k resistor I could stop booting and get into uboot. Unfortunately, the Kindle freezes pretty quick there, too. Sometimes it doesn't even countdown the 3 seconds to starting fastboot. I guess I'll keep it at the charger for the rest of the day. At least I can see some absolute numbers about voltage on serial output. Still, this experiment showed me that my main kernels really are broken, that no such error appears with fastboot and that this freezing is very independent from what I boot. Now I only need to find out how to directly interface the e-ink display so I can get rid of the main board and just use the display.. Last edited by TCCPhreak; 04-12-2012 at 07:09 AM. |
||
Advert | |
|
04-12-2012, 07:55 AM | #153 | |
Carpe diem, c'est la vie.
Posts: 6,433
Karma: 10773668
Join Date: Nov 2011
Location: Multiverse 6627A
Device: K1 to PW3
|
Quote:
If you are not seeing that, perhaps your computer is disconnecting power to your USB port (one of those annoying "green" energy saving things). See if you can disable USB power-save mode in your host PC OS settings or in your BIOS settings. Or, perhaps you can try a different USB cable... |
|
04-12-2012, 08:13 AM | #154 | |
Member
Posts: 14
Karma: 12366
Join Date: Mar 2012
Device: Kindle 4GNT
|
Quote:
I can charge my other kindle with the same cable. Still, I'll try a different USB cable once I'm at home and the Kindle hasn't charged but (yes, this sounds like "the glass is half empty") I don't believe it will make a difference. Still thanks for your advice. Regards, TCC |
|
04-12-2012, 11:55 AM | #155 | |
Carpe diem, c'est la vie.
Posts: 6,433
Karma: 10773668
Join Date: Nov 2011
Location: Multiverse 6627A
Device: K1 to PW3
|
Quote:
That is why I recommend in other threads to use a wall charger just to get it charged enough so you can use fastboot mode and charge from there. Just because your serial port shows that it WANTS to boot to fastboot mode (the "override") does not mean that it CAN boot to fastboot mode if the firmware in mmc does not contain the fastboot code. The only way to fix it using tools available here and now is by using the serial port, until somebody figures out how to flash the mmc using MfgTool. |
|
Advert | |
|
04-12-2012, 04:33 PM | #156 | |||
Member
Posts: 14
Karma: 12366
Join Date: Mar 2012
Device: Kindle 4GNT
|
Quote:
I can even imagine that this was the part that lead to the original bricking... Freeze due to low battery, then reboot as the charger was detected.. then next freeze. Quote:
Quote:
Regards, TCC Update: I don't know what just happened but *something* just happened.. I told uboot to reset, it then decided to halt.. And somehow this fixed the decreasing-voltage-problem. The voltage number is rising at the moment and I even had access to a prompt names "bist >" and having some commands with "ymodem"... Guess, it's time to prepare the kernel backups for upload.. Later Update: aaaand... after bist allowed my to change to fastboot and suddenly this fastboot worked, I was able to flash kernel and diags kernel and even boot into diags again. Flashing the main partition was not yet done as I'm back to my "freeze" problem after some seconds. But this time I can read a message over the serial: mxc_rtc: saved=0x0 boot=0xca boot: C def:bcut:batterycut=1,version=000000: after some time: BUG: soft lockup - CPU#0 stuck for 61s! and something that looks like a kernel panic or gdb-bt. PC is stuck in mxc_rtc_set_time+0x60 Spoiler:
and - again after some time - the reboot: Spoiler:
Last edited by TCCPhreak; 04-12-2012 at 07:20 PM. |
|||
04-12-2012, 07:14 PM | #157 | |
Carpe diem, c'est la vie.
Posts: 6,433
Karma: 10773668
Join Date: Nov 2011
Location: Multiverse 6627A
Device: K1 to PW3
|
Quote:
Glad it's charging now, and good luck. You aren't one of those guys who used fastboot to erase the entire mmc, now are you? Look back in the forums for how Rastik recovered from erasing his mmc by using the serial port. You should be able to do as he did to recover you kindle. |
|
04-13-2012, 05:05 AM | #158 | |||
Member
Posts: 14
Karma: 12366
Join Date: Mar 2012
Device: Kindle 4GNT
|
Quote:
Update: found the answer in your post https://www.mobileread.com/forums/sho...30&postcount=8 "uboot is usually stored in a small i2c or spi memory device".. So until I start messing with I²C, fastboot, uboot and bist should be safe.. Quote:
Quote:
Perhaps I could compile a new kernel (or patch some files in the partition) to workaround this stuff (similar to the xbox-linux-kernel preventing pci scans), but if the Kindle boots into a diags without problems, the mmc seems to be fine and simply restoring it shouldn't change anything. Regards, TCC Last edited by TCCPhreak; 04-13-2012 at 05:14 AM. |
|||
04-13-2012, 05:16 AM | #159 | |||
Carpe diem, c'est la vie.
Posts: 6,433
Karma: 10773668
Join Date: Nov 2011
Location: Multiverse 6627A
Device: K1 to PW3
|
Quote:
We *should* be able to build custom u-boot images that contain fastboot, and load them with MfgTool, provided we develop the custom MfgTool profiles to do this. With MfgTool, we can also boot custom linux kernels and totally custom code (perhaps even Android OS) completely over the USB cable (not using mmc). Anyway, using the fastboot MfgTool profile, the SMALL u-boot is loaded over USB, and it then loads the large u-boot with bist and fastboot from mmc. So if you erased or corrupted the part of your mmc that contains the fastboot code, you either need to use the serial port (like Rastik did), or use MfgTool with a custom profile that has not been created yet. Quote:
Quote:
Look up in the forum how Rastik recovered from erasing his entire mmc, by using the serial port. I think it was in the early kindle touch posts. Last edited by geekmaster; 04-13-2012 at 05:27 AM. |
|||
04-13-2012, 06:25 AM | #160 | |||
Member
Posts: 14
Karma: 12366
Join Date: Mar 2012
Device: Kindle 4GNT
|
Quote:
Quote:
Quote:
I really appreciate your help but I think you're missing my point: - fastboot works. - diags boots (so diags kernel is fine and diags partition is fine) but freezes after some time. - main partition cannot be written by fastboot (size limitation) and not by diags (not enough time before freezing) and even if I was able to re-flash it, I'd bet that it would still freeze with the mxc_rtc-problem on the "Boy reading under tree"-screen. I've traced the mxc_rtc into the linux-kernel where it's responsible for accessing rtc-functions on the freescape-CPU. As the kernel image is fine (there is a checksum check at booting), this problem should not arise from the filesystem/mmc. Regards, TCC |
|||
04-13-2012, 06:34 AM | #161 | |
Carpe diem, c'est la vie.
Posts: 6,433
Karma: 10773668
Join Date: Nov 2011
Location: Multiverse 6627A
Device: K1 to PW3
|
Quote:
dd if=/dev/zero of=/dev/mmcblk0p3 bs=4K count=1024 That should be quick, especially if run from RUNME.sh |
|
04-13-2012, 07:15 AM | #162 | |
Member
Posts: 14
Karma: 12366
Join Date: Mar 2012
Device: Kindle 4GNT
|
Quote:
Also, setting up the network and sshing to the kindle takes too much time. It crashes before I can run dd or copy the runme.sh. Battery is low again - it seems like one night without charger really drains it in the wrong mode. I'll have to try again, later. Regards, TCC |
|
04-20-2012, 08:29 PM | #163 |
Junior Senior Member
Posts: 18
Karma: 10
Join Date: Aug 2010
Location: Serbia, Šabac
Device: K2 & K5
|
*****
Last edited by vlamark; 04-21-2012 at 04:05 AM. Reason: wrong post, sry |
04-24-2012, 04:29 AM | #164 |
Junior Member
Posts: 4
Karma: 10
Join Date: Apr 2012
Device: KINDLE4
|
xx谢谢分享
|
05-01-2012, 08:54 AM | #165 |
Connoisseur
Posts: 58
Karma: 9096
Join Date: Apr 2012
Device: none
|
I do not understand this thread exactly.
I have a brick kindle keyboard 3g.I can access diagnos mode and usb mode. Is that mean i can ssh to kindle and debrick k3 via usb? Because i do not want to Pry open the back cover.And the serial port is not easy to solder. Thank you! |
Tags |
debricking, kindle mx50 select boot |
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
Bricked Kindle Touch; Won't boot into diags/fastboot | kerotan | Kindle Developer's Corner | 3 | 05-19-2012 10:58 AM |
Kindle Touch does not boot | marmomr | Kindle Developer's Corner | 38 | 05-16-2012 01:19 PM |
Kindle Touch select text, copy paste? | Zimmy | Amazon Kindle | 3 | 02-18-2012 08:45 AM |
Kindle Touch Won't Boot | teekay | Kindle Developer's Corner | 3 | 12-10-2011 12:51 AM |
Opus cannot boot, stuck on boot screen | baloma | Bookeen | 35 | 11-13-2010 04:20 AM |