Great work pokey9000! Very interesting what you are doing.
A couple of questions if you can spare the time.
1) What bootmode is it that shorting the pin enables?
2) As I have a factory cable, would this do the same without popping the case?
Thanks. This bootmode isn't the same as you set with "idme". This boot mode (called SYS_BOOT) tells the CPU what kind of device to boot from. Stock bootmode is SYS_BOOT[5:0]=0b110110 which equates to MMC2(1)->USB->UART->MMC1. That is, it will try to find a valid bootloader on internal flash, then try USB, UART, and (nonexistant) second eMMC/SD slot. This must be for factory programming, where the Fire is assembled with a blank flash, and the first boot allows them to do a USB boot to shoehorn in the flash contents.
In correction to what I said earlier, this SYS_BOOT is one bit away from having USB boot first, then MMC2(1) boot last. If we could identify SYS_BOOT[5] and short it low permanently (remove/replace a resistor) then this would boot up just like the Nooks, where USB is tried before the internal flash. So it still needs soldering, but only a little once we find the correct signal.
The factory cable doesn't do the same thing. Amazon's version of the bootloader is rigged to look for the fastboot cable's presence. If it sees the ID pin tied to 5V, it will go into fastboot mode.
Since the fastboot cable behavior is in the bootloader, and Amazon can update the bootloader with an update (and has in 6.2 and 6.2.1), they can potentially lock out the fastboot cable method. I very much doubt this will happen since I think Amazon uses the fastboot cable for in-factory software updates and diagnostics.
The fastboot cable is definitely safer as long as you don't try to format everything or flash any untested bootloaders.
Also, and this is off topic and possibly already asked and answered, but I'm curious of your thoughts of the possibility to just select boot from usb on power up from the device, maybe through a utility such as TWRP or some other. Seems that if that could be done, one could greatly increase the size of storage, effectively circumventing the current internal storage limitation. And since the usb is removable and rewritable, you could revert to an earlier version archived on a pc if any updates get pushed that break something.
USB in this case has the Fire acting as a USB device to a host PC. It won't boot off of a thumb drive or whatever. It would be great if that were the case...
Last edited: