Link Search Menu Expand Document

VOXL 2 - D0015 Architecture (SoloGood Delta Fixed Wing)

Table of contents

  1. VOXL 2 - D0015
    1. Hardware
      1. Summary
      2. Components
      3. HW Block Diagram
  2. HW Theory of Operation
    1. Power
    2. Flight Controller
    3. SW Setup - SDK 1.1.3-1 or later
      1. VOXL Software
        1. voxl-modem
        2. voxl-px4
      2. PX4 Software
        1. px4-Parameters
        2. ESC/ Servos Setup
      3. Calibrations
        1. AirSpeed Sensor
        2. GPS/Mag

VOXL 2 - D0015



The D0015 configuration is used in the base SoloGood Delta Wing reference drone model.

  • SoloGood Delta Wing - Fixed Wing Family
  • M0054 - VOXL 2 Board
  • M0048 - Microhard Modem
  • M0065 - VOXL 2 IO Board
  • M0022 - PWM Breakout Board
  • mRo I2C Airspeed Sensor - Airspeed Sensor
  • MAX-M10S GPS Module - GPS Module
  • Lightware SF000 - Distance Sensor (via UART)
  • Ghost Atto - RC Controller


The following core hardware is used for that configuration (note in this list we are excluding the motor, Air Speed Sensor, battery, and transmitter):

Part NumberKit Contents
MDK-M0054-1–1-C11M0054 - VOXL 2
MDK-M0041-1-B-01VOXL Power Module v3 and cable
MDK-M0065-1-00VOXL IO
MDK-M0022-1-01PWM Breakout Board
MDK-M0048-3-01VOXL 2 Microhard Addon
OEM-M0048-1Microhard Modem
M10-5883GNSS GPS Module & Compass
MCBL-0008912-pin JST to ESC, GPS JST + RC 4-pin
MCBL-00031Passthrough Wires

HW Block Diagram

Below describes the compute HW block diagram for the D0015 configuration.


HW Theory of Operation


The VOXL Power Module (MDK-M0041) accepts 2S-6S batteries as input, and passes this straight through to the ESC and also regulates the voltage down to 5VDC.

Output form the power module (M0041-J1), the 5V/6A rated regulator powers VOXL 2 (MDK-M0054) and provides power monitoring information over I2C (to voxl-px4 over DSP, not apps_proc) through the power connector (M0054-J4).

Flight Controller

The VOXL 2 IO Board (MDK-M0065) communicates over UART to voxl-px4 between M0065-J4 and M0054-J18.

The RC is Ghost Atto, which can use GHST protocol or SBUS protocol. The Atto is connected to the VOXL 2 IO Board (MDK-M0065) on port J3. Setting Ghost to SBUS will be covered in the SW Setup section below.

The VOXL 2 GPS/Mag/Airspeed bind assembly is a possible solution for GPS (UART) Mag (I2C), and Air Speed Sensor (I2C). Both communicate to voxl-px4 over a UART and two I2C ports (exposed from DSP, not apps_proc) This kit uses Ublox MAX-M10S and I2C Airspeed Sensor form mRo.

Optionally: A LightWare SF000 can be attached using UART, this will require modifying the fixed wing’s frame to allow for the Lidar to see out. If the lidar is being used, a connection to the VOXL 2 (M0054-J19) can be made.

SW Setup - SDK 1.1.3-1 or later

VOXL Software


Documentation on configuring the RC can be found here.

Documentation on the Hardware setup for the Microhard setup can be found here.

Communication between the fixed wing and ground station should be done through the Microhard Modem Hat. Which needs to be configured on the VOXL 2 using the command voxl-configure-modem.

VOXL 2:/$ voxl-configure-modem 
Starting interactive mode
What type of modem are you using?

1) v2	      3) dtc	    5) quectel
2) microhard  4) doodle	    6) em9191
#? 2
Enter the IP address you would like to the VOXL to use on the Microhard network:
Note: The chosen IP address must be of the form: 192.168.168.XXX

Default -

1) default
2) custom
#? 1

This will set the IP of the VOXL 2 to the default IP which is


Using the VOXL 2 IO board is necessary to control the ESC and the Servo Motors for the fixed wing. This requires voxl-px4 to be configured differently then ModalAI drones like the Starling, Sentinel, etc. Documentation on how to setup the VOXL 2 IO board can be found here.

PX4 Software


At the time of writing this, voxl-px4 does’t have a pre-configure command for fixed-wings. so we will have to change some of the specific parameters on voxl-px4 through QGC.

At this point, it is assumed that the drone is connected accessible from QGC. If you are not using a lidar then you can skip steps 5 & 6.

  1. Open QGC and connect to the Drone.
  2. Go into the Airframe Tab.
  3. Select the Flying Wing option.
  4. Click the drop-down arrow and select Generic Flying Wing
  5. Go in to Parameters Tab.
  6. Using the Search Bar, search and change the following parameters:
    • SENS_EN_SF0X to LW20/c

ESC/ Servos Setup

  1. Open QGC and connect to the drone.
  2. Go into the Actuator Tab.
  3. Under Actuator Outputs, select VOXL 2 IO Output
  4. Assign the PWM channels to the respective motors.


AirSpeed Sensor

  1. Open QGC and connect to the Drone
  2. Go into the Sensors Tab
  3. Select the Airspeed option.
  4. Follow the instructions on the screen.
  5. Avoid the Airspeed Sensor getting any wind until prompted to.
  6. when prompted blow into the airspeed sensor to create wind readings.


  1. Open QGC and connect to the Drone
  2. Go into the Sensors Tab
  3. Select the Compass option.
  4. Follow the instructions on the screen yawing the drone in each of the orientations.

Other Services

Below are links and summaries of the other services that are expected to be running by default:

voxl-mavlink-serverprovides an MPA interface to perform MAVLink communication to/from a PX4 flight controller over UART or UDPIP/UART/MPA
voxl-modemActs as the main hub managing communication between VOXL MPA services and autopilots such as PX4 and ArdupilotIP/MPA
voxl-portalembedded web server with ever expanding feature setMPA/HTTP/REST
voxl-px4QVIO processing serverMPA
voxl-wait-for-fsHelper service to flush files to disk on cycleNA