Pixhawk 5X Flight Controller¶
Pixhawk 5X® is the latest update to the successful family of Pixhawk® flight controllers made by Holybro, featuring vibration isolation of IMUs, triple redundant IMUs, double redundant barometers on separate buses, IMU heating, and integrated Ethernet for high speed connections to companion computers.
- STM32F765: 32 Bit Arm® Cortex®-M7, 216MHz, 2MB memory, 512KB RAM
- IO Processor: STM32F100: 32 Bit Arm® Cortex®-M3, 24MHz, 8KB SRAM
- On-board Sensors
- Accel/Gyro: ICM-20649
- Accel/Gyro: ICM-42688P
- Accel/Gyro: ICM-20602
- Magnetometer: BMM150
- Barometer: 2x BMP388
- 16- PWM servo outputs
- R/C input for Spektrum / DSM
- Dedicated R/C input for PPM and S.Bus input
- Dedicated analog / PWM RSSI input and S.Bus output
- 4 general purpose serial ports
- 3 with full flow control
- 1 with separate 1.5A current limit
- 1 with I2C and additional GPIO line for external NFC reader
- 2 GPS ports
- 1 full GPS & Safety Switch Port
- 1 basic GPS port
- 1 I2C port
- 1 Ethernet port,100Mbps
- 1 SPI bus
- 2 chip select lines
- 2 data-ready lines
- 1 SPI SYNC line
- 1 SPI reset line
- 2 CAN Buses for CAN peripheral
- CAN Bus has individual silent controls or ESC RX-MUX control
- 2 Power input ports with SMBus
- 1 AD & IO port
- 2 additional analog input, one 3.3V and one 6.6V max input
- 1 PWM/Capture input
- 2 Dedicated debug and GPIO lines
- Voltage Ratings
- Max input voltage: 6V
- USB Power Input: 4.75~5.25V
- Servo Rail Input: 0~36V
- Flight Controller Module: 38.8 x 31.8 x 14.6mm
- Standard Baseboard: 52.4 x 103.4 x 16.7mm
- Flight Controller Module: 23g
- Standard Baseboard: 51g
- Other Characteristics
- Operating & storage temperature: -40 ~ 85°c
Typical Wiring Diagram¶
duplicated RC control and telemetry solutions are shown. Duplicate systems are not usually used.
- SERIAL0 -> USB
- SERIAL1 -> UART7 (Telem1) RTS/CTS pins
- SERIAL2 -> UART5 (Telem2) RTS/CTS pins
- SERIAL3 -> USART1 (GPS1)
- SERIAL4 -> UART8 (GPS2)
- SERIAL5 -> UART2 (Telem3) RTS/CTS pins
- SERIAL6 -> UART4 (USER)
- SERIAL7 -> USART3 (Debug)
- SERIAL9 -> USB (SLCAN)
The RCIN pin, which by default is mapped to a timer input, can be used for all ArduPilot supported receiver protocols, except CRSF which requires a true UART connection. However, bi-directional protocols which include telemetry, such as SRXL2 and FPort, when connected in this manner, will only provide RC without telemetry.
To allow CRSF and embedded telemetry available in Fport, CRSF, and SRXL2 receivers, a full UART, such as SERIAL6 (UART4) would need to be used for receiver connections. Below are setups using UART4. SERIAL6_PROTOCOL should be set to “23”.
- FPort would require SERIAL6_OPTIONS be set to “15”.
- CRSF would require SERIAL6_OPTIONS be set to “0”.
- SRXL2 would require SERIAL6_OPTIONS be set to “4” and connects only the UART4 TX pin.
Any UART can be used for RC system connections in ArduPilot also, and is compatible with all protocols except PPM. See Radio Control Systems for details.
The Pixhawk5x supports up to 16 PWM outputs. All 16 outputs support all normal PWM output formats. All FMU outputs except 7 and 8 ,also support DShot.
The 8 FMU PWM outputs are in 4 groups:
- PWM 1, 2, 3 and 4 in group1
- PWM 5 and 6 in group2
- PWM 7 and 8 in group3
FMU outputs within the same group need to use the same output rate and protocol. If any output in a group uses DShot then all channels in that group need to use DShot.
The board has 2 dedicated power monitor ports with a 6 pin connector. They are intended for use with the I2C power monitor supplied with the autopilot.
do not try to use the Mission Planner SETUP->Optional Hardware->Battery Monitor tab to setup the power monitors. The parameters needed for their operation are already setup by default:
The Pixhawk5x has a built-in BMM150 compass. Due to potential interference the autopilot is usually used with an external I2C compass as part of a GPS/Compass combination.
The 8 FMU PWM outputs can be used as GPIOs (relays, buttons, RPM etc). To use them you need to set the output’s
SERVOx_FUNCTION to -1. See GPIOs page for more information.
The numbering of the GPIOs for PIN variables in ArduPilot is:
- PWM1 50
- PWM2 51
- PWM3 52
- PWM4 53
- PWM5 54
- PWM6 55
- PWM7 56
- PWM8 57
- FMU_CAP1 58
- FMU_CAP2 59
- NFC_GPIO 60
The Pixhawk5X has 3 analog inputs, one 6V tolerant and two 3.3V tolerant
- ADC Pin10 -> ADC 6.6V Sense
- ADC Pin13 -> ADC 3.3V Sense
- Analog 3.3V RSSI input pin = 103
Unless noted otherwise all connectors are JST GH
The board comes pre-installed with an ArduPilot compatible bootloader, allowing the loading of xxxxxx.apj firmware files with any ArduPilot compatible ground station.
Firmware for this board can be found here in sub-folders labeled “Pixhawk5X”.