Didj UART Boot
To perform UART boot, you must:
Make a serial connection to the UART pins on the Didj. To do this you can use a breakout board, or you can solder wires directly to the cartridge connector pins. Pull cartridge pin D5 to ground, via a pulldown resistor. (470Ω, 2200Ω, and 3300Ω are known to work).
Terminal program(s) - (ex: cutecom) that can send plain binary, xmodem and kermit
zImage kernel file for Didj Linux
sudo apt-get install lrzsz ckermit cutecom
Step 1 - Lightning Boot
- Connect your Didj UART Console cable, and connect D5 to ground via the resistor mentioned above. Do not power up your Didj yet.
- Run cutecom, select the connection to your device (ex: /dev/ttyUSB0), and set the connection params to 19200 8N1.
- Select a download type of Plain.
- Click Send File- and in the next dialog select your lightning-boot.bin but do not send it yet.
- Pull the power switch on the didj down and hold it down.
- While doing this, send the lightning-boot file from Cutecom, while continuing to hold the Didj power switch down as it loads.
- Upon completion, the lightning boot screen will display on your Didj; at which time you may let go of the power button (and massage your finger). With lightning-boot 1.4+ you can use the menu to load zImage or u-boot.bin off an SD card, if you don't have those or would like to continue booting over UART, continue.
- Disconnect the connection (but dont leave cutecom)
Step 2 - U-Boot
- Change the baud rate to 115200 and then reopen the connection to the device.
- Select a download type of XModem, click Send File and select/open the U-Boot.bin file. (This will queue up the file for transmission.)
- Trigger the transmission of this file by pressing any button on the device.
When U-Boot is loaded you will see
- 4. Quit cutecom.
Step 3 - Kernel
- 1. From the command line, run Kermit:
- 2. Paste the following at the
C-Kermit>prompt once Kermit launches: (TODO - Command Line Params)
set modem type none set line /dev/ttyUSB0 set carrier-watch off set speed 115200 connect
- This takes you to the u-boot
- 3. Enter the following:
setenv bootargs mem=18M init=/sbin/init console=ttyS0,115200 root=31:06 ro rootflags=noatime rootfstype=jffs2 ubi.mtd=Brio ubi.mtd=prg_Brio ubi.mtd=Cartridge ubi.mtd=EXT
- Followed by:
setenv loadaddr 1800000 loadb
- 4. Type ctrl-backslash and type letter c. This returns you to the
- Enter the following to send your image:
robust cd /to/wherever/your/zImage/is send zImage
The file is sent. When done, kermit returns you to the
- 5. Reconnect to u-boot and boot the image you just sent:
LF1000 # go 1800000
If you see boot messages filling your console display, you have successfully performed a UART boot.