Compare commits

...

37 Commits

Author SHA1 Message Date
Balduin 48c013245f Tailsitter: Stop motors if throttle low in FW 2026-03-06 09:05:28 +01:00
Balduin acadd0edb1 Tiltrotor: stop motors if throttle low in FW 2026-03-05 11:38:07 +01:00
Silvan 6175ed8d7d CA: remove legacy motor stopping logic
Signed-off-by: Silvan <silvan@auterion.com>
2026-03-05 09:21:33 +01:00
PX4BuildBot 19b5292dff docs: auto-sync metadata [skip ci]
Co-Authored-By: PX4 BuildBot <bot@px4.io>
2026-03-05 08:01:29 +00:00
Balduin fa2d1c3662 SIH Simulator: Add wind (#26467)
* SIH: explicitly use local velocity for all aerodynamic calculations

no functional change

* SIH: add param & vars for wind and apparent vel

no functional change

* SIH: replace all relevant vels with apparent vel

Only places where _v_E is remaining:
 - ecefToNed to calculate _v_N
 - generate_rover_ackermann_dynamics
 - equations_of_motion
 - parameters_updated, init_variables
and _v_N:
 - ecefToNed
 - print_status
 - publish_ground_truth
 - generate_rover_ackermann_dynamics
 - equations_of_motion
 - parameters_updated, init_variables

which are all not relevant for aerodynamics.

* sih: wind review suggestions

* sih wind: switch direction to global wind source direction convention

* SIH: clean up variable declarations

* SIH: rename variables for consistency

* docs: SIH: document new wind parameters

* Release notes: note for SIH wind settings

---------

Co-authored-by: Matthias Grob <maetugr@gmail.com>
2026-03-05 08:53:39 +01:00
PX4BuildBot 7f3e0e9679 docs: auto-sync metadata [skip ci]
Co-Authored-By: PX4 BuildBot <bot@px4.io>
2026-03-05 07:28:53 +00:00
CUAV Chen 9228dca9bd drivers: imu: Add in ADIS16607 IMU Device (#26301)
* drivers: Add  in ADIS16607 IMU Device

* formatting and style, adjust debug output

* Change variable types of accel_x/y/z and gyro_x/y/z.

* Remove periodic register check

---------

Co-authored-by: Jacob Dahl <dahl.jakejacob@gmail.com>
2026-03-04 22:15:39 -09:00
PX4BuildBot 40133e0b2c docs: auto-sync metadata [skip ci]
Co-Authored-By: PX4 BuildBot <bot@px4.io>
2026-03-05 04:20:17 +00:00
Jacob Dahl c677cb75df fix(heater): don't turn heater on when controller time is zero (#26659)
When the PI controller computed zero on-time (e.g. temperature already
above target), the heater was still momentarily turned on every cycle
before being immediately turned off. Skip the on/off toggle entirely
when the computed on-time is zero.
2026-03-04 21:12:13 -07:00
PX4BuildBot b79ed50615 docs: auto-sync metadata [skip ci]
Co-Authored-By: PX4 BuildBot <bot@px4.io>
2026-03-05 03:09:36 +00:00
PX4 Build Bot 94c3765712 New Crowdin translations - ko (#26551)
Co-authored-by: Crowdin Bot <support+bot@crowdin.com>
2026-03-05 14:01:52 +11:00
PX4 Build Bot 30b6938f5e New Crowdin translations - uk (#26552)
Co-authored-by: Crowdin Bot <support+bot@crowdin.com>
2026-03-05 14:01:38 +11:00
PX4 Build Bot 62d0620eff New Crowdin translations - zh-CN (#26553)
Co-authored-by: Crowdin Bot <support+bot@crowdin.com>
2026-03-05 14:00:49 +11:00
Matthias Grob 102b64f604 ubuntu: help people running the install script on Ubuntu 25.10 (#26627)
OSRF provides no gazebo binary for 25.10, attempting to install leads to apt update errors
2026-03-04 17:03:47 -09:00
PX4BuildBot 41b40e34fa docs: auto-sync metadata [skip ci]
Co-Authored-By: PX4 BuildBot <bot@px4.io>
2026-03-05 01:59:04 +00:00
Hamish Willee b37733459d docs: Codespell check on English sources + swd fixes (#26657) 2026-03-05 12:50:59 +11:00
PX4BuildBot 5528ebec64 docs: auto-sync metadata [skip ci]
Co-Authored-By: PX4 BuildBot <bot@px4.io>
2026-03-05 01:22:28 +00:00
Jacob Dahl b4d5eca3c0 fix(dataman_client): fail fast when dataman is unavailable (#26652)
* fix(dataman_client): fail fast when dataman is unavailable

Check client_id before every DatamanClient operation to avoid waiting
for a response timeout when dataman was never running.

- Adds CLIENT_ID_NOT_SET guard to all sync and async methods
- Avoids cross-module linkage between dataman_client lib and dataman module

Supersedes #26128

* better init
2026-03-04 16:13:11 -09:00
PX4BuildBot 9fcb6bcc0a docs: auto-sync metadata [skip ci]
Co-Authored-By: PX4 BuildBot <bot@px4.io>
2026-03-05 00:47:51 +00:00
Hamish Willee ab318cb636 docs: Update local build instructions to include metadata building (#26654) 2026-03-05 11:39:50 +11:00
PX4BuildBot f11329784f docs: auto-sync metadata [skip ci]
Co-Authored-By: PX4 BuildBot <bot@px4.io>
2026-03-04 23:58:12 +00:00
Hamish Willee 4d85c1ad93 docs: Update badges to remove the planned for part in v1.18 (#26637) 2026-03-05 10:49:36 +11:00
Hamish Willee 040b885dbd docs: DroneCAN Lights (#26641) 2026-03-05 10:43:41 +11:00
PX4BuildBot 84e7c8e681 docs: auto-sync metadata [skip ci]
Co-Authored-By: PX4 BuildBot <bot@px4.io>
2026-03-04 23:23:07 +00:00
Hamish Willee ddb83e8d4d docs: Ease building metadata for docs locally (#26635) 2026-03-05 10:15:06 +11:00
PX4BuildBot 31977d8d19 docs: auto-sync metadata [skip ci]
Co-Authored-By: PX4 BuildBot <bot@px4.io>
2026-03-04 21:11:18 +00:00
Hamish Willee 1cb2debbb9 docs: Remove all discontinued FCs (#26642) 2026-03-05 08:03:07 +11:00
Jacob Dahl 2cb9b9bfbe ark: cleanup SENS_IMU_TEMP param and rename to HEATER (#26650) 2026-03-04 11:56:11 -09:00
Jacob Dahl 85ca947e09 logger: add sensor_gnss_relative to High Rate Sensors (#26648) 2026-03-04 10:11:37 -09:00
Jacob Dahl 88a57c5b65 logger: add sensor_gnss_relative to High Rate Sensors 2026-03-04 10:10:16 -09:00
PX4BuildBot 8ed35be826 docs: auto-sync metadata [skip ci]
Co-Authored-By: PX4 BuildBot <bot@px4.io>
2026-03-04 19:08:57 +00:00
Leonardo Cencetti de9698e7fa zenoh: Add support for ROS2 Humble and earlier (#26619)
* Add support for hash-less Zenoh topic key expressions

- Add kConfig option ZENOH_KEY_TYPE_HASH to toggle the inclusion
- Update topic and liveliness generators

* chore: Update Zenoh kConfig param description and help message

* docs(zenoh): Document Zenoh configuration for Humble

* docs: Clarify PX4 ROS2 Interface library compatibility
2026-03-04 10:00:58 -09:00
Alex Klimaj c5d22f5fea Revert "ark boards: remove GPIO_FMU output init (default float) (#26525)" (#26647)
This reverts commit 657854ae1b.
2026-03-04 09:58:45 -09:00
PX4BuildBot 192ac7bb54 docs: auto-sync metadata [skip ci]
Co-Authored-By: PX4 BuildBot <bot@px4.io>
2026-03-04 16:50:49 +00:00
Matthias Grob 7c78efe0c4 FailsafeFlags: reorder fields for clarity 2026-03-04 17:42:28 +01:00
Matthias Grob ebc2093e52 Parachute check: clarify error message and parameter description wording 2026-03-04 17:42:28 +01:00
gguidone 6b51eddecc Added failsafe if parachute is not detected mid flight 2026-03-04 17:42:28 +01:00
1593 changed files with 13969 additions and 20484 deletions
+5
View File
@@ -196,6 +196,11 @@ if [[ $INSTALL_NUTTX == "true" ]]; then
fi
fi
if [[ "${UBUNTU_RELEASE}" == "25.10" ]]; then
echo "[ubuntu.sh] Gazebo binaries are not available for 25.10, skipping installation"
INSTALL_SIM="false"
fi
# Simulation tools
if [[ $INSTALL_SIM == "true" ]]; then
+4 -4
View File
@@ -17,10 +17,10 @@ param set-default MAV_2_UDP_PRT 14550
param set-default SENS_EN_INA226 1
param set-default SENS_EN_THERMAL 1
param set-default SENS_IMU_MODE 1
param set-default SENS_IMU_TEMP 10.0
#param set-default SENS_IMU_TEMP_FF 0.0
#param set-default SENS_IMU_TEMP_I 0.025
#param set-default SENS_IMU_TEMP_P 1.0
param set-default HEATER1_TEMP 10.0
#param set-default HEATER1_TEMP_FF 0.0
#param set-default HEATER1_TEMP_I 0.025
#param set-default HEATER1_TEMP_P 1.0
param set-default UAVCAN_ESC_IFACE 2
+17
View File
@@ -245,6 +245,15 @@
*/
#define DIRECT_PWM_OUTPUT_CHANNELS 9
#define GPIO_FMU_CH1 /* PI0 */ (GPIO_INPUT|GPIO_PULLDOWN|GPIO_PORTI|GPIO_PIN0)
#define GPIO_FMU_CH2 /* PH12 */ (GPIO_INPUT|GPIO_PULLDOWN|GPIO_PORTH|GPIO_PIN12)
#define GPIO_FMU_CH3 /* PH11 */ (GPIO_INPUT|GPIO_PULLDOWN|GPIO_PORTH|GPIO_PIN11)
#define GPIO_FMU_CH4 /* PH10 */ (GPIO_INPUT|GPIO_PULLDOWN|GPIO_PORTH|GPIO_PIN10)
#define GPIO_FMU_CH5 /* PD13 */ (GPIO_INPUT|GPIO_PULLDOWN|GPIO_PORTD|GPIO_PIN13)
#define GPIO_FMU_CH6 /* PD14 */ (GPIO_INPUT|GPIO_PULLDOWN|GPIO_PORTD|GPIO_PIN14)
#define GPIO_FMU_CH7 /* PH6 */ (GPIO_INPUT|GPIO_PULLDOWN|GPIO_PORTH|GPIO_PIN6)
#define GPIO_FMU_CH8 /* PH9 */ (GPIO_INPUT|GPIO_PULLDOWN|GPIO_PORTH|GPIO_PIN9)
#define GPIO_FMU_CAP /* PE11 */ (GPIO_INPUT|GPIO_PULLDOWN|GPIO_PORTE|GPIO_PIN11)
#define GPIO_SPIX_SYNC /* PE9 */ (GPIO_INPUT|GPIO_PULLDOWN|GPIO_PORTE|GPIO_PIN9)
@@ -458,6 +467,14 @@
GPIO_SAFETY_SWITCH_IN, \
GPIO_PG6, \
GPIO_nARMED_INIT, \
GPIO_FMU_CH1, \
GPIO_FMU_CH2, \
GPIO_FMU_CH3, \
GPIO_FMU_CH4, \
GPIO_FMU_CH5, \
GPIO_FMU_CH6, \
GPIO_FMU_CH7, \
GPIO_FMU_CH8, \
GPIO_FMU_CAP, \
GPIO_SPIX_SYNC \
}
+4 -4
View File
@@ -15,10 +15,10 @@ fi
# TODO: Tune the following parameters
param set-default SENS_EN_THERMAL 1
param set-default SENS_IMU_TEMP 10.0
#param set-default SENS_IMU_TEMP_FF 0.0
#param set-default SENS_IMU_TEMP_I 0.025
#param set-default SENS_IMU_TEMP_P 1.0
param set-default HEATER1_TEMP 10.0
#param set-default HEATER1_TEMP_FF 0.0
#param set-default HEATER1_TEMP_I 0.025
#param set-default HEATER1_TEMP_P 1.0
if ver hwtypecmp ARKFPV000
then
+19
View File
@@ -225,6 +225,16 @@
*/
#define DIRECT_PWM_OUTPUT_CHANNELS 9
#define GPIO_FMU_CH1 /* PI0 */ (GPIO_INPUT|GPIO_PULLDOWN|GPIO_PORTI|GPIO_PIN0)
#define GPIO_FMU_CH2 /* PH12 */ (GPIO_INPUT|GPIO_PULLDOWN|GPIO_PORTH|GPIO_PIN12)
#define GPIO_FMU_CH3 /* PH11 */ (GPIO_INPUT|GPIO_PULLDOWN|GPIO_PORTH|GPIO_PIN11)
#define GPIO_FMU_CH4 /* PH10 */ (GPIO_INPUT|GPIO_PULLDOWN|GPIO_PORTH|GPIO_PIN10)
#define GPIO_FMU_CH5 /* PI5 */ (GPIO_INPUT|GPIO_PULLDOWN|GPIO_PORTI|GPIO_PIN5)
#define GPIO_FMU_CH6 /* PI6 */ (GPIO_INPUT|GPIO_PULLDOWN|GPIO_PORTI|GPIO_PIN6)
#define GPIO_FMU_CH7 /* PI7 */ (GPIO_INPUT|GPIO_PULLDOWN|GPIO_PORTI|GPIO_PIN7)
#define GPIO_FMU_CH8 /* PI2 */ (GPIO_INPUT|GPIO_PULLDOWN|GPIO_PORTI|GPIO_PIN2)
#define GPIO_FMU_CH9 /* PD12 */ (GPIO_INPUT|GPIO_PULLDOWN|GPIO_PORTD|GPIO_PIN12)
#define GPIO_SPIX_SYNC /* PE9 */ (GPIO_INPUT|GPIO_PULLDOWN|GPIO_PORTE|GPIO_PIN9)
/* Power supply control and monitoring GPIOs */
@@ -328,6 +338,15 @@
GPIO_VDD_3V3_SD_CARD_EN, \
GPIO_nARMED_INIT, \
SPI6_nRESET_EXTERNAL1, \
GPIO_FMU_CH1, \
GPIO_FMU_CH2, \
GPIO_FMU_CH3, \
GPIO_FMU_CH4, \
GPIO_FMU_CH5, \
GPIO_FMU_CH6, \
GPIO_FMU_CH7, \
GPIO_FMU_CH8, \
GPIO_FMU_CH9, \
GPIO_SPIX_SYNC \
}
+4 -4
View File
@@ -21,10 +21,10 @@ param set-default SENS_EN_INA226 1
# TODO: Tune the following parameters
param set-default SENS_EN_THERMAL 1
param set-default SENS_IMU_TEMP 10.0
#param set-default SENS_IMU_TEMP_FF 0.0
#param set-default SENS_IMU_TEMP_I 0.025
#param set-default SENS_IMU_TEMP_P 1.0
param set-default HEATER1_TEMP 10.0
#param set-default HEATER1_TEMP_FF 0.0
#param set-default HEATER1_TEMP_I 0.025
#param set-default HEATER1_TEMP_P 1.0
param set-default UAVCAN_ESC_IFACE 1
+17
View File
@@ -208,6 +208,15 @@
*/
#define DIRECT_PWM_OUTPUT_CHANNELS 8
#define GPIO_FMU_CH1 /* PI0 */ (GPIO_INPUT|GPIO_PULLDOWN|GPIO_PORTI|GPIO_PIN0)
#define GPIO_FMU_CH2 /* PH12 */ (GPIO_INPUT|GPIO_PULLDOWN|GPIO_PORTH|GPIO_PIN12)
#define GPIO_FMU_CH3 /* PH11 */ (GPIO_INPUT|GPIO_PULLDOWN|GPIO_PORTH|GPIO_PIN11)
#define GPIO_FMU_CH4 /* PH10 */ (GPIO_INPUT|GPIO_PULLDOWN|GPIO_PORTH|GPIO_PIN10)
#define GPIO_FMU_CH5 /* PD13 */ (GPIO_INPUT|GPIO_PULLDOWN|GPIO_PORTD|GPIO_PIN13)
#define GPIO_FMU_CH6 /* PD14 */ (GPIO_INPUT|GPIO_PULLDOWN|GPIO_PORTD|GPIO_PIN14)
#define GPIO_FMU_CH7 /* PH6 */ (GPIO_INPUT|GPIO_PULLDOWN|GPIO_PORTH|GPIO_PIN6)
#define GPIO_FMU_CH8 /* PH9 */ (GPIO_INPUT|GPIO_PULLDOWN|GPIO_PORTH|GPIO_PIN9)
#define GPIO_FMU_CAP /* PE11 */ (GPIO_INPUT|GPIO_PULLDOWN|GPIO_PORTE|GPIO_PIN11)
#define GPIO_SPIX_SYNC /* PE9 */ (GPIO_INPUT|GPIO_PULLDOWN|GPIO_PORTE|GPIO_PIN9)
@@ -334,6 +343,14 @@
GPIO_NFC_GPIO, \
GPIO_TONE_ALARM_IDLE, \
GPIO_nARMED_INIT, \
GPIO_FMU_CH1, \
GPIO_FMU_CH2, \
GPIO_FMU_CH3, \
GPIO_FMU_CH4, \
GPIO_FMU_CH5, \
GPIO_FMU_CH6, \
GPIO_FMU_CH7, \
GPIO_FMU_CH8, \
GPIO_FMU_CAP, \
GPIO_SPIX_SYNC \
}
+1 -20
View File
@@ -152,15 +152,11 @@
- [Wiring Quickstart](assembly/quick_start_pixhawk5x.md)
- [Holybro Pixhawk 4 (FMUv5)](flight_controller/pixhawk4.md)
- [Wiring Quickstart](assembly/quick_start_pixhawk4.md)
- [Holybro Pixhawk 4 Mini (FMUv5) - Discontinued](flight_controller/pixhawk4_mini.md)
- [Wiring Quickstart](assembly/quick_start_pixhawk4_mini.md)
- [Drotek Pixhawk 3 Pro (FMUv4pro) - Discontinued](flight_controller/pixhawk3_pro.md)
- [mRo Pixracer (FMUv4)](flight_controller/pixracer.md)
- [Wiring Quickstart](assembly/quick_start_pixracer.md)
- [Hex Cube Black (FMUv3)](flight_controller/pixhawk-2.md)
- [mRo Pixhawk (FMUv3)](flight_controller/mro_pixhawk.md)
- [mRo (3DR) Pixhawk Wiring Quickstart](assembly/quick_start_pixhawk.md)
- [Holybro Pixhawk Mini (FMUv3) - Discontinued](flight_controller/pixhawk_mini.md)
- [Manufacturer-Supported Autopilots](flight_controller/autopilot_manufacturer_supported.md)
- [Accton Godwit GA1](flight_controller/accton-godwit_ga1.md)
- [AirMind MindPX](flight_controller/mindpx.md)
@@ -205,22 +201,6 @@
- [PilotPi with Raspberry Pi OS](flight_controller/raspberry_pi_pilotpi_rpios.md)
- [PilotPi with Ubuntu Server](flight_controller/raspberry_pi_pilotpi_ubuntu_server.md)
- [Discontinued Autopilots/Vehicles](flight_controller/autopilot_discontinued.md)
- [Drotek Dropix (FMUv2)](flight_controller/dropix.md)
- [Omnibus F4 SD](flight_controller/omnibus_f4_sd.md)
- [Bitcraze Crazyflie 2.0 ](complete_vehicles_mc/crazyflie2.md)
- [Aerotenna OcPoC-Zynq Mini](flight_controller/ocpoc_zynq.md)
- [CUAV X7](flight_controller/cuav_x7.md)
- [CUAV v5](flight_controller/cuav_v5.md)
- [CUAV Pixhack v3 (FMUv3)](flight_controller/pixhack_v3.md)
- [Holybro Kakute F7](flight_controller/kakutef7.md)
- [Holybro Pixfalcon](flight_controller/pixfalcon.md)
- [Holybro pix32 (FMUv2)](flight_controller/holybro_pix32.md)
- [ModalAI Flight Core v1](flight_controller/modalai_fc_v1.md)
- [ModalAI VOXL Flight](flight_controller/modalai_voxl_flight.md)
- [mRo X2.1 (FMUv2)](flight_controller/mro_x2.1.md)
- [mRo AUAV-X2](flight_controller/auav_x2.md)
- [NXP RDDRONE-FMUK66 FMU](flight_controller/nxp_rddrone_fmuk66.md)
- [3DR Pixhawk 1](flight_controller/pixhawk.md)
- [Pixhawk Autopilot Bus (PAB) & Carriers](flight_controller/pixhawk_autopilot_bus.md)
- [ARK Electronics Pixhawk Autopilot Bus Carrier](flight_controller/ark_pab.md)
- [Mounting the Flight Controller](assembly/mount_and_orient_controller.md)
@@ -399,6 +379,7 @@
- [PX4 DroneCAN Firmware](dronecan/px4_cannode_fw.md)
- [ARK CANnode](dronecan/ark_cannode.md)
- [RaccoonLab CAN Nodes](dronecan/raccoonlab_nodes.md)
- [DroneCAN Lights](dronecan/lights.md)
- [Cable Wiring](assembly/cable_wiring.md)
- [Companion Computers](companion_computer/index.md)
- [Pixhawk + Companion Setup](companion_computer/pixhawk_companion.md)
+1 -1
View File
@@ -67,7 +67,7 @@ The consensus [appears to be](https://discuss.px4.io/t/vio-vs-optical-flow/34680
Optical flow:
- Downward facing optical flow gives you a planar velocity thats corrected for angular velocity with the gyro.
- Downward facing optical flow gives you a planar velocity that's corrected for angular velocity with the gyro.
- Requires an accurate distance to the ground and assumes a planar surface.
Given those conditions it can be just as accurate/reliable as VIO (such as indoor flight)
- Is more robust than VIO as it has fewer states.
+1 -1
View File
@@ -20,7 +20,7 @@ By default this is set to `Disabled (-1)` and the driver does not run.
After selecting the input mode, reboot the vehicle to start the mount driver.
You should set `MNT_MODE_IN` to one of: `RC (1)`, `MAVlink gimbal protocol v2 (4)` or `Auto (0)` (the other options are deprecated).
If you select `Auto (0)`, the gimbal will automatically select either RC or or MAVLink input based on the latest input.
If you select `Auto (0)`, the gimbal will automatically select either RC or MAVLink input based on the latest input.
Note that the auto-switch from MAVLink to RC requires a large stick motion!
The output is set using the [MNT_MODE_OUT](../advanced_config/parameter_reference.md#MNT_MODE_OUT) parameter.
@@ -1,6 +1,6 @@
# Bootloader Update Pixhawk V6X-RT via USB
This topic explains explains to flash [Pixhawk FMUv6X-RT](../flight_controller/pixhawk6x-rt.md) bootloader via USB _without needing a debug probe_.
This topic explains how to flash [Pixhawk FMUv6X-RT](../flight_controller/pixhawk6x-rt.md) bootloader via USB _without needing a debug probe_.
## Overview
@@ -33,7 +33,7 @@ arm-none-eabi-objcopy -O ihex build/px4_fmu-v6xrt_bootloader/px4_fmu-v6xrt_bootl
## Flashing the bootloader through USB
The Pixhawk V6X-RT comes with a build-in bootloader located on the ROM.
The Pixhawk V6X-RT comes with a built-in bootloader located on the ROM.
To flash a new bootloader through USB you've got to download the [NXP MCUXpresso Secure Provisioning tool](https://www.nxp.com/design/design-center/software/development-software/mcuxpresso-software-and-tools-/mcuxpresso-secure-provisioning-tool:MCUXPRESSO-SECURE-PROVISIONING).
The tool is available for Windows, Linux and macOS.
@@ -79,7 +79,7 @@ The tool is available for Windows, Linux and macOS.
![Flash bootloader through Secure provisioning - Step 7](../../assets/advanced_config/bootloader_6xrt/bootloader_update_v6xrt_step7.png)
1. When the Target Memory configuration is succesful you can press the the **Erase All** button
1. When the Target Memory configuration is successful you can press the **Erase All** button
![Flash bootloader through Secure provisioning - Step 8](../../assets/advanced_config/bootloader_6xrt/bootloader_update_v6xrt_step8.png)
+17 -1
View File
@@ -18479,7 +18479,7 @@ See COM_OBL_RC_ACT to configure action.
### COM_PARACHUTE (`INT32`) {#COM_PARACHUTE}
Expect and require a healthy MAVLink parachute system.
Require MAVLink parachute system to be present and healthy.
| Reboot | minValue | maxValue | increment | default | unit |
| ------ | -------- | -------- | --------- | ------------ | ---- |
@@ -38829,6 +38829,22 @@ Vehicle type.
| ------- | -------- | -------- | --------- | ------- | ---- |
| &check; | | | | 0 | |
### SIH_WIND_E (`FLOAT`) {#SIH_WIND_E}
Wind velocity from east direction.
| Reboot | minValue | maxValue | increment | default | unit |
| ------ | -------- | -------- | --------- | ------- | ---- |
| &nbsp; | | | | 0.0 | m/s |
### SIH_WIND_N (`FLOAT`) {#SIH_WIND_N}
Wind velocity from north direction.
| Reboot | minValue | maxValue | increment | default | unit |
| ------ | -------- | -------- | --------- | ------- | ---- |
| &nbsp; | | | | 0.0 | m/s |
## Simulator
### SIM_AGP_FAIL (`INT32`) {#SIM_AGP_FAIL}
+2 -2
View File
@@ -337,7 +337,7 @@ Note:
Note that the PWM outputs are often labeled `AUX` or `MAIN`.
Use the `AUX` bus if both are present, and `MAIN` otherwise.
- [DShot ESC](../peripherals/dshot.md) (recommended) can only be used on the FMU PWM outputs.
- Motor outputs should be grouped together as much as possible rather than spread randomly across both the FMU and IO busses.
- Motor outputs should be grouped together as much as possible rather than spread randomly across both the FMU and IO buses.
This is because if you assign some function to an output, such as DShot ESC, you can't then assign adjacent unused pins for anything other than a DShot ESC.
### Servos
@@ -363,7 +363,7 @@ If you don't use servos that all accept the same voltage, you'll need to separat
Other peripherals, such as high-power radios, cameras, and so on have their own power requirements.
These will usually be supplied off a separate BEC.
The wiring and configuration of optional/less common components is covered within the [Hardware Hardware Selection & Setup](../hardware/drone_parts.md) topics for individual peripherals.
The wiring and configuration of optional/less common components is covered within the [Hardware Selection & Setup](../hardware/drone_parts.md) topics for individual peripherals.
## Build Tutorials
+1 -1
View File
@@ -52,7 +52,7 @@ The instructions below show how to connect the different types of receivers:
Pixracer has inbuilt WiFi, but also supports telemetry via external Wi-Fi or radio telemetry modules connected to the `TELEM1` or `TELEM2` ports.
This is shown in the wiring diagram below.
![Pixracer external telemtry options](../../assets/flight_controller/pixracer/pixracer_top_telemetry.jpg)
![Pixracer external telemetry options](../../assets/flight_controller/pixracer/pixracer_top_telemetry.jpg)
::: info
The `TELEM2` port must be configured as a second MAVLink instance using the [MAV_2_CONFIG](../advanced_config/parameter_reference.md#MAV_2_CONFIG) parameter.
+1 -1
View File
@@ -36,7 +36,7 @@ The `camera_trigger`, `camera_capture` and `camera_feedback` modules are not use
This work is handled by three PX4 components: [`camera_trigger` driver](https://github.com/PX4/PX4-Autopilot/tree/main/src/drivers/camera_trigger), [`camera_capture` driver](https://github.com/PX4/PX4-Autopilot/tree/main/src/drivers/camera_capture), [`camera-feedback` module](../modules/modules_system.md#camera-feedback).
`camera_trigger` subscribes to the [VehicleCommand](../msg_docs/VehicleCommand.md) topic and monitors for updates to its [supported commands](../camera/fc_connected_camera.md#mavlink-command-interface).
Thes updates occur when either a command is received via MAVLink or when a [camera item is reached in a mission](#camera-commands-in-missions).
These updates occur when either a command is received via MAVLink or when a [camera item is reached in a mission](#camera-commands-in-missions).
The commands enable and disable triggering, and configure triggering at time and distance intervals.
The driver tracks these intervals, and when needed triggers the outputs.
+1 -1
View File
@@ -78,7 +78,7 @@ The shutter integration setting (`param2`) is only obeyed with a GPIO backend.
## Trigger Configuration
Cameras can be connected to the FC for triggering using different intefaces, such as PWM, and GPIO, by specifying the appropriate [trigger interface backend](#trigger-interface-backends).
Cameras can be connected to the FC for triggering using different interfaces, such as PWM, and GPIO, by specifying the appropriate [trigger interface backend](#trigger-interface-backends).
You can also indicate the camera [trigger mode](#trigger-modes).
This configuration can most easily be done from the _QGroundControl_ [Vehicle Setup > Camera](https://docs.qgroundcontrol.com/master/en/qgc-user-guide/setup_view/camera.html#px4-camera-setup) section.
+2 -2
View File
@@ -1,4 +1,4 @@
# Simple MAVLink Cameras (Camera Protcol v1)
# Simple MAVLink Cameras (Camera Protocol v1)
This topic explains how to use PX4 with a MAVLink [camera](../camera/index.md) that implements the [Camera Protocol v1 (Simple Trigger Protocol)](https://mavlink.io/en/services/camera_v1.html) with PX4 and a Ground Station.
@@ -18,7 +18,7 @@ This approach is retained for use with older MAVLink cameras.
PX4 supports this command set for triggering cameras with native support for the protocol (as described in this topic), and also for [cameras attached to flight controller outputs](../camera/fc_connected_camera.md).
Ground stations and MAVLink SDKs generally address camera commands to the autopilot, which then forwards them to a connected MAVLink channel of type `onboard`.
PX4 also re-emits any camera mission items it encouters in a mission as camera commands: commands that aren't accepted are logged.
PX4 also re-emits any camera mission items it encounters in a mission as camera commands: commands that aren't accepted are logged.
In all cases the commands are sent with the system id of the autopilot and the component ID of 0 (i.e. addressed to all components, including cameras).
PX4 will also emit a [CAMERA_TRIGGER](https://mavlink.io/en/messages/common.html#CAMERA_TRIGGER) whenever an image capture is triggered (the camera itself may also emit this message on triggering).
@@ -783,7 +783,7 @@ sudo apt install build-essential cmake git genromfs kconfig-frontends libncurses
## Building/Flashing the Pixhawk
The recommended way to update PX4 is on the Pixhawk part of the board is to use your development computer.
You can either install install prebuilt binaries with QGroundControl, or first build and then upload custom firmware.
You can either install prebuilt binaries with QGroundControl, or first build and then upload custom firmware.
Alternatively, you can build and deploy PX4 firmware to the Pixhawk part from the Jetson.
+1 -1
View File
@@ -33,7 +33,7 @@ They are listed here as they can be updated with "vanilla" PX4 firmware for test
## Companion Computer Options
PX4 can be used with computers that can be configured to communicate via MAVLink or microROS/uXRCE-DDS over over a serial port (or Ethernet port, if present).
PX4 can be used with computers that can be configured to communicate via MAVLink or microROS/uXRCE-DDS over a serial port (or Ethernet port, if present).
A small subset of possible alternatives are listed below.
Larger high power examples:
+1 -1
View File
@@ -1,6 +1,6 @@
# Raspberry Pi Companion with Pixhawk
This topic describes how to setup a Raspberry Pi ("RPi") companion companion running [ROS 2](../ros2/user_guide.md) on Linux Ubuntu OS, connecting to a [Pixhawk](../flight_controller/autopilot_pixhawk_standard.md) flight controller using a serial connection between the Pixhawk `TELEM2` port and the RPi's TX/RX pins.
This topic describes how to setup a Raspberry Pi ("RPi") companion running [ROS 2](../ros2/user_guide.md) on Linux Ubuntu OS, connecting to a [Pixhawk](../flight_controller/autopilot_pixhawk_standard.md) flight controller using a serial connection between the Pixhawk `TELEM2` port and the RPi's TX/RX pins.
These instructions should be readily extensible to other RPi and flight controller configurations.
+5 -308
View File
@@ -1,310 +1,7 @@
<Redirect to="../flight_controller/autopilot_discontinued" />
<!--
# Crazyflie 2.0 (Discontinued)
<Badge type="info" text="Discontinued" />
::: warning
_Crazyflie 2.0_ has been [discontinued/superseded](../flight_controller/autopilot_experimental.md).
Try [Bitcraze Crazyflie 2.1](../complete_vehicles_mc/crazyflie21.md) instead!
:::
::: warning
- PX4 does not manufacture this (or any) autopilot.
Contact the [manufacturer](https://www.bitcraze.io/) for hardware support or compliance issues.
- PX4 support for this flight controller is [experimental](../flight_controller/autopilot_experimental.md).
:::
The Crazyflie line of micro quads was created by Bitcraze AB.
An overview of the Crazyflie 2.0 can be [found here](https://www.bitcraze.io/crazyflie-2/).
![Crazyflie2 Image](../../assets/flight_controller/crazyflie/crazyflie2_hero.png)
## Quick Summary
::: info
The main hardware documentation is here: https://wiki.bitcraze.io/projects:crazyflie2:index
:::
- Main System-on-Chip: STM32F405RG
- CPU: 168 MHz ARM Cortex M4 with single-precision FPU
- RAM: 192 KB SRAM
- nRF51822 radio and power management MCU
- MPU9250 Accel / Gyro / Mag
- LPS25H barometer
## Where to Buy
- [Crazyflie 2.0](https://store.bitcraze.io/collections/kits/products/crazyflie-2-0).
- [Crazyradio PA 2.4 GHz USB dongle](https://store.bitcraze.io/products/crazyradio-pa): used for wireless communication between _QGroundControl_ and Crazyflie 2.0.
- [Breakout deck](https://store.bitcraze.io/collections/decks/products/breakout-deck): breakout expansion board for connecting new peripherals.
- [Flow deck](https://store.bitcraze.io/products/flow-deck): contains an optical flow sensor to measure movements of the ground and a distance sensor to measure the distance to the ground.
This will be useful for precise altitude and position control.
- [Z-ranger deck](https://store.bitcraze.io/collections/decks/products/z-ranger-deck) has the same distance sensor as the Flow deck to measure the distance to the ground.
This will be useful for precise altitude control.
- [SD-card deck](https://store.bitcraze.io/collections/decks/products/sd-card-deck): used for high speed onboard logging to a micro SD card.
- [Logitech Joystick](https://support.logi.com/hc/en-us/articles/360024326793--Getting-Started-Gamepad-F310).
## Flashing PX4
After setting up the PX4 development environment, follow these steps to install the PX4 Autopilot on the Crazyflie 2.0:
1. Download the source code of the PX4 Bootloader:
```sh
git clone https://github.com/PX4/PX4-Bootloader.git
```
1. Navigate into the top directory of the source code and compile it using:
```sh
make crazyflie_bl
```
1. Put the Crazyflie 2.0 into DFU mode by following these steps:
- Ensure it is initially unpowered.
- Hold down the reset button (see figure below...).
![Crazyflie2 Reset Button](../../assets/flight_controller/crazyflie/crazyflie_reset_button.jpg)
- Plug into computer's USB port.
- After a second, the blue LED should start blinking and after 5 seconds should start blinking faster.
- Release button.
1. Install _dfu-util_:
```sh
sudo apt-get update
sudo apt-get install dfu-util
```
1. Flash bootloader using _dfu-util_ and unplug Crazyflie 2.0 when done:
```sh
sudo dfu-util -d 0483:df11 -a 0 -s 0x08000000 -D ./build/crazyflie_bl/crazyflie_bl.bin
```
When powering on the Crazyflie 2.0 the yellow LED should blink.
1. Download the source code of the PX4 autopilot:
```sh
git clone https://github.com/PX4/PX4-Autopilot.git
```
1. Navigate into the top directory of the source code and compile it using:
```sh
make bitcraze_crazyflie_default upload
```
1. When prompted to plug in device, plug in Crazyflie 2.0.
The yellow LED should start blinking indicating bootloader mode.
Then the red LED should turn on indicating that the flashing process has started.
1. Wait for completion.
1. Done! Calibrate the sensors using [QGroundControl](https://docs.qgroundcontrol.com/master/en/qgc-user-guide/setup_view/sensors.html).
::: info
If QGroundControl does not connect with the vehicle, ensure that in [nuttx-config](https://github.com/PX4/PX4-Autopilot/blob/main/boards/bitcraze/crazyflie/nuttx-config/nsh/defconfig) for crazyflie `# CONFIG_DEV_LOWCONSOLE is not set` is replaced by `CONFIG_DEV_LOWCONSOLE=y`.
This should be done using _menuconfig_:
```sh
make bitcraze_crazyflie_default menuconfig
```
or _qconfig_ (Check _Low-level console support_ under _Serial Driver Support_ in GUI):
```sh
make bitcraze_crazyflie_default qconfig
```
:::
## Wireless Setup Instructions
The onboard nRF module allows connecting to the board via Bluetooth or through the proprietary 2.4GHz Nordic ESB protocol.
- A [Crazyradio PA](https://www.bitcraze.io/crazyradio-pa/) is recommended.
- To fly the Crazyflie 2.0 right away, the Crazyflie phone app is supported via Bluetooth.
Using the official Bitcraze **Crazyflie phone app**:
- Connect via Bluetooth.
- Change mode in settings to 1 or 2.
- Calibrate via QGroundControl.
Connecting via **MAVLink**:
- Use a Crazyradio PA alongside a compatible GCS.
- Download the _crazyflie-lib-python_ source code:
```sh
git clone https://github.com/bitcraze/crazyflie-lib-python.git
```
::: info
We will use [cfbridge.py](https://github.com/bitcraze/crazyflie-lib-python/blob/master/examples/cfbridge.py) to setup a wireless MAVlink communication link between Crazyflie 2.0 (flashed with PX4) and QGroundControl. _Cfbridge_ enables QGroundControl to communicate with the crazyradio PA.
The [C based cfbridge](https://github.com/dennisss/cfbridge) is currently experiencing data loss issues, which is why we have chosen to use **cfbridge.py**.
:::
- Make sure you have set the udev permissions to use the USB Radio. To do this, follow the steps listed [here](https://www.bitcraze.io/documentation/repository/crazyflie-lib-python/master/installation/usb_permissions/) and **restart** your computer.
- Connect a Crazyradio PA via USB.
- Build a [virtual environment (local python environment)](https://virtualenv.pypa.io/en/latest/) with package dependencies using the following method:
```sh
pip install tox --user
```
- Navigate to the crazyflie-lib-python folder and type:
```sh
make venv
```
- Activate the virtual environment:
```sh
source venv-cflib/bin/activate
```
- Install required dependencies:
```sh
pip install -r requirements.txt --user
```
To connect Crazyflie 2.0 with crazyradio, **launch cfbridge** by following these steps:
- Power off and power on Crazyflie 2.0 and wait for it to boot up.
- Connect a Crazyflie radio device via USB.
- Navigate to the crazyflie-lib-python folder.
- Activate the environment:
```sh
source venv-cflib/bin/activate
```
- Navigate to the examples folder:
```sh
cd examples
```
- Launch cfbridge:
```sh
python cfbridge.py
```
::: info
_Cfbridge_ by default tries to initiate the radio link communication on channel 80 and with crazyflie address 0xE7E7E7E7E7.
If you are using [multiple crazyflies and/or crazyradios](https://github.com/dennisss/cfbridge/blob/master/README.md#advanced-swarming) in the same room and want to use a different channel and/or address for each, first connect the crazyflie with QGroundControl via a USB cable and change the syslink parameters (channel, address) in QGroundControl.
Next, launch the cfbridge by giving the same channel and address as the first and second arguments respectively, e.g: `python cfbridge.py 90 0x0202020202`
:::
- Open QGroundControl.
- After using _cfbridge_, you can deactivate the virtualenv if you activated it by pressing `CTRL+z`.
Most of the time, launching _cfbridge_ again from the same terminal doesn't connect to crazyflie, this can be solved by closing the terminal and relaunching _cfbridge_ in a new terminal.
::: tip
If you change any driver in [crazyflie-lib-python](https://github.com/bitcraze/crazyflie-lib-python) or if launching _cfbridge_ in a new terminal does not find crazyflie, you can try navigating to the crazyflie-lib-python folder and run the script below to rebuild cflib.
```sh
make venv
```
:::
::: info
To use a [Joystick](../config/joystick.md):
- Make sure you're using a [`COM_RC_IN_MODE` that allows Joystick](../config/manual_control.md#px4-configuration).
- Calibrate the Joystick and set the Joystick message frequency in QGroundControl if needed (25 Hz is the default).
To be able to set the frequency, the advanced option should be enabled.
![QGC UI for setting message frequency](../../assets/hardware/joystick-message-frequency.png)
This is the rate at which Joystick commands are sent from QGroundControl to Crazyflie 2.0 (to do this, you will need to follow the instructions [here](https://github.com/mavlink/qgroundcontrol) to obtain the latest QGroundControl source code (master) and build it).
:::
## Hardware Setup
Crazyflie 2.0 is able to fly with precise control in [Stabilized mode](../flight_modes_mc/manual_stabilized.md), [Altitude mode](../flight_modes_mc/altitude.md) and [Position mode](../flight_modes_mc/position.md).
- You will need the [Z-ranger deck](https://store.bitcraze.io/collections/decks/products/z-ranger-deck) to fly in _Altitude_ mode.
If you also want to fly in the _Position_ mode, it is recommended you buy the [Flow deck](https://store.bitcraze.io/products/flow-deck) which also has the integrated Z-ranger sensor.
- The onboard barometer is highly susceptible to any external wind disturbances including those created by Crazyflie's own propellers. Hence, we isolated the barometer with a piece of foam, and then mounted the distance sensor on top of it as shown below:
![Crazyflie barometer](../../assets/flight_controller/crazyflie/crazyflie_barometer.jpg)
![Crazyflie barometer foam](../../assets/flight_controller/crazyflie/crazyflie_baro_foam.jpg)
![Crazyflie optical flow](../../assets/flight_controller/crazyflie/crazyflie_opticalflow.jpg)
In order to log flight details, you can mount SD card deck on top of crazyflie as shown below:
![Crazyflie SDCard](../../assets/flight_controller/crazyflie/crazyflie_sdcard.jpg)
Then, you need to stick the battery on top of the SD card deck using a double sided tape:
![Crazyflie battery setup](../../assets/flight_controller/crazyflie/crazyflie_battery_setup.jpg)
## Altitude Control
Crazyflie is able to fly in _Altitude_ mode if you use a [Z-ranger deck](https://store.bitcraze.io/collections/decks/products/z-ranger-deck).
According to the datasheet, the maximum height (above ground) the range finder can sense is 2 m. However, when tested on dark surfaces this value decreases to 0.5 m. On a light floor, it goes up to max 1.3 m. This means you cannot hold altitudes above this value in _Altitude_ or _Position_ flight modes.
::: tip
If the Crazyflie 2.0 height drifts at mid-throttle command in _Altitude mode_ or _Position mode_, first try rebooting the vehicle. If this does not fix the problem, recalibrate the accel and mag (compass).
:::
::: info
Since the onboard barometer is highly susceptible to wind disturbances created by the Crazyflie's own propellers, you cannot rely on it to hold altitude.
:::
## Position Control
With [Flow deck](https://store.bitcraze.io/products/flow-deck), you can fly Crazyflie 2.0 in _Position mode_.
Unlike [PX4FLOW](../sensor/px4flow.md), the flow deck does not house a gyro, hence the onboard gyro is used for flow fusion to find the local position estimates.
Moreover, the flow deck shares the same SPI bus as the SD card deck, therefore logging at high rate on SD card is not recommended when flying in _Position mode_.
## Using FrSky Taranis RC Transmitter as Joystick
If you already own a Taranis RC transmitter and want to use it as a controller, it can be configured as a USB Joystick:
- Create a new model in Taranis.
![Taranis - new model](../../assets/flight_controller/crazyflie/taranis_model.jpg)
- In _MODEL SETUP_ menu page, turn off both internal and external TX modules.
![Taranis - model setup](../../assets/flight_controller/crazyflie/taranis_model_setup.jpg)
- In _OUTPUTS_ menu page (also called “SERVOS” page in some Taranis transmitters), invert Throttle (CH1) and Aileron (CH3).
![Taranis - outputs](../../assets/flight_controller/crazyflie/taranis_outputs.jpg)
To use Taranis switches to arm/disarm and switch to different flight modes:
- In Taranis UI _MIXER_ menu page, you can assign the switches to any channel in the range channel 9-16 which map to the buttons 0-7 in the QGroundControl Joystick setup. For example, Taranis “SD” switch can be set to channel 9 in Taranis UI:
![Taranis switch setup](../../assets/flight_controller/crazyflie/taranis_switch_setup.jpg)
- Connect Taranis to PC with a USB cable and Open QGroundControl.
- In QGroundControl Joystick Setup, you can see the buttons turning yellow when you switch them on. For example, channel 9 in Taranis maps to button 0 in QGroundControl Joystick setup. You can assign any mode to this button e.g. _Altitude_ mode. Now when you lower the switch "SD", flight mode will change to _Altitude_.
![Joystick setup](../../assets/flight_controller/crazyflie/crazyflie_QGCjoystick_setup.png)
### ROS
To connect to Crazyflie 2.0 via MAVROS:
- Start up _cfbridge_ using the above instructions.
- Change the UDP port QGroundControl listens to:
- In QGroundControl, navigate to **Application Settings > General** and uncheck all the boxes under _Autoconnect to the following devices_.
- Add in **Comm Links** a link of type _UDP_, check the _Automatically Connect on Start_ option, change the _Listening Port_ to 14557, add Target Hosts: 127.0.0.1 and then press **OK**.
- Make sure you have [MAVROS](https://github.com/mavlink/mavros/tree/master/mavros#installation) installed.
- Start MAVROS with command:
```sh
roslaunch mavros px4.launch fcu_url:="udp://:14550@127.0.0.1:14551" gcs_url:="udp://@127.0.0.1:14557"
```
- Restart QGroundControl if it doesn't connect.
DOC REMOVED: 202603
-->
+1 -1
View File
@@ -33,7 +33,7 @@ For this build this includes an [Auterion Skynode](../companion_computer/auterio
If using a standard Pixhawk you could connect the RoboClaw to the Autopilot without an Adapter Board.
:::
The RoboClaw should be connected to a suitable suitable serial (UART) port on the flight controller, such as `GPS2` or `TELEM1`.
The RoboClaw should be connected to a suitable serial (UART) port on the flight controller, such as `GPS2` or `TELEM1`.
Other RoboClaw wiring is detailed in the [RoboClaw User Manual](https://downloads.basicmicro.com/docs/roboclaw_user_manual.pdf) 'Packet Serial Wiring' section and shown below (this setup has been validated for compatibility).
![Serial Wiring Encoders](../../assets/airframes/rover/aion_r1/wiring_r1.jpg)
@@ -143,7 +143,7 @@ If you wish to move freely into directions without sensor coverage, this can be
### Acceleration Constraining
For this we split out the acceleration setpoint into two components, one parallel to the closest distance to the obstacle and one normal to it. Then we scale each of these components according the the figure below.
For this we split out the acceleration setpoint into two components, one parallel to the closest distance to the obstacle and one normal to it. Then we scale each of these components according to the figure below.
![Scalefactor](../../assets/computer_vision/collision_prevention/scalefactor.png)
+1 -1
View File
@@ -92,7 +92,7 @@ Explanations and requirements:
```
- Above we specify a separate external and internal log level, which are the levels displayed to GCS users and in the log file, respectively: `{events::Log::Error, events::LogInternal::Info}`.
For the majority of cases you can pass a single log level, and this will be used for both exernal and internal cases.
For the majority of cases you can pass a single log level, and this will be used for both external and internal cases.
There are cases it makes sense to have two different log levels.
For example an RTL failsafe action: the user should see it as Warning/Error, whereas in the log, it is an expected system response, so it can be set to `Info`.
+1 -1
View File
@@ -114,7 +114,7 @@ The instructions below might be used to create a task named _MyTask_:
::: tip
The task added above will be built on all boards, including those with constrained flash such as Pixhawk FMUv2.
If your task is not indended for use on boards with constrained flash it should instead be added to the conditional block shown below (as shown).
If your task is not intended for use on boards with constrained flash it should instead be added to the conditional block shown below (as shown).
```cmake
...
+2 -2
View File
@@ -124,7 +124,7 @@ Additional notes:
<div v-if="$frontmatter.frame === 'Multicopter'">
- The instructions above tune the vehicle in [Altitude mode](../flight_modes_mc/altitude.md).
You can instead takeoff in [Takeoff mode](../flight_modes_mc/takeoff.md) and tune in [Position mode](../flight_modes_mc/position.md) if the vehicle is is _known_ to be stable in these modes.
You can instead takeoff in [Takeoff mode](../flight_modes_mc/takeoff.md) and tune in [Position mode](../flight_modes_mc/position.md) if the vehicle is _known_ to be stable in these modes.
</div>
<div v-else-if="$frontmatter.frame === 'Plane'">
@@ -241,7 +241,7 @@ To map a switch:
2. Set [RC_MAP_AUX1](../advanced_config/parameter_reference.md#RC_MAP_AUX1) to match the RC channel for your switch (you can use any of `RC_MAP_AUX1` to `RC_MAP_AUX6`).
3. Set [FW_AT_MAN_AUX](../advanced_config/parameter_reference.md#FW_AT_MAN_AUX) to the selected channel (i.e. `1: Aux 1` if you mapped `RC_MAP_AUX1`).
The auto tuner will be disabled when the switch is below `0.5` (on the manual control setpoint range of of `[-1, 1]`) and enabled when the switch channel is above `0.5`.
The auto tuner will be disabled when the switch is below `0.5` (on the manual control setpoint range of `[-1, 1]`) and enabled when the switch channel is above `0.5`.
If using an RC AUX switch to enable autotuning, make sure to [select the tuning axes](#select-tuning-axis) before flight.
+3 -3
View File
@@ -274,7 +274,7 @@ The parameters that control when the quad-chute will trigger are listed in the t
## High Wind Failsafe
The high wind failsafe can trigger a warning and/or other mode change when the wind speed exceeds the warning and maximum wind-speed threshhold values.
The high wind failsafe can trigger a warning and/or other mode change when the wind speed exceeds the warning and maximum wind-speed threshold values.
The relevant parameters are listed in the table below.
| Parameter | Description |
@@ -328,8 +328,8 @@ The failure detector can be configured to detect a motor failure while armed (an
| -------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| <a id="FD_ACT_EN"></a>[FD_ACT_EN](../advanced_config/parameter_reference.md#FD_ACT_EN) | Enable/disable the motor failure trigger completely. |
| <a id="FD_ACT_MOT_THR"></a>[FD_ACT_MOT_THR](../advanced_config/parameter_reference.md#FD_ACT_MOT_THR) | Minimum normalized [0,1] motor command below which motor under current is ignored. |
| <a id="FD_ACT_MOT_C2T"></a>[FD_ACT_MOT_C2T](../advanced_config/parameter_reference.md#FD_ACT_MOT_C2T) | Scale between normalized [0,1] motor command and expected minimally reported currrent when the rotor is healthy. |
| <a id="FD_ACT_MOT_TOUT"></a>[FD_ACT_MOT_TOUT](../advanced_config/parameter_reference.md#FD_ACT_MOT_TOUT) | Time in miliseconds for which the under current detection condition needs to stay true. |
| <a id="FD_ACT_MOT_C2T"></a>[FD_ACT_MOT_C2T](../advanced_config/parameter_reference.md#FD_ACT_MOT_C2T) | Scale between normalized [0,1] motor command and expected minimally reported current when the rotor is healthy. |
| <a id="FD_ACT_MOT_TOUT"></a>[FD_ACT_MOT_TOUT](../advanced_config/parameter_reference.md#FD_ACT_MOT_TOUT) | Time in milliseconds for which the under current detection condition needs to stay true. |
| <a id="CA_FAILURE_MODE"></a>[CA_FAILURE_MODE](../advanced_config/parameter_reference.md#CA_FAILURE_MODE) | Configure to not only warn about a motor failure but remove the first motor that detects a failure from the allocation effectiveness which turns off the motor and tries to operate the vehicle without it until disarming the next time. |
### External Automatic Trigger System (ATS)
@@ -13,7 +13,7 @@ For example, different ESCs or motors change the optimal tuning gains.
## Introduction
PX4 uses **P**roportional, **I**ntegral, **D**erivative (PID) controllers (these are the most widespread control technique).
PX4 uses **P**roportional, **I**integral, **D**erivative (PID) controllers (these are the most widespread control technique).
The _QGroundControl_ **PID Tuning** setup provides real-time plots of the vehicle setpoint and response curves.
The goal of tuning is to set the P/I/D values such that the _Response_ curve matches the _Setpoint_ curve as closely as possible (i.e. a fast response without overshoots).
+2 -2
View File
@@ -16,7 +16,7 @@ Configure the following [parameters](../advanced_config/parameters.md) in QGroun
Put the rover into stabilized mode and move the left stick of your controller up to drive forwards.
Disarm the rover and from the flight log plot the `measured_yaw` and the `adjusted_yaw_setpoint` from the [RoverAttitudeStatus](../msg_docs/RoverAttitudeStatus.md) message over each other.
Increase/Decrease the parameter until you are satisfied with the setpoint tracking.
If you observe a steady state error in the yaw setpoint increase the the integrator of the rate controller: [RO_YAW_RATE_I](../advanced_config/parameter_reference.md#RO_YAW_RATE_I) .
If you observe a steady state error in the yaw setpoint increase the integrator of the rate controller: [RO_YAW_RATE_I](../advanced_config/parameter_reference.md#RO_YAW_RATE_I) .
:::
The rover is now ready to drive in [Stabilized mode](../flight_modes_rover/manual.md#stabilized-mode) and the configuration can be continued with [velocity tuning](velocity_tuning.md).
@@ -29,7 +29,7 @@ The attitude controller uses the following structure:
![Rover Attitude Controller](../../assets/config/rover/rover_attitude_controller.png)
The rate and attitude controllers are cascaded, therefor we only require one integrator in the structure to eliminate steady state errors.
The rate and attitude controllers are cascaded, therefore we only require one integrator in the structure to eliminate steady state errors.
We placed the integrator in the rate controller since it can run without the attitude controller but not the other way around.
## Parameter Overview
+1 -1
View File
@@ -129,7 +129,7 @@ In [Manual mode](../flight_modes_rover/manual.md#manual-mode) we can additionall
- Differential Rover: $r=$ [RD_YAW_STK_GAIN](#RD_YAW_STK_GAIN), which enables adjusting the slope of the input mapping. This leads to a normalized steering input $\hat{\delta} = \delta \cdot r \in$ [-[RD_YAW_STK_GAIN](#RD_YAW_STK_GAIN), [RD_YAW_STK_GAIN](#RD_YAW_STK_GAIN)].
- Mecanum Rover: $r=$ [RM_YAW_STK_GAIN](#RM_YAW_STK_GAIN), which enables adjusting the slope of the input mapping. This leads to a normalized steering input $\hat{\delta} = \delta \cdot r \in$ [-[RM_YAW_STK_GAIN](#RM_YAW_STK_GAIN), [RM_YAW_STK_GAIN](#RM_YAW_STK_GAIN)].
This scaling is useful to limit the normalized steering setpoint, if it is too aggresive for your rover in manual mode.
This scaling is useful to limit the normalized steering setpoint, if it is too aggressive for your rover in manual mode.
You can experiment with the relationships graphically using the [PX4 SuperExpo Rover calculator](https://www.desmos.com/calculator/gwm8lrlanx).
+1 -1
View File
@@ -39,7 +39,7 @@ make px4_fmu-v6x_rover
Note that configuration targets are constructed with the format "VENDOR_MODEL_VARIANT".
The built firmware can be installed as custom firmware, as shown above in in [Flashing the Rover Build](#flashing-the-rover-build).
The built firmware can be installed as custom firmware, as shown above in [Flashing the Rover Build](#flashing-the-rover-build).
::: info
You can also enable the modules in default builds by adding these lines to your [board configuration](../hardware/porting_guide_config.md) (e.g. for fmu-v6x you might add them to [`main/boards/px4/fmu-v6x/default.px4board`](https://github.com/PX4/PX4-Autopilot/blob/main/boards/px4/fmu-v6x/default.px4board)):
+1 -1
View File
@@ -11,7 +11,7 @@ Configure the following [parameters](../advanced_config/parameters.md) in QGroun
1. [RO_YAW_RATE_LIM](#RO_YAW_RATE_LIM): Maximum yaw rate you want to allow for your rover.
:::tip
Limiting the yaw rate is necessary if the rover is prone rolling over, loosing traction at high speeds or if passenger comfort is important.
Limiting the yaw rate is necessary if the rover is prone rolling over, losing traction at high speeds or if passenger comfort is important.
Small rovers especially can be prone to rolling over when steering aggressively at high speeds.
If this is the case:
+2 -2
View File
@@ -54,7 +54,7 @@ To tune the velocity controller configure the following [parameters](../advanced
## Manual Position Mode Parameters
These steps are only necessary if you are tuning/want to unlock the manual [Position mode](../flight_modes_rover/manual.md#position-mode). Othwerwise, you can continue with [position tuning](position_tuning.md) where these same parameters will also be configured.
These steps are only necessary if you are tuning/want to unlock the manual [Position mode](../flight_modes_rover/manual.md#position-mode). Otherwise, you can continue with [position tuning](position_tuning.md) where these same parameters will also be configured.
1. [PP_LOOKAHD_GAIN](#PP_LOOKAHD_GAIN): When driving in a straight line (right stick centered) position mode leverages the same path following algorithm used in [auto modes](../flight_modes_rover/auto.md) called [pure pursuit](position_tuning.md#pure-pursuit-guidance-logic-info-only) to achieve the best possible straight line driving behaviour.
This parameter determines how aggressive the controller will steer towards the path.
@@ -99,7 +99,7 @@ The speed controller uses the following structure:
The feed forward mapping is done by interpolating the speed setpoint from [-[RO_MAX_THR_SPEED](../advanced_config/parameter_reference.md#RO_MAX_THR_SPEED), [RO_MAX_THR_SPEED](../advanced_config/parameter_reference.md#RO_MAX_THR_SPEED)] to [-1, 1].
For ackermann and differential rovers the bearing is aligned with the vehicle yaw. Therefor the bearing is simply sent as a yaw setpoint to the [yaw controller](attitude_tuning.md#attitude-controller-structure-info-only) and the speed setpoint is always defined in body x direction.
For ackermann and differential rovers the bearing is aligned with the vehicle yaw. Therefore the bearing is simply sent as a yaw setpoint to the [yaw controller](attitude_tuning.md#attitude-controller-structure-info-only) and the speed setpoint is always defined in body x direction.
For mecanum vehicles, the bearing and yaw are decoupled. The direction is controlled by splitting the velocity vector into one speed component in body x direction and one in body y direction.
Both these setpoint are then sent to their own closed loop speed controllers.
+1 -1
View File
@@ -6,7 +6,7 @@ Ice shedding is a feature that periodically spins unused motors in fixed-wing
flight, to break off any ice that is starting to build up in the motors while it
is still feasible to do so.
It is configured by the paramter `CA_ICE_PERIOD`. When it is 0, the feature is
It is configured by the parameter `CA_ICE_PERIOD`. When it is 0, the feature is
disabled, when it is above 0, it sets the duration of the ice shedding cycle in
seconds. In each cycle, the rotors are spun for two seconds at a motor output of
0.01.
+1 -1
View File
@@ -7,7 +7,7 @@ const { site } = useData();
<div v-if="site.title !== 'PX4 Guide (main)'">
<div class="custom-block danger">
<p class="custom-block-title">This page may be out out of date. <a href="https://docs.px4.io/main/en/contribute/dev_call">See the latest version</a>.</p>
<p class="custom-block-title">This page may be out of date. <a href="https://docs.px4.io/main/en/contribute/dev_call">See the latest version</a>.</p>
</div>
</div>
+45 -17
View File
@@ -18,9 +18,9 @@ Simple changes to _existing content_ can be made by clicking the **Edit on GitHu
To edit an existing English page:
1. Open the page.
1. Click the **Edit on GitHub** link below the page content.
1. Make the desired change.
1. Below the Github page editor you'll be prompted to create a separate branch and then guided to submit a _pull request_.
2. Click the **Edit on GitHub** link below the page content.
3. Make the desired change.
4. Below the Github page editor you'll be prompted to create a separate branch and then guided to submit a _pull request_.
The documentation team will review the request and either merge it or work with you to update it.
@@ -34,9 +34,9 @@ More substantial changes, including adding new pages or adding/modifying images,
For these kinds of changes we suggest using the same approach as for _code_:
1. Use the _git_ toolchain to get the PX4 source code onto your local computer.
1. Modify the documentation as needed (add, change, delete).
1. _Test_ that it builds properly using Vitepress.
1. Create a branch for your changes and create a pull request (PR) to pull it back into the [PX4-Autopilot](https://github.com/PX4/PX4-Autopilot) repo.
2. Modify the documentation as needed (add, change, delete).
3. _Test_ that it builds properly using Vitepress.
4. Create a branch for your changes and create a pull request (PR) to pull it back into the [PX4-Autopilot](https://github.com/PX4/PX4-Autopilot) repo.
The following explain how to get the source code, build locally (to test), and modify the code.
@@ -55,9 +55,9 @@ To get the library(s) sources onto your local computer you will need to use the
The instructions below explain how to get git and use it on your local computer.
1. Download git for your computer from [https://git-scm.com/downloads/](https://git-scm.com/downloads/)
1. [Sign up](https://github.com/signup) for Github if you haven't already
1. Create a copy (Fork) of the [PX4-Autopilot repo](https://github.com/PX4/PX4-Autopilot) on Github ([instructions here](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/working-with-forks/fork-a-repo)).
1. Clone (copy) your forked repository to your local computer:
2. [Sign up](https://github.com/signup) for Github if you haven't already
3. Create a copy (Fork) of the [PX4-Autopilot repo](https://github.com/PX4/PX4-Autopilot) on Github ([instructions here](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/working-with-forks/fork-a-repo)).
4. Clone (copy) your forked repository to your local computer:
```sh
cd ~/wherever/
@@ -70,19 +70,19 @@ The instructions below explain how to get git and use it on your local computer.
git clone https://github.com/john_citizen/PX4-Autopilot.git
```
1. Navigate to your local repository:
5. Navigate to your local repository:
```sh
cd ~/wherever/PX4-Autopilot
```
1. Add a _remote_ called "upstream" to point to the "official" PX4 version of the library:
6. Add a _remote_ called "upstream" to point to the "official" PX4 version of the library:
```sh
git remote add upstream https://github.com/PX4/PX4-Autopilot
```
:::tip
::: tip
A "remote" is a handle to a particular repository.
The remote named _origin_ is created by default when you clone the repository, and points to _your fork_ of the guide.
Above you create a new remote _upstream_ that points to the PX4 project version of the documents.
@@ -147,19 +147,21 @@ Build the library locally to test that any changes you have made have rendered p
- [Nodejs 18+](https://nodejs.org/en)
- [Yarn classic](https://classic.yarnpkg.com/en/docs/install)
1. Navigate to your local repository and the `/docs` subdirectory:
2. Navigate to your local repository and the `/docs` subdirectory:
```sh
cd ~/wherever/PX4-Autopilot/docs
```
1. Install dependencies (including Vitepress):
3. Install dependencies (including Vitepress):
```sh
yarn install
```
1. Preview and serve the library:
4. (Optional) [Build the docs for PX4 metadata](#building-px4-docs-metadata) if your source contains changes to parameter or module docs that you want to check.
5. Preview and serve the library:
```sh
yarn start
@@ -169,7 +171,7 @@ Build the library locally to test that any changes you have made have rendered p
This will be something like: `http://localhost:5173/px4_user_guide/`.
- Stop serving using **CTRL+C** in the terminal prompt.
1. Open previewed pages in your local editor:
6. Open previewed pages in your local editor:
First specify a local text editor file using the `EDITOR` environment variable, before calling `yarn start` to preview the library.
For example, you can enable VSCode as your default editor by entering:
@@ -187,7 +189,7 @@ Build the library locally to test that any changes you have made have rendered p
The **Open in your editor** link at the bottom of each page will then open the current page in the editor (this replaces the _Open in GitHub_ link).
1. You can build the library as it would be done for deployment:
7. You can build the library as it would be done for deployment:
```sh
# Ubuntu
@@ -202,6 +204,32 @@ Use `yarn start` to preview changes _as you make them_ (documents are updated an
Before submitting a PR you should also build it using `yarn docs:build`, as this can highlight issues that are not visible when using `yarn start`.
:::
#### Building PX4 docs metadata
PX4 Metadata is not automatically updated in the local docs tree when you make changes to source.
This can result in broken links showing up during testing if you link to new parameters, modules, airframes, or other content that is generated from source.
You can generate the metadata and copy it into the tree on _Ubuntu_ (only) using the convenient yarn command:
```sh
# Ubuntu
yarn build_docs_metadata_ubuntu
```
::: info
The generated metadata docs should not be included in PRs as they will complicate reveiwing (metadata is automatically generated when a PR merges in main).
It is not a problem if you do add such metadata, as it will be swamped on merge.
:::
#### Check for broken links
You can use the following command to check for broken links in the whole document:
```sh
# Ubuntu
yarn linkcheck
```
### Source Code Structure
The guide uses the [Vitepress](https://vitepress.dev/) toolchain.
+1 -1
View File
@@ -7,7 +7,7 @@ const { site } = useData();
<div v-if="site.title !== 'PX4 Guide (main)'">
<div class="custom-block danger">
<p class="custom-block-title">This page may be out out of date. <a href="https://docs.px4.io/main/en/contribute/">See the latest version</a>.</p>
<p class="custom-block-title">This page may be out of date. <a href="https://docs.px4.io/main/en/contribute/">See the latest version</a>.</p>
</div>
</div>
+1 -1
View File
@@ -7,7 +7,7 @@ const { site } = useData();
<div v-if="site.title !== 'PX4 Guide (main)'">
<div class="custom-block danger">
<p class="custom-block-title">This page may be out out of date. <a href="https://docs.px4.io/main/en/contribute/support">See the latest version</a>.</p>
<p class="custom-block-title">This page may be out of date. <a href="https://docs.px4.io/main/en/contribute/support">See the latest version</a>.</p>
</div>
</div>
+1 -1
View File
@@ -1,6 +1,6 @@
# Asset Tracking
<Badge type="tip" text="main (planned for: PX4 v1.18)" />
<Badge type="tip" text="PX4 v1.18" />
PX4 can track and log detailed information about external hardware devices connected to the flight controller.
This enables unique identification of vehicle parts throughout their operational lifetime using device IDs, serial numbers, and version information.
+1 -1
View File
@@ -22,7 +22,7 @@ This tutorial shows how to send the MAVLink message `NAMED_VALUE_FLOAT` using th
The code for this tutorial is available here:
- [Debug Tutorial Code](https://github.com/PX4/PX4-Autopilot/blob/main/src/examples/px4_mavlink_debug/px4_mavlink_debug.cpp)
- [Enable the tutorial app](https://github.com/PX4/PX4-Autopilot/blob/main/boards/px4/fmu-v5/default.px4board) by ensuring the MAVLink debug app (**CONFIG_EXAMPLES_PX4_MAVLINK_DEBUG**) is in the config of your board and set set to 'y'.
- [Enable the tutorial app](https://github.com/PX4/PX4-Autopilot/blob/main/boards/px4/fmu-v5/default.px4board) by ensuring the MAVLink debug app (**CONFIG_EXAMPLES_PX4_MAVLINK_DEBUG**) is in the config of your board and set to 'y'.
All required to set up a debug publication is this code snippet.
First add the header file:
+1 -1
View File
@@ -107,7 +107,7 @@ To enable this feature for use in Eclipse:
![NuttX: Menuconfig: CONFIG_DEBUG_TCBINFO](../../assets/debug/nuttx_tcb_task_aware.png)
1. Compile the **jlink-nuttx.so** library in the terminal by running the following command in the terminal: `make jlink-nuttx`
1. Modify Eclipse to use this libary.
1. Modify Eclipse to use this library.
In the _J-Link GDB Server Setup_ configuration, update **Other options** to include `-rtos /home/<PX4 path>/Tools/jlink-nuttx.so`, as shown in the image below.
![Eclipse: GDB Segger Debug config RTOS aware: debugger tab](../../assets/debug/eclipse_settings_debug_config_gdb_segger_task_aware.png)
+1 -1
View File
@@ -70,7 +70,7 @@ cd ~/PX4-Autopilot
make px4_sitl gz_x500
```
Open another terminal and start the `MicroXRCEAgent` to connect to the the simulator:
Open another terminal and start the `MicroXRCEAgent` to connect to the simulator:
```sh
MicroXRCEAgent udp4 -p 8888; exec bash
+1 -1
View File
@@ -1,6 +1,6 @@
# MCU-Link Debug Probe
The [MCU-Link Debug Probe](https://www.nxp.com/design/design-center/software/development-software/mcuxpresso-software-and-tools-/mcu-link-debug-probe:MCU-LINK) is a cheap, fast and highly capable debug probe that can serve as a stand-alone debug and console communicator whn working with Pixhawk boards.
The [MCU-Link Debug Probe](https://www.nxp.com/design/design-center/software/development-software/mcuxpresso-software-and-tools-/mcu-link-debug-probe:MCU-LINK) is a cheap, fast and highly capable debug probe that can serve as a stand-alone debug and console communicator when working with Pixhawk boards.
Key features:
+42 -36
View File
@@ -1,6 +1,6 @@
# SWD Debug Port
PX4 runs on ARM Cortex-M microcontrollers, which contain dedicated hardware for interactive debugging via the [_Serial Wire Debug (SWD)_][swd] interface and non-invasive profiling and high-bandwidth tracing via the [_Serial Wire Ouput (SWO)_][itm] and [_TRACE_ pins][etm].
PX4 runs on ARM Cortex-M microcontrollers, which contain dedicated hardware for interactive debugging via the [_Serial Wire Debug (SWD)_][swd] interface and non-invasive profiling and high-bandwidth tracing via the [_Serial Wire Output (SWO)_][itm] and [_TRACE_ pins][etm].
The SWD debug interface allows direct, low-level, hardware access to the microcontroller's processor and peripherals, so it does not depend on any software on the device.
Therefore it can be used to debug bootloaders and operating systems such as NuttX.
@@ -27,9 +27,7 @@ The SWO pin can emit low-overhead, real-time profiling data with nanosecond time
The TRACE pins require specialized debug probes to deal with the high bandwidth and subsequent datastream decoding.
They are usually not accessible and are typically only used to debug very specific timing issues.
<a id="debug-ports"></a>
## Autopilot Debug Ports
## Autopilot Debug Ports {#debug-ports}
Flight controllers commonly provide a single debug port that exposes both the [SWD Interface](#debug-signals) and [System Console](system_console).
@@ -40,40 +38,52 @@ The debug port location and pinouts for a subset of autopilots are linked below:
<a id="port-information"></a>
| Autopilot | Debug Port |
| :---------------------------------------------------------------------------------- | :---------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Holybro Pixhawk 6X-RT (FMUv6X-RT) | [Pixhawk Debug Full](#pixhawk-debug-full) |
| Holybro Pixhawk 6X (FMUv6x) | [Pixhawk Debug Full](#pixhawk-debug-full) |
| Holybro Pixhawk 5X (FMUv5x) | [Pixhawk Debug Full](#pixhawk-debug-full) |
| [Holybro Durandal](../flight_controller/durandal.md#debug-port) | [Pixhawk Debug Mini](#pixhawk-debug-mini) |
| [Holybro Kakute F7](../flight_controller/kakutef7.md#debug-port) | Solder pads |
| [Holybro Pixhawk 4 Mini](../flight_controller/pixhawk4_mini.md#debug-port) (FMUv5) | [Pixhawk Debug Mini](#pixhawk-debug-mini) |
| [Holybro Pixhawk 4](../flight_controller/pixhawk4.md#debug_port) (FMUv5) | [Pixhawk Debug Mini](#pixhawk-debug-mini) |
| [Drotek Pixhawk 3 Pro](../flight_controller/pixhawk3_pro.md#debug-port) (FMU-v4pro) | [Pixhawk Debug Mini](#pixhawk-debug-mini) |
| [CUAV V5+](../flight_controller/cuav_v5_plus.md#debug-port) | 6-pin JST GH<br>Digikey: [BM06B-GHS-TBT(LF)(SN)(N)][bm06b-ghs-tbt(lf)(sn)(n)] (vertical mount), [SM06B-GHS-TBT(LF)(SN)(N)][sm06b-ghs-tbt(lf)(sn)(n)] (side mount) |
| [CUAV V5nano](../flight_controller/cuav_v5_nano.md#debug_port) | 6-pin JST GH<br>Digikey: [BM06B-GHS-TBT(LF)(SN)(N)][bm06b-ghs-tbt(lf)(sn)(n)] (vertical mount), [SM06B-GHS-TBT(LF)(SN)(N)][sm06b-ghs-tbt(lf)(sn)(n)] (side mount) |
| [3DR Pixhawk](../flight_controller/pixhawk.md#swd-port) | ARM 10-pin JTAG Connector (also used for FMUv2 boards including: _mRo Pixhawk_, _HobbyKing HKPilot32_). |
| Autopilot | Debug Port |
| :----------------------------------------------------------------------------------- | :---------------------------------------- |
| [Holybro Pixhawk 6X-RT](../flight_controller/pixhawk6x-rt.md#debug_port) (FMUv6X-RT) | [Pixhawk Debug Full](#pixhawk-debug-full) |
| [Holybro Pixhawk 6X](../flight_controller/pixhawk6x.md#debug_port) (FMUv6x) | [Pixhawk Debug Full](#pixhawk-debug-full) |
| [Holybro Pixhawk 5X](../flight_controller/pixhawk5x.md#debug_port) (FMUv5x) | [Pixhawk Debug Full](#pixhawk-debug-full) |
| [Holybro Durandal](../flight_controller/durandal.md#debug-port) | [Pixhawk Debug Mini](#pixhawk-debug-mini) |
| [Holybro Pixhawk 4](../flight_controller/pixhawk4.md#debug_port) (FMUv5) | [Pixhawk Debug Mini](#pixhawk-debug-mini) |
| [Holybro Pixhawk 6X Pro](../flight_controller/pixhawk6x_pro.md#debug-port) | [Pixhawk Debug Full](#pixhawk-debug-full) |
| [Holybro Pixhawk 6C](../flight_controller/pixhawk6c.md#debug_port) | [Pixhawk Debug Full](#pixhawk-debug-full) |
| [Holybro Pixhawk 6C Mini](../flight_controller/pixhawk6c_mini.md#debug_port) | [Pixhawk Debug Mini](#pixhawk-debug-mini) |
| [Holybro Pix32 v6](../flight_controller/holybro_pix32_v6.md#debug_port) | [Pixhawk Debug Full](#pixhawk-debug-full) |
| [Holybro Pix32 v5](../flight_controller/holybro_pix32_v5.md#debug-port) | [Pixhawk Debug Mini](#pixhawk-debug-mini) |
| [Holybro Kakute H7](../flight_controller/kakuteh7.md#debug-port) | SWD pads and system console |
| [Holybro Kakute H7 mini](../flight_controller/kakuteh7mini.md#debug-port) | SWD pads and system console |
| [Holybro Kakute H7 V2](../flight_controller/kakuteh7v2.md#debug-port) | SWD pads and system console |
| [CUAV V5+](../flight_controller/cuav_v5_plus.md#debug-port) | Custom port but comes with adaptor cable |
| [CUAV V5nano](../flight_controller/cuav_v5_nano.md#debug_port) | Custom port but comes with adaptor cable |
| [CUAV Pixhawk V6X](../flight_controller/cuav_pixhawk_v6x.md#debug_port) | [Pixhawk Debug Full](#pixhawk-debug-full) |
| [CUAV X25-SUPER](../flight_controller/cuav_x25-super.md#debug_port) | [Pixhawk Debug Mini] |
| [CUAV X25-EVO](../flight_controller/cuav_x25-evo.md#debug_port) | [Pixhawk Debug Mini] |
| [CUAV Nora](../flight_controller/cuav_nora.md#debug-port) | Custom port but comes with adaptor cable. |
| [ARK Pixhawk Autopilot Bus Carrier](../flight_controller/ark_pab.md#debug-port) | [Pixhawk Debug Full](#pixhawk-debug-full) |
| [NXP MR-VMU-RT1176](../flight_controller/nxp_mr_vmu_rt1176.md#debug_port) | [Pixhawk Debug Full](#pixhawk-debug-full) |
| [mRo Pixracer](../flight_controller/pixracer.md#debug-port) | [Pixhawk Debug Mini](#pixhawk-debug-mini) |
| [S-Vehicle E2](../flight_controller/svehicle_e2.md#debug-port) | [Pixhawk Debug Mini] |
| [AP-H743-R1](../flight_controller/x-mav_ap-h743r1.md#debug-port) | 4-pin JST GH (SWD only) |
| [mRo Control Zero F7](../flight_controller/mro_control_zero_f7.md#debug_port) | |
<a id="pixhawk-standard-debug-ports"></a>
## Pixhawk Connector Standard Debug Ports
## Pixhawk Connector Standard Debug Ports {#pixhawk-standard-debug-ports}
The Pixhawk project has defines a standard pinout and connector type for different Pixhawk FMU releases:
:::tip
::: tip
Check your [specific board](#port-information) to confirm the port used.
:::
| FMU Version | Pixhawk Version | Debug Port |
| :---------- | :-------------------------------------------------------------- | :---------------------------------------- |
| FMUv2 | [Pixhawk / Pixhawk 1](../flight_controller/pixhawk.md#swd-port) | 10 pin ARM Debug |
| FMUv3 | Pixhawk 2 | 6 pin SUR Debug |
| FMUv4 | Pixhawk 3 | [Pixhawk Debug Mini](#pixhawk-debug-mini) |
| FMUv5 | Pixhawk 4 FMUv5 | [Pixhawk Debug Mini](#pixhawk-debug-mini) |
| FMUv5X | Pixhawk 5X | [Pixhawk Debug Full](#pixhawk-debug-full) |
| FMUv6 | Pixhawk 6 | [Pixhawk Debug Full](#pixhawk-debug-full) |
| FMUv6X | Pixhawk 6X | [Pixhawk Debug Full](#pixhawk-debug-full) |
| FMUv6X-RT | Pixhawk 6X-RT | [Pixhawk Debug Full](#pixhawk-debug-full) |
| FMU Version | Pixhawk Version | Debug Port |
| :---------- | :------------------ | :---------------------------------------- |
| FMUv2 | Pixhawk / Pixhawk 1 | 10 pin ARM Debug |
| FMUv3 | Pixhawk 2 | 6 pin SUR Debug |
| FMUv4 | Pixhawk 3 | [Pixhawk Debug Mini](#pixhawk-debug-mini) |
| FMUv5 | Pixhawk 4 FMUv5 | [Pixhawk Debug Mini](#pixhawk-debug-mini) |
| FMUv5X | Pixhawk 5X | [Pixhawk Debug Full](#pixhawk-debug-full) |
| FMUv6 | Pixhawk 6 | [Pixhawk Debug Full](#pixhawk-debug-full) |
| FMUv6X | Pixhawk 6X | [Pixhawk Debug Full](#pixhawk-debug-full) |
| FMUv6X-RT | Pixhawk 6X-RT | [Pixhawk Debug Full](#pixhawk-debug-full) |
::: info
There FMU and Pixhawk versions are (only) consistent after FMUv5X.
@@ -142,9 +152,7 @@ You can connect to the debug port using a [cable like this one](https://www.digi
![10-pin JST SH Cable](../../assets/debug/cable_10pin_jst_sh.jpg)
<a id="debug-probes"></a>
## Debug Probes for PX4 Hardware
## Debug Probes for PX4 Hardware {#debug-probes}
Flight controllers commonly provide a [single debug port](#autopilot-debug-ports) that exposes both the [SWD Interface](#debug-signals) and [System Console](system_console).
@@ -217,5 +225,3 @@ This reduces the risk or poor wiring contributing to debugging problems, and has
[swd]: https://developer.arm.com/documentation/ihi0031/a/The-Serial-Wire-Debug-Port--SW-DP-
[itm]: https://developer.arm.com/documentation/ddi0403/d/Appendices/Debug-ITM-and-DWT-Packet-Protocol?lang=en
[etm]: https://developer.arm.com/documentation/ihi0064/latest/
[bm06b-ghs-tbt(lf)(sn)(n)]: https://www.digikey.com/en/products/detail/jst-sales-america-inc/BM06B-GHS-TBT/807804
[sm06b-ghs-tbt(lf)(sn)(n)]: https://www.digikey.com/en/products/detail/jst-sales-america-inc/SM06B-GHS-TB/807790
+1 -1
View File
@@ -141,7 +141,7 @@ Note that the value is generated fresh for each log, and any value specified in
You can use choose different locations for your keys as long as they aren't used by anything else.
:::
The key in `CONFIG_PUBLIC_KEY1` is the public key used to wrap the symmetric key in the the beginning of `.ulge` file (by default: see [SDLOG_EXCH_KEY](../advanced_config/parameter_reference.md#SDLOG_EXCH_KEY)).
The key in `CONFIG_PUBLIC_KEY1` is the public key used to wrap the symmetric key in the beginning of `.ulge` file (by default: see [SDLOG_EXCH_KEY](../advanced_config/parameter_reference.md#SDLOG_EXCH_KEY)).
You can use the `rsa2048.pub` key for testing, or replace it with the path to your own public key in the file (see [Generate RSA Public & Private Keys](#generate-rsa-public-private-keys)).
Build the firmware like this:
+2 -2
View File
@@ -28,7 +28,7 @@ Order this module from:
- Pixhawk Standard SPI Connector
- 7 Pin JST GH
- PWM Connector
- 10 Pin JST JST
- 10 Pin JST
- 8 PWM Outputs
- Matches Pixhawk 4 PWM Connector Pinout
- Pixhawk Standard Debug Connector
@@ -77,7 +77,7 @@ DroneCAN configuration in PX4 is explained in more detail in [DroneCAN > Enablin
You will need to enable the subscriber appropriate for each of the sensors that are connected to the ARK CANnode.
This is done using the the parameters named like `UAVCAN_SUB_*` in the parameter reference (such as [UAVCAN_SUB_ASPD](../advanced_config/parameter_reference.md#UAVCAN_SUB_ASPD), [UAVCAN_SUB_BARO](../advanced_config/parameter_reference.md#UAVCAN_SUB_BARO) etc.).
This is done using the parameters named like `UAVCAN_SUB_*` in the parameter reference (such as [UAVCAN_SUB_ASPD](../advanced_config/parameter_reference.md#UAVCAN_SUB_ASPD), [UAVCAN_SUB_BARO](../advanced_config/parameter_reference.md#UAVCAN_SUB_BARO) etc.).
## Ark CANNode Configuration
+1 -1
View File
@@ -103,7 +103,7 @@ You need to set necessary [DroneCAN](index.md) parameters and define offsets if
### Parameter references
This GPS is using ARK's private driver, the prameters below only exist on the firmware we ship the GPS with. You can set these params either in QGC or using the DroneCAN GUI Tool.
This GPS is using ARK's private driver, the parameters below only exist on the firmware we ship the GPS with. You can set these params either in QGC or using the DroneCAN GUI Tool.
#### SEP_OFFS_YAW (float)
@@ -86,7 +86,7 @@ DroneCAN configuration in PX4 is explained in more detail in [DroneCAN > Enablin
### Sensor Position Configuration
- For the the single Rover the module should be mounted with the included mast.
- For the single Rover the module should be mounted with the included mast.
- For the Dual ZED-F9P setup (moving baseline), the DroneCAN modules should be placed at least 30cm apart on the airframe and elevated on a mast also.
See the following [mast](https://holybro.com/products/30-antenna-mount?_pos=20&_sid=67b49d76b&_ss=r).
- F9P module arrow(s) should be pointing forward with respect to the autopilot orientation.
+5 -13
View File
@@ -152,7 +152,7 @@ DroneCAN peripherals connected to PX4 can also be [configured using parameters v
By convention, parameters named with the prefix [CANNODE\_](../advanced_config/parameter_reference.md#CANNODE_BITRATE) have prefined meaning, and may be documented in the parameter reference.
`CANNODE_` parameters prefixed with `CANNODE_PUB_` and `CANNODE_SUB_` enable the peripheral to publish or subscribe the associated DroneCAN message.
These allow DroneCAN peripherals to be configured to only subscribe and publish messages that they actually need (in the same way that PX4 uses the corresponding `UAVCAN_PUB_`/`UAVCAN_SUB_` parameters).
Note that a peripheral might might not use `CANNODE_` parameters, in which case it may have to publish/subscribe to particular messages whether or not they are needed.
Note that a peripheral might not use `CANNODE_` parameters, in which case it may have to publish/subscribe to particular messages whether or not they are needed.
The following sections provide additional detail on the PX4 and DroneCAN peripheral parameters used to enable particular features.
@@ -283,19 +283,11 @@ Note that DroneCAN ESCs should be on their own dedicated CAN interface(s) becaus
### Lights
PX4 can control LEDs via DroneCAN [LightsCommand](https://dronecan.github.io/Specification/7._List_of_standard_data_types/#lightscommand) messages.
PX4 can control external LEDs on a connected DroneCAN peripheral using the standard DroneCAN [LightsCommand](https://dronecan.github.io/Specification/7._List_of_standard_data_types/#lightscommand) message.
Up to 2 lights acan be controlled.
Each light can independently show [system status colours](../getting_started/led_meanings.md#ui-led), a fixed colour (commonly used for indicating aircraft orientation), or switch between both depending on arm state.
Configuration:
1. Set [UAVCAN_LGT_NUM](../advanced_config/parameter_reference.md#UAVCAN_LGT_NUM) to the number of lights (0 disables, maximum 2). You need to reboot and reopen the ground station to have parameters for new instances available.
2. [UAVCAN_LGT_MODE](../advanced_config/parameter_reference.md#UAVCAN_LGT_MODE) controls when lights should be in active state (always off, when armed, when prearmed, always on).
3. For each light slot (0 to NUM-1), set:
- `UAVCAN_LGT_IDx`: The `light_id` matching your peripheral.
- `UAVCAN_LGT_FNx`: The light function. Available options:
- System status light
- Static colors which light up when `UAVCAN_LGT_MODE` is active.
- Hybrid modes where the Status is shown when `UAVCAN_LGT_MODE` is inactive, and a static color when active.
4. Reboot for changes to take effect.
See [DroneCAN Lights](lights.md) for full configuration details.
## QGC CANNODE Parameter Configuration
+61
View File
@@ -0,0 +1,61 @@
# DroneCAN Lights
PX4 can control external LEDs on a connected DroneCAN peripheral using the standard DroneCAN [LightsCommand](https://dronecan.github.io/Specification/7._List_of_standard_data_types/#lightscommand) message.
Up to 2 lights are supported.
These can show [system status colours](../getting_started/led_meanings.md#ui-led), a fixed colour (used for indicating aircraft orientation), or switch between both depending on arm state.
## Supported Devices
Any DroneCAN peripheral implementing the standard `LightsCommand` message type should work.
The following have been tested:
- **Vertiq ESC LED add-ons**: Each ESC exposes two light IDs — one RGB (for status) and one white.
The `light_id` for each is calculated as `esc_index × 3 + BASE_ID`, where `BASE_ID` is 1 for RGB and 2 for white.
See [Vertiq](../peripherals/vertiq.md) for other ESC setup details.
## PX4 Configuration
1. Set up DroneCAN as described in [DroneCAN](index.md) (`UAVCAN_ENABLE` ≥ 2).
2. Set [UAVCAN_LGT_NUM](../advanced_config/parameter_reference.md#UAVCAN_LGT_NUM) to the number of lights (1 or 2).
Then reboot and reopen the ground station so that parameters for the new instances become visible.
3. Set the `light_id` and [light functions](#light_functions) of each light:
- [UAVCAN_LGT_ID0](../advanced_config/parameter_reference.md#UAVCAN_LGT_ID0) / [UAVCAN_LGT_ID1](../advanced_config/parameter_reference.md#UAVCAN_LGT_ID1): Set to a `light_id` value (as defined by the specific product).
- [UAVCAN_LGT_FN0](../advanced_config/parameter_reference.md#UAVCAN_LGT_FN0) / [UAVCAN_LGT_FN1](../advanced_config/parameter_reference.md#UAVCAN_LGT_FN1): Choose the desired [light function](#light_functions).
4. Set [UAVCAN_LGT_MODE](#UAVCAN_LGT_MODE) to control when fixed "orientation" colours activate.
5. Reboot for changes to take effect.
### Light Functions {#light_functions}
The functions of enabled lights are configured using [UAVCAN_LGT_FN0](../advanced_config/parameter_reference.md#UAVCAN_LGT_FN0) and [UAVCAN_LGT_FN1](../advanced_config/parameter_reference.md#UAVCAN_LGT_FN1), respectively.
Each function is represented by a value that defines two behaviours: one when the activation mode is **inactive** and one when it is **active**.
| Value | Name | When mode inactive | When mode active |
| ----- | ------------- | -------------------- | -------------------- |
| 0 | Status/Status | System status colour | System status colour |
| 1 | Off/White | Off | White |
| 2 | Off/Red | Off | Red |
| 3 | Off/Green | Off | Green |
| 4 | Status/White | System status colour | White |
| 5 | Status/Red | System status colour | Red |
| 6 | Status/Green | System status colour | Green |
| 7 | Status/Off | System status colour | Off |
Notes:
- The [system status colours](../getting_started/led_meanings.md#ui-led) is the same LED pattern used by the flight controller's onboard status LED (e.g. red when disarmed, green when armed and ready).
- A fixed colour, commonly used to indicate aircraft orientation. For example it is a common convention to have a red light on the port side, green on starboard, or white to the rear.
These colours do not change with flight controller state.
- For _hybrid_ functions, such as `Status/Red`, the light shows the Status colour while the activation mode is inactive, then switches to the "fixed" light colour once the mode becomes active.
### Activation Mode (`UAVCAN_LGT_MODE`) {#UAVCAN_LGT_MODE}
The activation mode parameter ([UAVCAN_LGT_MODE](#UAVCAN_LGT_MODE)) controls when each light switches from its _inactive_ to its _active_ behaviour (configured with the [Light function](#light_functions)):
| Value | Meaning |
| ----- | -------------------------------------------------------- |
| 0 | Always inactive (lights always show the inactive column) |
| 1 | Active when armed (default) |
| 2 | Active when prearmed or armed |
| 3 | Always active (lights always show the active column) |
+2 -2
View File
@@ -59,7 +59,7 @@ AIRLink has two computers and integrated LTE Module:
- Ethernet 10/100/1000 Native Gigabit
- WiFi 802.11a/b/g/n/ac, Bluetooth
- USB 3.0 Type C
- 2x Video: 4-Lane MIPI CSI (FPV Camera) and 4-Lane MIPI CSI with HMDI Input (Payload Camera)
- 2x Video: 4-Lane MIPI CSI (FPV Camera) and 4-Lane MIPI CSI with HDMI Input (Payload Camera)
- **LTE/5G Connectivity Module**
- Up to 600 Mbps bandwidth
@@ -327,7 +327,7 @@ For PPM receivers please use RC Connector PPM pin located on the left side of th
## Outputs
AIRLink has 16 PWM ouputs. Main outputs 1-8 and connected to IO MCU. AUX outputs 1-8 are connected to FMU.
AIRLink has 16 PWM outputs. Main outputs 1-8 and connected to IO MCU. AUX outputs 1-8 are connected to FMU.
| Output | Timer | Channel |
| ------ | -------- | --------- |
+1
View File
@@ -1 +1,2 @@
<Redirect to="../flight_controller/ark_pab" />
<!-- 2025 -->
+1
View File
@@ -1 +1,2 @@
<Redirect to="../flight_controller/ark_v6x" />
<!-- 2025 -->
+5 -88
View File
@@ -1,91 +1,8 @@
<Redirect to="../flight_controller/autopilot_discontinued" />
<!--
# AUAV-X2 Autopilot (Discontinued)
<Badge type="info" text="Discontinued" />
Doc removed 202603
::: warning
This flight controller has been [discontinued](../flight_controller/autopilot_experimental.md) and is no longer commercially available.
:::
::: warning
PX4 does not manufacture this (or any) autopilot.
Contact the [manufacturer](https://store.mrobotics.io/) for hardware support or compliance issues.
:::
The AUAV-X2 autopilot is based on the [Pixhawk<sup>&reg;</sup>-project](https://pixhawk.org/) **FMUv2** open hardware design. It runs PX4 on the [NuttX](https://nuttx.apache.org/) OS.
![AUAVX2_case2](../../assets/flight_controller/auav_x2/auavx2_case2.jpg)
## Quick Summary
- Main System-on-Chip: [STM32F427](https://www.st.com/en/microcontrollers-microprocessors/stm32f427-437.html)
- CPU: STM32F427VIT6 ARM microcontroller - Revision 3
- IO: STM32F100C8T6 ARM microcontroller
- Sensors:
- Invensense MPU9250 9DOF
- Invensense ICM-20608 6DOF
- MEAS MS5611 barometer
- Dimensions/Weight
- Size: 36mm x 50mm
- Mounting Points: 30.5mm x 30.5mm 3.2mm diameter
- Weight: 10.9g
- Power OR-ing schematic with reverse voltage protection. 5V power module is required!
## Connectivity
- 2.54mm headers:
- GPS (USART4)
- i2c
- RC input
- PPM input
- Spektrum input
- RSSI input
- sBus input
- sBus output
- Power input
- Buzzer output
- LED output
- 8 x Servo outputs
- 6 x Aux outputs
- USART7 (Console)
- USART8 (OSD)
## Availability
No longer in production.
This has been superseded by the [mRo X2.1](mro_x2.1.md).
mRobotics is the distributor for the AUAV Products from August 2017.
## Key Links
- [DIY Drones Post](https://diydrones.com/profiles/blogs/introducing-the-auav-x2-1-flight-controller)
## Wiring Guide
![AUAV-X2-basic-setup 3](../../assets/flight_controller/auav_x2/auav_x2_basic_setup_3.png)
![AUAV-X2-basic-setup 2](../../assets/flight_controller/auav_x2/auav_x2_basic_setup_2.jpg)
![AUAV-X2-basic-setup 1](../../assets/flight_controller/auav_x2/auav_x2_basic_setup_1.png)
![AUAV-X2-airspeed-setup 3](../../assets/flight_controller/auav_x2/auav_x2_airspeed_setup_3.png)
## Schematics
The board is based on the [Pixhawk project](https://pixhawk.org/) **FMUv2** open hardware design.
- [FMUv2 + IOv2 schematic](https://raw.githubusercontent.com/PX4/Hardware/master/FMUv2/PX4FMUv2.4.5.pdf) -- Schematic and layout
::: info
As a CC-BY-SA 3.0 licensed Open Hardware design, all schematics and design files are [available](https://github.com/pixhawk/Hardware).
:::
## Serial Port Mapping
| UART | Device | Port |
| ------ | ---------- | --------------------- |
| UART1 | /dev/ttyS0 | IO debug |
| USART2 | /dev/ttyS1 | TELEM1 (flow control) |
| USART3 | /dev/ttyS2 | TELEM2 (flow control) |
| UART4 | |
| UART7 | CONSOLE |
| UART8 | SERIAL4 |
-->
@@ -6,26 +6,28 @@ They are listed because you may be using them in an existing drone, and because
## Autopilots
- [Drotek DroPix](../flight_controller/dropix.md) (FMUv2)
- [Omnibus F4 SD](../flight_controller/omnibus_f4_sd.md)
- [CUAV X7](../flight_controller/cuav_x7.md)
- [CUAV v5](../flight_controller/cuav_v5.md) (Pixhawk FMUv5)
- [CUAV Pixhack v3](../flight_controller/pixhack_v3.md) (FMUv3)
- [Aerotenna OcPoC-Zynq Mini](../flight_controller/ocpoc_zynq.md)
- [Holybro Pixhawk 4 Mini](../flight_controller/pixhawk4_mini.md) (FMUv5)
- [Holybro Kakute F7](../flight_controller/kakutef7.md)
- [Holybro Pixhawk Mini](../flight_controller/pixhawk_mini.md) (FMUv3)
- [Holybro Pixfalcon](../flight_controller/pixfalcon.md) (Pixhawk FMUv2)
- [Holybro Pix32](../flight_controller/holybro_pix32.md) (FMUv2)
- [ModalAI VOXL Flight](../flight_controller/modalai_voxl_flight.md)
- [ModalAI Flight Core v1](../flight_controller/modalai_fc_v1.md)
- [mRobotics-X2.1](../flight_controller/mro_x2.1.md) (FMUv2)
- [mRo AUAV-X2](../flight_controller/auav_x2.md) (Pixhawk FMUv2)
- [NXP FMUK66](../flight_controller/nxp_rddrone_fmuk66.md) (Discontinued)
- [3DR Pixhawk 1](../flight_controller/pixhawk.md) (Pixhawk FMUv2)
- _Drotek DroPix_ (FMUv2) — last published in [PX4 v1.13](https://docs.px4.io/v1.13/en/flight_controller/dropix) <!-- 202603 removed doc -->
- _Drotek Pixhawk 3 Pro_ (FMUv4pro) — last published in [PX4 v1.15](https://docs.px4.io/v1.15/en/flight_controller/pixhawk3_pro) <!-- 202603 removed doc -->
- _Omnibus F4 SD_ — last published in [PX4 v1.15](https://docs.px4.io/v1.15/en/flight_controller/omnibus_f4_sd) <!-- 202603 removed doc -->
- _CUAV X7_ — last published in [PX4 v1.16](https://docs.px4.io/v1.16/en/flight_controller/cuav_x7) <!-- 202507 removed doc -->
- _CUAV v5_ (Pixhawk FMUv5) — last published in [PX4 v1.16](https://docs.px4.io/v1.16/en/flight_controller/cuav_v5) <!-- 202507 removed doc -->
- _CUAV Pixhack v3_ (FMUv3) — last published in [PX4 v1.15](https://docs.px4.io/v1.15/en/flight_controller/pixhack_v3) <!-- 202603 removed doc -->
- _Aerotenna OcPoC-Zynq Mini_ — last published in [PX4v1.11](https://docs.px4.io/v1.11/en/flight_controller/ocpoc_zynq#aerotenna-ocpoc-zynq-mini-flight-controller) <!-- 202603 removed doc -->
- _Holybro Pixhawk 4 Mini_ (FMUv5) -— last published in [PX4 v1.16](https://docs.px4.io/v1.16/en/flight_controller/pixhawk4_mini) <!-- 202603 removed doc -->
- _Holybro Kakute F7_ — last published in [PX4 v1.15](https://docs.px4.io/v1.15/en/flight_controller/kakutef7) <!-- 202603 removed doc -->
- _Holybro Pixhawk Mini_ (FMUv3) — last published in [PX4 v1.15](https://docs.px4.io/v1.15/en/flight_controller/pixhawk_mini) <!-- 202603 removed doc -->
- _Holybro Pixfalcon_ (Pixhawk FMUv2) — last published in [PX4 v1.16](https://docs.px4.io/v1.16/en/flight_controller/pixfalcon) <!-- Discontinued around v1.15/2024. -->
- _Holybro Pix32_ (FMUv2) — last published in [PX4 v1.15](https://docs.px4.io/v1.15/en/flight_controller/holybro_pix32) <!-- 202603 removed doc -->
- _ModalAI VOXL Flight_ — last published in [PX4 v1.16](https://docs.px4.io/v1.16/en/flight_controller/modalai_voxl_flight) <!-- 202603 removed doc -->
- _ModalAI Flight Core v1_ — last published in [PX4 v1.11](https://docs.px4.io/v1.11/en/flight_controller/modalai_fc_v1) <!-- 202603 removed doc -->
- _mRobotics-X2.1_ (FMUv2) — last published in [PX4 v1.16](https://docs.px4.io/v1.16/en/flight_controller/mro_x2.1) <!-- 202507 removed doc -->
- _mRo AUAV-X2_ (Pixhawk FMUv2) — last published in [PX4 v1.15](https://docs.px4.io/v1.15/en/flight_controller/auav_x2) <!-- 202603 removed doc -->
- _NXP RDDRONE-FMUK66 FMU_ — last published in [PX4 v1.15 docs](https://docs.px4.io/v1.15/en/flight_controller/nxp_rddrone_fmuk66) <!-- 202603 removed doc -->
- _3DR Pixhawk 1_ (Pixhawk FMUv2) — last published in [PX4 v1.15](https://docs.px4.io/v1.15/en/flight_controller/pixhawk) <!-- 202603 removed doc -->
## Complete Vehicles
- [BetaFPV Beta75X 2S Brushless Whoop](https://docs.px4.io/v1.14/en/complete_vehicles/betafpv_beta75x#betafpv-beta75x-2s-brushless-whoop) (circa PX4 v1.14)
- [Intel® Aero RTF Drone](https://docs.px4.io/v1.12/en/complete_vehicles/intel_aero) (circa PX4 v1.12)
- [Qualcomm Snapdragon Flight](https://docs.px4.io/v1.11/en/flight_controller/snapdragon_flight) (circa PX4 v1.11)
- _Bitcraze Crazyflie 2.0_ — last published in [PX4 v1.15](https://docs.px4.io/v1.15/en/complete_vehicles_mc/crazyflie2) <!-- 202603 removed doc -->
- _BetaFPV Beta75X 2S Brushless Whoop_ — last published in [PX4 v1.14](https://docs.px4.io/v1.14/en/complete_vehicles/betafpv_beta75x#betafpv-beta75x-2s-brushless-whoop) <!-- 202603 removed before -->
- _Intel® Aero RTF Drone_ — last published in [PX4 v1.12](https://docs.px4.io/v1.12/en/complete_vehicles/intel_aero)
- _Qualcomm Snapdragon Flight_ — last published in [PX4 v1.11](https://docs.px4.io/v1.11/en/flight_controller/snapdragon_flight)
+5 -142
View File
@@ -1,144 +1,7 @@
<Redirect to="../flight_controller/autopilot_discontinued" />
<!--
# CUAV v5 (Discontinued)
<Badge type="info" text="Discontinued" /> <!-- 202507 / PX4v1.16 -->
::: warning
This flight controller has been [discontinued](../flight_controller/autopilot_experimental.md) and is no longer commercially available.
:::
::: warning
PX4 does not manufacture this (or any) autopilot.
Contact the [manufacturer](https://store.cuav.net/) for hardware support or compliance issues.
:::
_CUAV v5_<sup>&reg;</sup> (previously "Pixhack v5") is an advanced autopilot designed and made by CUAV<sup>&reg;</sup>.
The board is based on the [Pixhawk-project](https://pixhawk.org/) **FMUv5** open hardware design.
It runs PX4 on the [NuttX](https://nuttx.apache.org/) OS, and is fully compatible with PX4 firmware.
It is intended primarily for academic and commercial developers.
![CUAV v5](../../assets/flight_controller/cuav_v5/pixhack_v5.jpg)
## Quick Summary
- Main FMU Processor: 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:
- Accelerometer/Gyroscope: ICM-20689
- Accelerometer/Gyroscope: BMI055
- Magnetometer: IST8310
- Barometer: MS5611
- Interfaces:
- 8-14 PWM outputs (6 from IO, 8 from FMU)
- 3 dedicated PWM/Capture inputs on FMU
- Dedicated R/C input for CPPM
- Dedicated R/C input for PPM and S.Bus
- analog / PWM RSSI input
- S.Bus servo output
- 5 general purpose serial ports
- 4 I2C ports
- 4 SPI buses
- 2 CANBuses with serial ESC
- Analog inputs for voltage / current of 2 batteries
- Power System:
- Power: 4.3~5.4V
- USB Input: 4.75~5.25V
- Servo Rail Input: 0~36V
- Weight and Dimensions:
- Weight: 90g
- Dimensions: 44x84x12mm
- Other Characteristics:
- Operating temperature: -20 ~ 80°C Measured value
## Where to Buy {#store}
Order from [CUAV](https://cuav.taobao.com/index.htm?spm=2013.1.w5002-16371268426.2.411f26d9E18eAz).
## Connection
![CUAV v5](../../assets/flight_controller/cuav_v5/pixhack_v5_connector.jpg)
::: warning
The RCIN interface is limited to powering the rc receiver and cannot be connected to any power/load.
:::
## Voltage Ratings
_CUAV v5_ can be triple-redundant on the power supply if three power sources are supplied. The three power rails are: **POWER1**, **POWER2** and **USB**.
::: info
The output power rails **FMU PWM OUT** and **I/O PWM OUT** (0V to 36V) do not power the flight controller board (and are not powered by it).
You must supply power to one of **POWER1**, **POWER2** or **USB** or the board will be unpowered.
:::
**Normal Operation Maximum Ratings**
Under these conditions all power sources will be used in this order to power the system:
1. **POWER1** and **POWER2** inputs (4.3V to 5.4V)
1. **USB** input (4.75V to 5.25V)
## Building Firmware
::: tip
Most users will not need to build this firmware!
It is pre-built and automatically installed by _QGroundControl_ when appropriate hardware is connected.
:::
To [build PX4](../dev_setup/building_px4.md) for this target:
```sh
make px4_fmu-v5_default
```
## Debug Port
The [PX4 System Console](../debug/system_console.md) and [SWD interface](../debug/swd_debug.md) operate on the **FMU Debug** port.
Simply connect the FTDI cable to the Debug & F7 SWD connector.
To access the I/O Debug port, the user must remove the CUAV v5 shell.
Both ports have standard serial pins and can be connected to a standard FTDI cable (3.3V, but 5V tolerant).
The pinout is as shown.
![CUAV v5 debug](../../assets/flight_controller/cuav_v5/pixhack_v5_debug.jpg)
| pin | CUAV v5 debug |
| --- | ------------- |
| 1 | GND |
| 2 | FMU-SWCLK |
| 3 | FMU-SWDIO |
| 4 | UART7_RX |
| 5 | UART7_TX |
| 6 | VCC |
## Serial Port Mapping
| UART | Device | Port |
| ------ | ---------- | ------------------------------------- |
| UART1 | /dev/ttyS0 | GPS |
| USART2 | /dev/ttyS1 | TELEM1 (flow control) |
| USART3 | /dev/ttyS2 | TELEM2 (flow control) |
| UART4 | /dev/ttyS3 | TELEM4 |
| USART6 | /dev/ttyS4 | TX is RC input from SBUS_RC connector |
| UART7 | /dev/ttyS5 | Debug Console |
| UART8 | /dev/ttyS6 | PX4IO |
<!-- Note: Got ports using https://github.com/PX4/PX4-user_guide/pull/672#issuecomment-598198434 -->
## Peripherals
- [Digital Airspeed Sensor](https://item.taobao.com/item.htm?spm=a1z10.3-c-s.w4002-16371268452.37.6d9f48afsFgGZI&id=9512463037)
- [Telemetry Radio Modules](https://cuav.taobao.com/category-158480951.htm?spm=2013.1.w5002-16371268426.4.410b7a821qYbBq&search=y&catName=%CA%FD%B4%AB%B5%E7%CC%A8)
- [Rangefinders/Distance sensors](../sensor/rangefinders.md)
## Supported Platforms / Airframes
Any multicopter / airplane / rover or boat that can be controlled with normal RC servos or Futaba S-Bus servos.
The complete set of supported configurations can be seen in the [Airframes Reference](../airframes/airframe_reference.md).
## Further info
- [FMUv5 reference design pinout](https://docs.google.com/spreadsheets/d/1-n0__BYDedQrc_2NHqBenG1DNepAgnHpSGglke-QQwY/edit#gid=912976165).
- [CUAV Github](https://github.com/cuav)
DOC REMOVED: 202603
-->
+5 -180
View File
@@ -1,182 +1,7 @@
<Redirect to="../flight_controller/autopilot_discontinued" />
<!--
# CUAV X7 Flight Controller (Discontinued)
<Badge type="info" text="Discontinued" /> <!-- 202507 / PX4v1.16 -->
::: warning
This flight controller has been [discontinued](../flight_controller/autopilot_experimental.md) and is no longer commercially available.
It has been superseded by the [CUAV X7+](https://doc.cuav.net/controller/x7/en/).
:::
::: warning
PX4 does not manufacture this (or any) autopilot.
Contact the [manufacturer](https://www.cuav.net) for hardware support or compliance issues.
:::
The [X7](https://doc.cuav.net/controller/x7/en/)<sup>&reg;</sup> flight controller is a high-performance autopilot.
It is an ideal choice for industrial drones and large-scale heavy-duty drones.
It is mainly supplied to commercial manufacturers.
![CUAV x7](../../assets/flight_controller/cuav_x7/x7.jpg)
The flight controller adopts a modular design and can be matched with different base plates.
You can design a dedicated carrier board for your UAV to improve the integration of commercial systems, reduce wiring, improve system reliability, and enhance your UAV competitiveness (for example, integrating airspeed sensors, telemetry or even a companion computer, in the carrier board).
CUAV has also provided a variety of carrier boards for you to choose from.
::: info
This flight controller is [manufacturer supported](../flight_controller/autopilot_manufacturer_supported.md).
:::
## Features
- Internal shock absorption
- Modular design, can be DIY carrier board
- Support USB_HS, download logs faster (PX4 not yet supported)
- Support more DShot output
- Support IMU heating, make the sensor work better
- Dedicated CAN battery port
- 3 sets of IMU sensors
- Car-grade RM3100 compass
- High performance processor
::: tip
The manufacturer [CUAV Docs](https://doc.cuav.net/controller/x7/en/) are the canonical reference for the X7.
They should be used by preference as they contain the most complete and up to date information.
:::
## Quick Summary
- Main FMU Processor: STM32H743
- On-board sensors:
- Accelerometer/Gyroscope: ICM-20689
- Accelerometer/Gyroscope: ICM-20649
- Accelerometer/Gyroscope: BMI088
- Magnetometer: RM3100
- Barometer: MS5611\*2
- Interfaces:
- 14 PWM outputs 12 supports Dshot
- Support multiple RC inputs (SBUs / CPPM / DSM)
- Analogue / PWM RSSI input
- 2 GPS ports(GPS and UART4 ports)
- 4 i2c buses(Two i2c dedicated ports)
- 2 CAN bus ports
- 2 Power ports(Power A is common adc interface, Power C is DroneCAN battery interface)
- 2 ADC input
- 1 USB ports
- Power System:
- Power: 4.3~5.4V
- USB Input: 4.75~5.25V
- Servo Rail Input: 0~36V
- Weight and Dimensions:
- Weight: 101 g
- Other Characteristics:
- Operating temperature: -20 ~ 80°cMeasured value
- Three imus
- Supports temperature compensation
- Internal shock absorption
::: info
When it runs PX4 firmware, only 8 pwm works, the remaining 6 pwm are still being adapted, so it is not compatible with VOLT now.
:::
## Where to Buy {#store}
[CUAV Store](https://store.cuav.net)
[CUAV aliexpress](https://www.aliexpress.com/item/4001042683738.html?spm=a2g0o.detail.1000060.2.1ebb2a9d3WDryi&gps-id=pcDetailBottomMoreThisSeller&scm=1007.13339.169870.0&scm_id=1007.13339.169870.0&scm-url=1007.13339.169870.0&pvid=f0df2481-1c0a-44eb-92a4-9c11c6cb3d06&_t=gps-id:pcDetailBottomMoreThisSeller,scm-url:1007.13339.169870.0,pvid:f0df2481-1c0a-44eb-92a4-9c11c6cb3d06,tpp_buckets:668%230%23131923%2320_668%23808%234094%23518_668%23888%233325%2319_668%234328%2319934%23630_668%232846%238115%23807_668%232717%237566%23827_668%231000022185%231000066058%230_668%233468%2315607%2376)
## Connections (Wiring)
[CUAV X7 Wiring Quickstart](https://doc.cuav.net/controller/x7/en/quick-start/quick-start-x7-plus.html)
## Size and Pinouts
![CUAV x7](../../assets/flight_controller/cuav_x7/x7-size.jpg)
![X7 pinouts](../../assets/flight_controller/cuav_x7/x7-pinouts.jpg)
::: warning
The `RCIN` port is limited to powering the RC receiver and cannot be connected to any power/load.
:::
## Voltage Ratings
The _X7 AutoPilot_ can be triple-redundant on the power supply if three power sources are supplied.
The power rails are: **POWERA**, **POWERC** and **USB**.
::: info
The output power rails **PWM OUT** (0V to 36V) do not power the flight controller board (and are not powered by it).
You must supply power to one of **POWERA**, **POWERC** or **USB** or the board will be unpowered.
:::
**Normal Operation Maximum Ratings**
Under these conditions all power sources will be used in this order to power the system:
1. **POWERA** and **POWERC** inputs (4.3V to 5.4V)
2. **USB** input (4.75V to 5.25V)
## Building Firmware
::: tip
Most users will not need to build this firmware!
It is pre-built and automatically installed by _QGroundControl_ when appropriate hardware is connected.
:::
To [build PX4](../dev_setup/building_px4.md) for this target:
```sh
make cuav_x7pro_default
```
## Over Current Protection
The _X7_ has over-current protection on the 5 Volt Peripheral and 5 Volt high power, which limits the current to 2.5A.
The _X7_ has short circuit protection.
::: warning
Up to 2.5 A can be delivered to the connectors listed as pin 1 (although these are only rated at 1 A).
:::
## Debug Port
The system's serial console and SWD interface operate on the **DSU7** port.
Simply connect the FTDI cable to the DSU7 connector (the product list contains the CUAV FTDI cable).
![Debug port (DSU7)](../../assets/flight_controller/cuav_v5_plus/debug_port_dsu7.jpg)
The [PX4 System Console](../debug/system_console.md) and [SWD interface](../debug/swd_debug.md) operate on the **FMU Debug** port (`DSU7`).
The debug port (`DSU7`) uses a [JST BM06B](https://www.digikey.com.au/en/products/detail/jst-sales-america-inc/BM06B-GHS-TBT-LF-SN-N/807850) connector and has the following pinout:
| Pin | Signal | Volt |
| ------- | -------------- | ----- |
| 1 (red) | 5V+ | +5V |
| 2 (blk) | DEBUG TX (OUT) | +3.3V |
| 3 (blk) | DEBUG RX (IN) | +3.3V |
| 4 (blk) | FMU_SWDIO | +3.3V |
| 5 (blk) | FMU_SWCLK | +3.3V |
| 6 (blk) | GND | GND |
CUAV provides a dedicated debugging cable, which can be connected to the `DSU7` port.
This splits out an FTDI cable for connecting the [PX4 System Console](../debug/system_console.md) to a computer USB port, and SWD pins used for SWD/JTAG debugging.
The provided debug cable does not connect to the SWD port `Vref` pin (1).
![CUAV Debug cable](../../assets/flight_controller/cuav_v5_plus/cuav_v5_debug_cable.jpg)
::: warning
The SWD Vref pin (1) uses 5V as Vref but the CPU is run at 3.3V!
Some JTAG adapters (SEGGER J-Link) will use the Vref voltage to set the voltage on the SWD lines.
For direct connection to _Segger Jlink_ we recommended you use the 3.3 Volts from pin 4 of the connector marked `DSM`/`SBUS`/`RSSI` to provide `Vtref` to the JTAG (i.e. providing 3.3V and _NOT_ 5V).
:::
## Supported Platforms / Airframes
Any multicopter / plane / rover or boat that can be controlled with normal RC servos or Futaba S-Bus servos.
The complete set of supported configurations can be seen in the [Airframes Reference](../airframes/airframe_reference.md).
## Further info
- [CUAV docs](https://doc.cuav.net/)
- [x7 schematic](https://github.com/cuav/hardware/tree/master/X7_Autopilot)
DOC REMOVED: 202603
-->
-7
View File
@@ -1,7 +0,0 @@
# DroPix Flight Controller (Discontinued)
<Badge type="info" text="Discontinued" />
The Drotek<sup>&reg;</sup> _DroPix autopilot_ is no longer available on the Drotek website, and is assumed to be discontinued.
See [PX4 v1.13 Documentation > DroPix Flight Controller](https://docs.px4.io/v1.13/en/flight_controller/dropix) for documentation.
+5 -103
View File
@@ -1,106 +1,8 @@
<Redirect to="../flight_controller/autopilot_discontinued" />
<!--
# Holybro pix32 Flight Controller (Discontinued)
<Badge type="info" text="Discontinued" />
Doc removed 202603
::: warning
PX4 does not manufacture this (or any) autopilot.
Contact the [manufacturer](https://holybro.com/) for hardware support or compliance issues.
:::
The Holybro<sup>&reg;</sup> [pix32 autopilot](https://holybro.com/products/pix32pixhawk-flight-controller) (also known as "Pixhawk 2", and formerly as HKPilot32) is based on the [Pixhawk<sup>&reg;</sup>-project](https://pixhawk.org/) **FMUv2** open hardware design.
This board is based on hardware version Pixhawk 2.4.6.
It runs the PX4 flight stack on the [NuttX](https://nuttx.apache.org/) OS.
![pix32](../../assets/flight_controller/holybro_pix32/pix32_hero.jpg)
As a CC-BY-SA 3.0 licensed Open Hardware design, schematics and design files should be [available here](https://github.com/pixhawk/Hardware).
::: tip
The Holybro pix32 is software compatible with the [3DR Pixhawk 1](../flight_controller/pixhawk.md).
It is not connector compatible, but is otherwise physically very similar to the 3DR Pixhawk or mRo Pixhawk.
:::
::: info
This flight controller is [manufacturer supported](../flight_controller/autopilot_manufacturer_supported.md).
:::
## Key Features
- Main System-on-Chip: [STM32F427](https://www.st.com/en/microcontrollers-microprocessors/stm32f427-437.html)
- CPU: 32-bit STM32F427 Cortex<sup>&reg;</sup> M4 core with FPU
- RAM: 168 MHz/256 KB
- Flash: 2 MB
- Failsafe System-on-Chip: STM32F103
- Sensors:
- ST Micro L3GD20 3-axis 16-bit gyroscope
- ST Micro LSM303D 3-axis 14-bit accelerometer / magnetometer
- Invensense<sup>&reg;</sup> MPU 6000 3-axis accelerometer/gyroscope
- MEAS MS5611 barometer
- Dimensions/Weight
- Size: 81x44x15mm
- Weight: 33.1g
- GPS: u-blox<sup>&reg;</sup> super precision Neo-7M with compass
- Input Voltage: 2~10s (7.4~37V)
### Connectivity
- 1x I2C
- 2x CAN
- 3.3 and 6.6V ADC inputs
- 5x UART (serial ports), one high-power capable, 2x with HW flow control
- Spektrum DSM / DSM2 / DSM-X® Satellite compatible input up to DX8 (DX9 and above not supported)
- Futaba<sup>&reg;</sup> S.BUS compatible input and output
- PPM sum signal
- RSSI (PWM or voltage) input
- SPI
- External microUSB port
- Molex PicoBlade connectors
## Where to Buy {#store}
[shop.holybro.com](https://holybro.com/products/pix32pixhawk-flight-controller)
### Accessories
- [Digital airspeed sensor](https://holybro.com/products/digital-air-speed-sensor-ms4525do)
- [HolyBro SiK Telemetry Radio (EU 433 MHz, US 915 MHz)](../telemetry/holybro_sik_radio.md)
## Building Firmware
::: tip
Most users will not need to build this firmware!
It is pre-built and automatically installed by _QGroundControl_ when appropriate hardware is connected.
:::
To [build PX4](../dev_setup/building_px4.md) for this target:
```sh
make px4_fmu-v2_default
```
## Debug Port
See [3DR Pixhawk 1 > Debug Ports](../flight_controller/pixhawk.md#debug-ports).
## Pinouts and Schematics
The board is based on the [Pixhawk project](https://pixhawk.org/) **FMUv2** open hardware design.
- [FMUv2 + IOv2 schematic](https://raw.githubusercontent.com/PX4/Hardware/master/FMUv2/PX4FMUv2.4.5.pdf) -- Schematic and layout
::: info
As a CC-BY-SA 3.0 licensed Open Hardware design, all schematics and design files are [available](https://github.com/pixhawk/Hardware).
:::
## Serial Port Mapping
| UART | Device | Port |
| ------ | ---------- | --------------------- |
| UART1 | /dev/ttyS0 | IO debug |
| USART2 | /dev/ttyS1 | TELEM1 (flow control) |
| USART3 | /dev/ttyS2 | TELEM2 (flow control) |
| UART4 | |
| UART7 | CONSOLE |
| UART8 | SERIAL4 |
<!-- Note: Got ports using https://github.com/PX4/PX4-user_guide/pull/672#issuecomment-598198434 -->
-->
+5 -140
View File
@@ -1,142 +1,7 @@
<Redirect to="../flight_controller/autopilot_discontinued" />
<!--
# Holybro Kakute F7 (Discontinued)
<Badge type="info" text="Discontinued" />
::: warning
This frame has been [discontinued](../flight_controller/autopilot_experimental.md) and is no longer commercially available.
:::
::: warning
PX4 does not manufacture this (or any) autopilot.
Contact the [manufacturer](https://holybro.com/) for hardware support or compliance issues.
:::
The _Kakute F7_ from Holybro is a flight controller board designed for racers.
<img src="../../assets/flight_controller/kakutef7/board.jpg" width="400px" title="Kakute F7" />
::: info
This flight controller is [manufacturer supported](../flight_controller/autopilot_manufacturer_supported.md).
:::
## Key Features
- Main System-on-Chip: [STM32F745VGT6](https://www.st.com/en/microcontrollers-microprocessors/stm32f745vg.html)
- CPU: 216 MHz ARM Cortex M7 with single-precision FPU
- RAM: 320 KB SRAM
- FLASH: 1 MB
- Standard racer form factor: 36x36 mm with standard 30.5 mm hole pattern
- ICM20689 Accel / Gyro (Soft-mounted)
- BMP280 Baro
- microSD (for logging)
- 6 UARTs
- 1 I2C bus
- 6 PWM outputs
- Built-in OSD chip (AB7456 via SPI)
## Where to Buy {#store}
The board can be bought from one of the following shops (for example):
- [getfpv](https://www.getfpv.com/holybro-kakute-f7-tekko32-f3-metal-65a-4-in-1-esc-combo.html)
::: tip
The _Kakute F7_ is designed to work with the _Tekko32_ 4-in-1 ESC and they can be bought in combination.
:::
## Connectors and Pins
This is the silkscreen for the _Kakute F7_, showing the top of the board:
![Kakute F7 Silkscreen](../../assets/flight_controller/kakutef7/silk.png)
| Pin | Function | PX4 default |
| -------- | -------------------------------------------------------------------- | ------------------- |
| B+ | Battery positive voltage (2S-6S) | |
| 5V | 5V output (2A max) | |
| VO | Video output to video transmitter | |
| VI | Video input from FPV camera | |
| G or GND | Ground | |
| SDA, SCL | I2C connection (for peripherals) | |
| R1, T1 | UART1 RX and TX | TELEM1 |
| R2, T2 | UART2 RX and TX | TELEM2 |
| R3, T3 | UART3 RX and TX | NuttX debug console |
| R4, T4 | UART4 RX and TX | GPS1 |
| R6, T6 | UART6 RX and TX | RC port |
| R7, T7 | UART7 RX and TX (RX is located in the plug for use with 4-in-1 ESCs) | DShot telemetry |
| LED | WS2182 addressable LED signal wire (not tested) | |
| Buz- | Piezo buzzer negative leg (Connect buzzer positive leg to 5V pad) | |
| 3V3 | 3.3V output (200 mA max) | |
| M1 to M4 | Motor signal outputs (located in plug for use in 4-in-1 ESCs) | |
| M5, M6 | Additional motor signal outputs (located on side of board) | |
| RSI | Analog RSSI (0-3.3V) input from receiver | |
| Boot | Bootloader button | |
<a id="bootloader"></a>
## PX4 Bootloader Update
The board comes pre-installed with [Betaflight](https://github.com/betaflight/betaflight/wiki).
Before PX4 firmware can be installed, the _PX4 bootloader_ must be flashed.
Download the [kakutef7_bl.hex](https://github.com/PX4/PX4-Autopilot/raw/main/docs/assets/flight_controller/kakutef7/kakutef7_bl_0b3fbe2da0.hex) bootloader binary and read [this page](../advanced_config/bootloader_update_from_betaflight.md) for flashing instructions.
## Building Firmware
To [build PX4](../dev_setup/building_px4.md) for this target:
```sh
make holybro_kakutef7_default
```
## Installing PX4 Firmware
The firmware can be installed in any of the normal ways:
- Build and upload the source
```sh
make holybro_kakutef7_default upload
```
- [Load the firmware](../config/firmware.md) using _QGroundControl_.
You can use either pre-built firmware or your own custom firmware.
## Configuration
If you use a 4-in-1 ESC with Betaflight/Cleanflight motor assignment you can use the [Actuator](../config/actuators.md) configuration UI to set the motor ordering appropriately.
In addition to the [basic configuration](../config/index.md), the following parameters are important:
| Parameter | Setting |
| -------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------- |
| [SYS_HAS_MAG](../advanced_config/parameter_reference.md#SYS_HAS_MAG) | This should be disabled since the board does not have an internal mag. You can enable it if you attach an external mag. |
## Serial Port Mapping
| UART | Device | Port |
| ------ | ---------- | --------------------- |
| USART1 | /dev/ttyS0 | TELEM1 |
| USART2 | /dev/ttyS1 | TELEM2 |
| USART3 | /dev/ttyS2 | Debug Console |
| UART4 | /dev/ttyS3 | GPS1 |
| USART6 | /dev/ttyS4 | RC SBUS |
| UART7 | /dev/ttyS5 | ESC telemetry (DShot) |
<!-- Note: Got ports using https://github.com/PX4/PX4-user_guide/pull/672#issuecomment-598198434 -->
## Debug Port
### System Console
UART3 RX and TX are configured for use as the [System Console](../debug/system_console.md).
### SWD
The [SWD interface](../debug/swd_debug.md) (JTAG) pins are:
- `SWCLK`: Test Point 2 (Pin 72 on the CPU)
- `SWDIO`: Test Point 3 (Pin 76 on CPU)
- `GND`: As marked on board
- `VDD_3V3`: As marked on board
These are shown below.
![SWD Pins on Kakute F7 - CLK SWO](../../assets/flight_controller/kakutef7/debug_swd_port.jpg) ![SWD Pins on Kakute F7: GND and VDD_3V3](../../assets/flight_controller/kakutef7/debug_swd_port_gnd_vcc3_3.jpg)
DOC REMOVED: 202603
-->
+5 -144
View File
@@ -1,146 +1,7 @@
# ModalAI Flight Core v1
<Redirect to="../flight_controller/autopilot_discontinued" />
<Badge type="info" text="Discontinued" /> <Badge type="tip" text="PX4 v1.11" />
<!--
# ModalAI Flight Core v1 (Discontinued)
::: warning
This frame has been [discontinued](../flight_controller/autopilot_experimental.md) and is no longer commercially available.
:::
::: warning
PX4 does not manufacture this (or any) autopilot.
Contact the [manufacturer](https://forum.modalai.com/) for hardware support or compliance issues.
:::
The ModalAI _Flight Core v1_ ([Datasheet](https://docs.modalai.com/flight-core-datasheet/)) is a flight controller for PX4, made in the USA.
The Flight Core can be paired with ModalAI VOXL for obstacle avoidance and GPS-denied navigation, or used independently as a standalone flight controller.
![FlightCoreV1](../../assets/flight_controller/modalai/fc_v1/main.jpg)
Flight Core is identical to the PX4 Flight Controller portion of [VOXL Flight](https://www.modalai.com/pages/eol) ([Datasheet](https://docs.modalai.com/voxl-flight-datasheet/)) which integrates the VOXL Companion Computer and Flight Core into a single PCB.
::: info
This flight controller is [manufacturer supported](../flight_controller/autopilot_manufacturer_supported.md).
:::
## Specification
| Feature | Details |
| :--------------- | :--------------------------------------------------------------- |
| Weight | 6 g |
| MCU | 216MHz, 32-bit ARM M7 [STM32F765II][stm32f765ii] |
| Memory | 256Kb FRAM |
| | 2Mbit Flash |
| | 512Kbit SRAM |
| Firmware | [PX4][px4] |
| IMUs | [ICM-20602][icm-20602] (SPI1) |
| | ICM-42688 (SPI2) |
| | [BMI088][bmi088] (SPI6) |
| Barometer | [BMP388][bmp388] (I2C4) |
| Secure Element | [A71CH][a71ch] (I2C4) |
| microSD Card | [Information on supported cards](../dev_log/logging.md#sd-cards) |
| Inputs | GPS/Mag |
| | Spektrum |
| | Telemetry |
| | CAN bus |
| | PPM |
| Outputs | 6 LEDs (2xRGB) |
| | 8 PWM Channels |
| Extra Interfaces | 3 serial ports |
| | I2C |
| | GPIO |
::: info
More detailed hardware documentation can be found [here](https://docs.modalai.com/flight-core-datasheet/).
:::
<!-- reference links for table above (improve layout) -->
[stm32f765ii]: https://www.st.com/en/microcontrollers-microprocessors/stm32f765ii.html
[bmp388]: https://www.adafruit.com/product/3966
[icm-20602]: https://invensense.tdk.com/products/motion-tracking/6-axis/icm-20602/
[bmi088]: https://www.bosch-sensortec.com/products/motion-sensors/imus/bmi088/
[px4]: https://github.com/PX4/PX4-Autopilot/tree/main/boards/modalai/fc-v1
[a71ch]: https://www.nxp.com/products/security-and-authentication/authentication/plug-and-trust-the-fast-easy-way-to-deploy-secure-iot-connections:A71CH
## Dimensions
![FlightCoreV1Dimensions](../../assets/flight_controller/modalai/fc_v1/dimensions.png)
## PX4 Firmware Compatibility
_Flight Core v1_ is fully compatible with the official PX4 Firmware from PX4 v1.11.
ModalAI maintains a [branched PX4 version](https://github.com/modalai/px4-firmware/tree/modalai-1.11) for PX4 v1.11.
This includes UART ESC support and improvements in VIO and VOA that are planned to be upstreamed.
More information about the firmware can be found [here](https://docs.modalai.com/flight-core-firmware/).
## QGroundControl Support
This board is supported in QGroundControl 4.0 and later.
## Availability
- No longer available
## Quick Start
### Orientation
The diagram below shows the recommended orientation, which corresponds to `ROTATION_NONE` starting with PX4 v1.11.
![FlightCoreV1Orientation](../../assets/flight_controller/modalai/fc_v1/orientation.png)
### Connectors
Detailed information about the pinouts can be found [here](https://docs.modalai.com/flight-core-datasheet-connectors/).
![FlightCoreV1Top](../../assets/flight_controller/modalai/fc_v1/top.png)
| Connector | Summary |
| --------- | ---------------------------------------------------------- |
| J1 | VOXL Communications Interface Connector (TELEM2) |
| J2 | Programming and Debug Connector |
| J3 | USB Connector |
| J4 | UART2, UART ESC (TELEM3) |
| J5 | Telemetry Connector (TELEM1) |
| J6 | VOXL-Power Management Input / Expansion |
| J7 | 8-Channel PWM Output Connector |
| J8 | CAN Bus Connector |
| J9 | PPM RC In |
| J10 | External GPS & Magnetometer Connector |
| J12 | RC input, Spektrum/SBus/UART Connector |
| J13 | I2C Display (Spare Sensor Connector) / Safety Button Input |
![FlightCoreV1Bottom](../../assets/flight_controller/modalai/fc_v1/bottom.png)
### User Guide
The full user guide is available [here](https://docs.modalai.com/flight-core/).
### How to Build
To [build PX4](../dev_setup/building_px4.md) for this target:
```sh
make modalai_fc-v1
```
## Serial Port Mapping
| UART | Device | Port |
| ------ | ---------- | ---------------------------------------- |
| USART1 | /dev/ttyS0 | GPS1 (J10) |
| USART2 | /dev/ttyS1 | TELEM3 (J4) |
| USART3 | /dev/ttyS2 | Debug Console (J2) |
| UART4 | /dev/ttyS3 | Expansion UART (J6) |
| UART5 | /dev/ttyS4 | TELEM2, Primary VOXL Communications (J1) |
| USART6 | /dev/ttyS5 | RC (J12) |
| UART7 | /dev/ttyS6 | TELEM1 (J5) |
| UART8 | /dev/ttyS7 | N/A |
<!-- Note: Got ports using https://github.com/PX4/PX4-user_guide/pull/672#issuecomment-598198434 -->
## Support
Please visit the [ModalAI Forum](https://forum.modalai.com/category/10/flight-core) for more information.
DOC REMOVED: 202603
-->
@@ -1,202 +1,7 @@
# ModalAI VOXL Flight
<Redirect to="../flight_controller/autopilot_discontinued" />
<Badge type="info" text="Discontinued" /> <Badge type="tip" text="PX4 v1.11" />
<!--
# ModalAI VOXL Flight (Discontinued)
::: warning
This frame has been [discontinued](../flight_controller/autopilot_experimental.md) and is no longer commercially available.
:::
::: warning
PX4 does not manufacture this (or any) autopilot.
Contact the [manufacturer](https://forum.modalai.com/) for hardware support or compliance issues.
:::
The ModalAI VOXL Flight is one of the first computing platforms to combine the power and sophistication of Snapdragon with the flexibility and ease of use of PX4 on an STM32F7.
Made in the USA, VOXL Flight supports obstacle avoidance and GPS-denied (indoor) navigation fused with a PX4 flight controller on a single PCB.
![VOXL-Flight](../../assets/flight_controller/modalai/voxl_flight/voxl-flight-dk.jpg)
::: info
This flight controller is [manufacturer supported](../flight_controller/autopilot_manufacturer_supported.md).
:::
## Specifications
### System
| Feature | Details |
| :------ | :------ |
| Weight | 26 g |
### Companion Computer
| Feature | Details |
| :-------------------- | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Base Operation System | Linux Yocto Jethro with 3.18 kernel. Additional Linux Operating Systems can be used by running Docker on VOXL, details [here](https://docs.modalai.com/docker-on-voxl/) |
| Compute | Qualcomm Snapdragon 821 w/ 4GB LPDDR4 1866MHz, Snapdragon 821 [Datasheet](https://manuals.plus/m/1409295179a6c50b5baa1ae6a7113ff67112341756058e9d0466bdb832800a60) |
| CPU | Quad-core CPU up to 2.15GHz |
| GPU | Adreno 530 GPU at 624MHz |
| Compute DSP | Hexagon compute DSP (cDSP) 825MHz |
| Sensor DSP | Hexagon sensor DSP (sDSP) 700MHz |
| Video | 4k30 Video Capture h.264/5 w/ 720p FPV |
| Camera Interfaces | Support for MIPI-CSI2, USB UVC, HDMI |
| Wi-Fi | Pre-certified Wi-Fi module [QCNFA324 FCC ID:PPD-QCNFA324](https://fccid.io/PPD-QCNFA324), QCA6174A modem, 802.11ac 2x2 Dual-band, Bluetooth 4.2 (dual-mode) |
| 4G LTE | Optional add-on module |
| Microhard pDDL | [Optional add-on module](https://www.modalai.com/collections/voxl-add-ons/products/voxl-microhard-modem-usb-hub) |
| GNSS | WGR7640 10Hz |
| I/O | 1x USB3.0 OTG (ADB port), 1x USB2.0 (expansion port), 2x UART, 3x I2C, additional GPIO and SPI can be configured |
| Storage | 32GB (UFS 2.0), Micro SD Card |
| Software | Docker, OpenCV 2.4.11, 3.4.6, 4.2, ROS Indigo, Qualcomm Machine Vision SDK, see [GitLab](https://gitlab.com/voxl-public) for lots of open source examples! |
| IMUs | ICM-42688 (SPI10), ICM-20948 (SPI1) |
| Barometer | BMP280 |
### Flight Controller
| Feature | Details |
| :--------------- | :--------------------------------------------------------------- |
| MCU | 216MHz, 32-bit ARM M7 [STM32F765II][stm32f765ii] |
| Memory | 256Kb FRAM |
| | 2Mbit Flash |
| | 512Kbit SRAM |
| Firmware | [PX4][px4] |
| IMUs | [ICM-20602][icm-20602] (SPI1) |
| | ICM-42688 (SPI2) |
| | [BMI088][bmi088] (SPI6) |
| Barometer | [BMP388][bmp388] (I2C4) |
| Secure Element | [A71CH][a71ch] (I2C4) |
| microSD Card | [Information on supported cards](../dev_log/logging.md#sd-cards) |
| Inputs | GPS/Mag |
| | Spektrum |
| | Telemetry |
| | CAN bus |
| | PPM |
| Outputs | 6 LEDs (2xRGB) |
| | 8 PWM Channels |
| Extra Interfaces | 3 serial ports |
| | I2C |
| | GPIO |
<!-- reference links for above table (improve layout) -->
[stm32f765ii]: https://www.st.com/en/microcontrollers-microprocessors/stm32f765ii.html
[px4]: https://github.com/PX4/PX4-Autopilot/tree/main/boards/modalai/fc-v1
[icm-20602]: https://invensense.tdk.com/products/motion-tracking/6-axis/icm-20602/
[bmi088]: https://www.bosch-sensortec.com/products/motion-sensors/imus/bmi088/
[bmp388]: https://www.adafruit.com/product/3966
[a71ch]: https://www.nxp.com/products/security-and-authentication/authentication/plug-and-trust-the-fast-easy-way-to-deploy-secure-iot-connections:A71CH
::: info
More detailed hardware documentation can be found [here](https://docs.modalai.com/voxl-flight-datasheet/).
:::
## Dimensions
![FlightCoreV1Dimensions](../../assets/flight_controller/modalai/voxl_flight/voxl-flight-dimensions.jpg)
[3D STEP File](https://storage.googleapis.com/modalai_public/modal_drawings/M0019_VOXL-Flight.zip)
## PX4 Firmware Compatibility
_VOXL Flight_ is fully compatible with the official PX4 Firmware from PX4 v1.11.
ModalAI maintains a [branched PX4 version](https://github.com/modalai/px4-firmware/tree/modalai-1.11) for PX4 v1.11.
This includes UART ESC support and improvements in VIO and VOA that are planned to be upstreamed.
More information about the firmware can be found [here](https://docs.modalai.com/flight-core-firmware/).
## QGroundControl Support
This board is supported in QGroundControl 4.0 and later.
## Availability
No longer available.
## Quick Start
A quickstart from the vendor is located [here](https://docs.modalai.com/voxl-flight-quickstart/).
### voxl-vision-px4
The VOXL Flight runs [voxl-vision-px4](https://gitlab.com/voxl-public/voxl-sdk/services/voxl-vision-hub) on the companion computer portion of the hardware serving as a sort of MAVLink proxy.
For details, the source code is available [here](https://gitlab.com/voxl-public/voxl-sdk/services/voxl-vision-hub)
### Connectors
Detailed information about the pinouts can be found [here](https://docs.modalai.com/voxl-flight-datasheet-connectors/).
#### Top
![VOXLFlightTop](../../assets/flight_controller/modalai/voxl_flight/voxl-flight-top.jpg)
_Note: 1000 Series connectors accessible from the STM32/PX4_
| Connector | Summary | Used By |
| --------- | -------------------------------------- | --------------------------------- |
| J2 | Hires 4k Image Sensor (CSI0) | Snapdragon - Linux |
| J3 | Stereo Image Sensor (CSI1) | Snapdragon - Linux |
| J6 | Cooling Fan Connector | Snapdragon - Linux |
| J7 | BLSP6 (GPIO) and BLSP9 (UART) | Snapdragon - Linux |
| J13 | Expansion B2B | Snapdragon - Linux |
| J14 | Integrated GNSS Antenna Connection | Snapdragon - Linux |
| J1001 | Programming and Debug/UART3 | STM32 - PX4 |
| J1002 | UART ESC, UART2/TELEM3 | STM32 - PX4 |
| J1003 | PPM RC In | STM32 - PX4 |
| J1004 | RC Input, Spektrum/SBus/UART6 | STM32 - PX4 |
| J1006 | USB 2.0 Connector (PX4/QGroundControl) | STM32 - PX4 |
| J1007 | 8-Channel PWM/DShot Output | STM32 - PX4 |
| J1008 | CAN Bus | STM32 - PX4 |
| J1009 | I2C3, UART4 | STM32 - PX4 |
| J1010 | Telemetry (TELEM1) | STM32 - PX4 |
| J1011 | I2C2, Safety Button Input | STM32 - PX4 |
| J1012 | External GPS & Mag, UART1, I2C1 | STM32 - PX4 |
| J1013 | Power Input, I2C3 | STM32 - PX4 (powers whole system) |
#### Bottom
![VOXLFlightBottom](../../assets/flight_controller/modalai/voxl_flight/voxl-flight-bottom.jpg)
_Note: 1000 Series connectors accessible from the STM32/PX4_
| Connector | Summary | Used By |
| -------------- | --------------------------------------- | --------------------------- |
| J4 | Tracking/Optic Flow Image Sensor (CSI2) | Snapdragon - Linux |
| J8 | USB 3.0 OTG | Snapdragon - Linux, **adb** |
| J10 | BLSP7 UART and I2C off-board | Snapdragon - Linux |
| J11 | BLSP12 UART and I2C off-board | Snapdragon - Linux |
| VOXL microSD | | Snapdragon - Linux |
| PX4 microSD | 32Gb Max | STM32 - PX4 |
| Wi-Fi Antennas | Included | Snapdragon - Linux |
### User Guide
The full user guide is available [here](https://docs.modalai.com/voxl-flight-quickstart/).
### How to Build
To [build PX4](../dev_setup/building_px4.md) for this target:
```sh
make modalai_fc-v1
```
## Serial Port Mapping
_Note: mappings shown are for the PX4 controlled interfaces only_
| UART | Device | Port |
| ------ | ---------- | --------------------------------------- |
| USART1 | /dev/ttyS0 | GPS1 (J1012) |
| USART2 | /dev/ttyS1 | TELEM3 (J1002) |
| USART3 | /dev/ttyS2 | Debug Console (J1001) |
| UART4 | /dev/ttyS3 | Expansion UART (J6) |
| UART5 | /dev/ttyS4 | UART between PX4 and Companion Computer |
| USART6 | /dev/ttyS5 | RC (J1004) |
| UART7 | /dev/ttyS6 | TELEM1 (J1010) |
| UART8 | /dev/ttyS7 | N/A |
<!-- Note: Got ports using https://github.com/PX4/PX4-user_guide/pull/672#issuecomment-598198434 -->
## Support
Please visit the [ModalAI Forum](https://forum.modalai.com/category/8/voxl-flight) for more information.
DOC REMOVED: 202603
-->
@@ -73,14 +73,14 @@ To [build PX4](../dev_setup/building_px4.md) for this target:
make mro_ctrl-zero-f7
```
## Debug Ports
## Debug Ports {#debug_port}
### Console Port
The [PX4 System Console](../debug/system_console.md) runs on `USART7` using the pins listed below.
This is a standard serial pinout, designed to connect to a [3.3V FTDI](https://www.digikey.com/en/products/detail/TTL-232R-3V3/768-1015-ND/1836393) cable (5V tolerant).
| mRo control zero f7 | | FTDI |
| mRo control zero f7 | | FTDI | |
| ------------------- | ----------- | ---- | ---------------- |
| 17 | USART7 Tx | 5 | FTDI RX (yellow) |
| 19 | USART7 Rx | 4 | FTDI TX (orange) |
+7 -119
View File
@@ -1,122 +1,10 @@
<Redirect to="../flight_controller/autopilot_discontinued" />
<!--
# mRo-X2.1 Autopilot (Discontinued)
<Badge type="info" text="Discontinued" /> <!-- 202507 / PX4v1.16 -->
Doc removed 202603
text="Discontinued" 202507 / PX4v1.16
::: warning
This flight controller has been [discontinued](../flight_controller/autopilot_experimental.md) and is no longer commercially available.
:::
::: warning
PX4 does not manufacture this (or any) autopilot.
Contact the [manufacturer](https://store.mrobotics.io/) for hardware support or compliance issues.
:::
The (mRobotics) _mRo-X2.1_ autopilot is based on the [Pixhawk<sup>&reg;</sup>-project](https://pixhawk.org/) **FMUv2** open hardware design.
It runs PX4 on the [NuttX](https://nuttx.apache.org/) OS.
![mRo X2.1](../../assets/flight_controller/mro/mro_x2.1.jpg)
::: info
This flight controller is [manufacturer supported](../flight_controller/autopilot_manufacturer_supported.md).
:::
## Quick Summary
- Main System-on-Chip: [STM32F427](https://www.st.com/en/microcontrollers-microprocessors/stm32f427-437.html)
- CPU: STM32F427VIT6 ARM<sup>&reg;</sup> microcontroller - Revision 3
- IO: STM32F100C8T6 ARM<sup>&reg;</sup> microcontroller
- Sensors:
- Invensense<sup>&reg;</sup> MPU9250 9DOF
- Invensense ICM-20602 6DOF
- MEAS MS5611 barometer
- Dimensions/Weight
- Size: 36mm x 50mm
(Can be ordered with vertical, horizontal or no headers installed)
- Mounting Points: 30.5mm x 30.5mm 3.2mm diameter
- Weight: 10.9g
The diagram below provides a side-by-side comparison with a Pixhawk 1.
The mRo features almost identical hardware and connectivity but
has a much smaller footprint.
Major differences are updated sensors and Rev 3 FMU.
![Mro Pixhawk 1 vs X2.1 comparison](../../assets/flight_controller/mro/px1_x21.jpg)
## Connectivity
- 2.54mm headers:
- GPS (UART4) with I2C
- CAN Bus
- RC input
- PPM input
- Spektrum input
- RSSI input
- sBus input
- sBus output
- Power input
- Buzzer output
- LED output
- 8 x Servo outputs
- 6 x Aux outputs
- Offboard microUSB connector
- Kill Pin output _(Currently not supported by firmware)_
- AirSpeed Sensor
- USART2 (Telem 1)
- USART3 (Telem 2)
- UART7 (Console)
- UART8 (OSD)
## PX4 BootLoader Issue
By default a mRo X2.1 might come preconfigured for ArduPilot<sup>&reg;</sup> rather than PX4. This
can be seen during firmware update when the board is recognized as FMUv2 instead of X2.1.
In this case you must update the BootLoader using [BL_Update_X21.zip](https://github.com/PX4/PX4-Autopilot/raw/main/docs/assets/hardware/BL_Update_X21.zip).
If this correction is not carried out your compass direction will be wrong and the
secondary IMU will not be detected.
The update steps are:
1. Download and extract [BL_Update_X21.zip](https://github.com/PX4/PX4-Autopilot/raw/main/docs/assets/hardware/BL_Update_X21.zip).
2. Find the folder _BL_Update_X21_. This contains a **bin** file and a subfolder named **/etc** containing an **rc.txt** file
3. Copy these files to your micro SD card's root directory and insert it into the mRO x2.1
4. Power on the mRO x2.1 Wait for it to boot and then reboot 1 time.
## Availability
This product can be ordered at the [mRobotics<sup>&reg;</sup> Store](https://store.mrobotics.io/mRo-X2-1-Rev-2-p/m10021a.htm).
## Wiring Guide
![mRo_X2.1_Wiring](../../assets/flight_controller/mro/mro_x21_wiring.png)
## Building Firmware
::: tip
Most users will not need to build this firmware!
It is pre-built and automatically installed by _QGroundControl_ when appropriate hardware is connected.
:::
To [build PX4](../dev_setup/building_px4.md) for this target:
```sh
make mro_x21_default
```
## Schematics
The board is documented on the mRo hardware repo: [x21_V2_schematic.pdf](https://github.com/mRoboticsIO/Hardware/blob/master/X2.1/Docs/x21_V2_schematic.pdf).
## Serial Port Mapping
| UART | Device | Port |
| ------ | ---------- | --------------- |
| USART1 | /dev/ttyS0 | IO debug |
| USART2 | /dev/ttyS1 | SERIAL1 |
| USART3 | /dev/ttyS2 | TELEM2 |
| UART4 | /dev/ttyS3 | GPS/I2C |
| USART6 | /dev/ttyS4 | PX4IO |
| UART7 | /dev/ttyS5 | SERIAL5 CONSOLE |
| UART8 | /dev/ttyS6 | SERIAL4 |
<!-- Note: Got ports using https://github.com/PX4/PX4-user_guide/pull/672#issuecomment-598198434 -->
Note: Got ports using https://github.com/PX4/PX4-user_guide/pull/672#issuecomment-598198434
-->
+4 -128
View File
@@ -1,131 +1,7 @@
<Redirect to="../flight_controller/autopilot_discontinued" />
<!--
# NXP RDDRONE-FMUK66 FMU (Discontinued)
<Badge type="info" text="Discontinued" />
::: warning
This flight controller has been [discontinued](../flight_controller/autopilot_experimental.md) and is no longer commercially available.
:::
::: warning
PX4 does not manufacture this (or any) autopilot.
Contact the [manufacturer](https://www.nxp.com/) for hardware support or compliance issues.
:::
RDDRONE-FMUK66 FMU is a reference design using NXP Semiconductor components that closely follows Pixhawk FMUv4 specifications while adding two wire automotive Ethernet 100BASET1 and secure element A71CH (RevC) or SE050 (RevD).
NXP provides the schematics, gerbers, BOM and source files so that anyone can duplicate, change or repurpose this design.
This is the official FMU for use with [HoverGames](https://www.hovergames.com/).
![RDDRONE-FMUK66 FMU Hero Image1](../../assets/flight_controller/nxp_rddrone_fmuk66/HoverGamesDrone_14042019_XL_020.jpg)
![RDDRONE-FMUK66 FMU Hero Image2](../../assets/flight_controller/nxp_rddrone_fmuk66/HoverGamesDrone_14042019_XL_021.jpg)
The NXP FMU and included peripherals have been tested to comply with FCC/CE/RoHs/REACH directives.
::: info
These flight controllers are [manufacturer supported](../flight_controller/autopilot_manufacturer_supported.md).
:::
## Quick Summary
- **Main FMU Processor:**
- Kinetis K66 MK66FN2MOVLQ18 microcontroller running at 180MHz Cortex-M4F MCU, 2MB Flash, 256KB SRAM, Dual USBs (FS + HS), Ethernet, 144-LQFP.
- **On-board sensors:**
- Accel/Gyro: BMI088/ICM42688 (RevD)...
- Accel/Magnetometer: FXOS8700CQ
- Gyro: FXAS21002CQ
- Magnetometer: BMM150
- Barometer: ML3115A2
- Barometer: BMP280
- **GPS:**
- u-blox Neo-M8N GPS/GLONASS receiver; integrated magnetometer IST8310
This FMU is provided only as a kit, and includes [Segger Jlink EDU mini debugger](https://www.segger.com/products/debug-probes/j-link/models/j-link-edu-mini/), DCD-LZ debugger adapter, USB-TTL-3V3 console cable, HolyBro GPS module, battery power module, SDCard and case, screws and stickers.
Telemetry radios ([HGD-TELEM433](https://www.nxp.com/part/HGD-TELEM433) and [HGD-TELEM915](https://www.nxp.com/part/HGD-TELEM915)) must be purchased separately to match ISM band frequencies used in your country.
![RDDRONE-FMUK66 FMU Kit](../../assets/flight_controller/nxp_rddrone_fmuk66/rddrone_fmu66_kit_img_contents.jpg)
A "Lite" version RDDRONE-FMUK66L is also available which does not include the power module, GPS, Jlink or USB-TTL-3V3 console cable or SDCard.[Scroll down to see FMUK66L in the buy section of the FMUK66 buy page](https://www.nxp.com/products/no-longer-manufactured/px4-robotic-drone-vehicle-flight-management-unit-vmu-fmu-rddrone-fmuk66:RDDRONE-FMUK66#buy)
Additional information can be found in the [Technical Data Sheet](https://www.nxp.com/products/no-longer-manufactured/px4-robotic-drone-vehicle-flight-management-unit-vmu-fmu-rddrone-fmuk66:RDDRONE-FMUK66). <!-- www.nxp.com/rddrone-fmuk66 -->
## Where to Buy {#store}
**RDDRONE-FMUK66** reference design kit may be purchased direct from NXP or from any of NXP's authorised worldwide network of [electronics distributors](https://www.nxp.com/support/sample-and-buy/distributor-network:DISTRIBUTORS).
- [Purchase Link](https://www.nxp.com/products/no-longer-manufactured/px4-robotic-drone-vehicle-flight-management-unit-vmu-fmu-rddrone-fmuk66:RDDRONE-FMUK66#buy) (www.nxp.com)
- Telemetry radios are purchased separately depending on frequency band:
- [HGD-TELEM433](https://www.nxp.com/part/HGD-TELEM433)
- [HGD-TELEM915](https://www.nxp.com/part/HGD-TELEM915)
::: info
_RDDRONE-FMUK66_ FMU is also included in the complete HoverGames drone kit: [KIT-HGDRONEK66](https://www.nxp.com/products/no-longer-manufactured/nxp-hovergames-drone-kit-including-flight-controller-and-peripherals:KIT-HGDRONEK66#buy)
:::
<!--
## Connectors
[Connector Diagram]
## Pinouts
[Pinouts listing or link]
## Dimensions
[Dimensions]
DOC REMOVED: 202603
-->
## Assembly/Setup
https://nxp.gitbook.io/hovergames
## Building Firmware
::: tip
Most users will not need to build this firmware!
It is pre-built and automatically installed by _QGroundControl_ when appropriate hardware is connected.
:::
To [build PX4](../dev_setup/building_px4.md) for this target:
```sh
make nxp_fmuk66-v3_default
```
## Debug Port
The [PX4 System Console](../debug/system_console.md) and the [SWD interface](../debug/swd_debug.md) run on the [DCD-LZ FMU Debug](https://nxp.gitbook.io/hovergames/rddrone-fmuk66/connectors/debug-interface-dcd-lz) port.
NXP's DCD-LZ is a 7 pin JST-GH connector and adds the nRST/MCU_RESET pin to the [Pixhawk 6-Pin standard debug port](https://github.com/pixhawk/Pixhawk-Standards/blob/master/DS-009%20Pixhawk%20Connector%20Standard.pdf).
The DCD-LZ breakout adapter permits the use of a standard 10 pin JTAG/SWD interface (i.e. using the Segger Jlink) and a standard 5 pin FTDI USB-TTL-3V3 type cable.
<!--
## Peripherals
* [List of anything people should use with this hardware]
-->
## Supported Platforms / Airframes
Any multicopter / airplane / rover or boat that can be controlled with normal RC servos or Futaba S-Bus servos.
The complete set of supported configurations can be seen in the [Airframes Reference](../airframes/airframe_reference.md).
![HoverGames Drone Kit](../../assets/flight_controller/nxp_rddrone_fmuk66/hovergames_drone_14042019_xl001.jpg)
::: tip
The NXP [HoverGames Drone Kit](https://www.nxp.com/kit-hgdronek66) (shown above) is a complete drone development kit that includes everything needed to build a quadcopter.
You only need to supply the 3S/4S LiPo battery.
:::
## Further info
- [HoverGames online documentation](https://nxp.gitbook.io/hovergames) PX4 user and programming guide, specific assembly, construction, debugging, programming instructions.
- 3DModels supporting HoverGames and RDDRONE-FMUK66 can be found on _Thingiverse_ at these search links: [fmuk66](https://www.thingiverse.com/search?q=fmuk66&type=things&sort=relevant), [hovergames](https://www.thingiverse.com/search?q=hovergames&type=things&sort=relevant).
![HoverGamesDronelogo](../../assets/flight_controller/nxp_rddrone_fmuk66/hovergames_colored_small.png)
+6 -11
View File
@@ -1,12 +1,7 @@
<Redirect to="../flight_controller/autopilot_discontinued" />
<!--
# Aerotenna OcPoC-Zynq Mini Flight Controller (Discontinued)
<Badge type="info" text="Discontinued" />
::: warning
This flight controller has been [discontinued](../flight_controller/autopilot_experimental.md) and is no longer commercially available.
PX4 v1.11 is the last release that has (experimental) support for this platform.
See the [PX4v1.11 docs](https://docs.px4.io/v1.11/en/flight_controller/ocpoc_zynq#aerotenna-ocpoc-zynq-mini-flight-controller) for more information.
:::
![ocpoc-zynq-mini](../../assets/hardware/hardware-ocpoc-zynq-mini.jpg)
Doc removed 202603
Probably actually PX4 1.11 timeframes
-->
+5 -259
View File
@@ -1,261 +1,7 @@
# Omnibus F4 SD
<Redirect to="../flight_controller/autopilot_discontinued" />
::: warning
This flight controller has been [discontinued](../flight_controller/autopilot_experimental.md) and is no longer commercially available.
:::
<!--
# Omnibus F4 SD (Discontinued)
::: warning
PX4 does not manufacture this (or any) autopilot.
Contact the manufacturer for support or compliance issues.
:::
The _Omnibus F4 SD_ is a controller board designed for racers.
In contrast to a typical racer board it has some additional features, such as an SD card and a faster CPU.
<img src="../../assets/flight_controller/omnibus_f4_sd/board.jpg" width="400px" title="Omnibus F4 SD" />
These are the main differences compared to a [Pixracer](../flight_controller/pixracer.md):
- Lower price
- Fewer IO ports (though it's still possible to attach a GPS or a Flow sensor for example)
- Requires external pull up resistor on the I2C bus for external GPS, see [I2C](#i2c) below.
- Less RAM (192 KB vs. 256 KB) and FLASH (1 MB vs. 2 MB)
- Same board dimensions as a _Pixracer_, but slightly smaller form factor (because it has less connectors)
- Integrated OSD (not yet implemented in software)
::: tip
All the usual PX4 features can still be used for your racer!
:::
::: info
This flight controller is [manufacturer supported](../flight_controller/autopilot_manufacturer_supported.md).
:::
## Key Features
- Main System-on-Chip: [STM32F405RGT6](https://www.st.com/en/microcontrollers/stm32f405rg.html)
- CPU: 168 MHz ARM Cortex M4 with single-precision FPU
- RAM: 192 KB SRAM
- FLASH: 1 MB
- Standard racer form factor: 36x36 mm with standard 30.5 mm hole pattern
- MPU6000 Accel / Gyro
- BMP280 Baro (not all boards have it mounted)
- microSD (for logging)
- Futaba S.BUS and S.BUS2 / Spektrum DSM2 and DSMX / Graupner SUMD / PPM input / Yuneec ST24
- OneShot PWM out (configurable)
- Built-in current sensor
- Built-in OSD chip (AB7456 via SPI)
## Where to Buy {#store}
The board is produced by different vendors, with some variations (e.g. with or without a barometer).
::: tip
PX4 is compatible with boards that support the Betaflight OMNIBUSF4SD target (if _OMNIBUSF4SD_ is present on the product page the board should work with PX4).
:::
::: tip
Any Omnibus F4 labeled derivative (e.g. clone) should work as well. However, power distribution on these boards is of varying quality.
:::
These are the boards tested and known to work:
- [Hobbywing XRotor Flight Controller F4](https://www.hobbywing.com/en/products/info.html?id=164)
::: info
This board fits on top of the [Hobbywing XRotor Micro 40A 4in1 ESC](https://www.hobbywing.com/en/products/info.html?id=116) without soldering. This ESC board also provides power for the Omnibus board.
:::
Purchase from:
- [Hobbywing XRotor F4 Flight Controller w/OSD](https://www.getfpv.com/hobbywing-xrotor-f4-flight-controller-w-osd.html) (getfpv)
- Original Airbot Omnibus F4 SD
Purchase from:
- [Airbot (CN manufacturer)](https://store.myairbot.com/omnibusf4prov3.html)
- [Ready To Fly Quads (US reseller)](https://quadsrtf.com/product/flip-32-f4-omnibus-rev-2/)
Accessories include:
- [ESP8266 WiFi Module](../telemetry/esp8266_wifi_module.md) for MAVLink telemetry.
You need to connect these pins: GND, RX, TX, VCC and CH-PD (CH-PD to 3.3V). The baud rate is 921600.
## Connectors
Boards from different vendors (based on this design) can have significantly different layout.
Layouts/Silkscreens for various versions are shown below.
### Airbot Omnibus F4 SD
Below are silkscreens for the Airbot Omnibus F4 SD (V1), showing both top and bottom.
![Omnibus F4 SD v1 Silkscreen Top](../../assets/flight_controller/omnibus_f4_sd/silk-top.jpg)
![Omnibus F4 SD v1 Silkscreen Bottom](../../assets/flight_controller/omnibus_f4_sd/silk-bottom.jpg)
### Hobbywing XRotor Flight Controller F4
Below are silkscreens for the Hobbywing XRotor Flight Controller F4.
![Hobbywing XRotor Flight Controller F4 Silkscreen](../../assets/flight_controller/omnibus_f4_sd/hobbywing_xrotor_silk.png)
## Pinouts
### Radio Control
RC is connected to one of the following ports:
- UART1
- SBUS/PPM port (via inverter, internally goes to UART1)
::: info
Some Omnibus F4 boards have a jumper connecting either or both the MCU SBUS and PPM to a single pin header. Set your jumper or solder bridge to the appropriate MCU pin before use.
:::
### UARTs
- UART6: GPS port
- TX: MCU pin PC6
- RX: MCU pin PC7
- Airbot Omnibus F4 SD Pinout is on Port J10 (TX6/RX6):
![Omnibus F4 SD UART6](../../assets/flight_controller/omnibus_f4_sd/uart6.jpg)
- UART4
- TX: MCU pin PA0
- RX: MCU pin PA1
- 57600 baud
- This can be configured as the `TELEM 2` port.
- Airbot Omnibus F4 SD Pinout:
- TX: RSSI pin
- RX: PWM out 5
![Omnibus F4 SD UART4](../../assets/flight_controller/omnibus_f4_sd/uart4.jpg)
![Omnibus F4 SD UART4 Top](../../assets/flight_controller/omnibus_f4_sd/uart4-top.jpg)
### I2C
There is one I2C port available via:
- SCL: MCU pin PB10 (might be labeled as TX3)
- SDA: MCU pin PB11 (might be labeled as RX3)
::: info
You will need external pullups on both signals (clock and data).
You can use 2.2k pullups for example to attach an external mag.
:::
- Airbot Omnibus F4 SD Pinout is on Port J10 (SCL [clock] / SCA [data]):
<img src="../../assets/flight_controller/omnibus_f4_sd/uart6.jpg" title="Omnibus F4 SD UART6" />
Here is an example implementation. I used a Spektrum plug to get 3.3v from the DSM port, connecting only 3.3v + to each line via 2.2k resistor.
![Omnibus F4 SD Pullup](../../assets/flight_controller/omnibus_f4_sd/pullup-schematic.jpg)
![Omnibus F4 SD Pullup Implementation](../../assets/flight_controller/omnibus_f4_sd/pullup.jpg)
## Serial Port Mapping
| UART | Device | Port |
| ------ | ---------- | -------- |
| USART1 | /dev/ttyS0 | SerialRX |
| USART4 | /dev/ttyS1 | TELEM1 |
| USART6 | /dev/ttyS2 | GPS |
<!-- Note: Got ports using https://github.com/PX4/PX4-user_guide/pull/672#issuecomment-598198434 -->
## RC Telemetry
The Omnibus supports telemetry to the RC Transmitter using [FrSky Telemetry](../peripherals/frsky_telemetry.md) or [CRSF Crossfire Telemetry](#crsf_telemetry).
<a id="crsf_telemetry"></a>
### CRSF Crossfire Telemetry
[TBS CRSF Telemetry](../telemetry/crsf_telemetry.md) may be used to send telemetry data from the flight controller (the vehicle's attitude, battery, flight mode and GPS data) to an RC transmitter such as a Taranis.
Benefits over [FrSky telemetry](../peripherals/frsky_telemetry.md) include:
- Only a single UART is needed for RC and telemetry.
- The CRSF protocol is optimized for low latency.
- 150 Hz RC update rate.
- The signals are uninverted and thus no (external) inverter logic is required.
::: info
If you use CRSF Telemetry you will need to build custom PX4 firmware.
By contrast, FrSky telemetry can use prebuilt firmware.
:::
For Omnibus we recommend the [TBS Crossfire Nano RX](https://www.team-blacksheep.com/products/prod:crossfire_nano_rx), since it is specifically designed for small Quads.
On the handheld controller (e.g. Taranis) you will also need a [Transmitter Module](https://www.team-blacksheep.com/shop/cat:tbs-crossfire-radio-transmitter#product_listing).
This can be plugged into the back of the RC controller.
::: info
The referenced links above contain the documentation for the TX/RX modules.
:::
#### Setup
Connect the Nano RX and Omnibus pins as shown:
| Omnibus UART1 | Nano RX |
| ------------- | ------- |
| TX | Ch2 |
| RX | Ch1 |
Next update the TX/RX modules to use the CRSF protocol and set up telemetry.
Instructions for this are provided in the [TBS Crossfire Manual](https://www.team-blacksheep.com/media/files/tbs-crossfire-manual.pdf) (search for 'Setting up radio for CRSF').
#### PX4 CRSF Configuration
You will need to build custom firmware to use CRSF.
For more information see [CRSF Telemetry](../telemetry/crsf_telemetry.md#px4-configuration).
<!-- no longer available 202507 -->
## PX4 Bootloader Update {#bootloader}
The board comes pre-installed with [Betaflight](https://github.com/betaflight/betaflight/wiki).
Before PX4 firmware can be installed, the _PX4 bootloader_ must be flashed.
Download the [omnibusf4sd_bl.hex](https://github.com/PX4/PX4-Autopilot/raw/main/docs/assets/flight_controller/omnibus_f4_sd/omnibusf4sd_bl_d52b70cb39.hex) bootloader binary and read [this page](../advanced_config/bootloader_update_from_betaflight.md) for flashing instructions.
## Building Firmware
To [build PX4](../dev_setup/building_px4.md) for this target:
```sh
make omnibus_f4sd_default
```
## Installing PX4 Firmware
You can use either pre-built firmware or your own custom firmware.
::: warning
If you use [CRSF Telemetry](../telemetry/crsf_telemetry.md#px4-configuration) in your radio system, as describe above, then you must use custom firmware.
:::
The firmware can be installed in any of the normal ways:
- Build and upload the source
```sh
make omnibus_f4sd_default upload
```
- [Load the firmware](../config/firmware.md) using _QGroundControl_.
## Configuration
In addition to the [basic configuration](../config/index.md), the following parameters are important:
| Parameter | Setting |
| ---------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------- |
| [SYS_HAS_MAG](../advanced_config/parameter_reference.md#SYS_HAS_MAG) | This should be disabled since the board does not have an internal mag. You can enable it if you attach an external mag. |
| [SYS_HAS_BARO](../advanced_config/parameter_reference.md#SYS_HAS_BARO) | Disable this if your board does not have a barometer. |
## Further Info
[This page](https://blog.unmanned.tech/omnibus-f4-flight-controller-guide/) provides a good overview with pinouts and setup instructions.
DOC REMOVED: 202603
-->
+4 -74
View File
@@ -1,75 +1,5 @@
<Redirect to="../flight_controller/autopilot_discontinued" />
<!--
# Pixfalcon Flight Controller (Discontinued)
<Badge type="info" text="Discontinued" px4_current="v1.15" year="2024"/>
::: warning
This flight controller has been [discontinued](../flight_controller/autopilot_experimental.md) and is no longer commercially available.
:::
::: warning
PX4 does not manufacture this (or any) autopilot.
Contact the [manufacturer](https://holybro.com/) for hardware support or compliance issues.
:::
The Pixfalcon autopilot (designed by [Holybro<sup>&reg;</sup>](https://holybro.com/)) is binary-compatible (FMUv2) derivative of the [Pixhawk 1](../flight_controller/pixhawk.md) design that has been optimized for space-constrained applications such as FPV racers. It has less IO to allow for the reduction in size.
![Pixfalcon hero image](../../assets/hardware/hardware-pixfalcon.png)
## Quick Summary
- Main System-on-Chip: [STM32F427](https://www.st.com/en/microcontrollers-microprocessors/stm32f427-437.html)
- CPU: 180 MHz ARM<sup>&reg;</sup> Cortex<sup>&reg;</sup> M4 with single-precision FPU
- RAM: 256 KB SRAM (L1)
- Failsafe System-on-Chip: STM32F100
- CPU: 24 MHz ARM Cortex M3
- RAM: 8 KB SRAM
- GPS: u-blox<sup>&reg;</sup> M8 (bundled)
### Connectivity
- 1x I2C
- 2x UART (one for Telemetry / OSD, no flow control)
- 8x PWM with manual override
- S.BUS / PPM input
## Availability:
No longer available.
Optional hardware:
- Optical flow: PX4 Flow unit from manufacturer [Holybro](https://holybro.com/products/px4flow)
- Digital Airspeed sensor from manufacturer [Holybro](https://holybro.com/products/digital-air-speed-sensor-ms4525do)
- On screen display with integrated Telemetry:
- Micro HKPilot Telemetry Radio Module with On Screen Display (OSD) unit - 433MHz. (Discontinued)
- Pure Telemetry options:
- [SIK Radios](../telemetry/sik_radio.md)
## Building Firmware
::: tip
Most users will not need to build this firmware!
It is pre-built and automatically installed by _QGroundControl_ when appropriate hardware is connected.
:::
To [build PX4](../dev_setup/building_px4.md) for this target:
```sh
make px4_fmu-v2_default
```
## Debug Port
This board does not have a debug port (i.e it does not have a port for accessing the [System Console](../debug/system_console.md) or the [SWD interface](../debug/swd_debug.md) (JTAG).
Developers will need to solder wires to the board test pads for SWD, and to the STM32F4 (IC) TX and RX to get a console.
## Serial Port Mapping
| UART | Device | Port |
| ------ | ---------- | ------------------------ |
| UART1 | /dev/ttyS0 | IO Debug |
| USART2 | /dev/ttyS1 | TELEM1 (No flow control) |
| UART4 | /dev/ttyS2 | GPS |
<!-- Note: Got ports using https://github.com/PX4/PX4-user_guide/pull/672#issuecomment-598198434 -->
text="Discontinued" px4_current="v1.15" year="2024". This change in 202603 -->
+5 -85
View File
@@ -1,88 +1,8 @@
<Redirect to="../flight_controller/autopilot_discontinued" />
<!--
# CUAV Pixhack V3 (Discontinued)
<Badge type="info" text="Discontinued" />
Doc removed 202603
::: warning
This flight controller has been [discontinued](../flight_controller/autopilot_experimental.md) and is no longer commercially available.
:::
::: warning
PX4 does not manufacture this (or any) autopilot.
Contact the [manufacturer](https://store.cuav.net/) for hardware support or compliance issues.
:::
The CUAV _Pixhack V3_ flight controller board is a flexible autopilot intended primarily for manufacturers of commercial systems.
The board is a variant of the SOLO Pixhawk<sup>&reg;</sup> 2 (PH2) flight controller, which is in turn based on the [Pixhawk-project](https://pixhawk.org/) **FMUv3** open hardware design.
It runs PX4 on the [NuttX](https://nuttx.apache.org/) OS, and is fully compatible with both PX4 or ArduPilot<sup>&reg;</sup> (APM) firmware.
_Pixhack V3_ has significant improvements with respect to the original design, including better interface layout and the addition of vibration damping and a thermostat system.
![Pixhack v3](../../assets/flight_controller/pixhack_v3/pixhack_v3_157_large_default.jpg)
::: info
This flight controller is [manufacturer supported](../flight_controller/autopilot_manufacturer_supported.md).
:::
## Quick Summary
- Microprocessor:
- STM32F427
- STM32F100 (Failsafe co-processor)
- Sensors:
- Accelerometers (3): LS303D, MPU6000, MPU9250/hmc5983
- Gyroscopes (3): L3GD20, MPU6000, MPU9250
- Compass (2): LS303D, MPU9250
- Barometer (2): MS5611 X2
- Interfaces:
- MAVLink UART (2)
- GPS UART (2)
- DEBUG UART (1)
- RC IN (for PPM, SBUS, DSM/DSM2)
- RSSI IN: PWM OR 3.3ADC
- I2C (2)
- CAN BUS (1)
- ADC IN: 3.3V X1 , 6.6V X1
- PWM OUT: 8 PWM IO + 4 IO
- Power System:
- PM POWER IN: 4.5 ~ 5.5 V
- USB POWER IN: 5.0 V +- 0.25v
- Weight and Dimensions:
- Weight: 63g
- Width: 68mm
- Thickness: 17mm
- Length: 44mm
- Other Characteristics:
- Operating temperature: -20 ~ 60°C
## Availability
The board can be purchased from:
- [leixun.aliexpress.com/store](https://leixun.aliexpress.com/store)
## Building Firmware
::: tip
Most users will not need to build this firmware!
It is pre-built and automatically installed by _QGroundControl_ when appropriate hardware is connected.
:::
To [build PX4](../dev_setup/building_px4.md) for this target:
```sh
make px4_fmu-v3_default
```
<!-- Pinouts and Schematics: section removed as guides no longer published -->
## Serial Port Mapping
| UART | Device | Port |
| ------ | ---------- | --------------------- |
| UART1 | /dev/ttyS0 | IO debug |
| USART2 | /dev/ttyS1 | TELEM1 (flow control) |
| USART3 | /dev/ttyS2 | TELEM2 (flow control) |
| UART4 | | |
| UART7 | | CONSOLE |
| UART8 | | SERIAL4 |
-->
+5 -336
View File
@@ -1,337 +1,6 @@
<Redirect to="../flight_controller/autopilot_discontinued" />
<!--
# 3DR Pixhawk 1 Flight Controller (Discontinued)
::: warning
This flight controller has been [discontinued](../flight_controller/autopilot_experimental.md) and is no longer commercially available.
You can use the [mRo Pixhawk](../flight_controller/mro_pixhawk.md) as a drop-in replacement.
:::
::: warning
PX4 does not manufacture this (or any) autopilot.
Contact the manufacturer for support or compliance issues.
:::
The _3DR Pixhawk<sup>&reg;</sup> 1_ autopilot is a popular general purpose flight controller based on the [Pixhawk-project](https://pixhawk.org/) **FMUv2** open hardware design (it combines the functionality of the PX4FMU + PX4IO).
It runs PX4 on the [NuttX](https://nuttx.apache.org/) OS.
![Pixhawk Image](../../assets/hardware/hardware-pixhawk.png)
Assembly/setup instructions for use with PX4 are provided here: [Pixhawk Wiring Quickstart](../assembly/quick_start_pixhawk.md)
## Key Features
- Main System-on-Chip: [STM32F427](https://www.st.com/en/microcontrollers-microprocessors/stm32f427-437.html)
- CPU: 180 MHz ARM<sup>&reg;</sup> Cortex<sup>&reg;</sup> M4 with single-precision FPU
- RAM: 256 KB SRAM (L1)
- Failsafe System-on-Chip: STM32F100
- CPU: 24 MHz ARM Cortex M3
- RAM: 8 KB SRAM
- Wifi: ESP8266 external
- GPS: u-blox<sup>&reg;</sup> 7/8 (Hobbyking<sup>&reg;</sup>) / u-blox 6 (3D Robotics)
- Optical flow: [PX4 Flow unit](../sensor/px4flow.md)
- Redundant power supply inputs and automatic failover
- External safety switch
- Multicolor LED main visual indicator
- High-power, multi-tone piezo audio indicator
- microSD card for high-rate logging over extended periods of time
Connectivity
- 1x I2C
- 1x CAN (2x optional)
- 1x ADC
- 4x UART (2x with flow control)
- 1x Console
- 8x PWM with manual override
- 6x PWM / GPIO / PWM input
- S.BUS / PPM / Spektrum input
- S.BUS output
# Where to Buy {#store}
Originally manufactured by 3DR&reg; this board was the original standard microcontroller platform for PX4&reg;. While the board is no longer manufactured by 3DR, you can use the [mRo Pixhawk](../flight_controller/mro_pixhawk.md) as a drop-in replacement.
Order mRo Pixhawk from:
- [Bare Bones](https://store.mrobotics.io/Genuine-PixHawk-1-Barebones-p/mro-pixhawk1-bb-mr.htm) - Just the board (useful as a 3DR Pixhawk replacement)
- [mRo Pixhawk 2.4.6 Essential Kit](https://store.mrobotics.io/Genuine-PixHawk-Flight-Controller-p/mro-pixhawk1-minkit-mr.htm) - includes everything except for telemetry radios
- [mRo Pixhawk 2.4.6 Cool Kit! (Limited edition)](https://store.mrobotics.io/product-p/mro-pixhawk1-fullkit-mr.htm) - includes everything you need including telemetry radios
## Specifications
### Processor
- 32bit STM32F427 [Cortex-M4F](https://en.wikipedia.org/wiki/ARM_Cortex-M#Cortex-M4) core with FPU
- 168 MHz
- 256 KB RAM
- 2 MB Flash
- 32 bit STM32F103 failsafe co-processor
### Sensors
- ST Micro L3GD20H 16 bit gyroscope
- ST Micro LSM303D 14 bit accelerometer / magnetometer
- Invensense MPU 6000 3-axis accelerometer/gyroscope
- MEAS MS5611 barometer
### Interfaces
- 5x UART (serial ports), one high-power capable, 2x with HW flow control
- 2x CAN (one with internal 3.3V transceiver, one on expansion connector)
- Spektrum DSM / DSM2 / DSM-X® Satellite compatible input
- Futaba S.BUS® compatible input and output
- PPM sum signal input
- RSSI (PWM or voltage) input
- I2C
- SPI
- 3.3 and 6.6V ADC inputs
- Internal microUSB port and external microUSB port extension
<lite-youtube videoid="gCCC5A-Bvv4" title="PX4 Pixhawk (3DR) Multicolor Led in action"/>
### Power System and Protection
- Ideal diode controller with automatic failover
- Servo rail high-power (max. 10V) and high-current (10A+) ready
- All peripheral outputs over-current protected, all inputs ESD protected
## Voltage Ratings
Pixhawk can be triple-redundant on the power supply if three power sources are supplied. The three rails are: Power module input, servo rail input, USB input.
### Normal Operation Maximum Ratings
Under these conditions all power sources will be used in this order to power the system
- Power module input (4.8V to 5.4V)
- Servo rail input (4.8V to 5.4V) **UP TO 10V FOR MANUAL OVERRIDE, BUT AUTOPILOT PART WILL BE UNPOWERED ABOVE 5.7V IF POWER MODULE INPUT IS NOT PRESENT**
- USB power input (4.8V to 5.4V)
### Absolute Maximum Ratings
Under these conditions the system will not draw any power (will not be operational), but will remain intact.
- Power module input (4.1V to 5.7V, 0V to 20V undamaged)
- Servo rail input (4.1V to 5.7V, 0V to 20V)
- USB power input (4.1V to 5.7V, 0V to 6V)
## Schematics
[FMUv2 + IOv2 schematic](https://raw.githubusercontent.com/PX4/Hardware/master/FMUv2/PX4FMUv2.4.5.pdf) -- Schematic and layout
::: info
As a CC-BY-SA 3.0 licensed Open Hardware design, all schematics and design files are [available](https://github.com/pixhawk/Hardware).
:::
## Connections
Pixhawk ports are shown below.
These use Hirose DF13 connectors (predating the JST-GH connectors defined in the Pixhawk connector standard).
::: warning
Many 3DR Pixhawk clones use Molex picoblade connectors instead of DF13 connectors.
They have rectangular instead of square pins, and cannot be assumed to be compatible.
:::
![Pixhawk Connectors](../../assets/flight_controller/pixhawk1/pixhawk_connectors.png)
::: tip
The `RC IN` port is for RC receivers only and provides sufficient power for that purpose.
**NEVER** connect any servos, power supplies or batteries to it or to the receiver connected to it.
:::
## Pinouts
#### TELEM1, TELEM2 ports
| Pin | Signal | Volt |
| ------- | --------- | ----- |
| 1 (red) | VCC | +5V |
| 2 (blk) | TX (OUT) | +3.3V |
| 3 (blk) | RX (IN) | +3.3V |
| 4 (blk) | CTS (IN) | +3.3V |
| 5 (blk) | RTS (OUT) | +3.3V |
| 6 (blk) | GND | GND |
#### GPS port
| Pin | Signal | Volt |
| ------- | -------- | ----- |
| 1 (red) | VCC | +5V |
| 2 (blk) | TX (OUT) | +3.3V |
| 3 (blk) | RX (IN) | +3.3V |
| 4 (blk) | CAN2 TX | +3.3V |
| 5 (blk) | CAN2 RX | +3.3V |
| 6 (blk) | GND | GND |
#### SERIAL 4/5 port
Due to space constraints two ports are on one connector.
| Pin | Signal | Volt |
| ------- | ------- | ----- |
| 1 (red) | VCC | +5V |
| 2 (blk) | TX (#4) | +3.3V |
| 3 (blk) | RX (#4) | +3.3V |
| 4 (blk) | TX (#5) | +3.3V |
| 5 (blk) | RX (#5) | +3.3V |
| 6 (blk) | GND | GND |
#### ADC 6.6V
| Pin | Signal | Volt |
| ------- | ------ | ----------- |
| 1 (red) | VCC | +5V |
| 2 (blk) | ADC IN | up to +6.6V |
| 3 (blk) | GND | GND |
#### ADC 3.3V
| Pin | Signal | Volt |
| ------- | ------ | ----------- |
| 1 (red) | VCC | +5V |
| 2 (blk) | ADC IN | up to +3.3V |
| 3 (blk) | GND | GND |
| 4 (blk) | ADC IN | up to +3.3V |
| 5 (blk) | GND | GND |
#### I2C
| Pin | Signal | Volt |
| ------- | ------ | -------------- |
| 1 (red) | VCC | +5V |
| 2 (blk) | SCL | +3.3 (pullups) |
| 3 (blk) | SDA | +3.3 (pullups) |
| 4 (blk) | GND | GND |
#### CAN
| Pin | Signal | Volt |
| ------- | ------ | ---- |
| 1 (red) | VCC | +5V |
| 2 (blk) | CAN_H | +12V |
| 3 (blk) | CAN_L | +12V |
| 4 (blk) | GND | GND |
#### SPI
| Pin | Signal | Volt |
| ------- | ------------ | ---- |
| 1 (red) | VCC | +5V |
| 2 (blk) | SPI_EXT_SCK | +3.3 |
| 3 (blk) | SPI_EXT_MISO | +3.3 |
| 4 (blk) | SPI_EXT_MOSI | +3.3 |
| 5 (blk) | !SPI_EXT_NSS | +3.3 |
| 6 (blk) | !GPIO_EXT | +3.3 |
| 7 (blk) | GND | GND |
#### POWER
| Pin | Signal | Volt |
| ------- | ------- | ----- |
| 1 (red) | VCC | +5V |
| 2 (blk) | VCC | +5V |
| 3 (blk) | CURRENT | +3.3V |
| 4 (blk) | VOLTAGE | +3.3V |
| 5 (blk) | GND | GND |
| 6 (blk) | GND | GND |
#### SWITCH
| Pin | Signal | Volt |
| ------- | -------------- | ----- |
| 1 (red) | VCC | +3.3V |
| 2 (blk) | !IO_LED_SAFETY | GND |
| 3 (blk) | SAFETY | GND |
## Serial Port Mapping
| UART | Device | Port |
| ------ | ---------- | --------------------- |
| UART1 | /dev/ttyS0 | IO debug |
| USART2 | /dev/ttyS1 | TELEM1 (flow control) |
| USART3 | /dev/ttyS2 | TELEM2 (flow control) |
| UART4 | |
| UART7 | CONSOLE |
| UART8 | SERIAL4 |
<!-- Note: Got ports using https://github.com/PX4/PX4-user_guide/pull/672#issuecomment-598198434 -->
## Debug Ports
### Console Port
The [PX4 System Console](../debug/system_console.md) runs on the port labeled [SERIAL4/5](#serial-4-5-port).
::: tip
A convenient way to connect to the console is to use a [Zubax BugFace BF1](https://github.com/Zubax/bugface_bf1), as it comes with connectors that can be used with several different Pixhawk devices.
Simply connect the 6-pos DF13 1:1 cable on the [Zubax BugFace BF1](https://github.com/Zubax/bugface_bf1) to the Pixhawk `SERIAL4/5` port.
![Zubax BugFace BF1](../../assets/flight_controller/pixhawk1/dronecode_probe.jpg)
:::
The pinout is standard serial pinout, designed to connect to a [3.3V FTDI](https://www.digikey.com/en/products/detail/TTL-232R-3V3/768-1015-ND/1836393) cable (5V tolerant).
| 3DR Pixhawk 1 | | FTDI |
| ------------- | --------- | ---- | ---------------- |
| 1 | +5V (red) | | N/C |
| 2 | S4 Tx | | N/C |
| 3 | S4 Rx | | N/C |
| 4 | S5 Tx | 5 | FTDI RX (yellow) |
| 5 | S5 Rx | 4 | FTDI TX (orange) |
| 6 | GND | 1 | FTDI GND (black) |
The wiring for an FTDI cable to a 6-pos DF13 1:1 connector is shown in the figure below.
![Console Connector](../../assets/flight_controller/pixhawk1/console_connector.jpg)
The complete wiring is shown below.
![Console Debug](../../assets/flight_controller/pixhawk1/console_debug.jpg)
::: info
For information on how to _use_ the console see: [System Console](../debug/system_console.md).
:::
### SWD Port
The [SWD](../debug/swd_debug.md) (JTAG) ports are hidden under the cover (which must be removed for hardware debugging).
There are separate ports for FMU and IO, as highlighted below.
![Pixhawk SWD](../../assets/flight_controller/pixhawk1/pixhawk_swd.jpg)
The ports are ARM 10-pin JTAG connectors, which you will probably have to solder.
The pinout for the ports is shown below (the square markers in the corners above indicates pin 1).
![ARM 10-Pin connector pinout](../../assets/flight_controller/pixhawk1/arm_10pin_jtag_connector_pinout.jpg)
::: info
All Pixhawk FMUv2 boards have a similar SWD port.
:::
## Building Firmware
::: tip
Most users will not need to build this firmware!
It is pre-built and automatically installed by _QGroundControl_ when appropriate hardware is connected.
:::
To [build PX4](../dev_setup/building_px4.md) for this target:
```sh
make px4_fmu-v2_default
```
## Parts / Housings
- **ARM MINI JTAG (J6)**: 1.27 mm 10pos header (SHROUDED), for Black Magic Probe: FCI 20021521-00010D4LF ([Digi-Key](https://www.digikey.com/en/products/detail/20021521-00010T1LF/609-4054-ND/2414951),) or Samtec FTSH-105-01-F-DV-K (untested) or Harwin M50-3600542 ([Digikey](https://www.digikey.com/en/products/detail/harwin-inc/M50-3600542/2264370))
- JTAG Adapter Option #1: [BlackMagic Probe](https://1bitsquared.com/products/black-magic-probe). Note, may come without cables (check with manufacturer).
If so, you will need the **Samtec FFSD-05-D-06.00-01-N** cable ([Samtec sample service](https://www.samtec.com/products/ffsd-05-d-06.00-01-n) or [Digi-Key Link: SAM8218-ND](https://www.digikey.com/en/products/detail/samtec-inc/ffsd-05-d-06-00-01-n/1106577)) or [Tag Connect Ribbon](https://www.tag-connect.com/product/10-pin-cortex-ribbon-cable-4-length-with-50-mil-connectors) and a Mini-USB cable.
- JTAG Adapter Option #2: [Digi-Key Link: ST-LINK/V2](https://www.digikey.com/product-detail/en/stmicroelectronics/ST-LINK-V2/497-10484-ND) / [ST USER MANUAL](https://www.st.com/resource/en/user_manual/dm00026748.pdf), needs an ARM Mini JTAG to 20pos adapter: [Digi-Key Link: 726-1193-ND](https://www.digikey.com/en/products/detail/texas-instruments/MDL-ADA2/1986451)
- JTAG Adapter Option #3: [Olimex ARM-TINY](https://www.olimex.com/wiki/ARM-USB-TINY) or any other OpenOCD-compatible ARM Cortex JTAG adapter, needs an ARM Mini JTAG to 20pos adapter: [Digi-Key Link: 726-1193-ND](https://www.digikey.com/en/products/detail/texas-instruments/MDL-ADA2/1986451)
- **USARTs**: Hirose DF13 6 pos ([Digi-Key Link: DF13A-6P-1.25H(20)](https://www.digikey.com/products/en?keywords=H3371-ND))
- Mates: Hirose DF13 6 pos housing ([Digi-Key Link: Hirose DF13-6S-1.25C](https://www.digikey.com/products/en?keywords=H2182-ND))
- **I2C and CAN**: Hirose DF13 4 pos ([Digi-Key Link: DF13A-4P-1.25H(20)](https://www.digikey.com/en/products/detail/hirose-electric-co-ltd/DF13A-4P-1-25H-20/530666) - discontinued)
## Supported Platforms / Airframes
Any multicopter / airplane / rover or boat that can be controlled with normal RC servos or Futaba S-Bus servos.
Doc removed 202604
-->
+5 -85
View File
@@ -1,87 +1,7 @@
<Redirect to="../flight_controller/autopilot_discontinued" />
<!--
# Pixhawk 3 Pro (Discontinued)
::: warning
PX4 does not manufacture this (or any) autopilot.
Contact the [manufacturer](https://store-drotek.com/) for hardware support or compliance issues.
:::
The Pixhawk<sup>&reg;</sup> 3 Pro is based on the FMUv4 hardware design (Pixracer) with some upgrades and additional features.
The board was designed by [Drotek<sup>&reg;</sup>](https://drotek.com) and PX4.
![Pixhawk 3 Pro hero image](../../assets/hardware/hardware-pixhawk3_pro.jpg)
::: info
The main hardware documentation is here: https://drotek.gitbook.io/pixhawk-3-pro/hardware
:::
::: tip
This autopilot is [supported](../flight_controller/autopilot_pixhawk_standard.md) by the PX4 maintenance and test teams.
:::
## Quick Summary
- Microcontroller: **STM32F469**; Flash size is **2MiB**, RAM size is **384KiB**
- **ICM-20608-G** gyro / accelerometer
- **MPU-9250** gyro / accelerometer / magnetometer
- **LIS3MDL** compass
- Sensors connected via two SPI buses (one high rate and one low-noise bus)
- Two I2C buses
- Two CAN buses
- Voltage / battery readings from two power modules
- FrSky<sup>&reg;</sup> Inverter
- 8 Main + 6 AUX PWM outputs (Separate IO chip, PX4IO)
- microSD (logging)
- S.BUS / Spektrum / SUMD / PPM input
- JST GH user-friendly connectors: same connectors and pinouts as Pixracer
## Where to buy
No longer available.
## Building Firmware
::: tip
Most users will not need to build this firmware!
It is pre-built and automatically installed by _QGroundControl_ when appropriate hardware is connected.
:::
To [build PX4](../dev_setup/building_px4.md) for this target:
```sh
make px4_fmu-v4pro_default
```
## Debug Port
The board has FMU and IO debug ports as shown below.
![Debug Ports](../../assets/flight_controller/pixhawk3pro/pixhawk3_pro_debug_ports.jpg)
The pinouts and connector comply with the [Pixhawk Debug Mini](../debug/swd_debug.md#pixhawk-debug-mini) interface defined in the [Pixhawk Connector Standard](https://github.com/pixhawk/Pixhawk-Standards/blob/master/DS-009%20Pixhawk%20Connector%20Standard.pdf) (JST SM06B connector).
| Pin | Signal | Volt |
| ------- | ---------------- | ----- |
| 1 (red) | VCC TARGET SHIFT | +3.3V |
| 2 (blk) | CONSOLE TX (OUT) | +3.3V |
| 3 (blk) | CONSOLE RX (IN) | +3.3V |
| 4 (blk) | SWDIO | +3.3V |
| 5 (blk) | SWCLK | +3.3V |
| 6 (blk) | GND | GND |
For information about wiring and using this port see:
- [SWD Debug Port](../debug/swd_debug.md)
- [PX4 System Console](../debug/system_console.md#pixhawk_debug_port) (Note, the FMU console maps to UART7).
## Serial Port Mapping
| UART | Device | Port |
| ------ | ---------- | --------------------- |
| UART1 | /dev/ttyS0 | WiFi |
| USART2 | /dev/ttyS1 | TELEM1 (flow control) |
| USART3 | /dev/ttyS2 | TELEM2 (flow control) |
| UART4 | |
| UART7 | CONSOLE |
| UART8 | SERIAL4 |
<!-- Note: Got ports using https://github.com/PX4/PX4-user_guide/pull/672#issuecomment-598198434 -->
DOC REMOVED: 202603
-->
+5 -158
View File
@@ -1,160 +1,7 @@
<Redirect to="../flight_controller/autopilot_discontinued" />
<!--
# Holybro Pixhawk 4 Mini (Discontinued)
<Badge type="info" text="Discontinued" px4_current="v1.15" year="2024"/>
::: warning
PX4 does not manufacture this (or any) autopilot.
Contact the [manufacturer](https://holybro.com/) for hardware support or compliance issues.
:::
The _Pixhawk<sup>&reg;</sup> 4 Mini_ autopilot is designed for engineers and hobbyists who are looking to tap into the power of _Pixhawk 4_ but are working with smaller drones.
_Pixhawk 4 Mini_ takes the FMU processor and memory resources from the _Pixhawk 4_ while eliminating interfaces that are normally unused.
This allows the _Pixhawk 4 Mini_ to be small enough to fit in a 250mm racer drone.
_Pixhawk 4 Mini_ was designed and developed in collaboration with Holybro<sup>&reg;</sup> and Auterion<sup>&reg;</sup>.
It is based on the [Pixhawk](https://pixhawk.org/) **FMUv5** design standard and is optimized to run PX4 flight control software.
![Pixhawk4 mini](../../assets/flight_controller/pixhawk4mini/pixhawk4mini_iso_1.png)
::: tip
This autopilot is [supported](../flight_controller/autopilot_pixhawk_standard.md) by the PX4 maintenance and test teams.
:::
## Quick Summary
- Main FMU Processor: STM32F765
- 32 Bit Arm® Cortex®-M7, 216MHz, 2MB memory, 512KB RAM
- On-board sensors:
- Accel/Gyro: ICM-20689
- Accel/Gyro: BMI055 or ICM20602
- Magnetometer: IST8310
- Barometer: MS5611
- GPS: u-blox Neo-M8N GPS/GLONASS receiver; integrated magnetometer IST8310
- Interfaces:
- 8 PWM outputs
- 4 dedicated PWM/Capture inputs on FMU
- Dedicated R/C input for CPPM
- Dedicated R/C input for Spektrum / DSM and S.Bus with analog / PWM RSSI input
- 3 general purpose serial ports
- 2 I2C ports
- 3 SPI buses
- 1 CANBuses for CAN ESC
- Analog inputs for voltage / current of battery
- 2 additional analog input
- Power System:
- Power Brick Input: 4.75~5.5V
- USB Power Input: 4.75~5.25V
- Servo Rail Input: 0~24V
- Max current sensing: 120A
- Weight and Dimensions:
- Weight: 37.2g
- Dimensions: 38x55x15.5mm
- Other Characteristics:
- Operating temperature: -40 ~ 85°c
Additional information can be found in the [_Pixhawk 4 Mini_ Technical Data Sheet](https://github.com/PX4/PX4-Autopilot/raw/main/docs/assets/flight_controller/pixhawk4mini/pixhawk4mini_technical_data_sheet.pdf).
## Where to Buy {#store}
No longer available.
## Interfaces
![Pixhawk 4 Mini interfaces](../../assets/flight_controller/pixhawk4mini/pixhawk4mini_interfaces.png)
::: warning
The **RC IN** and **PPM** ports are for RC receivers only. These are powered! NEVER connect any servos, power supplies or batteries (or to any connected receiver).
:::
## Pinouts
Download _Pixhawk 4 Mini_ pinouts from [here](https://github.com/PX4/PX4-Autopilot/raw/main/docs/assets/flight_controller/pixhawk4mini/pixhawk4mini_pinouts.pdf).
## Dimensions
![Pixhawk 4 Mini Dimensions](../../assets/flight_controller/pixhawk4mini/pixhawk4mini_dimensions.png)
## Voltage Ratings
_Pixhawk 4 Mini_ can have power supply redundancy — if two power sources are supplied. The power rails are: **POWER** and **USB**.
::: info
The output power rail of **MAIN OUT** does not power the flight controller board (and is not powered by it).
You must [supply power](../assembly/quick_start_pixhawk4_mini.md#power) to one of **POWER** or **USB** or the board will be unpowered.
:::
**Normal Operation Maximum Ratings**
Under these conditions all power sources will be used in this order to power the system:
1. **POWER** (4.75V to 5.5V)
1. **USB** input (4.75V to 5.25V)
**Absolute Maximum Ratings**
Under these conditions the system will remain intact.
1. **POWER** input (0V to 6V undamaged)
1. **USB** input (0V to 6V undamaged)
1. Servo input: VDD_SERVO pin of **MAIN OUT** (0V to 24V undamaged)
## Assembly/Setup
The [_Pixhawk 4 Mini_ Wiring Quick Start](../assembly/quick_start_pixhawk4_mini.md) provides instructions on how to assemble required/important peripherals including GPS, Power Management Board, etc.
## Building Firmware
::: tip
Most users will not need to build this firmware!
It is pre-built and automatically installed by _QGroundControl_ when appropriate hardware is connected.
:::
To [build PX4](../dev_setup/building_px4.md) for this target:
```sh
make px4_fmu-v5_default
```
## Debug Port
The [PX4 System Console](../debug/system_console.md) and [SWD interface](../debug/swd_debug.md) run on the **FMU Debug** port.
In order to access these ports, the user must remove the _Pixhawk 4 Mini_ casing.
![Pixhawk 4 Mini FMU Debug](../../assets/flight_controller/pixhawk4mini/pixhawk4mini_fmu_debug.png)
The port has a standard serial pinout and can be connected to a standard FTDI cable (3.3V, but it's 5V tolerant) or a [Zubax BugFace BF1](https://github.com/Zubax/bugface_bf1).
The pinout uses the standard [Pixhawk debug connector](https://github.com/pixhawk/Pixhawk-Standards/blob/master/DS-009%20Pixhawk%20Connector%20Standard.pdf) pinout. Please refer to the [wiring](../debug/system_console.md) page for details of how to wire up this port.
## Serial Port Mapping
| UART | Device | QGC Parameter Description | Port Label on FC |
| :----: | :--------: | :-----------------------: | :----------------------: |
| UART1 | /dev/ttyS0 | GPS1 | GPS Module |
| USART2 | /dev/ttyS1 | TELEM1 | TELEM1 |
| USART3 | /dev/ttyS2 | TELEM2 | N/A |
| UART4 | /dev/ttyS3 | TELEM/SERIAL4 | UART/l2C B |
| USART6 | /dev/ttyS4 | N/A | RC IN |
| UART7 | /dev/ttyS5 | N/A | Debug |
| UART8 | /dev/ttyS6 | N/A | Not connected (no PX4IO) |
## Peripherals
- [Digital Airspeed Sensor](https://holybro.com/products/digital-air-speed-sensor-ms4525do)
- [Telemetry Radio Modules](../telemetry/index.md)
- [Rangefinders/Distance sensors](../sensor/rangefinders.md)
## Supported Platforms
Motors and servos are connected to the **MAIN OUT** ports in the order specified for your vehicle in the [Airframe Reference](../airframes/airframe_reference.md).
This reference lists the output port to motor/servo mapping for all supported air and ground frames (if your frame is not listed in the reference then use a "generic" airframe of the correct type).
::: warning
_Pixhawk 4 Mini_ does not have AUX ports.
The board cannot be used with frames that require more than 8 ports or which use AUX ports for motors or control surfaces.
It can be used for airframes that use AUX for non-essential peripherals (e.g. "feed-through of RC AUX1 channel").
:::
## Further info
- [_Pixhawk 4 Mini_ Technical Data Sheet](https://github.com/PX4/PX4-Autopilot/raw/main/docs/assets/flight_controller/pixhawk4mini/pixhawk4mini_technical_data_sheet.pdf)
- [FMUv5 reference design pinout](https://docs.google.com/spreadsheets/d/1-n0__BYDedQrc_2NHqBenG1DNepAgnHpSGglke-QQwY/edit#gid=912976165).
DOC REMOVED: 202603
-->
+1 -1
View File
@@ -132,7 +132,7 @@ Connector pin assignments are left to right (i.e. Pin 1 is the left-most pin).
:::
- The [camera capture pin](../camera/fc_connected_camera.md#camera-capture-configuration) (`PI0`) is pin 2 on the AD&IO port, marked above as `FMU_CAP1`.
- _Pixhawk 5X_ pinouts can be downloaded in PDF from from [here](https://github.com/PX4/PX4-user_guide/blob/main/assets/flight_controller/pixhawk5x/pixhawk5x_pinout.pdf) or [here](https://cdn.shopify.com/s/files/1/0604/5905/7341/files/Holybro_Pixhawk5X_Pinout.pdf).
- _Pixhawk 5X_ pinouts can be downloaded in PDF from [here](https://github.com/PX4/PX4-user_guide/blob/main/assets/flight_controller/pixhawk5x/pixhawk5x_pinout.pdf) or [here](https://cdn.shopify.com/s/files/1/0604/5905/7341/files/Holybro_Pixhawk5X_Pinout.pdf).
## Serial Port Mapping
+5 -322
View File
@@ -1,324 +1,7 @@
<Redirect to="../flight_controller/autopilot_discontinued" />
<!--
# Holybro Pixhawk Mini (Discontinued)
::: warning
PX4 does not manufacture this (or any) autopilot.
Contact the [manufacturer](https://holybro.com/) for hardware support or compliance issues.
:::
The Holybro _Pixhawk<sup>&reg;</sup> Mini_ autopilot is a next-generation evolution of the Pixhawk.
It is about 1/3rd the size of the original Pixhawk and has more powerful processors and sensors.
The Pixhawk Mini is based on the PX4 open-hardware project and has been optimized for the PX4 flight stack.
![Pixhawk Mini](../../assets/flight_controller/pixhawk_mini/pixhawk_mini_hero.jpg)
Wiring information is available [below](#wiring).
::: info
This flight controller was designed by 3DR in collaboration with HobbyKing<sup>&reg;</sup>.
It was formerly known as the 3DR Pixhawk Mini.
:::
::: tip
This autopilot is [supported](../flight_controller/autopilot_pixhawk_standard.md) by the PX4 maintenance and test teams.
:::
## Specifications
**Processors:**
- **Main Processor:** STM32F427 Rev 3
- **IO Processor:** STM32F103
**Sensors:**
- **Accel/Gyro/Mag:** MPU9250
- [deprecated](https://github.com/PX4/PX4-Autopilot/pull/7618) by the PX4 firmware
- **Accel/Gyro:** ICM20608
- **Barometer:** MS5611
**Voltage ratings:**
- **Power module output:** 4.1\~5.5V
- **Max input voltage:** 45V (10S LiPo)
- **Max current sensing:** 90A
- **USB Power Input:** 4.1\~5.5V
- **Servo Rail Input:** 0\~10V
**Interfaces:**
- 1 x UART Serial Port (for GPS)
- Spektrum DSM/DSM2/DSM-X® Satellite Compatible RC input
- Futaba S BUS® Compatible RC input
- PPM Sum Signal RC Input
- I2C (for digital sensors)
- CAN (for digital motor control with compatible controllers)
- ADC (for analog sensors)
- Micro USB Port
**Weight and dimensions:**
- **Dimensions:** 38x43x12mm
- **Weight:** 15.8g
**GPS module (supplied with kit):**
- **GNSS receiver:** u-blox<sup>&reg;</sup> Neo-M8N; compass HMC5983
- **Weight:** 22.4g
- **Dimensions:** 37x37x12mm
## Where to Buy {#store}
Discontinued.
## Connector assignments
`<To be added>`
## Features
Key features of the Pixhawk Mini are:
- Advanced 32 bit ARM Cortex® M4 Processor running NuttX RTOS
- 8 PWM/servo outputs
- Multiple connectivity options for additional peripherals (UART, I2C, CAN)
- Redundant power supply inputs and automatic failover
- Integrated safety switch and optional external safety button for easy motor activation
- Multicolor LED indicator
- Integrated multi-tone piezo audio indicator
- microSD card for long-time high-rate logging
- Easy-to-use Micro JST connectors
The Pixhawk Mini is shipped with new **GPS module**:
- Based on the u-blox M8N
- Concurrent reception of up to 3 GNSS (GPS, Galileo, GLONASS, BeiDou)
- Industry leading -167 dBm navigation sensitivity
- Security and integrity protection
- Supports all satellite augmentation systems
- Advanced jamming and spoofing detection
- Product variants to meet performance and cost requirements
## Kit package
The _Pixhawk Mini_ is shipped with the following contents:
| Component | Image |
| ------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------ |
| Pixhawk Mini Autopilot | ![Pixhawk Mini](../../assets/flight_controller/pixhawk_mini/pixhawk_mini_drawing.png) |
| GPS module | ![Compass+GPS module](../../assets/flight_controller/pixhawk_mini/pixhawk_mini_compass_drawing.png) |
| Quad Power Distribution Board | ![Quad Power Distribution Board](../../assets/flight_controller/pixhawk_mini/pixhawk_mini_quad_power_distribution_board_drawing.png) |
| 8 Channel PWM Breakout board | ![8 Channel PWM Breakout board](../../assets/flight_controller/pixhawk_mini/pixhawk_mini_8_channel_pwm_breakout_board_drawing.png) |
| 4-pin cable (for I2C) | ![4-pin cable (for I2C)](../../assets/flight_controller/pixhawk_mini/pixhawk_mini_4_pin_cable_drawing.png) |
| RC-in cable for PPM/SBUS | ![RC-in cable for PPM/SBUS](../../assets/flight_controller/pixhawk_mini/pixhawk_mini_rc_in_cable_drawing.png) |
| 6 to 6/4 Y adapter for GPS and additional I2C devices | ![6 to 6/4 Y adapter](../../assets/flight_controller/pixhawk_mini/pixhawk_mini_6_to_6_and_4_pin_Y_cable_drawing.png) |
| 6 pin cable (2) (for power distribution board and for compass/gps) | ![6 pin cable](../../assets/flight_controller/pixhawk_mini/pixhawk_mini_6_pin_cable_drawing.png) |
| 6 pin JST to DF13 for legacy telemetry radio | ![6 pin JST to DF13](../../assets/flight_controller/pixhawk_mini/pixhawk_mini_6pin_JST_to_DF13_cable_drawing.png) |
| Safety switch | ![Safety switch](../../assets/flight_controller/pixhawk_mini/pixhawk_mini_safety_switch_drawing.png) |
| 8 Channel PWM Breakout cable | ![8 Channel PWM Breakout cable](../../assets/flight_controller/pixhawk_mini/pixhawk_mini_8channel_pwm_breakout_cable_drawing.png) |
| Mounting foam | ![Mounting foam](../../assets/hardware/mounting/3dr_anti_vibration_mounting_foam.png) |
| I2C breakout board ? - not listed parts on handout | - |
## Optional accessories
- Telemetry Radio Sets: 915 MHz (USA), 433 MHz (European)
::: info
When installing the 3DR telemetry radios, use the connectors that come with Pixhawk Mini, rather than those that come with the radios.
:::
- 3DR 10S Power Module
- WiFi Telemetry Radio
- Digital Airspeed Sensor
## Compatibility
### RC radio
- PPM output RC receivers
- Spektrum DSM RC receivers
- Futaba S BUS RC receivers
### ESCs
- All standard PWM input ESCs
## Connector pin assignments (pin outs)
![Pixhawk Mini - Connector Pinouts](../../assets/flight_controller/pixhawk_mini/pixhawk_mini_pinout.png)
## Product comparisons
### Pixhawk Mini vs Pixhawk (original)
- One-third the size - from 50x81.5x15.5mm to 38x43x12mm.
- Rev 3 processor for full utilization of 2MB flash memory.
- Improved sensors, both primary and secondary IMU MPU9250 and ICM20608 respectively.
The result is more stable, more reliable flight and navigation.
- GPS+Compass module included. Features the Neo M8N with GLONASS support; compass HMC5983.
Expect faster and stronger GPS lock.
- Micro JST connectors instead of DF-13.
These are much easier to work with.
- Integrated piezo speaker and safety switch.
- Natively supports 4S batteries with the included PDB.
### Pixhawk Mini vs Pixfalcon
- Improved sensors, both primary and secondary IMU MPU9250 and ICM20608 respectively.
Expect better vibration handling and reliability.
- CAN interface for UAVCAN support.
- Includes 8-channel breakout servo rail for planes and other vehicles requiring powered PWM output.
- Includes I2C breakout board for a total of 5 I2C connections.
- Similar size.
Pixhawk Mini features an advanced processor and sensor technology from ST Microelectronics® and a NuttX real-time operating system, delivering excellent performance, flexibility, and reliability for controlling any autonomous vehicle.
## Known issues
- Some Pixhawk Minis have a [hardware defect](https://github.com/PX4/PX4-Autopilot/issues/7327#issuecomment-317132917) that makes the internal MPU9250 IMU unreliable.
- The problem is only present in older hardware revisions, because [it was fixed at some point by the manufacturer](https://github.com/PX4/PX4-Autopilot/issues/7327#issuecomment-372393609).
- To check whether a specific board is affected or not, leave the board disconnected for some time, then power it on and try to start the mpu9250 driver from the PX4 command line. If the board is affected, the driver will not start.
- The MPU9250 is [disabled by default](https://github.com/PX4/PX4-Autopilot/pull/7618) on the PX4 firmware.
- The defective Pixhawk Minis will not calibrate without an external magnetometer or an attached GPS, even indoor.
- When using an external GPS, [this is not a problem](https://github.com/PX4/PX4-Autopilot/pull/7618#issuecomment-320270082) because the secondary ICM20608 provides the accelerometer and the gyro, while the external GPS provides the magnetometer.
<a id="wiring"></a>
## Wiring Quick Start
::: warning
The _Pixhawk Mini_ is no longer manufactured or available from 3DR.
:::
This quick start guide shows how power the [Pixhawk Mini](../flight_controller/pixhawk_mini.md) and connect its most important peripherals.
### Standard Wiring Chart
The image below shows standard _quadcopter_ wiring using the _Pixhawk Mini Kit_ and 3DR Telemetry Radios (along with ESC, motor, battery and a ground control station running on a phone).
We'll go through each main part in the following sections.
![Pixhawk Mini Electronics Wiring for QAV250 (off frame)](../../assets/airframes/multicopter/lumenier_qav250_pixhawk_mini/qav250_wiring_image_pixhawk_mini.jpg)
::: info
The output wiring/powering is slightly different for other types of vehicles. This is covered in more detail below for VTOL, Plane, Copter.
:::
### Mount and Orient Controller
The _Pixhawk Mini_ should be mounted on the frame using
vibration-damping foam pads (included in the kit). It should be
positioned as close to your vehicle's center of gravity as possible, oriented top-side up
with the arrow points towards the front of the vehicle.
![Pixhawk Mini recommended orientation](../../assets/flight_controller/pixhawk_mini/pixhawk_mini_mounting_arrow.jpg)
![Mounting foam](../../assets/hardware/mounting/3dr_anti_vibration_mounting_foam.png)
::: info
If the controller cannot be mounted in the recommended/default orientation (e.g. due to space constraints) you will need to configure the autopilot software with the orientation that you actually used: [Flight Controller Orientation](../config/flight_controller_orientation.md).
:::
### GPS + Compass
Attach the 3DR GPS + Compass to the Pixhawk Mini's **GPS&I2C** port (top right) using the supplied 6 pin cable.
The GPS/Compass should be mounted on the frame as far away from other electronics as possible, facing the front of the vehicle (separating the compass from other electronics will reduce interference).
![Connecting compass/GPS to Pixhawk Mini](../../assets/flight_controller/pixhawk_mini/pixhawk_mini_with_compass.jpg)
NOTE - INSERT IMAGE SHOWING BOTH PORTS? OR FRONT-FACING image of GPS&I2C
The compass must be calibrated before it is first used: [Compass Calibration](../config/compass.md)
### Power
The image below shows typical power-supply wiring when using _Pixhawk Mini_ in a Quadcopter.
This uses the _Quad Power Distribution Board_ that comes in the kit to supply both the Pixhawk Mini and the ESC/Motor from the battery (and can also power other accessories).
::: info
The _Quad Power Distribution Board_ includes a power module (PM) that is suitable for batteries <= 4S.
The _3DR 10S Power Module_ (Discontinued) is recommended if you need more power.
:::
![Pixhawk Mini - Powering](../../assets/flight_controller/pixhawk_mini/pixhawk_mini_powering_quad_board.jpg)
The _Pixhawk Mini_ is powered through the **PM** port.
When using a power module (as in this case) the port will also read analog voltage and current measurements.
Up to 4 ESCs can be separately powered from the power distribution board (though in this case we only have one connected).
The control signals come from MAIN OUT. In this case there is only one control channel, which is connected to the ESC via the _8 Channel PWM Breakout Board_.
The Pixhawk Mini output rail (MAIN OUT) cannot power attached devices (and does not need to in the circuit as shown).
For vehicles where MAIN OUT is attached to devices that draw power (e.g. a servo used in a plane) then you will need to power the rail using a BEC (battery elimination circuit).
The included breakout board allows one channel to provide power on the other outputs.
### Radio Control
Pixhawk Mini supports many different radio receiver models:
- Spektrum and DSM receivers connect to the **SPKT/DSM** input.
<img src="../../assets/flight_controller/pixhawk_mini/pixhawk_mini_port_spkt_dsm.png" width="350px" title="Pixhawk Mini - Radio port for Spektrum receivers" />
- PPM-SUM and S.BUS receivers connect to the **RCIN** port.
<img src="../../assets/flight_controller/pixhawk_mini/pixhawk_mini_port_rcin.png" width="350px" title="Pixhawk Mini - Radio port for PPM receivers" />
- PPM and PWM receivers that have an _individual wire for each channel_ must connect to the **RCIN** port _via a PPM encoder_ [like this one](https://www.getfpv.com/radios/radio-accessories/holybro-ppm-encoder-module.html) (PPM-Sum receivers use a single signal wire for all channels).
For more information about selecting a radio system, receiver compatibility, and binding your transmitter/receiver pair, see: [Remote Control Transmitters & Receivers](../getting_started/rc_transmitter_receiver.md).
### Safety switch (optional)
The controller has an integrated safety switch that you can use for motor activation once the autopilot is ready to take off.
If this switch is hard to access on a particular vehicle you can attach the (optional) external safety button, as shown below.
![Pixhawk Mini - Optional Switch](../../assets/flight_controller/pixhawk_mini/pixhawk_mini_safety_switch_wiring.jpg)
### Telemetry Radios
### Motors
The mappings between MAIN/AUX output ports and motor/servos for all supported air and ground frames are listed in the [Airframe Reference](../airframes/airframe_reference.md).
::: warning
The mapping is not consistent across frames (e.g. you can't rely on the throttle being on the same output for all plane frames).
Make sure to use the correct mapping for your vehicle.
:::
::: tip
If your frame is not listed in the reference then use a "generic" airframe of the correct type.
:::
- The output rail must be separately powered, as discussed in the [Power](#power) section above.
- Pixhawk Mini cannot be used for QuadPlane VTOL airframes. This is because QuadPlane requires 9 outputs (4 Main, 5 AUX) and the Pixhawk Mini only has 8 outputs (8 Main).
<img src="../../assets/flight_controller/pixhawk_mini/pixhawk_mini_port_main_out.png" width="350px" title="Pixhawk Mini - port for motors/servos" />
### Other Peripherals
The wiring and configuration of other components is covered within the topics for individual [peripherals](../peripherals/index.md).
### Configuration
General configuration information is covered in: [Autopilot Configuration](../config/index.md).
QuadPlane specific configuration is covered here: [QuadPlane VTOL Configuration](../config_vtol/vtol_quad_configuration.md)
## Building Firmware
::: tip
Most users will not need to build this firmware!
It is pre-built and automatically installed by _QGroundControl_ when appropriate hardware is connected.
:::
To [build PX4](../dev_setup/building_px4.md) for this target:
```sh
make px4_fmu-v3_default
```
## Debug Port
This board does not have a debug port (i.e it does not have a port for accessing the [System Console](../debug/system_console.md) or [SWD interface](../debug/swd_debug.md)).
Developers will need to solder wires to the board test pads for SWD, and to the STM32F4 (IC) TX and RX to get a console.
Doc removed 202603
-->
+1 -1
View File
@@ -131,7 +131,7 @@ make x-mav_ap-h743r1_default
Any multirotor/airplane/rover or boat that can be controlled using normal RC servos or Futaba S-Bus servos.
The complete set of supported configurations can be found in the [Airframe Reference](../airframes/airframe_reference.md).
## Debug Port
## Debug Port {#debug_port}
### SWD
+5 -5
View File
@@ -56,7 +56,7 @@ Missions can be paused by switching out of mission mode to any other mode (such
If the vehicle was not capturing images when it was paused, on resuming it will head from its _current position_ towards the same waypoint as it as was heading towards originally.
If the vehicle was capturing images (has camera trigger items) it will instead head from its current position towards the last waypoint it traveled through (before pausing), and then retrace its path at the same speed and with the same camera triggering behaviour.
This ensures that in survey/camera missions the planned path is captured.
A mission can be uploaded while the vehicle is paused, in which which case the current active mission item is set to 1.
A mission can be uploaded while the vehicle is paused, in which case the current active mission item is set to 1.
::: info
When a mission is paused while the camera on the vehicle was triggering, PX4 sets the current active mission item to the previous waypoint, so that when the mission is restarted the vehicle will retrace its last mission leg.
@@ -210,7 +210,7 @@ The diagram below shows the sorts of paths that you might expect.
![acc-rad](../../assets/flying/acceptance_radius_mission.png)
Vehicles switch to the next waypoint as soon as they enter the acceptance radius.
This is defined by the "L1 distance", which is is computed from two parameters: [NPFG_DAMPING](../advanced_config/parameter_reference.md#NPFG_DAMPING) and [NPFG_PERIOD](../advanced_config/parameter_reference.md#NPFG_PERIOD), and the current ground speed.
This is defined by the "L1 distance", which is computed from two parameters: [NPFG_DAMPING](../advanced_config/parameter_reference.md#NPFG_DAMPING) and [NPFG_PERIOD](../advanced_config/parameter_reference.md#NPFG_PERIOD), and the current ground speed.
By default, it's about 70 meters.
The equation is:
@@ -312,7 +312,7 @@ On _QGroundControl_ a popup button appears during landing to enable this.
Aborting the landing results in a climb out to an orbit pattern centered above the land waypoint.
The maximum of the aircraft's current altitude and [MIS_LND_ABRT_ALT](#MIS_LND_ABRT_ALT) is set as the abort orbit altitude height relative to (above) the landing waypoint.
Landing configuration (e.g. flaps, spoilers, landing airspeed) is disabled during abort and the aicraft flies in cruise conditions.
Landing configuration (e.g. flaps, spoilers, landing airspeed) is disabled during abort and the aircraft flies in cruise conditions.
The abort command is disabled during the flare for safety.
Operators may still manually abort the landing by switching to any manual mode, such as [Stabilized mode](../flight_modes_fw/stabilized.md)), though it should be noted that this is risky!
@@ -352,7 +352,7 @@ Note that if the wheel controller is enabled ([FW_W_EN](#FW_W_EN)), the controll
::: info
Nudging should not be used to supplement poor position control tuning.
If the vehicle is regularly showing poor tracking peformance on a defined path, please refer to the [fixed-wing control tuning guide](../flight_modes_fw/position.md) for instruction.
If the vehicle is regularly showing poor tracking performance on a defined path, please refer to the [fixed-wing control tuning guide](../flight_modes_fw/position.md) for instruction.
:::
| Parameter | Description |
@@ -363,7 +363,7 @@ If the vehicle is regularly showing poor tracking peformance on a defined path,
### Near Ground Safety Constraints
In landing mode, the distance sensor is used to determine proximity to the ground, and the airframe's geometry is used to calculate roll contraints to prevent wing strike.
In landing mode, the distance sensor is used to determine proximity to the ground, and the airframe's geometry is used to calculate roll constraints to prevent wing strike.
![Fixed-wing landing nudging](../../assets/flying/wing_geometry.png)
+2 -2
View File
@@ -14,7 +14,7 @@ Vehicles are [hand or catapult launched](#catapult-hand-launch) by default, but
- Flying vehicles will failsafe if they lose the altitude estimate.
- Disarmed vehicles can switch to mode without valid altitude estimate but can't arm.
- RC control switches can be used to change flight modes.
- RC stick movement is ignored in catapult takeoff but can can be used to nudge the vehicle in runway takeoff.
- RC stick movement is ignored in catapult takeoff but can be used to nudge the vehicle in runway takeoff.
- The [Failure Detector](../config/safety.md#failure-detector) will automatically stop the engines if there is a problem on takeoff.
<!-- https://github.com/PX4/PX4-Autopilot/blob/main/src/modules/commander/ModeUtil/mode_requirements.cpp -->
@@ -111,7 +111,7 @@ The _launch detector_ is affected by the following parameters:
## Runway Takeoff {#runway_launch}
Runway takeoffs can be used by vehicles with landing gear and and steerable wheel (only).
Runway takeoffs can be used by vehicles with landing gear and steerable wheel (only).
You will first need to enable the wheel controller using the parameter [FW_W_EN](#FW_W_EN).
Vehicle should be centered and aligned with runway when takeoff is initiated.
+2 -2
View File
@@ -31,7 +31,7 @@ By default it will follow from directly behind the target at a distance of 8 met
Users can adjust the follow angle, height and distance using an RC controller as shown above:
- _Follow Height_ is controlled with the `up-down` input ("Throttle").
Center the stick to keep follow the target at a constant hight. Raise or lower the stick to adjust height.
Center the stick to keep follow the target at a constant height. Raise or lower the stick to adjust height.
- _Follow Distance_ is controlled with the `forward-back` input ("Pitch").
Pushing the stick forward increases the follow distance, pulling it back decreases the distance.
- _Follow Angle_ is controlled with the `left-right` input ("Roll").
@@ -117,7 +117,7 @@ The altitude control mode determine whether the vehicle altitude is relative to
- `2D + Terrain` makes the drone follow at a fixed height relative to the terrain underneath it, using information from a distance sensor.
- If the vehicle does not have a distance sensor following will be identical to `2D tracking`.
- Distance sensors aren't always accurate and vehicles may be "jumpy" when flying in this mode.
- Note that that height is relative to the ground underneath the vehicle, not the follow target.
- Note that height is relative to the ground underneath the vehicle, not the follow target.
The drone may not follow altitude changes of the target!
- `3D tracking` mode makes the drone follow at a height relative to the follow target, as supplied by its GPS sensor.
+1 -1
View File
@@ -59,7 +59,7 @@ Missions can be paused by switching out of mission mode to any other mode (such
If the vehicle was not capturing images when it was paused, on resuming it will head from its _current position_ towards the same waypoint as it as was heading towards originally.
If the vehicle was capturing images (has camera trigger items) it will instead head from its current position towards the last waypoint it traveled through (before pausing), and then retrace its path at the same speed and with the same camera triggering behaviour.
This ensures that in survey/camera missions the planned path is captured.
A mission can be uploaded while the vehicle is paused, in which which case the current active mission item is set to 1.
A mission can be uploaded while the vehicle is paused, in which case the current active mission item is set to 1.
::: info
When a mission is paused while the camera on the vehicle was triggering, PX4 sets the current active mission item to the previous waypoint, so that when the mission is restarted the vehicle will retrace its last mission leg.
+1 -1
View File
@@ -48,7 +48,7 @@ This is useful when there are few obstacles near the destination, because it may
![Return mode cone](../../assets/flying/rtl_cone.jpg)
The cone affects the minimum return altitude if return mode is triggered within the cylinder defined by the maximum cone radius and `RTL_RETURN_ALT`: outside this cyclinder `RTL_RETURN_ALT` is used.
The cone affects the minimum return altitude if return mode is triggered within the cylinder defined by the maximum cone radius and `RTL_RETURN_ALT`: outside this cylinder `RTL_RETURN_ALT` is used.
Inside the code the minimum return altitude is the intersection of the vehicle position with the cone, or `RTL_DESCEND_ALT` (whichever is higher).
In other words, the vehicle must always ascend to at least `RTL_DESCEND_ALT` if below that value.
+1 -1
View File
@@ -11,7 +11,7 @@ For more information see the specific docs for each mode:
- [Mission Mode (MC)](../flight_modes_mc/mission.md)
- [Mission Mode (FW)](../flight_modes_fw/mission.md)
The following sections outline mission mode behaviour that is VTOL specificL.
The following sections outline mission mode behaviour that is VTOL specific.
## Mission Commands
+1 -1
View File
@@ -109,7 +109,7 @@ Increasing aircraft pitch angle will cause an increase in height but also a decr
Increasing the throttle will increase airspeed but also height will increase due to the increase in lift.
Therefore, we have two inputs (pitch angle and throttle) which both affect the two outputs (airspeed and altitude) which makes the control problem challenging.
TECS offers a solution by respresenting the problem in terms of energies rather than the original setpoints.
TECS offers a solution by representing the problem in terms of energies rather than the original setpoints.
The total energy of an aircraft is the sum of kinetic and potential energy. Thrust (via throttle control) increases the total energy state of the aircraft. A given total energy state can be achieved by arbitrary combinations of potential and kinetic energies.
In other words, flying at a high altitude but at a slow speed can be equivalent to flying at a low altitude but at a faster airspeed in a total energy sense. We refer to this as the specific energy balance and it is calculated from the current altitude and true airspeed setpoint.
The specific energy balance is controlled via the aircraft pitch angle.
+1 -1
View File
@@ -71,7 +71,7 @@ If you see the vehicle "twitch" during landing (turn down the motors, and then i
## Flight Controls/Commands
Vehicle movement is controlled using the 4 basic commands: roll, yaw, pitch and throttle.
As the throttle is increased the rotors spin faster and the vehicle moves up, if the vehicle pitches forward then some of that that force will move the vehicle forward, if it rolls to the left/right, then some of that force will move the vehicle left/right, and changing the yaw spins the vehicle on its axis over the ground plane.
As the throttle is increased the rotors spin faster and the vehicle moves up, if the vehicle pitches forward then some of that force will move the vehicle forward, if it rolls to the left/right, then some of that force will move the vehicle left/right, and changing the yaw spins the vehicle on its axis over the ground plane.
These commands therefore allow you to move left/right, spin left/right, forward/back, and up/down, respectively, as shown on the [Mode 2](../getting_started/rc_transmitter_receiver.md#remote-control-units-for-aircraft) RC controller shown below.
+1 -1
View File
@@ -27,7 +27,7 @@ The following kits are currently available:
## Build Guides
The build guides below show how to assemble a number of kits.
Many kits vary only a little between revisions (for example, the new kit might simply upgrade the flight controller used, and is otherwise identical), so these are likely to be be useful for building the kits in the section above.
Many kits vary only a little between revisions (for example, the new kit might simply upgrade the flight controller used, and is otherwise identical), so these are likely to be useful for building the kits in the section above.
- [Holybro X500 v2 (Pixhawk 6C)](../frames_multicopter/holybro_x500v2_pixhawk6c.md)
- [Holybro X500 v2 (Pixhawk 5X)](../frames_multicopter/holybro_x500V2_pixhawk5x.md) — Discontinued (v2 kit uses Pixhawk 6c)
+3 -3
View File
@@ -81,7 +81,7 @@ The airplane needs some assembly out of the box.
Servos, wings, and the tail will need to be installed.
::: info
For this portion of assembly, the instructions included with the kit should be sufficent, but some helpful tips are listed below.
For this portion of assembly, the instructions included with the kit should be sufficient, but some helpful tips are listed below.
:::
### Gluing Foam
@@ -209,7 +209,7 @@ An alternative carrier board is the Holybro Pixhawk 5X carrier.
The carrier comes installed in a plastic case.
While the case does look nice, it is extra weight, so the carrier was removed from the case.
Once removed from the case, the ARK6X was installed, and a protective cover fitted ontop.
Once removed from the case, the ARK6X was installed, and a protective cover fitted on top.
![Flight computer carrier board](../../assets/airframes/fw/reptile_dragon_2/holybro_5x.jpg)
@@ -337,7 +337,7 @@ For more information see [TBS Crossfire (CRSF) Telemetry](../telemetry/crsf_tele
### `msp_osd` Module
The `msp_osd` module steams MSP telemetry to a selected serial port.
The `msp_osd` module streams MSP telemetry to a selected serial port.
The Caddx Vista Air Unit supports listening to MSP telemetry and will show the received telemetry values in its OSD (on screen display).
1. In the PX4 board config tool, navigate to the `drivers` submenu, then scroll down to highlight `OSD`.
@@ -78,7 +78,7 @@ A long M3 nylon screw and a washer on the underside, followed by a washer and st
![Window and front fuselage (hatch) with FPV Pod mounted on top](../../assets/airframes/fw/turbo_timber_evolution/fpv_pod_hatch.jpg)
![Underside of hatch showing the FPV pod attachement screws and wires pulled through](../../assets/airframes/fw/turbo_timber_evolution/hatch_underside.jpg)
![Underside of hatch showing the FPV pod attachment screws and wires pulled through](../../assets/airframes/fw/turbo_timber_evolution/hatch_underside.jpg)
## Pitot Pod
@@ -138,7 +138,7 @@ Power for the servo and lighting will be provided by the "BEC" power supply in t
The TTE is very flexible when it comes to battery options.
I use both a 3.6Ah 4S Turnigy pack as well as a Upgrade Energy 4s2p liion pack.
While the 3.6Ah LiPo is inexpensive, nearly twice the flight time (24 minutes vs 12 minutes) can be acheived with the Upgrade Energy Liion pack.
While the 3.6Ah LiPo is inexpensive, nearly twice the flight time (24 minutes vs 12 minutes) can be achieved with the Upgrade Energy Liion pack.
![Image of batteries used for the build](../../assets/airframes/fw/turbo_timber_evolution/batteries.jpg)
@@ -165,10 +165,10 @@ Similarly, a JST PH to std spaced headers adapter was made, and it was also left
#### RC Receiver
A custom cable was made to connect the ExpressLRS RX ([RC Reciever](../getting_started/rc_transmitter_receiver.md)) to the Pixhawk 4 Mini.
A custom cable was made to connect the ExpressLRS RX ([RC Receiver](../getting_started/rc_transmitter_receiver.md)) to the Pixhawk 4 Mini.
Because the Pixhawk 4 Mini has limited uarts, the RX was connected to RC input which does not have a TX pin.
This means that the RX will only send control data to the FCU but telemtry cannot be sent to the RX from the FCU.
This means that the RX will only send control data to the FCU but telemetry cannot be sent to the RX from the FCU.
Heatshrink was used to secure the dupont connector of the cable such that it cannot back out off the headers of the ExpressLRS RX.
#### FPV Pod & Airspeed Cable
@@ -177,7 +177,7 @@ Another custom cable was made to connect the Caddx Vista FPV transmitter to the
A Molex microfit was added close to the Vista so that it could be easily disconnected without needing to gain access to the Pixhawk.
As the name implies, the `UART/I2C B` port provides both a UART and I2C interface.
This port is split with the custom cable and one side provides power and data to the I2C airspeed sensor, while the other side provides power and UART TX/RX to the Caddx Vista.
From the UART/I2C B port, 5V, GND, and I2C SCL/SDA, are connected to the I2C airspeed sensor, while just serial RX and TX are connected to the Caddx Vista (Ground is provided the seperate battery power/gnd leads for the Vista)
From the UART/I2C B port, 5V, GND, and I2C SCL/SDA, are connected to the I2C airspeed sensor, while just serial RX and TX are connected to the Caddx Vista (Ground is provided the separate battery power/gnd leads for the Vista)
The [msp_osd](../modules/modules_driver.md#msp-osd) module is used to stream telemetry to the Caddx Vista which can be seen on the DJI Goggles with the "custom OSD" feature enabled.
@@ -192,7 +192,7 @@ Heatshrink was used to electrically insulate the bare board and the radio was in
Overall, this build was a success.
Even with the added weight of the Pixhawk 4 Mini installation, the airplane balances well and has plenty of power to retain its original STOL characterisitics.
Even with the added weight of the Pixhawk 4 Mini installation, the airplane balances well and has plenty of power to retain its original STOL characteristics.
PX4 is easily capable of stabilizing the airplane and fine tuning of the rate loops were accomplished using [fixed-wing autotuning](../config/autotune_fw.md).
The results of tuning can be found in the [parameter file linked below](#parameter-file).
+1 -1
View File
@@ -40,7 +40,7 @@ the [Airframe Reference](../airframes/airframe_reference.md#vectored-6-dof-uuv):
| Manual | Direct manual control of yaw and thrust. |
| Acro | Manual control of yaw/thrust, but keeps roll/pitch zero |
| Altitude | Manual control of x/y thrust and yaw. Control of height with PID, manually controlled by user. Keeps roll/pitch zero |
| Position | Controlls x/y/z and yaw. Manually controlled by user. Keeps roll/pitch zero |
| Position | Controls x/y/z and yaw. Manually controlled by user. Keeps roll/pitch zero |
## Airframe Configuration
@@ -79,7 +79,7 @@ The following tools were used for this build.
### Preparations
Remove the original flight controller, ESC and wing connector cables.
Also remove the the propellers.
Also remove the propellers.
This will help you with the handling of the vehicle and will reduce the risk of an injury due to an unintentional motor startup.
ZMO FPV in it's original state.
@@ -97,7 +97,7 @@ Flight controller and wing connectors removed from the vehicle.
1. Unsolder the 3 female banana plug connectors of the rear motor (might not be necessary for the Pixhawk 6 integration).
1. Screw the ESC back in place with 4 M2.5 x 12 screws.
1. Shorten the rear motor wires and solder them as shown in the picture into place.
1. Solder signal and GND wires to the PWM input ot the ESC.
1. Solder signal and GND wires to the PWM input to the ESC.
![ESC 01](../../assets/airframes/vtol/omp_hobby_zmo_fpv/esc-01.jpg)
+2 -2
View File
@@ -186,9 +186,9 @@ Some of GNSS terms that are useful for interpreting the data include:
- `DOP`: Dilution of position (dimensionless).
This is a measure of the geometric quality of satellite positions and their effect on the precision of the GPS receiver's calculations.
- `EPH`: Standard deviation of horizontal position error (metres).
This represents the the uncertainty in the GPS fix latitude and longitude.
This represents the uncertainty in the GPS fix latitude and longitude.
- `EPV`: Standard deviation of vertical position error (metres).
This represents the the uncertainty in the GPS fix altitude.
This represents the uncertainty in the GPS fix altitude.
### DOP vs EPH/EPV
+2 -2
View File
@@ -22,7 +22,7 @@ If it fails before flight, arming will be denied.
### Compass Parts
PX4 can be used with many magnetometer parts, including: Bosch BMM 150 MEMS (via I2C bus), HMC5883 / HMC5983 (I2C or SPI), IST8310 (I2C), LIS3MDL (I2C or SPI), RM3100, and more.
Other supported magnetometer parts and their busses can be inferred from the drivers listed in [Modules Reference: Magnetometer (Driver)](../modules/modules_driver_magnetometer.md).
Other supported magnetometer parts and their buses can be inferred from the drivers listed in [Modules Reference: Magnetometer (Driver)](../modules/modules_driver_magnetometer.md).
These parts are included in stand alone compass modules, combined compass/GNSS modules, and also in many flight controllers,
@@ -55,7 +55,7 @@ Note:
Internal compasses are not recommended for real use as a heading source, because the performance is almost always very poor.
This is particularly true on on small vehicles where the flight controller has to be mounted close to motor/ESC power lines and other sources of electromagnetic interference.
This is particularly true on small vehicles where the flight controller has to be mounted close to motor/ESC power lines and other sources of electromagnetic interference.
While they may be better on larger vehicles (e.g. VTOL), where it is possible to reduce electromagnetic interference by mounting the flight controller a long way from power supply lines, an external compass will almost always be better.
::: tip
+1 -1
View File
@@ -10,7 +10,7 @@ In addition to surveying/mapping, it is suitable for many other use-cases, inclu
- High-performance H7 processor
- High precision industrial grade IMU
- Support RTK and save RAW raw data (PPK) at the same time
- Support RTK and save raw data (PPK) at the same time
- Multi-satellite and multi-frequency receivers
- UAVCAN/Dronecan protocol
- Support hotshoe and shutter trigger
+1 -1
View File
@@ -77,7 +77,7 @@ The 1.25mm pitch 6P connector (from left: PIN1 to PIN6) supports UART for GNSS a
## Hardware Setup
RTK requires a base RTK module attached to the ground station, and a rover RTK module on the vehicle.
The data from the base needs to be transmitted to the drone via telemetry radio and inputed into the RTK receiver on the rover.
The data from the base needs to be transmitted to the drone via telemetry radio and inputted into the RTK receiver on the rover.
![RTK setup overview](../../assets/hardware/gps/datagnss_gem1305/setup_overview.png)
+1 -1
View File
@@ -26,7 +26,7 @@ For an equivalent GPS module with a compass try: [LOCOSYS Hawk R2](../gps_compas
- Fast TTFF at low signal level
- Free hybrid ephemeris prediction to achieve faster cold start
- Default 5Hz, up to 10 Hz update rate (SBAS support 5Hz only).
- Build-in super capacitor to reserve system data for rapid satellite acquisition
- Built-in super capacitor to reserve system data for rapid satellite acquisition
![LOCOSYS Hawk R1](../../assets/hardware/gps/locosys_hawk_a1/locosys_hawk_a1_gps.png)
+2 -2
View File
@@ -22,8 +22,8 @@ The fast time-to-first-fix, RTK convergence, superior sensitivity, low power con
- Fast TTFF at low signal level
- Free hybrid ephemeris prediction to achieve faster cold start
- Default 5Hz, up to 10 Hz update rate (SBAS support 5Hz only)
- Build-in super capacitor to reserve system data for rapid satellite acquisition
- Build-in 3 axis compass function
- Built-in super capacitor to reserve system data for rapid satellite acquisition
- Built-in 3 axis compass function
- Three LED indicator for Power, PPS and Data transmit
![LOCOSYS Hawk R2](../../assets/hardware/gps/locosys_hawk_a1/locosys_hawk_a1_gps.png)
+1 -1
View File
@@ -108,7 +108,7 @@ To enable multi-antenna attitude determination, follow the following procedure:
These can be compensated for with the heading parameters provided by the Septentrio driver in PX4.
::: info
For optimal heading results, the two antennas should be seperated by at least 30cm / 11.8 in (ideally 50cm / 19.7in or more).
For optimal heading results, the two antennas should be separated by at least 30cm / 11.8 in (ideally 50cm / 19.7in or more).
For additional configuration of the dual antenna setup, please refer to our [Knowledge Base](https://support.septentrio.com/l/858493/2022-04-19/xgrqd) or the [hardware manual](https://web.septentrio.com/l/858493/2022-04-19/xgrql).
:::
+1 -1
View File
@@ -53,7 +53,7 @@ PX4 generally only supports boards that are commercially available, which typica
### VER and REV ID (Hardware Revision and Version Sensing) {#ver_rev_id}
FMUv5 and onwards have an electrical sensing mechanism.
This sensing coupled with optional configuration data will be used to define hardwares configuration with respect to a mandatory device and power supply configuration. Manufacturers must obtain the VER and REV ID from PX4 board maintainers by issuing a PR to ammend the [DS-018 Pixhawk standard](https://github.com/pixhawk/Pixhawk-Standards) for board versions and revisions.
This sensing coupled with optional configuration data will be used to define hardwares configuration with respect to a mandatory device and power supply configuration. Manufacturers must obtain the VER and REV ID from PX4 board maintainers by issuing a PR to amend the [DS-018 Pixhawk standard](https://github.com/pixhawk/Pixhawk-Standards) for board versions and revisions.
Because these boards are 100% compliant with the Pixhawk standard, the values assigned for VER and REV ID are the defaults for that FMU Version.
+1 -1
View File
@@ -1,4 +1,4 @@
# Hardware Hardware Selection & Setup
# Hardware Selection & Setup
This section contains information the components that might be used in a drone, and how they are set up.
+1 -1
View File
@@ -39,7 +39,7 @@ Once the message headers for your definitions are generated in the PX4 build, yo
The first step in debugging is to confirm that any messages you've created are being sent/received as you expect.
You should should first use the `uorb top [<message_name>]` command to verify in real-time that your message is published and the rate (see [uORB Messaging](../middleware/uorb.md#uorb-top-command)).
You should first use the `uorb top [<message_name>]` command to verify in real-time that your message is published and the rate (see [uORB Messaging](../middleware/uorb.md#uorb-top-command)).
This approach can also be used to test incoming messages that publish a uORB topic (for other messages you might use `printf` in your code and test in SITL).
There are several approaches you can use to view MAVLink traffic:
+184 -184
View File
@@ -95,202 +95,202 @@ They are not build into the module, and hence are neither published or subscribe
::: details See messages
- [SensorBaro](../msg_docs/SensorBaro.md)
- [UlogStreamAck](../msg_docs/UlogStreamAck.md)
- [VehicleOpticalFlowVel](../msg_docs/VehicleOpticalFlowVel.md)
- [EstimatorBias](../msg_docs/EstimatorBias.md)
- [VehicleRoi](../msg_docs/VehicleRoi.md)
- [ConfigOverridesV0](../msg_docs/ConfigOverridesV0.md)
- [RegisterExtComponentRequestV0](../msg_docs/RegisterExtComponentRequestV0.md)
- [DebugKeyValue](../msg_docs/DebugKeyValue.md)
- [VehicleImu](../msg_docs/VehicleImu.md)
- [ActuatorTest](../msg_docs/ActuatorTest.md)
- [SensorGnssRelative](../msg_docs/SensorGnssRelative.md)
- [TrajectorySetpoint6dof](../msg_docs/TrajectorySetpoint6dof.md)
- [SensorAirflow](../msg_docs/SensorAirflow.md)
- [EstimatorStatus](../msg_docs/EstimatorStatus.md)
- [EstimatorSelectorStatus](../msg_docs/EstimatorSelectorStatus.md)
- [OrbTestLarge](../msg_docs/OrbTestLarge.md)
- [GeneratorStatus](../msg_docs/GeneratorStatus.md)
- [Ping](../msg_docs/Ping.md)
- [InputRc](../msg_docs/InputRc.md)
- [FailureDetectorStatus](../msg_docs/FailureDetectorStatus.md)
- [RtlTimeEstimate](../msg_docs/RtlTimeEstimate.md)
- [WheelEncoders](../msg_docs/WheelEncoders.md)
- [ActuatorArmed](../msg_docs/ActuatorArmed.md)
- [RcParameterMap](../msg_docs/RcParameterMap.md)
- [GimbalManagerInformation](../msg_docs/GimbalManagerInformation.md)
- [RadioStatus](../msg_docs/RadioStatus.md)
- [RoverSpeedStatus](../msg_docs/RoverSpeedStatus.md)
- [Airspeed](../msg_docs/Airspeed.md)
- [TakeoffStatus](../msg_docs/TakeoffStatus.md)
- [Gripper](../msg_docs/Gripper.md)
- [ButtonEvent](../msg_docs/ButtonEvent.md)
- [MagWorkerData](../msg_docs/MagWorkerData.md)
- [SensorUwb](../msg_docs/SensorUwb.md)
- [VehicleCommandAckV0](../msg_docs/VehicleCommandAckV0.md)
- [VehicleImuStatus](../msg_docs/VehicleImuStatus.md)
- [SensorMag](../msg_docs/SensorMag.md)
- [NormalizedUnsignedSetpoint](../msg_docs/NormalizedUnsignedSetpoint.md)
- [SensorAccelFifo](../msg_docs/SensorAccelFifo.md)
- [RtlStatus](../msg_docs/RtlStatus.md)
- [VehicleGlobalPositionV0](../msg_docs/VehicleGlobalPositionV0.md)
- [SensorPreflightMag](../msg_docs/SensorPreflightMag.md)
- [NavigatorStatus](../msg_docs/NavigatorStatus.md)
- [OrbTest](../msg_docs/OrbTest.md)
- [GpioRequest](../msg_docs/GpioRequest.md)
- [CellularStatus](../msg_docs/CellularStatus.md)
- [SensorsStatusImu](../msg_docs/SensorsStatusImu.md)
- [TuneControl](../msg_docs/TuneControl.md)
- [RcChannels](../msg_docs/RcChannels.md)
- [CameraStatus](../msg_docs/CameraStatus.md)
- [Event](../msg_docs/Event.md)
- [LogMessage](../msg_docs/LogMessage.md)
- [RoverRateStatus](../msg_docs/RoverRateStatus.md)
- [SystemPower](../msg_docs/SystemPower.md)
- [VehicleOpticalFlow](../msg_docs/VehicleOpticalFlow.md)
- [EstimatorGpsStatus](../msg_docs/EstimatorGpsStatus.md)
- [SensorSelection](../msg_docs/SensorSelection.md)
- [Cpuload](../msg_docs/Cpuload.md)
- [UavcanParameterValue](../msg_docs/UavcanParameterValue.md)
- [GimbalManagerInformation](../msg_docs/GimbalManagerInformation.md)
- [ActionRequest](../msg_docs/ActionRequest.md)
- [DebugValue](../msg_docs/DebugValue.md)
- [GimbalManagerSetAttitude](../msg_docs/GimbalManagerSetAttitude.md)
- [LoggerStatus](../msg_docs/LoggerStatus.md)
- [EscStatus](../msg_docs/EscStatus.md)
- [GpioRequest](../msg_docs/GpioRequest.md)
- [NavigatorMissionItem](../msg_docs/NavigatorMissionItem.md)
- [VehicleLocalPositionSetpoint](../msg_docs/VehicleLocalPositionSetpoint.md)
- [RateCtrlStatus](../msg_docs/RateCtrlStatus.md)
- [MavlinkTunnel](../msg_docs/MavlinkTunnel.md)
- [ArmingCheckReplyV0](../msg_docs/ArmingCheckReplyV0.md)
- [FixedWingLateralStatus](../msg_docs/FixedWingLateralStatus.md)
- [UavcanParameterRequest](../msg_docs/UavcanParameterRequest.md)
- [RegisterExtComponentReplyV0](../msg_docs/RegisterExtComponentReplyV0.md)
- [HoverThrustEstimate](../msg_docs/HoverThrustEstimate.md)
- [GimbalManagerSetManualControl](../msg_docs/GimbalManagerSetManualControl.md)
- [CameraCapture](../msg_docs/CameraCapture.md)
- [ParameterSetValueRequest](../msg_docs/ParameterSetValueRequest.md)
- [DebugVect](../msg_docs/DebugVect.md)
- [YawEstimatorStatus](../msg_docs/YawEstimatorStatus.md)
- [AirspeedWind](../msg_docs/AirspeedWind.md)
- [GainCompression](../msg_docs/GainCompression.md)
- [MountOrientation](../msg_docs/MountOrientation.md)
- [TiltrotorExtraControls](../msg_docs/TiltrotorExtraControls.md)
- [TecsStatus](../msg_docs/TecsStatus.md)
- [PositionControllerLandingStatus](../msg_docs/PositionControllerLandingStatus.md)
- [CanInterfaceStatus](../msg_docs/CanInterfaceStatus.md)
- [SensorAccel](../msg_docs/SensorAccel.md)
- [GeofenceStatus](../msg_docs/GeofenceStatus.md)
- [EstimatorStates](../msg_docs/EstimatorStates.md)
- [BatteryStatusV0](../msg_docs/BatteryStatusV0.md)
- [AutotuneAttitudeControlStatus](../msg_docs/AutotuneAttitudeControlStatus.md)
- [FuelTankStatus](../msg_docs/FuelTankStatus.md)
- [FollowTargetStatus](../msg_docs/FollowTargetStatus.md)
- [EstimatorAidSource1d](../msg_docs/EstimatorAidSource1d.md)
- [FixedWingLateralGuidanceStatus](../msg_docs/FixedWingLateralGuidanceStatus.md)
- [VelocityLimits](../msg_docs/VelocityLimits.md)
- [PositionSetpoint](../msg_docs/PositionSetpoint.md)
- [Px4ioStatus](../msg_docs/Px4ioStatus.md)
- [GpsInjectData](../msg_docs/GpsInjectData.md)
- [VehicleStatusV1](../msg_docs/VehicleStatusV1.md)
- [RaptorInput](../msg_docs/RaptorInput.md)
- [DeviceInformation](../msg_docs/DeviceInformation.md)
- [DronecanNodeStatus](../msg_docs/DronecanNodeStatus.md)
- [ActuatorControlsStatus](../msg_docs/ActuatorControlsStatus.md)
- [MavlinkLog](../msg_docs/MavlinkLog.md)
- [SensorHygrometer](../msg_docs/SensorHygrometer.md)
- [GpsDump](../msg_docs/GpsDump.md)
- [ActuatorServosTrim](../msg_docs/ActuatorServosTrim.md)
- [VehicleAcceleration](../msg_docs/VehicleAcceleration.md)
- [UlogStream](../msg_docs/UlogStream.md)
- [FixedWingRunwayControl](../msg_docs/FixedWingRunwayControl.md)
- [ParameterResetRequest](../msg_docs/ParameterResetRequest.md)
- [VehicleAttitudeSetpointV0](../msg_docs/VehicleAttitudeSetpointV0.md)
- [SensorGnssStatus](../msg_docs/SensorGnssStatus.md)
- [GimbalManagerStatus](../msg_docs/GimbalManagerStatus.md)
- [InternalCombustionEngineStatus](../msg_docs/InternalCombustionEngineStatus.md)
- [SensorGyroFifo](../msg_docs/SensorGyroFifo.md)
- [AirspeedValidatedV0](../msg_docs/AirspeedValidatedV0.md)
- [EscStatus](../msg_docs/EscStatus.md)
- [InternalCombustionEngineControl](../msg_docs/InternalCombustionEngineControl.md)
- [EventV0](../msg_docs/EventV0.md)
- [VehicleStatusV0](../msg_docs/VehicleStatusV0.md)
- [FlightPhaseEstimation](../msg_docs/FlightPhaseEstimation.md)
- [GimbalControls](../msg_docs/GimbalControls.md)
- [EstimatorAidSource3d](../msg_docs/EstimatorAidSource3d.md)
- [LoggerStatus](../msg_docs/LoggerStatus.md)
- [ParameterSetUsedRequest](../msg_docs/ParameterSetUsedRequest.md)
- [HeaterStatus](../msg_docs/HeaterStatus.md)
- [RaptorStatus](../msg_docs/RaptorStatus.md)
- [PwmInput](../msg_docs/PwmInput.md)
- [MagnetometerBiasEstimate](../msg_docs/MagnetometerBiasEstimate.md)
- [OpenDroneIdSystem](../msg_docs/OpenDroneIdSystem.md)
- [GimbalManagerSetAttitude](../msg_docs/GimbalManagerSetAttitude.md)
- [ManualControlSwitches](../msg_docs/ManualControlSwitches.md)
- [OrbTestMedium](../msg_docs/OrbTestMedium.md)
- [TaskStackInfo](../msg_docs/TaskStackInfo.md)
- [DistanceSensorModeChangeRequest](../msg_docs/DistanceSensorModeChangeRequest.md)
- [VehicleAirData](../msg_docs/VehicleAirData.md)
- [Ekf2Timestamps](../msg_docs/Ekf2Timestamps.md)
- [LedControl](../msg_docs/LedControl.md)
- [IrlockReport](../msg_docs/IrlockReport.md)
- [VehicleMagnetometer](../msg_docs/VehicleMagnetometer.md)
- [IridiumsbdStatus](../msg_docs/IridiumsbdStatus.md)
- [DatamanResponse](../msg_docs/DatamanResponse.md)
- [FollowTarget](../msg_docs/FollowTarget.md)
- [PowerMonitor](../msg_docs/PowerMonitor.md)
- [OpenDroneIdOperatorId](../msg_docs/OpenDroneIdOperatorId.md)
- [HealthReport](../msg_docs/HealthReport.md)
- [CameraTrigger](../msg_docs/CameraTrigger.md)
- [DifferentialPressure](../msg_docs/DifferentialPressure.md)
- [PurePursuitStatus](../msg_docs/PurePursuitStatus.md)
- [VehicleAngularVelocity](../msg_docs/VehicleAngularVelocity.md)
- [EstimatorAidSource2d](../msg_docs/EstimatorAidSource2d.md)
- [OpenDroneIdSelfId](../msg_docs/OpenDroneIdSelfId.md)
- [FigureEightStatus](../msg_docs/FigureEightStatus.md)
- [PositionControllerStatus](../msg_docs/PositionControllerStatus.md)
- [HomePositionV0](../msg_docs/HomePositionV0.md)
- [DebugArray](../msg_docs/DebugArray.md)
- [PowerButtonState](../msg_docs/PowerButtonState.md)
- [QshellRetval](../msg_docs/QshellRetval.md)
- [LandingGearWheel](../msg_docs/LandingGearWheel.md)
- [MissionResult](../msg_docs/MissionResult.md)
- [VehicleRoi](../msg_docs/VehicleRoi.md)
- [FuelTankStatus](../msg_docs/FuelTankStatus.md)
- [FixedWingRunwayControl](../msg_docs/FixedWingRunwayControl.md)
- [Ping](../msg_docs/Ping.md)
- [Rpm](../msg_docs/Rpm.md)
- [GpioIn](../msg_docs/GpioIn.md)
- [GpioConfig](../msg_docs/GpioConfig.md)
- [SensorGyro](../msg_docs/SensorGyro.md)
- [SensorGyroFft](../msg_docs/SensorGyroFft.md)
- [ActionRequest](../msg_docs/ActionRequest.md)
- [BatteryInfo](../msg_docs/BatteryInfo.md)
- [SatelliteInfo](../msg_docs/SatelliteInfo.md)
- [LaunchDetectionStatus](../msg_docs/LaunchDetectionStatus.md)
- [ParameterUpdate](../msg_docs/ParameterUpdate.md)
- [DatamanRequest](../msg_docs/DatamanRequest.md)
- [GimbalDeviceSetAttitude](../msg_docs/GimbalDeviceSetAttitude.md)
- [GeofenceResult](../msg_docs/GeofenceResult.md)
- [LandingTargetInnovations](../msg_docs/LandingTargetInnovations.md)
- [Vtx](../msg_docs/Vtx.md)
- [EstimatorBias3d](../msg_docs/EstimatorBias3d.md)
- [ControlAllocatorStatus](../msg_docs/ControlAllocatorStatus.md)
- [FollowTargetEstimator](../msg_docs/FollowTargetEstimator.md)
- [RoverAttitudeStatus](../msg_docs/RoverAttitudeStatus.md)
- [ActuatorOutputs](../msg_docs/ActuatorOutputs.md)
- [AdcReport](../msg_docs/AdcReport.md)
- [EstimatorInnovations](../msg_docs/EstimatorInnovations.md)
- [ArmingCheckRequestV0](../msg_docs/ArmingCheckRequestV0.md)
- [PpsCapture](../msg_docs/PpsCapture.md)
- [SensorsStatus](../msg_docs/SensorsStatus.md)
- [EstimatorEventFlags](../msg_docs/EstimatorEventFlags.md)
- [DebugValue](../msg_docs/DebugValue.md)
- [OpenDroneIdArmStatus](../msg_docs/OpenDroneIdArmStatus.md)
- [VehicleAngularAccelerationSetpoint](../msg_docs/VehicleAngularAccelerationSetpoint.md)
- [LandingTargetPose](../msg_docs/LandingTargetPose.md)
- [InternalCombustionEngineStatus](../msg_docs/InternalCombustionEngineStatus.md)
- [ParameterUpdate](../msg_docs/ParameterUpdate.md)
- [GpioConfig](../msg_docs/GpioConfig.md)
- [FixedWingLateralStatus](../msg_docs/FixedWingLateralStatus.md)
- [PowerButtonState](../msg_docs/PowerButtonState.md)
- [VehicleOpticalFlowVel](../msg_docs/VehicleOpticalFlowVel.md)
- [PowerMonitor](../msg_docs/PowerMonitor.md)
- [EstimatorBias3d](../msg_docs/EstimatorBias3d.md)
- [GeneratorStatus](../msg_docs/GeneratorStatus.md)
- [UlogStream](../msg_docs/UlogStream.md)
- [FigureEightStatus](../msg_docs/FigureEightStatus.md)
- [MountOrientation](../msg_docs/MountOrientation.md)
- [LandingTargetInnovations](../msg_docs/LandingTargetInnovations.md)
- [GainCompression](../msg_docs/GainCompression.md)
- [LedControl](../msg_docs/LedControl.md)
- [Gripper](../msg_docs/Gripper.md)
- [OrbTestLarge](../msg_docs/OrbTestLarge.md)
- [NormalizedUnsignedSetpoint](../msg_docs/NormalizedUnsignedSetpoint.md)
- [RaptorStatus](../msg_docs/RaptorStatus.md)
- [UavcanParameterRequest](../msg_docs/UavcanParameterRequest.md)
- [DronecanNodeStatus](../msg_docs/DronecanNodeStatus.md)
- [DifferentialPressure](../msg_docs/DifferentialPressure.md)
- [FollowTargetStatus](../msg_docs/FollowTargetStatus.md)
- [SensorGyroFifo](../msg_docs/SensorGyroFifo.md)
- [HeaterStatus](../msg_docs/HeaterStatus.md)
- [MagWorkerData](../msg_docs/MagWorkerData.md)
- [GpioIn](../msg_docs/GpioIn.md)
- [OpenDroneIdSystem](../msg_docs/OpenDroneIdSystem.md)
- [GpioOut](../msg_docs/GpioOut.md)
- [PurePursuitStatus](../msg_docs/PurePursuitStatus.md)
- [TakeoffStatus](../msg_docs/TakeoffStatus.md)
- [NeuralControl](../msg_docs/NeuralControl.md)
- [VehicleConstraints](../msg_docs/VehicleConstraints.md)
- [VehicleLocalPositionV0](../msg_docs/VehicleLocalPositionV0.md)
- [SensorTemp](../msg_docs/SensorTemp.md)
- [GimbalDeviceInformation](../msg_docs/GimbalDeviceInformation.md)
- [EstimatorSensorBias](../msg_docs/EstimatorSensorBias.md)
- [NavigatorMissionItem](../msg_docs/NavigatorMissionItem.md)
- [ParameterSetValueResponse](../msg_docs/ParameterSetValueResponse.md)
- [Mission](../msg_docs/Mission.md)
- [EstimatorSelectorStatus](../msg_docs/EstimatorSelectorStatus.md)
- [ActuatorTest](../msg_docs/ActuatorTest.md)
- [DebugKeyValue](../msg_docs/DebugKeyValue.md)
- [PpsCapture](../msg_docs/PpsCapture.md)
- [LandingTargetPose](../msg_docs/LandingTargetPose.md)
- [VehicleAngularAccelerationSetpoint](../msg_docs/VehicleAngularAccelerationSetpoint.md)
- [RcChannels](../msg_docs/RcChannels.md)
- [CameraCapture](../msg_docs/CameraCapture.md)
- [AirspeedWind](../msg_docs/AirspeedWind.md)
- [SensorGyroFft](../msg_docs/SensorGyroFft.md)
- [VehicleAngularVelocity](../msg_docs/VehicleAngularVelocity.md)
- [CameraStatus](../msg_docs/CameraStatus.md)
- [ActuatorControlsStatus](../msg_docs/ActuatorControlsStatus.md)
- [EstimatorAidSource2d](../msg_docs/EstimatorAidSource2d.md)
- [RtlStatus](../msg_docs/RtlStatus.md)
- [HomePositionV0](../msg_docs/HomePositionV0.md)
- [VehicleCommandAckV0](../msg_docs/VehicleCommandAckV0.md)
- [GpsDump](../msg_docs/GpsDump.md)
- [SensorGnssRelative](../msg_docs/SensorGnssRelative.md)
- [IridiumsbdStatus](../msg_docs/IridiumsbdStatus.md)
- [PositionControllerStatus](../msg_docs/PositionControllerStatus.md)
- [ButtonEvent](../msg_docs/ButtonEvent.md)
- [SensorAccel](../msg_docs/SensorAccel.md)
- [OrbTest](../msg_docs/OrbTest.md)
- [GimbalDeviceSetAttitude](../msg_docs/GimbalDeviceSetAttitude.md)
- [VehicleLocalPositionV0](../msg_docs/VehicleLocalPositionV0.md)
- [TiltrotorExtraControls](../msg_docs/TiltrotorExtraControls.md)
- [GimbalManagerStatus](../msg_docs/GimbalManagerStatus.md)
- [PositionSetpoint](../msg_docs/PositionSetpoint.md)
- [TrajectorySetpoint6dof](../msg_docs/TrajectorySetpoint6dof.md)
- [Vtx](../msg_docs/Vtx.md)
- [Event](../msg_docs/Event.md)
- [VehicleGlobalPositionV0](../msg_docs/VehicleGlobalPositionV0.md)
- [OrbTestMedium](../msg_docs/OrbTestMedium.md)
- [SensorCorrection](../msg_docs/SensorCorrection.md)
- [TecsStatus](../msg_docs/TecsStatus.md)
- [DebugArray](../msg_docs/DebugArray.md)
- [VehicleAttitudeSetpointV0](../msg_docs/VehicleAttitudeSetpointV0.md)
- [UavcanParameterValue](../msg_docs/UavcanParameterValue.md)
- [GimbalControls](../msg_docs/GimbalControls.md)
- [SensorMag](../msg_docs/SensorMag.md)
- [CanInterfaceStatus](../msg_docs/CanInterfaceStatus.md)
- [BatteryStatusV0](../msg_docs/BatteryStatusV0.md)
- [TaskStackInfo](../msg_docs/TaskStackInfo.md)
- [RoverSpeedStatus](../msg_docs/RoverSpeedStatus.md)
- [VehicleImuStatus](../msg_docs/VehicleImuStatus.md)
- [VehicleAirData](../msg_docs/VehicleAirData.md)
- [AutotuneAttitudeControlStatus](../msg_docs/AutotuneAttitudeControlStatus.md)
- [VelocityLimits](../msg_docs/VelocityLimits.md)
- [OpenDroneIdOperatorId](../msg_docs/OpenDroneIdOperatorId.md)
- [RcParameterMap](../msg_docs/RcParameterMap.md)
- [EscReport](../msg_docs/EscReport.md)
- [UlogStreamAck](../msg_docs/UlogStreamAck.md)
- [PositionControllerLandingStatus](../msg_docs/PositionControllerLandingStatus.md)
- [DebugVect](../msg_docs/DebugVect.md)
- [TuneControl](../msg_docs/TuneControl.md)
- [GimbalManagerSetManualControl](../msg_docs/GimbalManagerSetManualControl.md)
- [BatteryInfo](../msg_docs/BatteryInfo.md)
- [YawEstimatorStatus](../msg_docs/YawEstimatorStatus.md)
- [ActuatorServosTrim](../msg_docs/ActuatorServosTrim.md)
- [RtlTimeEstimate](../msg_docs/RtlTimeEstimate.md)
- [DistanceSensorModeChangeRequest](../msg_docs/DistanceSensorModeChangeRequest.md)
- [Cpuload](../msg_docs/Cpuload.md)
- [ParameterSetValueResponse](../msg_docs/ParameterSetValueResponse.md)
- [ControlAllocatorStatus](../msg_docs/ControlAllocatorStatus.md)
- [FixedWingLateralGuidanceStatus](../msg_docs/FixedWingLateralGuidanceStatus.md)
- [VehicleOpticalFlow](../msg_docs/VehicleOpticalFlow.md)
- [DeviceInformation](../msg_docs/DeviceInformation.md)
- [SensorUwb](../msg_docs/SensorUwb.md)
- [SensorGnssStatus](../msg_docs/SensorGnssStatus.md)
- [AdcReport](../msg_docs/AdcReport.md)
- [SensorGyro](../msg_docs/SensorGyro.md)
- [NavigatorStatus](../msg_docs/NavigatorStatus.md)
- [MavlinkLog](../msg_docs/MavlinkLog.md)
- [VehicleMagnetometer](../msg_docs/VehicleMagnetometer.md)
- [GpsInjectData](../msg_docs/GpsInjectData.md)
- [InputRc](../msg_docs/InputRc.md)
- [ParameterSetUsedRequest](../msg_docs/ParameterSetUsedRequest.md)
- [FollowTarget](../msg_docs/FollowTarget.md)
- [EstimatorInnovations](../msg_docs/EstimatorInnovations.md)
- [Ekf2Timestamps](../msg_docs/Ekf2Timestamps.md)
- [FollowTargetEstimator](../msg_docs/FollowTargetEstimator.md)
- [ConfigOverridesV0](../msg_docs/ConfigOverridesV0.md)
- [IrlockReport](../msg_docs/IrlockReport.md)
- [SensorAirflow](../msg_docs/SensorAirflow.md)
- [EstimatorBias](../msg_docs/EstimatorBias.md)
- [QshellRetval](../msg_docs/QshellRetval.md)
- [OrbitStatus](../msg_docs/OrbitStatus.md)
- [EstimatorAidSource1d](../msg_docs/EstimatorAidSource1d.md)
- [ActuatorArmed](../msg_docs/ActuatorArmed.md)
- [FlightPhaseEstimation](../msg_docs/FlightPhaseEstimation.md)
- [GeofenceResult](../msg_docs/GeofenceResult.md)
- [VehicleAcceleration](../msg_docs/VehicleAcceleration.md)
- [SensorAccelFifo](../msg_docs/SensorAccelFifo.md)
- [EstimatorSensorBias](../msg_docs/EstimatorSensorBias.md)
- [MavlinkTunnel](../msg_docs/MavlinkTunnel.md)
- [OpenDroneIdSelfId](../msg_docs/OpenDroneIdSelfId.md)
- [SatelliteInfo](../msg_docs/SatelliteInfo.md)
- [VehicleConstraints](../msg_docs/VehicleConstraints.md)
- [RoverAttitudeStatus](../msg_docs/RoverAttitudeStatus.md)
- [SensorSelection](../msg_docs/SensorSelection.md)
- [Px4ioStatus](../msg_docs/Px4ioStatus.md)
- [AirspeedValidatedV0](../msg_docs/AirspeedValidatedV0.md)
- [SensorsStatus](../msg_docs/SensorsStatus.md)
- [MissionResult](../msg_docs/MissionResult.md)
- [HoverThrustEstimate](../msg_docs/HoverThrustEstimate.md)
- [RegisterExtComponentRequestV0](../msg_docs/RegisterExtComponentRequestV0.md)
- [RadioStatus](../msg_docs/RadioStatus.md)
- [RaptorInput](../msg_docs/RaptorInput.md)
- [SensorPreflightMag](../msg_docs/SensorPreflightMag.md)
- [GeofenceStatus](../msg_docs/GeofenceStatus.md)
- [EstimatorStatus](../msg_docs/EstimatorStatus.md)
- [EstimatorGpsStatus](../msg_docs/EstimatorGpsStatus.md)
- [QshellReq](../msg_docs/QshellReq.md)
- [VehicleStatusV0](../msg_docs/VehicleStatusV0.md)
- [SensorHygrometer](../msg_docs/SensorHygrometer.md)
- [SystemPower](../msg_docs/SystemPower.md)
- [InternalCombustionEngineControl](../msg_docs/InternalCombustionEngineControl.md)
- [VehicleStatusV1](../msg_docs/VehicleStatusV1.md)
- [DatamanRequest](../msg_docs/DatamanRequest.md)
- [ParameterSetValueRequest](../msg_docs/ParameterSetValueRequest.md)
- [ArmingCheckRequestV0](../msg_docs/ArmingCheckRequestV0.md)
- [EventV0](../msg_docs/EventV0.md)
- [WheelEncoders](../msg_docs/WheelEncoders.md)
- [EstimatorAidSource3d](../msg_docs/EstimatorAidSource3d.md)
- [VehicleImu](../msg_docs/VehicleImu.md)
- [ManualControlSwitches](../msg_docs/ManualControlSwitches.md)
- [OpenDroneIdArmStatus](../msg_docs/OpenDroneIdArmStatus.md)
- [FailureDetectorStatus](../msg_docs/FailureDetectorStatus.md)
- [SensorBaro](../msg_docs/SensorBaro.md)
- [ArmingCheckReplyV0](../msg_docs/ArmingCheckReplyV0.md)
- [HealthReport](../msg_docs/HealthReport.md)
- [PwmInput](../msg_docs/PwmInput.md)
- [CameraTrigger](../msg_docs/CameraTrigger.md)
- [GimbalDeviceInformation](../msg_docs/GimbalDeviceInformation.md)
- [EstimatorEventFlags](../msg_docs/EstimatorEventFlags.md)
- [RegisterExtComponentReplyV0](../msg_docs/RegisterExtComponentReplyV0.md)
- [MagnetometerBiasEstimate](../msg_docs/MagnetometerBiasEstimate.md)
- [Mission](../msg_docs/Mission.md)
- [SensorsStatusImu](../msg_docs/SensorsStatusImu.md)
- [CellularStatus](../msg_docs/CellularStatus.md)
- [ParameterResetRequest](../msg_docs/ParameterResetRequest.md)
- [LaunchDetectionStatus](../msg_docs/LaunchDetectionStatus.md)
- [RoverRateStatus](../msg_docs/RoverRateStatus.md)
- [EstimatorStates](../msg_docs/EstimatorStates.md)
- [Airspeed](../msg_docs/Airspeed.md)
:::
+1 -1
View File
@@ -163,7 +163,7 @@ For the full list of versioned and non-versioned messages see: [uORB Message Ref
For more on PX4 and ROS 2 communication, see [PX4-ROS 2 Bridge](../ros/ros2_comm.md).
::: info
ROS 2 plans to natively support message versioning in the future, but this is not implememented yet.
ROS 2 plans to natively support message versioning in the future, but this is not implemented yet.
See the related ROS Enhancement Proposal ([REP 2011](https://github.com/ros-infrastructure/rep/pull/358)).
See also this [Foxglove post](https://foxglove.dev/blog/sending-ros2-message-types-over-the-wire) on message hashing and type fetching.
:::

Some files were not shown because too many files have changed in this diff Show More