Didj Boot From UART

This explains how to boot your Didj over a UART connection, using the standard lighting-boot.bin uboot.bin and kernel image.

Software Needed
Lightning-boot 1.4+

u-boot

Terminal program(s) - (ex: hyperterminal) that can send plain binary, xmodem and kermit

zImage kernel file for Didj Linux

Hardware Needed
Ability to make a Serial connection to the UART pins on the Didj, and using a resister, 470 Ohm works well, ability to attach the NAND pins D5 to ground. Common methods are a breakout board, or soldering wires to the cartridge connector pins.

Step 1 - Lightning Boot
1. Connect your serial adapter between the Didj and your computer. Configure your terminal to baudrate:19200 bits:8 Flow Control:none Stopbits:1 Parity:none Then on the Didj pull D5 low.

2. Open the connection in the terminal program, and hold down the power button on the Didj.

3. Using the Send Text or plain method, open lightning-boot UART version (ex. lightning-boot-1.4-UART.bin), nothing will be displayed, but usb/rs232 adapter will show activity, if its got an LED to do so.

4. Once loaded you should see a blue screen with a menu, you can let off the power button (if you are loading an older version of lightning boot, there will be no blue screen, it will stay blank and you will need to keep the power button held down through the entire process). There is two ways to continue from here. If you have an SD card connected you can use the lightning boot 1.4+ menu to load a zImage or u-boot.bin off of it and be finished here. Otherwise if you would like to continue loading over UART or don't have lightning boot 1.4+ continue to step 2.

Step 2 - U-Boot
1. Switch your terminal emulator to baudrate:115200 bits:8 Flow Control:none Stopbits:1 Parity:none and use Xmodem transfer method to send u-boot.bin. Press send, then press a button on the Didj to initiate the transfer.

Step 3 - Kernel
1. Once uboot has been sent there'll be a terminal prompt, enter. LF1000# 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 LF1000# setenv loadaddr 1800000 LF1000# loadb

2. Then send zImage file using the Kermit transfer method once finished there will be another terminal prompt, enter. LF1000# go 1800000

3. This will execute the kernel and you should now see the linux kernel uncompressing then booting in the terminal console.