--- title: Developing Firmware ---

Developing Firmware

You'll need a toolchain that supports ARM Cortex-M3. The Makefiles in Project Ubertooth are designed for GCC and a Linux-based toolchain, such as the free installation provided by Codesourcery, but it should be possible to compile firmware with any development environment for the Cortex-M3. We've had the most luck with the "IA32 GNU/Linux TAR" package on this page. Just unpack the archive and add the arm-2011.03/bin directory to your PATH.

Although firmware source can be found in the release downloads, you will probably want fresh code from svn.

Ubertooth Zero and Ubertooth One are not binary compatible. The default target is Ubertooth One. If you are compiling firmware for Ubertooth Zero, set the environment variable BOARD = UBERTOOTH_ZERO.