Programming Seeeduino Arch(LPC11U24) on Windows, Linux or Mac
.
Fix LPC11Uxx's firmware
According to LPC11Uxx User Manual - 20.7 Criteroin for Valid User Code, The checksum of a valid firmware's first 8 entries(4 bytes) must be 0.
When we use mbed online development tool, jlink or ulink, these tools will help us take care of the checksum. But binary file generated by gcc or keil will likely not have a valid checksum. We need to fix the checksum. There is a util written by c to fix the checksum.
- for windows
- download the exe file
fix_checksum.exe new_firmware.bin
- for Linux or Mac
- download the c file
gcc -o fix_checksum fix_checksum.c
fix_checksum new_firmware.bin
Download
Seeeduino Arch(LPC11U24) doesn't have an mbed interface. It uses USB In-System-Programming(ISP) to upgrade the firmware. To enter the USB ISP mode, connect the Arch with your computer and long press its button, and then a disk named "CRP DISABLD" will appear.
- on windows
- delete firmware.bin in the "CRP DISABLD" disk.
- copy a new firmware into the disk.
- on linux
- if the disk is not mounted, mount the disk at
{mnt_dir}
dd if={new_firmware.bin} of={mnt_dir}/firmware.bin conv=notrunc
- if the disk is not mounted, mount the disk at
- on mac
dd if={new_firmare.bin} of=/Volumes/CRP\ DISABLD/firmware.bin conv=notrunc
Quick press the button to run the new firmware.
There is a script - LinuxNXPISP.sh
for Linux to fix checksum and download firmware.
Usage: LinuxNXPISP.sh new_firmare.bin
Please log in to post comments.