Link Search Menu Expand Document

VOXL 2 Linux User Guide

Table of contents

  1. Serial Debug Console
  2. GPIOs
    1. VOXL 2 Add-On GPIO Port
  3. I2Cs
    1. I2C10 - Legacy B2B I2C
    2. I2C15 - USB Redriver
    3. I2C9 - Legacy B2B I2C
  4. UARTs
    1. /dev/ttyHS0 - Add-On Board 2W UART
    2. /dev/ttyMSM0 - Serial Debug Console
    3. ESC UART
    4. RC UART
    5. GNSS UART
  5. SPI
    1. Overview
    2. SPI0 - Camera Group 0 SPI
    3. SPI1 - Camera Group 1 SPI
    4. SPI3 - IMU1
    5. SPI5 - Camera Group 2 SPI
    6. SPI14 - J10 External SPI
    7. SPI17 - B2B External SPI - M0090 - J8

Serial Debug Console

This is enabled in DEBUG builds of the system image and not enabled by default.

You can access via:

  • M0017 APQ Console.

m0054-debug-console-m0017

  • M0062 J6.

m0054-debug-console

Running the following after power on, for example:

screen /dev/tty.usbserial-AU03BMG9 115200

Watch the booting progress:

[  OK  ] Stopped Modem Init Service.
[  OK  ] Started Modem Init Service.
[  OK  ] Stopped Modem Init Service.
[FAILED] Failed to start Modem Init Service.
See 'systemctl status init_sys_mss.service' for details.
[  OK  ] Started depends update.

Ubuntu 18.04.5 LTS qrb5165-rb5 ttyMSM0

qrb5165-rb5 login:

GPIOs

VOXL 2 Add-On GPIO Port

QTY3 outputs and QTY1 input are available via VOXL 2 add-on cards, typically at J8, a 6 pin JST GH.

Supported Hardware:

  • M0062 - J8
  • M0090 - J8

Status: functional

865 Pins:

  • GPIO 52
  • GPIO 53
  • GPIO 54
  • GPIO 55
Pin #ConfigurationNotes
M00XX-J8-P2Input (gpio52, 3P3V, 2mA, pulldown) 
M00XX-J8-P3Output (gpio53, 3P3V, 2mA, default high(M0048 pDDL EN_N))
M00XX-J8-P4Output (gpio54, 3P3V, 2mA, default low) 
M00XX-J8-P5Output (gpio55, 3P3V, 2mA, default low) 

Note: SN74LVC2T45YZPR used

I2Cs

I2C10 - Legacy B2B I2C

Status: functional, used for Chirp sensors on rb5 flight VOXL2 865 Pins:

  • GPIO 129 - SDA
  • GPIO 130 - SCL

Hardware, B2B Connector:

  • J3 Pin 23 SCL
  • J3 Pin 25 SDA

M0062 Debug Add-on:

  • J9 - Pin 4 - SDA
  • J9 - Pin 5 - SCL

M0090 5G Add-on:

  • J9 - Pin 4 - SDA
  • J9 - Pin 5 - SCL

QUPv3:

  • qupv3_se10_i2c
/dev/i2c-1
/sys/devices/platform/soc/a88000.i2c/i2c-1

I2C15 - USB Redriver

Status: dmesg shows some errors, need to investigate

Hardware:

Pins:

  • GPIO 44 - SDA
  • GPIO 45 - SCL

QUPv3:

  • qupv3_se15_i2c
/dev/i2c-2
/sys/devices/platform/soc/884000.i2c/i2c-2

I2C9 - Legacy B2B I2C

Status: not tested, not routed to somewhere easy

865 Pins:

  • GPIO 125
  • GPIO 126

Hardware, B2B Connector:

  • J3 Pin 13 SCL
  • J3 Pin 15 SDA

No add-on boards pick this up yet.

QUPv3:

  • qupv3_se9_i2c
/dev/i2c-0
/sys/devices/platform/soc/a84000.i2c/i2c-0

UARTs

/dev/ttyHS0 - Add-On Board 2W UART

Status: hardware loop back tested OK. Need to try various bauds.

/dev/ttyHS0
/sys/kernel/debug/894000.qcom,qup_uart
/sys/devices/platform/soc/894000.qcom,qup_uart
/sys/bus/platform/devices/894000.qcom,qup_uart
/sys/bus/platform/drivers/msm_geni_serial/894000.qcom,qup_uart

Owner:

  • apps_proc
    • GPIO2 - TX - QUP19
    • GPIO3 - RX - QUP19

Hardware:

  • M0090-J9 - 5G Add-On Board
    • Pin 2 - TX
    • Pin 3 - RX

/dev/ttyMSM0 - Serial Debug Console

Status: OK, debug builds only

