Updating Squeezebox Controller Boot Loader
From SqueezeboxWiki
Contents |
Updating Boot Loader
The below documents the process of updating the boot loader uboot on a Squeezebox Controller on a:
- Windows-based PC running HyperTerminal
- Keyspan USA-19HS USB-DB9 serial cable
- Squeezebox Controller breakout board serial-USB board
This process may render your Squeezebox Controller inoperable. Logitech assumes no responsibility for anyone following this procedure.
Step 1: Getting Ready
To get started, you need to copy this file to your Windows PC:
- Boot loader uboot.bin Media:uboot.zip
You then need to do the following:
- Plug in the Keyspan 19HS into a USB port on your PC.
- Connect the breakout board's DB9 serial port to the Keyspan
- Remove the black plug on the bottom of the Squeezebox Controller
- Plug in the breakout board into the bottom of the Controller
Step 2: Setting up HyperTerminal
- Open Hyperterminal
- Name your connection
- In the Connect To Window choose the “connect using COM3” option
- Press the configure button then change the following:
- Bits per second: 115200
- Flow control: Xon/Xoff
- Press OK
Step 3: Writing uboot to Flash
Power cycle Squeezebox Controller. When you see
Hit any key to stop autoboot
quickly hit any key, you’ll only have a second. If you are not quick enough power cycle and try again.
At this point the screen should look like:
U-Boot 1.0.0 (Jun 5 2007 - 15:05:11) U-Boot code: 33E00000 -> 33E1CB94 BSS: -> 33E207CC IRQ Stack: 33e417c8 FIQ Stack: 33e427c8 DRAM Configuration: Bank #0: 30000000 64 MB NAND:Nand Flash Probe... Nand Flash Configuration: Page Size :512 Bytes Oob Size :16 Bytes Block Size :16 KB *** Warning - bad CRC, using default environment In: serial Out: serial Err: serial Hit any key to stop autoboot: 1 ___ 0 SMDK2413 #
The important part here is the SMDK2413 # at the end.
Then carefully enter:
nande a 4096
It should say:
StartBlock 10 (0xa) : Size 16534 (0x4096) Total Erase Blocks 1 (0x1)
Then carefully enter:
loadb 30008000
It should say:
## Ready for binary (kermit) download to 0x30008000 at 115200 bps...
In HyperTerminal click on the Send icon:
Select the u-boot.bin file, choose Protocol Kermit and hit the Send button:
You will get a progress box, it should take about 1 minute 30 seconds to send the file.
Then carefully enter:
nandw 0 28000 30008000
It should say:
NAND Flash writing Source base address =0x30008000 Target start block num =0 Target size =0x28000 block writed : 0 1 2 3 4 5 6 7 8 9
Step 4 Verifying Update
Power cycle Squeezebox Controller. When you see
Hit any key to stop autoboot
quickly hit any key, you’ll only have a second. If you are not quick enough power cycle and try again.
At this point the screen should look like:
U-Boot 1.0.0 (Jun 5 2007 - 18:06:52) U-Boot code: 33E00000 -> 33E1D038 BSS: -> 33E20C74 IRQ Stack: 33e41c70 FIQ Stack: 33e42c70 DRAM Configuration: Bank #0: 30000000 64 MB NAND:Nand Flash Probe... Nand Flash Configuration: Page Size :512 Bytes Oob Size :16 Bytes Block Size :16 KB *** Warning - bad CRC, using default environment In: serial Out: serial Err: serial Hit any key to stop autoboot: 1 ___ 0 Jive #
Enter:
boot
Squeezebox Controller should now restart normally. If not, then you may have rendered your Controller inoperable.