Holybro
Holybro ShopPX4 GuideArdupilot WikiContact Us
  • Welcome
  • Flight Controller
    • Pixhawk 6X
      • Overview
      • Technical Specification
      • Sample Wiring Diagram
      • Pixhawk Baseboards
      • Dimensions
        • Rev 8 (Current)
        • Rev 3 & 4
      • PX4 & Ardupilot Guide
      • Supported Firmware
      • Using Analog PM
      • Pixhawk Autopilot FMUv6X Standard
      • Download
    • Pixhawk 6X Pro
      • Overview
      • Technical Specification
      • Sample Wiring Diagram
      • Pixhawk Baseboards
      • Dimensions
      • PX4 & Ardupilot Guide
      • Supported Firmware
      • Using Analog PM
      • Pixhawk Autopilot FMUv6X Standard
      • Download
    • Pixhawk Baseboards
      • Pixhawk Baseboard v1 Ports
      • Pixhawk Baseboard v2 Ports
        • PWM Signal Voltage MOD
      • Pixhawk Baseboard V2 Mounting Plate Dimensions
      • Pixhawk Mini Baseboard Ports
      • Pixhawk Jetson Baseboard
        • Overview & Specification
        • Ports Pinout
        • Wiring & Block Diagram
        • Dimension & Weight
        • Flashing guide
        • CAN setup
        • CSI Camera setup
        • MAVLINK Bridge
        • Reference Links
      • Pixhawk RPi CM4 Baseboard
        • Overview
        • Connections & Ports
        • RPi CM4 Flash Guide
        • Dimension
        • Ethernet Connection
        • PM03D - RPi CM4 Base Wiring Guide
        • Installation of RPi CM4
        • Supported Firmware
      • Baseboard Changelog
      • Download
    • Pixhawk 6C
      • Overview
      • Technical Specification
      • Pixhawk 6C Ports
      • Sample Wiring Diagram
      • Dimensions
      • System Diagram & Pinout
      • PX4 & Ardupilot Guide
      • PWM Signal Voltage MOD
      • Supported Firmware
      • Download
    • Pixhawk 6C Mini
      • Overview
      • Technical Specification
      • Pixhawk 6C Mini Ports
      • Dimensions
      • System Diagram & Pinout
      • PWM Signal Voltage MOD
      • Supported Firmware
      • Pixhawk 6C Mini Difference
      • Download
    • Pix32 v6
      • Overview
      • Technical Specification
      • Pix32 v6 Baseboard Ports
      • Pix32 v6 Mini-Base Ports
      • Dimensions
      • System Diagram & Pinout
      • Supported Firmware
      • Download
    • Durandal
      • Overview & Technical Specification
      • Dimensions
      • Durandal Pinout
      • Supported Firmware
    • Kakute H7 (v1/v2/Mini)
      • Kakute H7 v1
        • Overview
        • Wiring Diagram
        • Pinout
        • Supported Firmware
      • Kakute H7 v2
        • Overview
        • Wiring Diagram
        • Pinout
        • Supported Firmware
          • INAV VTX+ & Bluetooth Setup
      • Kakute H7 Mini
        • Overview
        • Sample Wiring Diagram
        • Pinout
        • Supported Firmware
      • Kakute H7 Version Difference
      • Download
    • Kakute H743-Wing
      • Overview
      • Pinout
      • Sample Wiring Diagram
      • Power Monitor & Scale
      • Camera & ON/OFF Pit Switch
      • Ardupilot Mapping
      • Ardupilot Wiki
      • INAV Mapping
      • Supported Firmware
    • Kakute F405 Wing Mini
      • Overview
      • Pinout
      • Sample Wiring Diagram
      • Power Monitor & Scale
      • Supported Firmware
    • Autopilot Comparison
  • GPS & RTK System
    • H-RTK NEO-F9P Series (RM3100 Compass)
      • Overview
      • Specification
      • NEO-F9P Module Pinout
      • NEO-F9P Rover Pinout
      • Dimensions
      • Downloads
      • Setup & Getting Started
      • Firmware Upgrade
      • GPS Heading/Yaw (aka Moving Baseline)
      • Setup guide for Multiple Aircraft
      • Portable RTK Base Station Setup
      • CAN Termination Resistance Software Toggle
    • H-RTK ZED-F9P Series (RM3100 Compass)
      • Overview
      • Specification
      • Dimension
      • Pinout
      • Download
      • Setup & Getting Started (Ardupilot)
      • Setup & Getting Started (PX4)
      • Using with Cube Autopilot
      • u-blox F9P Firmware Upgrade
      • DroneCAN FW Upgrade
      • GPS Heading/Yaw (aka Moving Baseline)
      • Setup guide for Multiple Aircraft
      • Portable RTK Base Station Setup
      • Galileo OSNMA Support
      • Changelog
      • CAN Termination Resistance Software Toggle
    • H-RTK ZED-F9P Series (IST8310/BMM150 Compass)
      • DroneCAN F9P
        • Overview
        • Specification
        • Pinout
        • Dimension
        • Setup & Getting Started
        • DroneCAN FW Upgrade
        • Download
        • CAN Termination Resistance Software Toggle
      • Standard F9P (UART)
        • Overview
        • F9P Rover Lite
        • F9P Helical
        • F9P Base
        • H-RTK with Cube Autopilot
        • Specification & Comparison
        • Setup & Getting Started
        • Dimension
        • Pinout
        • Download
      • u-blox F9P Firmware Upgrade
      • GPS Heading/Yaw (aka Moving Baseline)
      • Setup guide for Multiple Aircraft
      • Ardupilot IST8310 Compass Orientation
      • Portable RTK Base Station Setup
      • Galileo OSNMA Support
    • H-RTK Unicore UM982
      • Overview
      • Specification
      • Pinout
      • Dimension
      • LED Indicator
      • Setup & Getting Started (Ardupilot)
      • Setup & Getting Started (PX4)
      • Advanced Application (Unicore Uprecise)
      • Factory Setting and COM Port Allocation
      • Firmware Support
      • Download
    • H-RTK mosaic-H
      • Overview & Specification
      • Setup & Getting Started (Ardupilot)
      • Setup & Getting Started (PX4)
      • Pinout
      • Dimension
      • Advanced Application
      • GPS LED Meaning
      • Septentrio PPK application
      • Septentrio receiver control and analysis software
      • Supported Firmware
      • Download
    • M8N/M9N/M10 GPS
      • Standard M10/M9N/M8N GPS
        • Overview
        • Pinout
        • Dimension
        • Download
      • Micro M10/M9N GPS
        • Overview
        • Pinout
        • Dimension
        • Download
      • DroneCAN M9N/M8N
        • Overview
        • Pinout
        • Dimension
        • DroneCAN GPS Setup Guide
        • DroneCAN FW Upgrade
        • CAN Termination Resistance Software Toggle
        • About DroneCAN
        • Downloads
      • Ardupilot IST8310 Compass Orientation
      • Downloads
    • GPS LED & Buzzer
      • GPS LED & Buzzer Meaning
      • Status LED Changes
  • Peripherals
    • DLVR Airspeed (DroneCAN)
      • Overview
      • Quick Start Guide
      • CAN Termination Resistance Software Toggle
      • Download
    • MS4525DO & MS5525DSO I2C Airspeed Sensor
    • RM3100 Compass (DroneCAN)
      • RM3100 Setup Guide
      • CAN Termination Resistance Software Toggle
    • H-Flow (DroneCAN)
      • Overview
      • Setup Guide
      • Firmware
      • Dimensions
      • Pinout
      • CAN Termination Resistance Software Toggle
      • Downloads
  • PMW3901 Optical Flow Sensor
  • CAN Termination Resistance Software Toggle
  • Radio
    • Remote ID
      • Overview & Spec
      • Setup & Configuration
      • Pinout
      • Firmware Support
      • Firmware Update
      • Download
    • SiK Telemetry Radio V3
      • LED and Connection
      • Multiple Point to Point Setup with Sik Radio
        • Downloads
      • RF Transmission Power Setting For 1W Variants
      • Flight Controller setup
      • Dimension & Pinout
      • Downloads
    • Microhard Radio
      • Overview
      • Specification
      • Ports & Buttons
      • Status LED
      • Default Setting
      • Pinout
      • Dimension
      • Enabling RTS / CTS Flow Control
      • Point-to-Multipoint Setup with Microhard Radio
      • Download
    • XBP9X Radio
      • Specification
      • Power
      • Status LEDs
      • Antenna
      • Pinout
      • Dimension
      • Point-to-Multipoint Setup with XBee Radio
      • Download
  • Drone Development Kit
    • X650 Development Kit
      • NeoPixel WS2812 LED Setup Instruction
      • Download
    • PX4 Development Kit - X500v2
      • Getting Started Build Guide
      • Download
    • PX4 Vision Dev Kit v1.5
      • Overview
      • Wiring Diagram
      • v1 & v1.5 Difference
      • Up-Core Carrier Board Pinout
      • PX4 User Guide
      • Downloads
    • S500 Frame Kit
  • Power Module & PDB
    • Power Module
      • DroneCAN Power Module Setup
      • Analog Power Module Setup
      • Digital Power Module (PM) Setup
      • PM07 Quick Start Guide
      • Using Analog PM with Pixhawk 5X/6X
      • Connector & Wire Rating
      • Download
    • Power Module Comparison
  • UBEC
  • ESC
    • ESC Current Sensor Scale
    • AM32 ESC - Reverse Motor Direction Instruction
    • How To Flash AM32 Firmware To HOLYBRO BLHeli ESCs
  • ESC 3D File Downloads
  • Company
    • About Us
    • Holybro Logo
    • Certification (ISO, FCC, CE, RoHS, etc):
    • User Manuals
      • Kakute Flight Controller
      • ESC
      • Kopis
      • Autopilot Flight Controller
      • Drone Dev Kit
      • Other
