top of page

Getting Started with ArduPlane on the VOXL 2

Ardupilot might not be the first thing you think of when you think about the VOXL 2, but the powerhouse companion computer works with either PX4 or ArduPilot natively. With the advent of BVLOS in the United States inching ever closer, we thought it would be a good time to showcase how you can get ArduPlane (ArduPilot for fixed-wings, flying wings, and VTOLs) running on a VOXL 2.


Feel free to follow along with tutorial in the video or the written version below!



Prerequisites

  • VOXL 2

  • QGroundControl (QGC) ground station software

  • RC transmitter configured

  • Debian or Ubuntu Linux distribution


Download ArduPlane Firmware

Head on over to the firmware section of ArduPilot website, and into the Plane/latest/QURT directory.

ree

There you'll see the voxl-ardupilot_ArduPlane_{{VERSION}}_arm64.deb. Download that now.


Push the .deb package with this command:

adb push [arduplane-package.deb] /data/


That's going to push our package into the /data directory, so let's navigate to that.

adb shell


cd /data


From here, we can actually install the package.

dpkg -i [arduplane-package.deb]


ree

All of this is easy so far, but this step is very important. We need to disable PX4 before starting up ArduPilot.


systemctl stop voxl-px4

...

systemctl restart voxl-ardupilot

To enable this at boot, so we aren't reliving this loop, issue these commands:

systemctl disable voxl-px4

...

systemctl enable voxl-ardupilot


Testing in QGroundControl (QGC)


One of the awesome parts of the open source drone ecosystem is that QGC and MAVLink work for both of the large open source autopilot software projects available. If you've followed our other tutorials, QGC should be very familiar then.


ree

Connect to QGC and you should have a connection to your VOXL 2, just as if you were running PX4.


Testing Servos

In Manual mode, you should be able to move and test your control surfaces. Navigate to Vehicle Setup>Parameters and run a search on "servo". The servos will be mapped according to how you have them wired. In our case, servo1 is mapped to ElevonRight, which we can confirm on the SERVO1_FUNCTION parameter in the readout.


For testing purposes, we set our MIN and MAX to the extremes and the TRIM to the middle of the two values. After setting these parameters, the servo may not be exactly centered, so physically readjust your servo arms so that when in Manual mode, control surfaces are perfectly level. If you need to increase a value if things aren't working in testing, try raising the MIN value first and then maybe reduce the TRIM down to that new floor value so you are starting at 0 throttle when you arm.


Fly By Wire Flight Mode Configuration

We recommend using FBW for the best flight performance. Back in the parameter dashboard, look for 'ROLL_LIMIT_DEG'. If you are noticing instability during flights, you can try reducing this value.


Pre-Flight Checks

  1. Manual Mode Test:

    • Switch to Manual mode

    • Verify all control surfaces respond correctly to transmitter inputs

    • No arming required for servo movement


  2. Stabilize Mode Test:

    • Switch to Stabilize mode

    • Tilt the drone manually - servos should move to counteract the movement

    • This tests the flight controller stabilization without arming


RC and Calibration

RC connection works the same as with PX4, but calibration works differently with ArduPilot compared to PX4. Follow the standard QGC calibration instructions for ArduPilot and you should be alright.


Conclusion

Setting up ArduPlane on the VOXL 2 is really easy, but the nuances of testing a fixed-wing do differ from what you may be used to if you’ve only run quadcopters on PX4. We hope this guide and the tips will help you get up and running with your fixed-wing ready for long-distance flights! Be sure to hit us up on social media or fill out the contact form if you have any questions related to the tutorial.



 
 
 
bottom of page