Building for NAVIO2 on RPi3


These instructions clarify how to build ArduPilot for the Navio2 board on the Navio2’s RPi3 board itself using Waf build system. These instructions assume the RPi3 has already been setup according to the manufacturer’s (i.e. Emlid’s) instructions here.

Alternatively you can follow Emlid’s instructions on how to build from source found here.


Use an ssh terminal program such as Putty to log into the Navio2 board’s RPI3.


On Raspbian Stretch, one of the Python requirements might be missing, so please install future by

pip install future

Clone the source:

git clone
cd ardupilot
git submodule update --init


Waf should always be called from the ardupilot’s root directory.

To keep access to Waf convenient, use the following alias from the root ardupilot directory:

alias waf="$PWD/modules/waf/waf-light"

Choose the board to be used:

waf configure --board=navio2


Now you can build arducopter. For copter use the following command:

waf --targets bin/arducopter

To build a helicopter, specify “arducopter-heli”. The following frame types are specified in the “Frame Type” item of the Mission Planner menu “INITIAL SETUP”.

Quad Hexa Octa Octa-Quad Y6  Heli Tri

In the end of compilation binary file with the name arducopter will be placed in ardupilot/build/navio2/bin/ directory.