This project contains the source code for the ACRL cf-firmware.
If you are a contributor to this code. Please see this for how the workflow should be organized and pull requests created.
- Make sure you use spaces (convert your tab characters to 2 spaces). [One indent = 2 spaces]. This is easy to set up in sublime, notepad++ or vim.
- Please make sure that there are not trailing whitespaces in your files. You
can configure you editor to set this.
- Vim:
autocmd BufWritePre * %s/\s\+$//e
to your.vimrc
- Sublime: (This)[http://nategood.com/sublime-text-strip-whitespace-save]
- Notepad++:
Alt+Shift+S
- Vim:
You'll need to use either the Crazyflie VM, the toolbelt or install some ARM toolchain.
Click here to find out how to install the toolchains.
This is the dafault build so just running "make" is enough or:
make VEH=cf
Build with:
make VEH=q2
Build with:
make VEH=bitcraze
To create custom build for a vehcile you need to create a folder with the name
of the vehile (eg: q2_manip
) in the configs
folder. You will need to
include the following files in this folder:
config.mk
: Vehicle specific flagsvehicle_params.h
: Controller params
These flags get imported as macros during complilation based on the vehicle selected.
all : Shortcut for build
compile : Compile cflie.hex. WARNING: Do NOT update version.c
build : Update version.c and compile cflie.elf/hex
clean_o : Clean only the Objects files, keep the executables (ie .elf, .hex)
clean : Clean every compiled files
mrproper : Clean every compiled files and the classical editors backup files
cload : If the crazyflie-clients-python is placed on the same directory level and
the Crazyradio/Crazyradio PA is inserted it will try to flash the firmware
using the wireless bootloader.
flash : Flash .elf using OpenOCD
halt : Halt the target using OpenOCD
reset : Reset the target using OpenOCD
openocd : Launch OpenOCD
-
Use
cload
to quickly flash the crazyflie:make VEH=Q2 && make cload
Install crazyflie-clients-python to use this feature.