build
This is an old revision of the document!
Table of Contents
The released source does NOT contain the full firmare of r0ket for the camp. If you build your own version some of the hidden functionality may be lost. If you want to recover to the original state we will provide a flash service on site.
Build environment
1. Compiler
- Run installer
chmod +x arm-2011.03-42-arm-none-eabi.bin ./arm-2011.03-42-arm-none-eabi.bin
On ubuntu, the installer complains that /bin/sh points to /bin/dash and not /bin/bash. Change it like proposed (with 'sudo dpkg-reconfigure -plow dash'). You can change it back to dash later, if you like.
- add compiler to your path (eg. ~/.bashrc)
export PATH=$PATH:<pathtocodesourcery>/Sourcery_G++_Lite/bin/
2. Source
The code for r0ket ist based on the (BSD-licensed) microBuilder-library for the LPC1300-family. High-level functions are provided to print and paint on the display, access the filesystem on the dataflash, the 2.4 GHz RF interface, etc.
- Install git
sudo apt-get install git-core
- Clone git repository
git clone git://github.com/r0ket/r0ket.git
3. Build
cd firmware make
4. Deploy
The LPC1343 has a USB-ISP, it can be booted as an USB storage device, and the firmware can be copied as a file. Unfortunately, this only works on Windows. On Linux, the firmware has to be directly written to the device. Additionally, a bug in the ROM causes the CPU to hang for 20 seconds when entering the bootloader. To make development more convenient, the autoflash tool monitors the USB for r0kets in ISP-Mode and automatically flashes the last built firmware. An “ISPAndReset()”-function in the library enables the user to reset the r0ket to ISP-mode and circumvent the 20 second delay.
- Install udev rule
sudo cp tools/bootloader/42-nxp-flash.rules /etc/udev/rules.d/ sudo /etc/init.d/udev restart
- start autoflasher
cd src ../tools/bootloader/autoflash
- Method 1
- Power off r0ket
- Press and hold button X
- Connect r0ket via USB
- Method 2
- Connect r0ket via USB
- Select menu option “Invoke ISP”
build.1308573786.txt.gz · Last modified: by iggy
