crazyflie-lib-python

We’re happy to announce that release 2026.04 is now available. This update introduces a dedicated CRTP port for the supervisor subsystem and a radio startup gate for more reliable early connections, along with a number of smaller bug fixes and quality-of-life improvements. Alongside the release, we’re launching a new crazyflie-demos repository with self-contained examples demonstrating real-world use cases. Thanks to our community contributors for their valuable additions to this release.

Major changes

Demos repository
The new dedicated crazyflie-demos repository hosts more complex examples that combine features or subsystems to demonstrate best practices and real-world use cases. Every demo in the new repository is self-contained, with pinned software versions.

CRTP supervisor port
A new dedicated CRTP port provides direct access to the supervisor subsystem, consolidating supervisor-related commands that had historically ended up on unrelated ports. Arming, crash recovery, and emergency stop commands now go through this port instead of being spread across the platform and localization ports. The old ports still accept these commands for backward compatibility. The new port also exposes supervisor state (armed, flying, tumbled, crashed, etc.) through a direct query, so clients no longer need to set up a log block just to check supervisor status.

Radio startup gate
The STM32 now signals the nRF51 when it’s ready to receive radio packets. Previously, if a client connected during boot, packets could arrive before the firmware was ready to handle them, causing lockups.

Lighthouse calibration saving fix
Fixed a bug that made saving lighthouse calibrations unreliable: a signature mismatch in a memory-read failure callback could leave the memory subsystem locked, blocking further reads until reconnect.

Release overview

crazyflie-firmware release 2026.04 GitHub

crazyflie2-nrf-firmware release 2026.04 GitHub

cfclient (crazyflie-clients-python) release 2026.4 GitHub, PyPi

cflib (crazyflie-lib-python) release 0.1.32 GitHub, PyPi

We’re happy to announce that release 2025.09 is now available. This update includes Python 3.13 support and improved battery voltage compensation, along with enhanced trajectory control capabilities. The release also features substantial stability and architectural work that lays the groundwork for upcoming features and products. Thanks to our community contributors for their valuable additions to this release.

Major changes

Python 3.13 support
Added support for Python 3.13, with preparations already in place to ensure faster compatibility when Python 3.14 releases.

Improved battery voltage compensation
Enhanced voltage compensation for Crazyflie 2.1, 2.1+, and 2.1 with thrust upgrade kit provides more consistent flight performance across battery discharge cycles. Crazyflie Brushless battery voltage compensation coming soon. Thanks to @Rather1337 for this contribution.

Manual flight setpoint packet
New generic commander packet type for manual flight that allows dynamic switching between Angle and Rate modes for roll and pitch without re-flashing the firmware.

Fully relative trajectories
Trajectories can now be initiated relative to the drone’s current yaw, not just position. This enables fully relative trajectory execution where subsequent trajectories maintain the drone’s current orientation. Thanks to @johnnwallace for this contribution.

Modular deck discovery architecture
Replaced OneWire-only deck discovery with a modular backend system that supports multiple discovery protocols. This enables future deck communication methods while maintaining full backward compatibility with existing decks.

Release overview

crazyflie-firmware release 2025.09 GitHub

cfclient (crazyflie-clients-python) release 2025.9 GitHub, PyPi

cflib (crazyflie-lib-python) release 0.1.29 GitHub, PyPi