The pixi package manager can be used to build and flash the firmware without installing the ARM toolchain, Python or the Crazyflie client system-wide on your machine. All that is needed is to have pixi installed, following the pixi installation instructions.
On Windows, pixi isn’t supported for this project (the ARM toolchain and
ncursesdependencies aren’t built forwin-64). Use WSL instead: enable WSL, then follow the instructions below from inside your WSL Ubuntu shell.Note that
make cloadstill invokes the native Windowspython.exerather than the WSL one, so that it can access the radio USB dongle from within WSL. This means pixi only covers the compilation stage on Windows: a native Python install with the Crazyflie client library is still required to flash the Crazyflie.
All commands below should be run from the root of the crazyflie-firmware project.
Development shell
pixi shell
installs the required dependencies into an isolated, project-local environment and opens a shell with them added to PATH. This is the recommended way to use pixi: once inside the shell, the make commands described in the building and flashing instructions work unchanged, for example:
$ make cf2_defconfig
$ make menuconfig
$ make -j$(nproc)
$ make cload
Run exit (or close the terminal) to leave the pixi shell.
Alternatively, individual commands can be run through pixi, without entering a shell, by prefixing them with pixi run, for example:
pixi run make cf2_defconfig