bitcraze/crazyflie-firmware
FreeThe main firmware for the Crazyflie Nano Quadcopter, Crazyflie Bolt Quadcopter and Roadrunner Positioning Tag.
FreeFree tier
About bitcraze/crazyflie-firmware
The Crazyflie firmware is the core software powering Bitcraze's Crazyflie 2.x nano quadcopters, Crazyflie Bolt, and Roadrunner positioning tag. Written primarily in C (95%), this open-source firmware provides flight control, sensor processing, and communication capabilities. It includes support for building and flashing, API documentation generation, unit testing, and is licensed under LGPL-3.0. The repository hosts over 4,000 commits, 47 releases, and active community contributions.
Key Features
Firmware for Crazyflie 2.x, Crazyflie Bolt, and Roadrunner positioning tag
Written in C (95%) with supporting Python and C++ components
Open-source under LGPL-3.0 license
Building and flashing instructions provided
Official documentation and API documentation generation
Unit test support for contribution verification
Over 4,000 commits and 47 releases
Active community with 1.5k stars and 1.3k forks
Pros & Cons
Pros
- Open-source and free to use (LGPL-3.0)
- Well-documented with official docs and generated API docs
- Active community with frequent releases and contributions
- Supports multiple Bitcraze hardware platforms
- Unit testing framework for code contributions
- Long-standing repository with stable release history
Cons
- Limited to Bitcraze hardware (Crazyflie, Bolt, Roadrunner)
- Crazyflie 1.0 support dropped since 2017.06 release
- Requires knowledge of C and embedded systems to modify
- Not a general-purpose drone firmware; ecosystem-specific
Best For
Nano quadcopter flight control and stabilizationQuadcopter bolt control and positioningRoadrunner positioning tag applicationsDrone research and developmentEducation and hobbyist drone projectsEmbedded firmware demonstration and learning