User Tools

Site Tools


projects:crazyradio:dev_env

This is an old revision of the document!


Crazyradio development environment

The crazyradio dongle is based on a Nordic semiconductor nRF24LU1 chip. This chip contains a 8051-compatible microcontroller and is programmed using the SDCC compiler.

As of version 0.31 the dongle program must be compiled with an SDCC version < 3.0 because of some register declaration are broken with SDCC 3.

From version 0.4 the dongle firmware has been ported to SDCC 3.0. So it can be compiled out of the box without the need of an old SDCC version.

Compilation

These instruction works on a recent (as of 2012-02) linux distribution:

[crazyradio]$ export SDCC=~/sdcc/bin/sdcc
[crazyradio]$ make
mkdir -p bin
/home/arnaud/sdcc/bin/sdcc -Iinc/ --model-medium -c src/main.c -o bin/main.rel
/home/arnaud/sdcc/bin/sdcc -Iinc/ --model-medium -c src/radio.c -o bin/radio.rel
/home/arnaud/sdcc/bin/sdcc -Iinc/ --model-medium -c src/usb.c -o bin/usb.rel
/home/arnaud/sdcc/bin/sdcc -Iinc/ --model-medium -c src/usbDescriptor.c -o bin/usbDescriptor.rel
/home/arnaud/sdcc/bin/sdcc -Iinc/ --model-medium -c src/led.c -o bin/led.rel
/home/arnaud/sdcc/bin/sdcc --xram-loc 0x8000 --xram-size 2048 --model-medium bin/main.rel bin/radio.rel bin/usb.rel bin/usbDescriptor.rel bin/led.rel -o bin/cradio.ihx
objcopy -I ihex bin/cradio.ihx -O binary bin/cradio.bin
[crazyradio]$ 
  • cradio.ihx can be programmed with the USB bootloader. cradio.bin is to be used with the SPI flasher nrfprog

Documentation

projects/crazyradio/dev_env.1367106126.txt.gz · Last modified: 2015-07-15 16:30 (external edit)