Link Search Menu Expand Document

Doodle Labs User Guide

Table of contents

  1. Overview
  2. Requirements
    1. Hardware
    2. Software
      1. VOXL2
      2. VOXL
  3. Hardware Setup
    1. VOXL Hardware Setup
      1. Using M0078
    2. Ground Station Hardware Setup
  4. Software Setup
    1. VOXL2 Software Setup
    2. Ground Station Software Setup
  5. Connecting to QGroundControl

Overview

VOXL and VOXL2 support the ability to quickly and easily add a Doodle Labs wireless connection to a Ground Control Station. The following guide provides you the necessary details to do so.

Below are some helpful link from Doodle Labs:

Doodle Labs Technical Library

Doodle Labs Datasheets

Doodle Labs Helix Datasheet

doodle-labs-modem

Requirements

Hardware

The following ModalAI hardware is required to establish a Doodle Labs network connection between a VOXL-based product and a host device (computer, tablet, etc.).

Part NumberDescriptionLink
MCCA-M0078VOXL USB Expansion Board v2Purchase
MCCA-M0041Power Module v3Purchase
M0006, M0019, or M0054VOXL, VOXL-Flight, or VOXL2Purchase links: VOXL2, VOXL-Flight, VOXL

Software

In order for the required drivers to be available on target, the following software is required:

VOXL2

VOXL

Hardware Setup

Below is a list of required hardware in order to create a connection between a VOXL-based device and a ground control station via. Doodle Labs Helix modems.

QTYPart NumberDescriptionNotes
1MCCA-M0078-2VOXL USB Expansion Board v2Purchase
1MCCA-M0041-BPower Module v3Purchase
1M0006, M0019, or M0054VOXL, VOXL-Flight, or VOXL2Purchase links: VOXL2, VOXL-Flight, VOXL
1Ground station deviceComputer, laptop, etc.Device must have smsc95XX driver support
1Power sourcePower supply for ground station modem5V Operating Voltage
1USB-C cableUSB-C to USB on specified port on ground stationUSB-C, A, etc.
2Helix modemDoodle Labs Helix modemDescription
1Helix breakout boardGround station side, provide power and USB5V Input
2Helix 12-pin cableModem data / power cables1 modified (see below), 1 stock
2Helix AntennasCables, antennasAttenuators for desktop development only

Below are the pinout details for the modified 12-pin modem to 4-pin JST cable, or use MCBL-00068-1:

Pin #NamePin #Name
15-V Input1VCC
2---
3GND4GND
4---
5---
6---
7---
8---
9---
10---
11USB-Dev-D-2D-
12USB-Dev-D+3D+

VOXL Hardware Setup

Using M0078

The USB Expansion Board with Fastboot v2 exposes a USB 2.0 port on VOXL and VOXL2, and provides up to 5A to peripherals.

m0054-m0078-helix

doodle-voxl-setup

Pictured above for your reference is a VOXL2 flight deck with all cameras connected and Doodle Labs Helix connected.

IMPORTANT! Before modifying hardware setup, ensure power is off or disconnected.

  • Attach M0078 add-on board to J3 of VOXL2.

  • Ensure jumper is set to USB PWR 5V side in order to provide sufficient power to modem.

  • Attach antennas to ports on Helix modem, if doing desktop development use the attenuators between cable and antenna in order to prevent RF saturation in a bench top environment.

  • Use modified 12-pin to 4-pin JST cable to connect modem to J3 of M0078

  • Attach M0041 APM to VOXL2 and provide power

  • Plug in USB-C cable from desktop to VOXL2 in order to access ADB later on.

Ground Station Hardware Setup

doodle-ground-station-setup

Pictured above for your reference is a ground station setup showing a Doodle Labs Helix modem and breakout board.

IMPORTANT! Before modifying hardware setup, ensure power is off or disconnected.

  • Attach antennas to ports on Helix modem, if doing desktop development use the attenuators between cable and antenna in order to prevent RF saturation in a bench top environment.

  • Use un-modified 12-pin to 12-pin cable to connect the Helix modem to the breakout board

  • Use USB-C cable to breakout board to host ground station

  • Connect power (5V) to green connector, see above photo to determine +(red) and -(black)

  • Turn on power from power supply

