Firefly Board

Support for the Firefly board. More...

Detailed Description

Support for the Firefly board.

Zolertia Firefly platform


The Firefly platform (Revision A) is a IoT Hardware development platform based on TI's CC2538 system on chip (SoC), featuring an ARM Cortex-M3 with 512KiB flash, 32KiB RAM, double RF interface (Sub-1GHz CC1200 RF transceiver), and the following goodies:

Port Features

In terms of hardware support, the following drivers have been implemented for the CC2538 System-on-Chip:

And under work or pending at CC2538 base CPU:


Install a Toolchain

The toolchain used to build is arm-gcc, to check if it is currently installed run:

$ arm-none-eabi-gcc -v
Using built-in specs.
Target: arm-none-eabi
Configured with: /scratch/julian/lite-respin/eabi/src/gcc-4.3/configure
Thread model: single
gcc version 4.3.2 (Sourcery G++ Lite 2008q3-66)

Else install from


The Firefly features a CP2104 serial-to-USB module, the driver is commonly found in most OS, but if required it can be downloaded from

For the CC2538EM (USB CDC-ACM)

The Firefly has built-in support for USB 2.0 USB, Vendor and Product IDs are the following:

VID 0x0451
PID 0x16C8

On Linux and OS X this is straightforward, on windows you need to install the following driver:

And replace the IDs accordingly.

Device Enumerations

For the UART, serial line settings are 115200 8N1, no flow control.

Once all drivers have been installed correctly:

On windows, devices will appear as a virtual COM port.

On Linux, devices will appear under /dev/.

On OS X, /dev/tty.SLAB_USBtoUARTx.

On Linux:


To emulate this board you need an updated version of renode installed, at least version 1.9.

BOARD=firefly make all emulate

More Reading

  1. Zolertia Firefly website
  2. Zolertia Wiki page
  3. CC2538 System-on-Chip Solution for 2.4-GHz IEEE 802.15.4 and ZigBee applications (SWRU319B)
  4. CC1200 sub-1GHz RF transceiver


file  adc_params.h
 Board specific configuration of direct mapped ADC.
file  board.h
 Support for the Firefly board.
file  gpio_params.h
 Board specific configuration of direct mapped GPIOs.
file  periph_conf.h
 Peripheral MCU configuration for the Firefly board revision A.