How to use VOXL as USB Host
Table of contents
Overview
Using VOXL or VOXL Flight’s USB 3.0 OTG Port (J8), the system can be used as a USB3.0 Host provided you use a non-standard USB3.0 cable. It can be used as a USB2.0 host with a standard micro-USB2.0 cable. One or more additional USB2.0 host ports are available on VOXL Add-ons (USB Expander and Debug, LTE v2, Microhard v2)
Background
Because the USB3.0 SS pins on the VOXL cannot support TX/RX swapping, they were set to peripheral mode since the Snapdragon 821 is used mainly in phones and peripheral mode is way more commonly used in a phone configuration.
In order for systems to use the standard micro-b to type A female OTG cables, they need to do TX/RX swapping.
Since VOXL can’t do this, it needs to use a non-standard pinout as it’s default configuration is peripheral mode.
The pinout can be found here: USB3.0 Female A Plug to Micro-B
Procedure
- Plug in your USB device via a compatible USB3.0 Female A Plug to Mirco-B cable - in our case, we have a USB3.0 Female A Plug to Micro-B plug in the VOXL’s J8 port.
Note: Some customers report success using USB3 with a USB3 OTG adapter like this.
- Run
lsusb -v
- Check
bcdUSB
field for USB Version
- Check
Here’s an example of a USB3 device:
Bus 004 Device 003: ID 0781:5581 SanDisk Corp. Ultra
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 3.20
bDeviceClass 0
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 9
idVendor 0x0781 SanDisk Corp.
idProduct 0x5581 Ultra
bcdDevice 1.00
iManufacturer 1 USB
iProduct 2 SanDisk 3.2Gen1
Here’s an example of a USB2 device:
Bus 003 Device 003: ID 045e:00f8 Microsoft Corp. LifeCam NX-6000
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 2.00
bDeviceClass 239 Miscellaneous Device
bDeviceSubClass 2
bDeviceProtocol 1 Interface Association
bMaxPacketSize0 64
idVendor 0x045e Microsoft Corp.
idProduct 0x00f8 LifeCam NX-6000
bcdDevice 1.00
iManufacturer 1 Microsoft
iProduct 2 Microsoft? LifeCam NX-6000
iSerial 0
bNumConfigurations 1
Next: VOXL Tracking Sensor Guide