Skip to content
Snippets Groups Projects

Quadcopter

The quad/ directory contains all code that programs the quadcopter. This includes any C libraries we have written, any HDL to program the Zybo on the quad, and the XSDK main project that runs on the Zybo.

The main quad application is written as a library, and located at:

src/quad_app/quad_app.c

The main XSDK project that actually runs on the Zybo is located at:

xsdk_workspace/modular_quad_pid/main.c

Building

Libraries

To build the libraries:

make libs

You can also build each library individually inside their respective project directories:

cd src/<project> && make

XSDK Project

To build the XSDK project that runs on the Zybo (only works on co3050):

make zybo

To build the Zybo boot image for the SD card (only works on co3050):

make boot

Disclaimer: The make boot target currently does not work

Testing

Libraries

We try to write unit tests for the libraries we've written, since they are not tied to the Zybo platform and are able to be run in our CI environment.

make test

You can also run the test for specific library inside its respective project directory:

cd src/<project> && make test

XSDK Project

The XSDK project implements the hardware interfaces used in the quad app. There are tests can be executed from the main function in that XSDK project. These tests essentially test each hardware interface.