ARK Documentation
  • ARK Electronics Docs
  • Embedded Computers
    • ARK Just A Jetson
      • Pinout
      • Block Diagram
      • Flashing Guide
      • 3D Model
  • Flight Controller
    • ARK FPV
      • Pinout
      • PX4 Instructions
      • ArduPilot Instructions
      • Betaflight Instructions
      • Bootloader Flashing Using DFU
      • 3D Models
    • ARKV6X
      • PX4 Instructions
      • ArduPilot Instructions
      • 3D Models
    • ARK Pixhawk Autopilot Bus Carrier
      • 3D Models and Case Files
      • Pinout
      • PX4 Instructions
    • ARK Jetson PAB Carrier
      • Getting Started
      • Block Diagram
      • Pinout
      • 3D Models and Case Files
      • Flashing Guide
      • ARK Software
        • Services
      • Autopilot Connections
      • Updating the Flight Controller Firmware
      • Micro USB Console
      • Power Cycling USB Ports
      • Mini DisplayPort
      • USB Wi-Fi Adapters
      • USB Bluetooth Adapters
    • ARK Pi6X Flow
      • Block Diagram
      • Pinout
      • 3D Models
      • Flashing Guide
        • Pi CM4 Lite with Micro SD
        • Pi CM4 with EMMC
        • After Flashing, Before Installing
        • Wi-Fi Setup
        • SSH
      • ARK Software
        • Services
      • Autopilot Connections
      • Updating the Flight Controller Firmware
    • ARK VOXL2 RTK PAB Carrier
      • Pinout
      • Connectors and Cables
      • 3D Models
      • Autopilot Connections
  • Electronic Speed Controller
    • ARK 4IN1 ESC
      • Pinout
      • Firmware
      • PWM Calibration
      • 3D Models
  • Radio
    • ARK M.2 LTE
      • OpenVPN
    • ARK Microhard DDL Carrier
      • 3D Model
  • Sensor
    • ARK Flow
      • Ardupilot Instructions
      • PX4 Instructions
      • 3D models & Case files
    • ARK Flow MR
      • Ardupilot Instructions
      • PX4 Instructions
      • 3D models & Case files
    • ARK CANnode
      • PX4 Instructions
      • 3D Models
  • GPS
    • ARK GPS
      • PX4 Instructions
      • 3D Models
    • ARK MOSAIC-X5 RTK GPS
    • ARK RTK Base
      • 3D Model
    • ARK RTK GPS
    • ARK TESEO GPS
    • ARK SAM GPS
      • PX4 Instructions
      • Ardupilot Instructions
      • Betaflight Instructions
      • 3D Model
  • Power
    • ARK PAB Power Module
      • PX4 Instructions
      • ArduPilot Instructions
      • 3D Model
    • ARK 12S PAB Power Module
      • PX4 Instructions
      • ArduPilot Instructions
      • 3D Model
  • IMU
    • ARK ADIS16507
      • PX4 Instructions
      • ArduPilot Instructions
      • 3D Model
    • ARK SCH16T
      • PX4 Instructions
      • ArduPilot Instructions
      • 3D Model
  • ROS2 & PX4
    • Mastering Precision Landing with PX4 & ROS2
    • Aruco Detectios Tutorial
    • Custom Modes Hardware Demo with PX4 & ROS2
    • Utilizing Custom Modes in PX4 with ROS2 and QGC
    • Simulated Offboard Mode
  • PX4 Log Encryption
  • Radio Integration
    • Doodle Labs Nimble Integration Guide for ARK Jetson PAB Carrier
  • Resources
    • Links
    • About
Powered by GitBook
On this page
  • USB
  • UART
  • Flight Controller Reset
  1. Flight Controller
  2. ARK Pi6X Flow

Autopilot Connections

PreviousServicesNextUpdating the Flight Controller Firmware

Last updated 7 months ago

There are two primary communication channels between the Pi and the Flight Controller: Serial and USB. Both interfaces are direct board to board connections and have been tested up to 3Mbps.

Type
Pi device path
Flight Controller

USB

/dev/ttyACM0

USB

Serial

/dev/ttyAMA4

Telem2

We recommend running MAVLink on USB and XRCE-DDS on Serial.

USB

The Pi CM4 has one USB 2.0 OTG interface. It is muxed between the external Micro-USB port and a built in USB hub. The USB hub connects to the flight controller, USB C port, and the two USB JST-GH ports.

The USB connection to the autopilot is muxed with the external Pi micro USB port. When a micro USB cable is connected, the autopilot is disconnected from the Pi and the USB port on the Pi switches from host to device mode. After the micro USB cable is disconnected, a reboot is required to switch the USB port back to a host and connect to the autopilot and external ports.

UART

The UART connection between Pi and the autopilot is on Pi UART4 which appears as /dev/ttyAMA4 in Linux. This goes to Telem2 on the Flight Controller. This connection has been tested to 3Mbps.

Flight Controller Reset

The flight controller can be hard reset using the reset signal connected to Pi pin GPIO25. The Pi cannot reset the flight controller while it is armed. The reset signal is gated by the nARMED signal from the flight controller.

For the USB port to be enabled on the ARKV6X flight controller, the VBUS_SENSE pin must be driven high from the Pi. It is connected to pin GPIO27. There is a helper python script in ARK-OS to drive the pin high.

Flow control needs to be set to "Force Off" when using Telem2 for MAVLINK. set to "0".

There are a couple of helper scripts to reset the flight controller. One to drive the VBUS_SENSE pin high before the reset to wait in the bootloader for 5 seconds. This is useful when updating the flight controller firmware and a hard reboot is needed. The other fast reset script drives the VBUS_SENSE pin low before the reset to avoid the wait. Reset and wait in the bootloader Reset quickly and skip the bootloader

https://github.com/ARK-Electronics/ARK-OS/blob/main/platform/pi/scripts/vbus_enable.py
MAV_X_FLOW_CTRL
https://github.com/ARK-Electronics/ARK-OS/blob/main/platform/pi/scripts/reset_fmu_wait_bl.py
https://github.com/ARK-Electronics/ARK-OS/blob/main/platform/pi/scripts/reset_fmu_fast.py