Support for the fox board. More...
Support for the fox board.
MCU | ST2M32F103REY – 32-bits |
---|---|
RAM | 64KiB |
Flash | 512KiB |
radio chipset | AT86RF231 |
a IEEE802.15.4-compliant radio at 2.4 GHz |
Device | ID | Supported | Comments |
---|---|---|---|
MCU | STM23F103REY | partly | Energy saving modes not fully utilized |
Low-level driver | GPIO | yes | |
PWM | no | ||
UART | full | ||
I2C | yes | ||
SPI | yes | one SPI device for now | |
USB | no | ||
RTT | yes | in progress | |
RNG | no | no HW module | |
Timer | full | ||
Radio Chip | AT86RF231 | partly | will be remodelled soon |
The current implementation of the radio driver for the at86rf231 chip uses the basic operation modes. This gives you basic sending and receiving functionality but no hardware address filtering and no auto-ACKs etc. Due to the fact this radio device is an IEEE 802.15.4 compliant device it supports radio channels from 11 to 26. When trying to set a channel out of range the driver returns an error and prints a message with DEVELHELP
enabled.
See ARM Family
Working: gcc-arm-embedded gcc-linaro
In order to program (flash) and debug the node you need OpenOCD and an ARM version of gdb (arm-none- eabi-gdb
), which provided by most toolchains. Most Linux distributions provide also a package for OpenOCD. The required configuration files are provided by RIOT. When starting the debugger with make debug BOARD=fox
GDB connects to openocd, loads the elf-file and puts the MCU into halt state. Before setting breakpoints it is sometimes needed to use the following workflow
For best debugging experience also change the -Os
flag in Makefile.inlcude
's CFLAGS
variable to -O0
.
For debugging you need to open a terminal. Here you simply have to call make debug
- assuming that the current directory is your application directory. It establishes an openocd connection to the device and starts gdb connected to the openocd instance. For example, it should look something like this
The node will reboot and you can continue to use gdb
like you're used to. In some cases it seems necessary to prepend a monitor reset run
before executing continue. In general you can use openocd commands prepended by monitor
. In the case the node crashes it can be reset with the following sequence
For terminal output on OS X (make term
) you need to install a driver: http://www.ftdichip.com/Drivers/VCP.htm http://www.ftdichip.com/Drivers/VCP.htm
Files | |
file | board.h |
Board specific definitions for the fox board. | |
file | periph_conf.h |
Peripheral MCU configuration for the fox board. | |