Configuration
This section covers the controller-specific details worth knowing when setting up ArduPilot.
Serial ports
Default port order. Protocols are freely configurable — any port can be reassigned to the peripheral you need.
| SERIAL | Port | Default use | DMA |
|---|---|---|---|
| SERIAL0 | USB (OTG1) | Console, MAVLink2 | — |
| SERIAL1 | USART2 | TELEM1, MAVLink2 | yes, CTS/RTS |
| SERIAL2 | USART6 | TELEM2, MAVLink2 | yes, CTS/RTS |
| SERIAL3 | USART1 | GPS1 | — |
| SERIAL4 | UART4 | GPS2 | — |
| SERIAL5 | UART8 | RC IN on the servo rail | yes |
| SERIAL6 | UART7 | DEBUG, system console | — |
| SERIAL7 | USART3 | TELEM3, MAVLink2 | yes |
| SERIAL8 | USB (OTG2) | SLCAN | — |
PWM outputs
The controller has 14 PWM outputs. All support standard PWM; channels 1–12 additionally support DShot.
| Group | Outputs | Timer | Protocols |
|---|---|---|---|
| Group 1 | 1, 2, 3, 4 | TIM5 | PWM, DShot |
| Group 2 | 5, 6, 7, 8 | TIM4 | PWM, DShot |
| Group 3 | 9, 10, 11, 12 | TIM1 | PWM, DShot |
| Group 4 | 13, 14 | TIM12 | PWM only, no DMA |
GPIO
Any of the 14 outputs can be used as a GPIO — for relays, buttons, RPM measurement and
so on. Set SERVOx_FUNCTION = -1 to do so.
Analog inputs
The number is the firmware's ADC channel, which you put into the pin parameter of the relevant device. It is not a connector contact or an MCU package pin.
| Input | Connector | Parameter | Value | Range |
|---|---|---|---|---|
| Battery voltage | POWER A | BATT_VOLT_PIN | 16 | up to 3.3 V |
| Battery current | POWER A | BATT_CURR_PIN | 17 | up to 3.3 V |
| RSSI | RSSI | RSSI_ANA_PIN | 6 | up to 3.3 V |
RC input
The RC IN contact on the servo rail supports all unidirectional ArduPilot protocols: SBUS, CPPM, DSM. The same contact is the SERIAL5 (UART8) port, which is what protocols requiring a UART use.
For CRSF, ELRS, FPort and SRXL2 set:
Battery monitoring
DroneCAN — the default
A DroneCAN power module connects to the POWER C port or to CAN1.
Analog module
An analog module connects to the POWER A port.
BATT2_ parameter set.Compass
The board has an internal RM3100 compass. The controller normally sits inside the airframe, where the magnetic field is distorted by currents in the power wiring, so the external compass in the GPS module is usually the better choice as primary. External compasses connect to any of the I2C ports.
IMU heater
The controller has a built-in heater for the inertial sensors that holds them at a
constant temperature and so reduces drift. The target temperature is set by
BRD_HEAT_TARG, 45 °C by default.