Owner:

  • apps_proc

Info:

  • 115200 baud
/dev/ttyMSM0
/sys/class/tty/ttyMSM0
/sys/devices/platform/soc/a90000.qcom,qup_uart/tty/ttyMSM0

ESC UART

Status: OK

Owner:

  • slpi_proc

Info:

  • 250000 baud
  • SSC_QUP2
  • 0x02688000

RC UART

Status: OK

Owner:

  • slpi_proc

Info:

  • ? baud
  • SSC_QUP6
  • 0x02698000

GNSS UART

Status: OK

Owner:

  • slpi_proc

Info:

  • ? baud
  • SSC_QUP7
  • 0x0269C000

SPI

Overview

m0054-linux-user-guide-spi

/dev/spidev0.0  --> camera group 0 (J6)
/dev/spidev1.0  --> camera group 1 (J7)
/dev/spidev3.0  --> internal IMU (TDK ICM-42688p)
/dev/spidev5.0  --> camera group 2 (J8)
/dev/spidev14.0 --> external SPI (J10)

SPI0 - Camera Group 0 SPI

Note: available in System Image 1.1.5+

Device:

/dev/spidev0.0

Connector:

  • GPIO 28 <- SPI0 MISO 3P3V <- M0054 J6 Pin 34
  • GPIO 29 -> SPI0 MOSI 3P3V -> M0054 J6 Pin 36
  • GPIO 31 -> SPI0 SCLK 3P3V -> M0054 J6 Pin 38
  • GPIO 30 -> SPI0 CS_N 3P3V -> M0054 J6 Pin 40

DT:

qupv3_se0_spi: spi@980000

SPI1 - Camera Group 1 SPI

Note: available in System Image 1.1.5+

Device:

/dev/spidev1.0

Connector:

  • GPIO 4 <- SPI1 MISO 3P3V <- M0054 J7 Pin 34
  • GPIO 5 -> SPI1 MOSI 3P3V -> M0054 J7 Pin 36
  • GPIO 7 -> SPI1 SCLK 3P3V -> M0054 J7 Pin 38
  • GPIO 6 -> SPI1 CS_N 3P3V -> M0054 J7 Pin 40

DT:

qupv3_se1_spi: spi@984000

SPI3 - IMU1

Note: available in System Image 1.1.5+

Device:

/dev/spidev3.0

Hardware:

  • PN ICM42688-P

Internally Routed to U17:

  • GPIO 119 <- SPI3 MISO 3V3P <- U17 pin 1
  • GPIO 120 -> SPI3 MOSI 3V3P -> U17 pin 14
  • GPIO 121 -> SPI3 SCLK 3V3P -> U17 pin 13
  • GPIO 122 -> SPI3 CS_N 3V3P -> U17 pin 12

DT:

qupv3_se3_spi: spi@98c000

SPI5 - Camera Group 2 SPI

Note: available in System Image 1.1.5+

Device:

/dev/spidev5.0

Connector:

  • GPIO 12 <- SPI5 MISO 3P3V <- M0054 J8 Pin 34
  • GPIO 13 -> SPI5 MOSI 3P3V -> M0054 J8 Pin 36
  • GPIO 15 -> SPI5 SCLK 3P3V -> M0054 J8 Pin 38
  • GPIO 14 -> SPI5 CS_N 3P3V -> M0054 J8 Pin 40

DT:

qupv3_se5_spi: spi@994000

SPI14 - J10 External SPI

Note: available in System Image 1.1.5+

Device:

/dev/spidev14.0

Connector:

  • GPIO 40 <- SPI14 MISO 3P3V <- M0054 J10 Pin 2
  • GPIO 41 -> SPI14 MOSI 3P3V -> M0054 J10 Pin 3
  • GPIO 42 -> SPI14 SCLK 3P3V -> M0054 J10 Pin 4
  • GPIO 43 -> SPI14 CS_N 3P3V -> M0054 J10 Pin 5

DT:

qupv3_se14_spi: spi@880000

SPI17 - B2B External SPI - M0090 - J8

STATUS: NOT YET VALIDATED

Hardware, B2B Connector:

  • J3 Pin 7 MISO
  • J3 Pin 9 MOSI
  • J3 Pin 19 CS
  • J3 Pin 17 CLK

M0090 5G Add-on:

  • J8 - Pin 1 - 3P3V
  • J8 - Pin 2 - MISO 3P3V
  • J8 - Pin 3 - MOSI 3P3V
  • J8 - Pin 4 - CLK 3P3V
  • J8 - Pin 5 - CS0 3P3V
  • J8 - Pin 6 - GND

QUPv3:

  • qupv3_se17_spi
/sys/class/spi_master/spi17
/sys/devices/platform/soc/88c000.spi/spi_master/spi17