Difference between revisions of "Didj BootLoader Firmware Updating"
(Created page with 'This is a method that should work with nothing more than USB connectivity to update the Didj's Bootloader and Firmware. When starting up the Didj looks for new firmware and bootl…') |
|||
Line 1: | Line 1: | ||
− | This is a | + | This is a way to manually upgrade your firmware and bootloader. |
+ | |||
+ | == Programs Needed == | ||
+ | Terminal program, Hyperterminal or equivalent | ||
+ | |||
+ | == Hardware Needed == | ||
+ | UART connection | ||
+ | |||
+ | USB Connection | ||
== Firmware Update == | == Firmware Update == | ||
+ | This requires you create a folder with contents similar to the firmware-LF_LF1000 folder in the lfp packages, the folder name should start with "firmeware-", or if you want it should work as an lfp extension zip archive. Place the folder or archive in the /Didj/Base directory, there might be one there already. This can be done over the USB connection. | ||
− | + | In the terminal run the command 'fwcheck' it should return a result /Didj/Base/firmware-<your name> then run 'fwupdate /Didj/Base/firmware-LF_LF1000/ > /dev/console' it should have an output like this. | |
− | |||
− | |||
− | + | # fwupdate /Didj/Base/firmware-LF_LF1000/ > /dev/console | |
+ | Found /Didj/Base/firmware-LF_LF1000/ | ||
+ | Package Integrity Test Passed | ||
+ | Installing kernel.bin in Kernel1 (mtd5) | ||
+ | Kernel install successful. | ||
+ | Installing erootfs.jffs2 in Linux_RFS1 (mtd6) | ||
+ | Rootfs install successful. | ||
+ | Switching from RFS0 to RFS1 | ||
== Bootloader == | == Bootloader == | ||
− | + | Bootloader is exactly the same as firmware, but the folder is named bootstrap-LF_LF1000, the name of the folder you put on the Didj must start with 'bootstrap-'. In the terminal run 'blcheck' and make sure it returns /Didj/Base/bootstrap-<your name> then run 'blupdate /Didj/Base/boostrap-<your name> > /dev/console' and it should return output like. | |
− | + | # blupdate /Didj/Base/bootstrap-LF_LF1000/ > /dev/console | |
+ | Found /Didj/Base/bootstrap-LF_LF1000/ | ||
+ | Package Integrity Test Passed | ||
+ | Installing lightning-boot.bin in LF1000_uniboot (mtd0) | ||
+ | Bootloader install successful. | ||
− | |||
− | if | + | == ToDo == |
+ | fwupdate and blupdate will run automatically if fwcheck and blcheck return results when the Didj boots up, but only if the Didj's state is set to FIRMWARE_UPDATE_STATE. I'd like to figure out how to set this, so that the terminal connection will not be needed. It looks as if LFConnect sets the DOWNLOAD_IN_PROGRESS_STATE while updating the Didj, when it then runs the fwcheck and blchecks. Perhaps a custom scsi command is needed. | ||
== Caution == | == Caution == | ||
It is possible to brick your Didj messing with these files, I recommend you know what you are doing, before replacing these files. | It is possible to brick your Didj messing with these files, I recommend you know what you are doing, before replacing these files. |
Revision as of 01:42, 14 March 2010
This is a way to manually upgrade your firmware and bootloader.
Programs Needed
Terminal program, Hyperterminal or equivalent
Hardware Needed
UART connection
USB Connection
Firmware Update
This requires you create a folder with contents similar to the firmware-LF_LF1000 folder in the lfp packages, the folder name should start with "firmeware-", or if you want it should work as an lfp extension zip archive. Place the folder or archive in the /Didj/Base directory, there might be one there already. This can be done over the USB connection.
In the terminal run the command 'fwcheck' it should return a result /Didj/Base/firmware-<your name> then run 'fwupdate /Didj/Base/firmware-LF_LF1000/ > /dev/console' it should have an output like this.
# fwupdate /Didj/Base/firmware-LF_LF1000/ > /dev/console Found /Didj/Base/firmware-LF_LF1000/ Package Integrity Test Passed Installing kernel.bin in Kernel1 (mtd5) Kernel install successful. Installing erootfs.jffs2 in Linux_RFS1 (mtd6) Rootfs install successful. Switching from RFS0 to RFS1
Bootloader
Bootloader is exactly the same as firmware, but the folder is named bootstrap-LF_LF1000, the name of the folder you put on the Didj must start with 'bootstrap-'. In the terminal run 'blcheck' and make sure it returns /Didj/Base/bootstrap-<your name> then run 'blupdate /Didj/Base/boostrap-<your name> > /dev/console' and it should return output like.
# blupdate /Didj/Base/bootstrap-LF_LF1000/ > /dev/console Found /Didj/Base/bootstrap-LF_LF1000/ Package Integrity Test Passed Installing lightning-boot.bin in LF1000_uniboot (mtd0) Bootloader install successful.
ToDo
fwupdate and blupdate will run automatically if fwcheck and blcheck return results when the Didj boots up, but only if the Didj's state is set to FIRMWARE_UPDATE_STATE. I'd like to figure out how to set this, so that the terminal connection will not be needed. It looks as if LFConnect sets the DOWNLOAD_IN_PROGRESS_STATE while updating the Didj, when it then runs the fwcheck and blchecks. Perhaps a custom scsi command is needed.
Caution
It is possible to brick your Didj messing with these files, I recommend you know what you are doing, before replacing these files.