Software Setup

VOXL2 Software Setup

  • adb onto VOXL2
adb shell

voxl2:/$
  • Run the following the begin modem setup:
voxl2:/$ voxl-configure-modem 
 
What type of modem are you using?

If you are unsure of which modem you have, take a look at the following datasheets:

v2 LTE Modem: https://docs.modalai.com/lte-modem-and-usb-add-on-v2-datasheet/
Microhard Modem: https://docs.modalai.com/microhard-add-on-datasheet/

1) v2
2) microhard
3) doodle
4) quectel
  • Select doodle from the menu
#? 3
 
Enter the IP address you would like to the VOXL to use on the Doodle network:
Note: The chosen IP address must be of the form: 10.223.0.XXX

Default - 10.223.0.100

1) default
2) custom
  • Select the static IP you would like your VOXL2’s eth0 network interface to be set to, either choose default or another IP on the 10.223 subnet
#? 1 

qrb5165 based device detected
reloading systemd services
enabling voxl-modem systemd service
starting voxl-modem systemd service
DONE configuring voxl-modem
  • The VOXL2 will now enable the voxl-modem service in order to enable the Helix modem connection and set the static IP on bootup

  • Verify that the eth0 network interface has enumerated and that the IP has been set correctly:

ifconfig eth0
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 10.223.0.100  netmask 255.0.0.0  broadcast 10.255.255.255
        ether 00:30:1a:4f:96:05  txqueuelen 1000  (Ethernet)
        RX packets 2930  bytes 661816 (661.8 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 5264  bytes 290037 (290.0 KB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

Ground Station Software Setup

  • Set a static IP address for the host PC on the Doodle network, Ubuntu 18.04 shown below:

doodle-labs-default-ip

In this case, the IP address of the host PC will be set to 10.223.0.150

Connecting to QGroundControl

Now that both the VOXL side and ground station side software have been setup you should be able to ping one device from the other.

For example, one can ping the ground station from VOXL by doing the following:

voxl2:/$ ping 10.223.0.150
PING 10.223.0.150 (10.223.0.150): 56 data bytes
64 bytes from 10.223.0.150: icmp_seq=0 ttl=64 time=0.126 ms
64 bytes from 10.223.0.150: icmp_seq=1 ttl=64 time=0.169 ms
64 bytes from 10.223.0.150: icmp_seq=2 ttl=64 time=0.115 ms
64 bytes from 10.223.0.150: icmp_seq=3 ttl=64 time=0.117 ms
64 bytes from 10.223.0.150: icmp_seq=4 ttl=64 time=0.121 ms

Since we are able to get packets from drone to ground station we can now connect our VOXL2 / drone to QGroundControl.

The VOXL system uses the voxl-vision-px4 service on VOXL to establish a connection between PX4 and QGroundControl over UDP. This is supported on VOXL2, VOXL Flight or when using Flight Core with VOXL.

If you have not yet setup voxl-vision-px4 on your VOXL, do the following:

# On Host PC
$ adb shell

# On VOXL
voxl-configure-vision-px4

You will be asked a variety of questions about your hardware configuration, answer these questions with the options that best describe your setup.

  • When asked for the IP address for QGroundControl, you’ll use the IP address of your ground station, 10.223.0.150 in this example

If you have already configured voxl-vision-px4, you can edit the configuration file as needed. Run the following command and update the qgc_ip field to match the GCS computer’s IP, in this example 10.223.0.150

vi /etc/modalai/voxl-vision-px4.conf

{
	"config_file_version":	1,
	"qgc_ip":	"10.223.0.150",
	"en_secondary_qgc":	false,
	"secondary_qgc_ip":	"192.168.1.214",
	"qgc_udp_port_number":	14550,
    ....

If you’ve modified the config file, restart the voxl-vision-px4 service and reload the configuration by running the following command:

systemctl restart voxl-vision-px4

You should now be able to open QGroundControl and see data being passed from your drone to your ground station via. the Doodle Labs modems.