Powered by GitBook

© 2024 Holybro. All rights reserved.

On this page
  • DroneCAN
  • Relationship with UAVCAN
  • DroneCAN Key Features
  • Continued Evolution
  • Development

Was this helpful?

Export as PDF
  1. GPS & RTK System
  2. M8N/M9N/M10 GPS
  3. DroneCAN M9N/M8N

About DroneCAN

PreviousDroneCAN GPS Setup GuideNextDownloads

Last updated 2 years ago

Was this helpful?

DroneCAN

DroneCAN is the primary CAN protocol used by the ArduPilot and PX4 projects for communication with CAN peripherals. It is an open protocol with open communication, specification and multiple open implementations.

Relationship with UAVCAN

DroneCAN was created to continue the development of the widely used UAVCAN v0 protocol. This protocol has proven itself as robust and feature rich and has been widely deployed in the commercial drone industry and enjoys broad support among industry partners. The proposed introduction of the UAVCAN v1 protocol involved changes to UAVCAN that increased complexity and did not offer a smooth migration path for existing deployments. After extended discussions within the UAVCAN consortium it was decided that the best solution was to continue development of DroneCAN v0 under the name DroneCAN.

DroneCAN Key Features

The first version of DroneCAN, known as DroneCAN v1, is identical to the existing UAVCAN v0 protocol. This means that the large number of existing UAVCAN v0 devices used throughout the drone industry are already DroneCAN v1 compliant. Features inherited from UAVCAN v0 include:

  • detailed protocol specification

  • DSDL message description language for message description

  • DNA (dynamic node allocation) for assignment of CAN node IDs

  • multiple open DSDL compilers that produce C and C++ bindings

  • rich python implementation

  • feature rich graphical user interface for diagnostics and device configuration

  • mature implementations in ArduPilot and PX4 autopilots

  • and toolkits for easy creation of feature rich peripherals

Continued Evolution

DroneCAN is a continually evolving protocol. Starting with DroneCAN v1 the protocol will evolve to add new features to assist in the widespread adoption of CAN throughout the UAV industry. The DroneCAN project is committed to ensuring this evolution is done in a manner which retains compatibility with existing DroneCAN devices. Key features planned for DroneCAN in the near future:

  • support for FDCAN, allowing for higher data rates and larger frame sizes

  • a node capability message to allow the DNA server to determine both the hardware and software capabilities of connected nodes, to facilitate smooth transitions to updated protocol versions

  • support for extending messages definitions while retaining compatibility with existing implementations

  • a comprehensive re-work of existing DSDL message structures to improve efficiency and flexibility

Development

The DroneCAN project has an active development community.

discussions on discord at

development on github at

More DroneCAN Information:

AP_Periph
PX4 cannode
https://dronecan.org/discord
https://github.com/DroneCAN
https://dronecan.github.io/