Compare commits

..

10 Commits

Author SHA1 Message Date
Hamish Willee cf4bae6d3e Updted tests mostly for the spec overview 2026-04-09 08:40:53 +10:00
Hamish Willee f54a170361 docs(script): fix up generator PWM outputs 2026-04-02 10:36:01 +11:00
Hamish Willee 35a734d49a docs(infrastructure): Add script and tests to generate FC doc sections/docs 2026-04-02 09:10:59 +11:00
PX4BuildBot f444402e6c docs: auto-sync metadata [skip ci]
Co-Authored-By: PX4 BuildBot <bot@px4.io>
2026-04-01 20:32:31 +00:00
Onur Özkan 0d18be5049 fix(scripts): replace hardcoded /bin/bash shebangs
Several helper scripts assumes bash is available at /bin/bash. That breaks on systems
such as NixOS, where bash is resolved from PATH instead of a fixed /bin location and
causes failures like `bad interpreter` during `make format`, e.g., on my host machine:

```sh
$ make format

/PX4-Autopilot/Tools/astyle/check_code_style.sh: /PX4-Autopilot/Tools/astyle/fix_code_style.sh: /bin/bash: bad interpreter: No such file or directory
```

This change switches these entrypoints to `#!/usr/bin/env bash` so they locate bash properly.

No functional changes intended.

Signed-off-by: Onur Özkan <work@onurozkan.dev>
2026-04-01 12:25:28 -08:00
PX4BuildBot 197a1a6214 docs: auto-sync metadata [skip ci]
Co-Authored-By: PX4 BuildBot <bot@px4.io>
2026-04-01 13:08:32 +00:00
Marco Hauswirth 93955bd313 chore(gazebo): update gazebo-classic submodule, remove ranging-beacon from constrained-flash-boards 2026-04-01 15:01:31 +02:00
Marco Hauswirth 65c96fb2bf feat(simulation): add ranging beacon simulation in SIH 2026-04-01 15:01:31 +02:00
Marco Hauswirth f4c820c7e1 feat(ekf2): add ranging beacon fusion support
- Add Symforce-derivation
- No altitude correction
- EKF2 replay
- New params
2026-04-01 15:01:31 +02:00
Marco Hauswirth c260794122 feat(mavlink): add ranging beacon parser and uORB message 2026-04-01 15:01:31 +02:00
262 changed files with 57783 additions and 267 deletions
+1 -1
View File
@@ -1,4 +1,4 @@
#! /bin/bash
#!/usr/bin/env bash
# exit when any command fails
set -e
+1 -1
View File
@@ -1,4 +1,4 @@
#!/bin/bash
#!/usr/bin/env bash
if [[ $# -eq 0 ]] ; then
exit 0
+1 -1
View File
@@ -1,4 +1,4 @@
#!/bin/bash
#!/usr/bin/env bash
# Flash PX4 to a device running AuterionOS in the local network
if [ "$1" == "-h" ] || [ "$1" == "--help" ] || [ $# -lt 2 ]; then
echo "Usage: $0 -f <firmware.px4|.elf> [-c <configuration_dir>] -d <IP/Device> [-u <user>] [-p <ssh_port>] [--revert]"
+1 -1
View File
@@ -1,4 +1,4 @@
#!/bin/bash
#!/usr/bin/env bash
# This script is meant to be used by the build_all.yml workflow in a github runner
# Please only modify if you know what you are doing
set -e
+1 -1
View File
@@ -1,4 +1,4 @@
#! /bin/bash
#!/usr/bin/env bash
# Copy a git diff between two commits if msg versioning is added
DIR=$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )
+1 -1
View File
@@ -1,4 +1,4 @@
#!/bin/bash
#!/usr/bin/env bash
mkdir artifacts
cp **/**/*.px4 artifacts/ 2>/dev/null || true
+1 -1
View File
@@ -1,4 +1,4 @@
#!/bin/bash
#!/usr/bin/env bash
# This script runs the fuzz tests from a given binary for a certain amount of time
set -e
+1 -1
View File
@@ -1,4 +1,4 @@
#! /bin/bash
#!/usr/bin/env bash
# Copy msgs and the message translation node into a ROS workspace directory
DIR=$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )
+1 -1
View File
@@ -1,4 +1,4 @@
#! /bin/bash
#!/usr/bin/env bash
if [ -z ${PX4_DOCKER_REPO+x} ]; then
PX4_DOCKER_REPO="px4io/px4-dev:v1.17.0-beta1"
+1 -1
View File
@@ -1,4 +1,4 @@
#!/bin/bash
#!/usr/bin/env bash
# Script to run ShellCheck (a static analysis tool for shell scripts) over a
# script directory
+1 -1
View File
@@ -1,4 +1,4 @@
#!/bin/bash
#!/usr/bin/env bash
GREEN='\033[0;32m'
NO_COLOR='\033[0m' # No Color
@@ -1,4 +1,4 @@
#!/bin/bash
#!/usr/bin/env bash
#
# Setup environment to make PX4 visible to Gazebo.
#
@@ -1,4 +1,4 @@
#!/bin/bash
#!/usr/bin/env bash
# run multiple instances of the 'px4' binary, with the gazebo SITL simulation
# It assumes px4 is already built, with 'make px4_sitl_default sitl_gazebo-classic'
+1 -1
View File
@@ -1,4 +1,4 @@
#!/bin/bash
#!/usr/bin/env bash
# Run multiple instances of the 'px4' binary, without starting an external simulator.
# It assumes px4 is already built with the specified build target.
#
+1 -1
View File
@@ -1,4 +1,4 @@
#!/bin/bash
#!/usr/bin/env bash
# Run this from the px4 project top level directory
docker run -it --rm --privileged -v `pwd`:/usr/local/workspace px4io/px4-dev-nuttx-focal:2022-08-12
+1 -1
View File
@@ -1,4 +1,4 @@
#!/bin/bash
#!/usr/bin/env bash
set -e
# Create px4-* symlinks from px4-alias.sh
+1 -1
View File
@@ -1,4 +1,4 @@
#!/bin/bash
#!/usr/bin/env bash
set -e
# Stop voxl-px4 service if running
+1 -1
View File
@@ -1,4 +1,4 @@
#!/bin/bash
#!/usr/bin/env bash
echo "*** Starting unified VOXL2 build (apps + SLPI) ***"
+1 -1
View File
@@ -1,4 +1,4 @@
#!/bin/bash
#!/usr/bin/env bash
echo "*** Starting unified VOXL2 build (apps + SLPI) ***"
+1 -1
View File
@@ -1,4 +1,4 @@
#!/bin/bash
#!/usr/bin/env bash
echo "*** Starting qurt slpi build ***"
+1 -1
View File
@@ -1,4 +1,4 @@
#!/bin/bash
#!/usr/bin/env bash
# Clean out the build artifacts
# source /home/build-env.sh
@@ -1,4 +1,4 @@
#!/bin/bash
#!/usr/bin/env bash
# Push slpi image to voxl2
adb push build/modalai_voxl2_slpi/platforms/qurt/libpx4.so /usr/lib/rfsa/adsp
+1 -1
View File
@@ -1,4 +1,4 @@
#!/bin/bash
#!/usr/bin/env bash
# Push slpi image to voxl2
adb push build/modalai_voxl2_slpi/platforms/qurt/libpx4.so /usr/lib/rfsa/adsp
+1 -1
View File
@@ -1,4 +1,4 @@
#!/bin/bash
#!/usr/bin/env bash
cd Tools/simulation/gazebo-classic/sitl_gazebo-classic/src
patch < ../../../../../boards/modalai/voxl2/gazebo-docker/patch/mavlink_interface.patch
+1 -1
View File
@@ -1,4 +1,4 @@
#!/bin/bash
#!/usr/bin/env bash
# Run this from the px4 project top level directory
docker run -it --rm -v `pwd`:/usr/local/workspace rb5-flight-px4-build-docker
@@ -1,4 +1,4 @@
#!/bin/bash
#!/usr/bin/env bash
################################################################################
# Copyright 2023 ModalAI Inc.
#
+1 -1
View File
@@ -1,4 +1,4 @@
#!/bin/bash
#!/usr/bin/env bash
CONFIG_FILE="/etc/modalai/voxl-px4.conf"
+1 -1
View File
@@ -1,4 +1,4 @@
#!/bin/bash
#!/usr/bin/env bash
# Make sure that the SLPI DSP test signature is there otherwise px4 cannot run
# on the DSP
@@ -142,9 +142,8 @@ CONFIG_IMXRT_USDHC1_INVERT_CD=y
CONFIG_IMXRT_USDHC1_WIDTH_D1_D4=y
CONFIG_INIT_ENTRYPOINT="nsh_main"
CONFIG_INIT_STACKSIZE=2944
CONFIG_IOB_NBUFFERS=256
CONFIG_IOB_NCHAINS=196
CONFIG_IOB_NOTIFIER=y
CONFIG_IOB_NBUFFERS=24
CONFIG_IOB_THROTTLE=0
CONFIG_IPCFG_BINARY=y
CONFIG_IPCFG_CHARDEV=y
CONFIG_IPCFG_PATH="/fs/mtd_net"
@@ -21557,6 +21557,49 @@ Maximum vertical drift speed to use GPS.
| ------ | -------- | -------- | --------- | ------- | ---- |
| &nbsp; | 0.1 | 1.5 | | 0.2 | m/s |
### EKF2_RNGBC_CTRL (`INT32`) {#EKF2_RNGBC_CTRL}
Ranging beacon fusion control.
Enable/disable ranging beacon fusion.
**Values:**
- `0`: Disable ranging beacon fusion
- `1`: Enable ranging beacon fusion
| Reboot | minValue | maxValue | increment | default | unit |
| ------ | -------- | -------- | --------- | ------- | ---- |
| &nbsp; | | | | 0 | |
### EKF2_RNGBC_DELAY (`FLOAT`) {#EKF2_RNGBC_DELAY}
Ranging beacon measurement delay relative to IMU measurements.
| Reboot | minValue | maxValue | increment | default | unit |
| ------- | -------- | -------- | --------- | ------- | ---- |
| &check; | 0 | 1000 | | 0 | ms |
### EKF2_RNGBC_GATE (`FLOAT`) {#EKF2_RNGBC_GATE}
Gate size for ranging beacon fusion.
Sets the number of standard deviations used by the innovation consistency test.
| Reboot | minValue | maxValue | increment | default | unit |
| ------ | -------- | -------- | --------- | ------- | ---- |
| &nbsp; | 1.0 | | | 5.0 | SD |
### EKF2_RNGBC_NOISE (`FLOAT`) {#EKF2_RNGBC_NOISE}
Measurement noise for ranging beacon fusion.
Used to lower bound or replace the uncertainty included in the message
| Reboot | minValue | maxValue | increment | default | unit |
| ------ | -------- | -------- | --------- | ------- | ---- |
| &nbsp; | 0.1 | 500.0 | | 30.0 | m |
### EKF2_RNG_A_HMAX (`FLOAT`) {#EKF2_RNG_A_HMAX}
Maximum height above ground allowed for conditional range aid mode.
@@ -40080,6 +40123,16 @@ This value is usually about few percent of the maximum thrust force.
| ------ | -------- | -------- | --------- | ------- | ---- |
| &nbsp; | 0.0 | | 0.05 | 0.1 | Nm |
### SIH_RNGBC_NOISE (`FLOAT`) {#SIH_RNGBC_NOISE}
Ranging beacon measurement noise standard deviation.
Gaussian noise added to simulated ranging beacon measurements. Set to 0 to disable noise.
| Reboot | minValue | maxValue | increment | default | unit |
| ------ | -------- | -------- | --------- | ------- | ---- |
| &nbsp; | 0.0 | 100.0 | | 30.0 | m |
### SIH_T_MAX (`FLOAT`) {#SIH_T_MAX}
Max propeller thrust force.
+2 -2
View File
@@ -159,7 +159,7 @@ Runs after the package is installed. Common tasks:
- Board-specific setup (e.g., DSP signature generation)
```bash
#!/bin/bash
#!/usr/bin/env bash
set -e
# Create px4-* symlinks
@@ -185,7 +185,7 @@ fi
Runs before the package is removed:
```bash
#!/bin/bash
#!/usr/bin/env bash
set -e
# Stop the service
+190 -189
View File
@@ -95,205 +95,206 @@ They are not build into the module, and hence are neither published or subscribe
::: details See messages
- [YawEstimatorStatus](../msg_docs/YawEstimatorStatus.md)
- [EstimatorEventFlags](../msg_docs/EstimatorEventFlags.md)
- [EscStatus](../msg_docs/EscStatus.md)
- [LogMessage](../msg_docs/LogMessage.md)
- [HomePositionV0](../msg_docs/HomePositionV0.md)
- [FlightPhaseEstimation](../msg_docs/FlightPhaseEstimation.md)
- [SystemPower](../msg_docs/SystemPower.md)
- [Gripper](../msg_docs/Gripper.md)
- [ControlAllocatorStatus](../msg_docs/ControlAllocatorStatus.md)
- [ParameterUpdate](../msg_docs/ParameterUpdate.md)
- [CameraStatus](../msg_docs/CameraStatus.md)
- [GimbalDeviceSetAttitude](../msg_docs/GimbalDeviceSetAttitude.md)
- [Px4ioStatus](../msg_docs/Px4ioStatus.md)
- [SensorGyroFifo](../msg_docs/SensorGyroFifo.md)
- [ActuatorArmed](../msg_docs/ActuatorArmed.md)
- [RtlStatus](../msg_docs/RtlStatus.md)
- [FigureEightStatus](../msg_docs/FigureEightStatus.md)
- [EstimatorBias3d](../msg_docs/EstimatorBias3d.md)
- [LedControl](../msg_docs/LedControl.md)
- [Ping](../msg_docs/Ping.md)
- [Event](../msg_docs/Event.md)
- [SensorHygrometer](../msg_docs/SensorHygrometer.md)
- [NormalizedUnsignedSetpoint](../msg_docs/NormalizedUnsignedSetpoint.md)
- [GimbalDeviceInformation](../msg_docs/GimbalDeviceInformation.md)
- [GpioConfig](../msg_docs/GpioConfig.md)
- [TecsStatus](../msg_docs/TecsStatus.md)
- [OpenDroneIdSelfId](../msg_docs/OpenDroneIdSelfId.md)
- [SensorMag](../msg_docs/SensorMag.md)
- [GimbalManagerStatus](../msg_docs/GimbalManagerStatus.md)
- [GpioIn](../msg_docs/GpioIn.md)
- [SensorGyro](../msg_docs/SensorGyro.md)
- [AdcReport](../msg_docs/AdcReport.md)
- [MavlinkTunnel](../msg_docs/MavlinkTunnel.md)
- [MountOrientation](../msg_docs/MountOrientation.md)
- [SensorGnssRelative](../msg_docs/SensorGnssRelative.md)
- [GeofenceResult](../msg_docs/GeofenceResult.md)
- [DifferentialPressure](../msg_docs/DifferentialPressure.md)
- [VehicleLocalPositionSetpoint](../msg_docs/VehicleLocalPositionSetpoint.md)
- [InternalCombustionEngineControl](../msg_docs/InternalCombustionEngineControl.md)
- [UlogStreamAck](../msg_docs/UlogStreamAck.md)
- [Ekf2Timestamps](../msg_docs/Ekf2Timestamps.md)
- [NeuralControl](../msg_docs/NeuralControl.md)
- [PwmInput](../msg_docs/PwmInput.md)
- [EstimatorBias](../msg_docs/EstimatorBias.md)
- [LandingTargetPose](../msg_docs/LandingTargetPose.md)
- [OrbitStatus](../msg_docs/OrbitStatus.md)
- [HealthReport](../msg_docs/HealthReport.md)
- [GimbalControls](../msg_docs/GimbalControls.md)
- [VehicleStatusV1](../msg_docs/VehicleStatusV1.md)
- [BatteryStatusV0](../msg_docs/BatteryStatusV0.md)
- [LandingTargetInnovations](../msg_docs/LandingTargetInnovations.md)
- [AirspeedWind](../msg_docs/AirspeedWind.md)
- [RoverAttitudeStatus](../msg_docs/RoverAttitudeStatus.md)
- [SatelliteInfo](../msg_docs/SatelliteInfo.md)
- [VehicleStatusV2](../msg_docs/VehicleStatusV2.md)
- [GpioOut](../msg_docs/GpioOut.md)
- [LaunchDetectionStatus](../msg_docs/LaunchDetectionStatus.md)
- [QshellReq](../msg_docs/QshellReq.md)
- [RtlTimeEstimate](../msg_docs/RtlTimeEstimate.md)
- [GimbalManagerInformation](../msg_docs/GimbalManagerInformation.md)
- [QshellRetval](../msg_docs/QshellRetval.md)
- [PowerMonitor](../msg_docs/PowerMonitor.md)
- [ParameterSetUsedRequest](../msg_docs/ParameterSetUsedRequest.md)
- [SensorSelection](../msg_docs/SensorSelection.md)
- [LandingGearWheel](../msg_docs/LandingGearWheel.md)
- [Cpuload](../msg_docs/Cpuload.md)
- [ActuatorServosTrim](../msg_docs/ActuatorServosTrim.md)
- [UavcanParameterValue](../msg_docs/UavcanParameterValue.md)
- [PositionControllerStatus](../msg_docs/PositionControllerStatus.md)
- [ConfigOverridesV0](../msg_docs/ConfigOverridesV0.md)
- [VehicleStatusV0](../msg_docs/VehicleStatusV0.md)
- [EstimatorAidSource1d](../msg_docs/EstimatorAidSource1d.md)
- [CameraCapture](../msg_docs/CameraCapture.md)
- [ActionRequest](../msg_docs/ActionRequest.md)
- [SensorAirflow](../msg_docs/SensorAirflow.md)
- [AirspeedValidatedV0](../msg_docs/AirspeedValidatedV0.md)
- [BatteryInfo](../msg_docs/BatteryInfo.md)
- [EstimatorAidSource3d](../msg_docs/EstimatorAidSource3d.md)
- [ButtonEvent](../msg_docs/ButtonEvent.md)
- [FollowTargetStatus](../msg_docs/FollowTargetStatus.md)
- [EstimatorStates](../msg_docs/EstimatorStates.md)
- [CellularStatus](../msg_docs/CellularStatus.md)
- [HoverThrustEstimate](../msg_docs/HoverThrustEstimate.md)
- [ActuatorTest](../msg_docs/ActuatorTest.md)
- [VehicleImu](../msg_docs/VehicleImu.md)
- [RcChannels](../msg_docs/RcChannels.md)
- [FollowTargetEstimator](../msg_docs/FollowTargetEstimator.md)
- [DebugKeyValue](../msg_docs/DebugKeyValue.md)
- [IrlockReport](../msg_docs/IrlockReport.md)
- [DatamanResponse](../msg_docs/DatamanResponse.md)
- [RcParameterMap](../msg_docs/RcParameterMap.md)
- [GeofenceStatus](../msg_docs/GeofenceStatus.md)
- [VehicleLocalPositionV0](../msg_docs/VehicleLocalPositionV0.md)
- [InternalCombustionEngineStatus](../msg_docs/InternalCombustionEngineStatus.md)
- [InputRc](../msg_docs/InputRc.md)
- [VehicleRoi](../msg_docs/VehicleRoi.md)
- [WheelEncoders](../msg_docs/WheelEncoders.md)
- [CameraTrigger](../msg_docs/CameraTrigger.md)
- [NavigatorStatus](../msg_docs/NavigatorStatus.md)
- [VehicleGlobalPositionV0](../msg_docs/VehicleGlobalPositionV0.md)
- [ArmingCheckRequestV0](../msg_docs/ArmingCheckRequestV0.md)
- [VehicleAttitudeSetpointV0](../msg_docs/VehicleAttitudeSetpointV0.md)
- [SensorGnssStatus](../msg_docs/SensorGnssStatus.md)
- [GpsDump](../msg_docs/GpsDump.md)
- [Vtx](../msg_docs/Vtx.md)
- [FuelTankStatus](../msg_docs/FuelTankStatus.md)
- [DebugValue](../msg_docs/DebugValue.md)
- [SensorCorrection](../msg_docs/SensorCorrection.md)
- [OrbTestMedium](../msg_docs/OrbTestMedium.md)
- [OpenDroneIdArmStatus](../msg_docs/OpenDroneIdArmStatus.md)
- [PurePursuitStatus](../msg_docs/PurePursuitStatus.md)
- [FixedWingRunwayControl](../msg_docs/FixedWingRunwayControl.md)
- [GeneratorStatus](../msg_docs/GeneratorStatus.md)
- [VehicleAcceleration](../msg_docs/VehicleAcceleration.md)
- [ActuatorOutputs](../msg_docs/ActuatorOutputs.md)
- [TaskStackInfo](../msg_docs/TaskStackInfo.md)
- [PositionControllerLandingStatus](../msg_docs/PositionControllerLandingStatus.md)
- [AutotuneAttitudeControlStatus](../msg_docs/AutotuneAttitudeControlStatus.md)
- [ArmingCheckReplyV0](../msg_docs/ArmingCheckReplyV0.md)
- [RegisterExtComponentRequestV0](../msg_docs/RegisterExtComponentRequestV0.md)
- [RoverSpeedStatus](../msg_docs/RoverSpeedStatus.md)
- [VehicleAngularVelocity](../msg_docs/VehicleAngularVelocity.md)
- [SensorAccel](../msg_docs/SensorAccel.md)
- [EscEepromRead](../msg_docs/EscEepromRead.md)
- [FixedWingLateralStatus](../msg_docs/FixedWingLateralStatus.md)
- [AirspeedWind](../msg_docs/AirspeedWind.md)
- [IridiumsbdStatus](../msg_docs/IridiumsbdStatus.md)
- [TrajectorySetpoint6dof](../msg_docs/TrajectorySetpoint6dof.md)
- [SensorsStatusImu](../msg_docs/SensorsStatusImu.md)
- [OpenDroneIdOperatorId](../msg_docs/OpenDroneIdOperatorId.md)
- [SensorAccelFifo](../msg_docs/SensorAccelFifo.md)
- [GimbalManagerSetAttitude](../msg_docs/GimbalManagerSetAttitude.md)
- [PowerButtonState](../msg_docs/PowerButtonState.md)
- [SensorGyroFft](../msg_docs/SensorGyroFft.md)
- [FixedWingLateralGuidanceStatus](../msg_docs/FixedWingLateralGuidanceStatus.md)
- [MagWorkerData](../msg_docs/MagWorkerData.md)
- [MavlinkLog](../msg_docs/MavlinkLog.md)
- [EstimatorAidSource2d](../msg_docs/EstimatorAidSource2d.md)
- [VehicleOpticalFlow](../msg_docs/VehicleOpticalFlow.md)
- [DeviceInformation](../msg_docs/DeviceInformation.md)
- [SensorPreflightMag](../msg_docs/SensorPreflightMag.md)
- [EstimatorStatus](../msg_docs/EstimatorStatus.md)
- [GpioRequest](../msg_docs/GpioRequest.md)
- [DistanceSensorModeChangeRequest](../msg_docs/DistanceSensorModeChangeRequest.md)
- [GimbalManagerSetManualControl](../msg_docs/GimbalManagerSetManualControl.md)
- [HeaterStatus](../msg_docs/HeaterStatus.md)
- [TuneControl](../msg_docs/TuneControl.md)
- [TiltrotorExtraControls](../msg_docs/TiltrotorExtraControls.md)
- [EscEepromWrite](../msg_docs/EscEepromWrite.md)
- [SensorTemp](../msg_docs/SensorTemp.md)
- [SensorBaro](../msg_docs/SensorBaro.md)
- [MagnetometerBiasEstimate](../msg_docs/MagnetometerBiasEstimate.md)
- [ActuatorControlsStatus](../msg_docs/ActuatorControlsStatus.md)
- [UavcanParameterRequest](../msg_docs/UavcanParameterRequest.md)
- [NavigatorMissionItem](../msg_docs/NavigatorMissionItem.md)
- [TakeoffStatus](../msg_docs/TakeoffStatus.md)
- [UlogStream](../msg_docs/UlogStream.md)
- [ParameterResetRequest](../msg_docs/ParameterResetRequest.md)
- [VelocityLimits](../msg_docs/VelocityLimits.md)
- [DatamanResponse](../msg_docs/DatamanResponse.md)
- [EstimatorAidSource3d](../msg_docs/EstimatorAidSource3d.md)
- [EstimatorInnovations](../msg_docs/EstimatorInnovations.md)
- [ParameterSetValueResponse](../msg_docs/ParameterSetValueResponse.md)
- [Ekf2Timestamps](../msg_docs/Ekf2Timestamps.md)
- [VehicleRoi](../msg_docs/VehicleRoi.md)
- [VehicleMagnetometer](../msg_docs/VehicleMagnetometer.md)
- [ArmingCheckReplyV0](../msg_docs/ArmingCheckReplyV0.md)
- [OpenDroneIdArmStatus](../msg_docs/OpenDroneIdArmStatus.md)
- [ActuatorServosTrim](../msg_docs/ActuatorServosTrim.md)
- [DebugArray](../msg_docs/DebugArray.md)
- [Mission](../msg_docs/Mission.md)
- [VehicleAngularAccelerationSetpoint](../msg_docs/VehicleAngularAccelerationSetpoint.md)
- [LaunchDetectionStatus](../msg_docs/LaunchDetectionStatus.md)
- [TakeoffStatus](../msg_docs/TakeoffStatus.md)
- [OpenDroneIdSystem](../msg_docs/OpenDroneIdSystem.md)
- [RcChannels](../msg_docs/RcChannels.md)
- [VehicleAttitudeSetpointV0](../msg_docs/VehicleAttitudeSetpointV0.md)
- [ParameterSetValueRequest](../msg_docs/ParameterSetValueRequest.md)
- [GainCompression](../msg_docs/GainCompression.md)
- [VehicleStatusV2](../msg_docs/VehicleStatusV2.md)
- [ControlAllocatorStatus](../msg_docs/ControlAllocatorStatus.md)
- [ActuatorArmed](../msg_docs/ActuatorArmed.md)
- [PositionSetpoint](../msg_docs/PositionSetpoint.md)
- [RoverRateStatus](../msg_docs/RoverRateStatus.md)
- [DebugValue](../msg_docs/DebugValue.md)
- [GpioConfig](../msg_docs/GpioConfig.md)
- [PurePursuitStatus](../msg_docs/PurePursuitStatus.md)
- [GeofenceResult](../msg_docs/GeofenceResult.md)
- [TrajectorySetpoint6dof](../msg_docs/TrajectorySetpoint6dof.md)
- [SensorAccelFifo](../msg_docs/SensorAccelFifo.md)
- [VehicleLocalPositionSetpoint](../msg_docs/VehicleLocalPositionSetpoint.md)
- [EstimatorSensorBias](../msg_docs/EstimatorSensorBias.md)
- [AdcReport](../msg_docs/AdcReport.md)
- [DistanceSensorModeChangeRequest](../msg_docs/DistanceSensorModeChangeRequest.md)
- [VehicleAngularAccelerationSetpoint](../msg_docs/VehicleAngularAccelerationSetpoint.md)
- [CameraTrigger](../msg_docs/CameraTrigger.md)
- [EscEepromRead](../msg_docs/EscEepromRead.md)
- [OrbTestLarge](../msg_docs/OrbTestLarge.md)
- [FollowTargetStatus](../msg_docs/FollowTargetStatus.md)
- [VelocityLimits](../msg_docs/VelocityLimits.md)
- [LedControl](../msg_docs/LedControl.md)
- [DatamanRequest](../msg_docs/DatamanRequest.md)
- [WheelEncoders](../msg_docs/WheelEncoders.md)
- [RegisterExtComponentRequestV0](../msg_docs/RegisterExtComponentRequestV0.md)
- [PowerButtonState](../msg_docs/PowerButtonState.md)
- [GimbalManagerSetAttitude](../msg_docs/GimbalManagerSetAttitude.md)
- [VehicleImuStatus](../msg_docs/VehicleImuStatus.md)
- [RadioStatus](../msg_docs/RadioStatus.md)
- [SensorTemp](../msg_docs/SensorTemp.md)
- [VehicleStatusV0](../msg_docs/VehicleStatusV0.md)
- [GpioRequest](../msg_docs/GpioRequest.md)
- [DifferentialPressure](../msg_docs/DifferentialPressure.md)
- [EstimatorStatus](../msg_docs/EstimatorStatus.md)
- [InternalCombustionEngineStatus](../msg_docs/InternalCombustionEngineStatus.md)
- [VehicleLocalPositionV0](../msg_docs/VehicleLocalPositionV0.md)
- [ActuatorControlsStatus](../msg_docs/ActuatorControlsStatus.md)
- [Mission](../msg_docs/Mission.md)
- [SystemPower](../msg_docs/SystemPower.md)
- [VehicleImu](../msg_docs/VehicleImu.md)
- [ActuatorOutputs](../msg_docs/ActuatorOutputs.md)
- [VehicleCommandAckV0](../msg_docs/VehicleCommandAckV0.md)
- [QshellReq](../msg_docs/QshellReq.md)
- [VehicleStatusV1](../msg_docs/VehicleStatusV1.md)
- [SensorPreflightMag](../msg_docs/SensorPreflightMag.md)
- [SensorSelection](../msg_docs/SensorSelection.md)
- [MavlinkTunnel](../msg_docs/MavlinkTunnel.md)
- [GimbalManagerInformation](../msg_docs/GimbalManagerInformation.md)
- [GimbalDeviceInformation](../msg_docs/GimbalDeviceInformation.md)
- [ManualControlSwitches](../msg_docs/ManualControlSwitches.md)
- [VehicleOpticalFlowVel](../msg_docs/VehicleOpticalFlowVel.md)
- [VehicleConstraints](../msg_docs/VehicleConstraints.md)
- [SensorsStatus](../msg_docs/SensorsStatus.md)
- [NormalizedUnsignedSetpoint](../msg_docs/NormalizedUnsignedSetpoint.md)
- [ParameterResetRequest](../msg_docs/ParameterResetRequest.md)
- [OpenDroneIdOperatorId](../msg_docs/OpenDroneIdOperatorId.md)
- [RtlStatus](../msg_docs/RtlStatus.md)
- [SensorUwb](../msg_docs/SensorUwb.md)
- [AirspeedValidatedV0](../msg_docs/AirspeedValidatedV0.md)
- [RaptorStatus](../msg_docs/RaptorStatus.md)
- [ParameterSetUsedRequest](../msg_docs/ParameterSetUsedRequest.md)
- [OrbTest](../msg_docs/OrbTest.md)
- [TecsStatus](../msg_docs/TecsStatus.md)
- [CameraStatus](../msg_docs/CameraStatus.md)
- [GpsDump](../msg_docs/GpsDump.md)
- [ArmingCheckRequestV0](../msg_docs/ArmingCheckRequestV0.md)
- [RoverAttitudeStatus](../msg_docs/RoverAttitudeStatus.md)
- [EstimatorAidSource1d](../msg_docs/EstimatorAidSource1d.md)
- [UlogStreamAck](../msg_docs/UlogStreamAck.md)
- [RateCtrlStatus](../msg_docs/RateCtrlStatus.md)
- [RoverSpeedStatus](../msg_docs/RoverSpeedStatus.md)
- [NavigatorStatus](../msg_docs/NavigatorStatus.md)
- [MissionResult](../msg_docs/MissionResult.md)
- [LogMessage](../msg_docs/LogMessage.md)
- [QshellRetval](../msg_docs/QshellRetval.md)
- [InternalCombustionEngineControl](../msg_docs/InternalCombustionEngineControl.md)
- [IrlockReport](../msg_docs/IrlockReport.md)
- [SensorGyroFft](../msg_docs/SensorGyroFft.md)
- [GeofenceStatus](../msg_docs/GeofenceStatus.md)
- [ConfigOverridesV0](../msg_docs/ConfigOverridesV0.md)
- [ButtonEvent](../msg_docs/ButtonEvent.md)
- [SensorCorrection](../msg_docs/SensorCorrection.md)
- [SensorHygrometer](../msg_docs/SensorHygrometer.md)
- [DeviceInformation](../msg_docs/DeviceInformation.md)
- [Gripper](../msg_docs/Gripper.md)
- [SensorMag](../msg_docs/SensorMag.md)
- [EstimatorSelectorStatus](../msg_docs/EstimatorSelectorStatus.md)
- [EscReport](../msg_docs/EscReport.md)
- [VehicleOpticalFlow](../msg_docs/VehicleOpticalFlow.md)
- [YawEstimatorStatus](../msg_docs/YawEstimatorStatus.md)
- [BatteryStatusV0](../msg_docs/BatteryStatusV0.md)
- [GimbalManagerStatus](../msg_docs/GimbalManagerStatus.md)
- [MagWorkerData](../msg_docs/MagWorkerData.md)
- [EstimatorStates](../msg_docs/EstimatorStates.md)
- [PositionControllerStatus](../msg_docs/PositionControllerStatus.md)
- [GimbalDeviceSetAttitude](../msg_docs/GimbalDeviceSetAttitude.md)
- [Cpuload](../msg_docs/Cpuload.md)
- [FailureDetectorStatus](../msg_docs/FailureDetectorStatus.md)
- [FixedWingLateralStatus](../msg_docs/FixedWingLateralStatus.md)
- [MagnetometerBiasEstimate](../msg_docs/MagnetometerBiasEstimate.md)
- [OpenDroneIdSelfId](../msg_docs/OpenDroneIdSelfId.md)
- [PpsCapture](../msg_docs/PpsCapture.md)
- [FollowTargetEstimator](../msg_docs/FollowTargetEstimator.md)
- [Event](../msg_docs/Event.md)
- [GpioIn](../msg_docs/GpioIn.md)
- [PowerMonitor](../msg_docs/PowerMonitor.md)
- [LandingGearWheel](../msg_docs/LandingGearWheel.md)
- [RaptorInput](../msg_docs/RaptorInput.md)
- [SensorGnssRelative](../msg_docs/SensorGnssRelative.md)
- [ActionRequest](../msg_docs/ActionRequest.md)
- [ActuatorTest](../msg_docs/ActuatorTest.md)
- [AutotuneAttitudeControlStatus](../msg_docs/AutotuneAttitudeControlStatus.md)
- [SensorBaro](../msg_docs/SensorBaro.md)
- [DebugKeyValue](../msg_docs/DebugKeyValue.md)
- [EstimatorAidSource2d](../msg_docs/EstimatorAidSource2d.md)
- [RegisterExtComponentReplyV0](../msg_docs/RegisterExtComponentReplyV0.md)
- [SensorGyro](../msg_docs/SensorGyro.md)
- [FlightPhaseEstimation](../msg_docs/FlightPhaseEstimation.md)
- [GimbalManagerSetManualControl](../msg_docs/GimbalManagerSetManualControl.md)
- [PositionControllerLandingStatus](../msg_docs/PositionControllerLandingStatus.md)
- [VehicleAcceleration](../msg_docs/VehicleAcceleration.md)
- [MountOrientation](../msg_docs/MountOrientation.md)
- [HealthReport](../msg_docs/HealthReport.md)
- [OrbTestMedium](../msg_docs/OrbTestMedium.md)
- [SensorGnssStatus](../msg_docs/SensorGnssStatus.md)
- [CanInterfaceStatus](../msg_docs/CanInterfaceStatus.md)
- [EstimatorGpsStatus](../msg_docs/EstimatorGpsStatus.md)
- [OpenDroneIdSystem](../msg_docs/OpenDroneIdSystem.md)
- [VehicleConstraints](../msg_docs/VehicleConstraints.md)
- [DebugVect](../msg_docs/DebugVect.md)
- [Airspeed](../msg_docs/Airspeed.md)
- [EventV0](../msg_docs/EventV0.md)
- [RegisterExtComponentReplyV0](../msg_docs/RegisterExtComponentReplyV0.md)
- [RadioStatus](../msg_docs/RadioStatus.md)
- [VehicleMagnetometer](../msg_docs/VehicleMagnetometer.md)
- [ParameterSetValueRequest](../msg_docs/ParameterSetValueRequest.md)
- [MissionResult](../msg_docs/MissionResult.md)
- [EscReport](../msg_docs/EscReport.md)
- [OrbTest](../msg_docs/OrbTest.md)
- [PositionSetpoint](../msg_docs/PositionSetpoint.md)
- [VehicleOpticalFlowVel](../msg_docs/VehicleOpticalFlowVel.md)
- [VehicleImuStatus](../msg_docs/VehicleImuStatus.md)
- [OrbTestLarge](../msg_docs/OrbTestLarge.md)
- [DatamanRequest](../msg_docs/DatamanRequest.md)
- [EstimatorInnovations](../msg_docs/EstimatorInnovations.md)
- [VehicleAirData](../msg_docs/VehicleAirData.md)
- [VehicleCommandAckV0](../msg_docs/VehicleCommandAckV0.md)
- [RaptorInput](../msg_docs/RaptorInput.md)
- [ManualControlSwitches](../msg_docs/ManualControlSwitches.md)
- [SensorUwb](../msg_docs/SensorUwb.md)
- [EstimatorSensorBias](../msg_docs/EstimatorSensorBias.md)
- [PpsCapture](../msg_docs/PpsCapture.md)
- [FollowTarget](../msg_docs/FollowTarget.md)
- [Rpm](../msg_docs/Rpm.md)
- [GainCompression](../msg_docs/GainCompression.md)
- [FailureDetectorStatus](../msg_docs/FailureDetectorStatus.md)
- [RateCtrlStatus](../msg_docs/RateCtrlStatus.md)
- [EstimatorSelectorStatus](../msg_docs/EstimatorSelectorStatus.md)
- [ParameterSetValueResponse](../msg_docs/ParameterSetValueResponse.md)
- [SensorsStatus](../msg_docs/SensorsStatus.md)
- [LoggerStatus](../msg_docs/LoggerStatus.md)
- [DronecanNodeStatus](../msg_docs/DronecanNodeStatus.md)
- [RaptorStatus](../msg_docs/RaptorStatus.md)
- [VehicleAngularVelocity](../msg_docs/VehicleAngularVelocity.md)
- [FuelTankStatus](../msg_docs/FuelTankStatus.md)
- [GeneratorStatus](../msg_docs/GeneratorStatus.md)
- [Px4ioStatus](../msg_docs/Px4ioStatus.md)
- [HeaterStatus](../msg_docs/HeaterStatus.md)
- [UlogStream](../msg_docs/UlogStream.md)
- [UavcanParameterRequest](../msg_docs/UavcanParameterRequest.md)
- [PwmInput](../msg_docs/PwmInput.md)
- [EventV0](../msg_docs/EventV0.md)
- [FollowTarget](../msg_docs/FollowTarget.md)
- [EstimatorBias3d](../msg_docs/EstimatorBias3d.md)
- [FigureEightStatus](../msg_docs/FigureEightStatus.md)
- [Ping](../msg_docs/Ping.md)
- [RcParameterMap](../msg_docs/RcParameterMap.md)
- [SensorGyroFifo](../msg_docs/SensorGyroFifo.md)
- [TaskStackInfo](../msg_docs/TaskStackInfo.md)
- [TiltrotorExtraControls](../msg_docs/TiltrotorExtraControls.md)
- [Airspeed](../msg_docs/Airspeed.md)
- [EscEepromWrite](../msg_docs/EscEepromWrite.md)
- [BatteryInfo](../msg_docs/BatteryInfo.md)
- [VehicleGlobalPositionV0](../msg_docs/VehicleGlobalPositionV0.md)
- [LoggerStatus](../msg_docs/LoggerStatus.md)
- [RtlTimeEstimate](../msg_docs/RtlTimeEstimate.md)
- [CellularStatus](../msg_docs/CellularStatus.md)
- [LandingTargetPose](../msg_docs/LandingTargetPose.md)
- [ParameterUpdate](../msg_docs/ParameterUpdate.md)
- [NavigatorMissionItem](../msg_docs/NavigatorMissionItem.md)
- [MavlinkLog](../msg_docs/MavlinkLog.md)
- [GpsInjectData](../msg_docs/GpsInjectData.md)
- [InputRc](../msg_docs/InputRc.md)
- [DebugVect](../msg_docs/DebugVect.md)
- [FixedWingLateralGuidanceStatus](../msg_docs/FixedWingLateralGuidanceStatus.md)
- [SensorAirflow](../msg_docs/SensorAirflow.md)
- [SatelliteInfo](../msg_docs/SatelliteInfo.md)
- [EscStatus](../msg_docs/EscStatus.md)
- [EstimatorEventFlags](../msg_docs/EstimatorEventFlags.md)
- [Vtx](../msg_docs/Vtx.md)
- [RangingBeacon](../msg_docs/RangingBeacon.md)
- [NeuralControl](../msg_docs/NeuralControl.md)
- [HoverThrustEstimate](../msg_docs/HoverThrustEstimate.md)
- [OrbitStatus](../msg_docs/OrbitStatus.md)
- [VehicleAirData](../msg_docs/VehicleAirData.md)
- [SensorsStatusImu](../msg_docs/SensorsStatusImu.md)
- [Rpm](../msg_docs/Rpm.md)
- [UavcanParameterValue](../msg_docs/UavcanParameterValue.md)
- [FixedWingRunwayControl](../msg_docs/FixedWingRunwayControl.md)
- [CameraCapture](../msg_docs/CameraCapture.md)
- [EstimatorBias](../msg_docs/EstimatorBias.md)
- [TuneControl](../msg_docs/TuneControl.md)
:::
+2 -2
View File
@@ -4,7 +4,7 @@ pageClass: is-wide-page
# EstimatorAidSource1d (UORB message)
**TOPICS:** estimator_aid_src_baro_hgt estimator_aid_src_ev_hgt estimator_aid_src_gnss_hgt estimator_aid_src_rng_hgt estimator_aid_src_airspeed estimator_aid_src_sideslip estimator_aid_src_fake_hgt estimator_aid_src_gnss_yaw estimator_aid_src_ev_yaw
**TOPICS:** estimator_aid_src_baro_hgt estimator_aid_src_ev_hgt estimator_aid_src_gnss_hgt estimator_aid_src_rng_hgt estimator_aid_src_ranging_beacon estimator_aid_src_airspeed estimator_aid_src_sideslip estimator_aid_src_fake_hgt estimator_aid_src_gnss_yaw estimator_aid_src_ev_yaw
## Fields
@@ -55,7 +55,7 @@ float32 test_ratio_filtered # signed filtered test ratio
bool innovation_rejected # true if the observation has been rejected
bool fused # true if the sample was successfully fused
# TOPICS estimator_aid_src_baro_hgt estimator_aid_src_ev_hgt estimator_aid_src_gnss_hgt estimator_aid_src_rng_hgt
# TOPICS estimator_aid_src_baro_hgt estimator_aid_src_ev_hgt estimator_aid_src_gnss_hgt estimator_aid_src_rng_hgt estimator_aid_src_ranging_beacon
# TOPICS estimator_aid_src_airspeed estimator_aid_src_sideslip
# TOPICS estimator_aid_src_fake_hgt
# TOPICS estimator_aid_src_gnss_yaw estimator_aid_src_ev_yaw
+72
View File
@@ -0,0 +1,72 @@
---
pageClass: is-wide-page
---
# RangingBeacon (UORB message)
Ranging beacon measurement data (e.g. LoRa, UWB).
**TOPICS:** ranging_beacon
## Fields
| Name | Type | Unit [Frame] | Range/Enum | Description |
| ---------------- | --------- | ------------ | --------------------- | ------------------------------------------- |
| timestamp | `uint64` | us | | time since system start |
| timestamp_sample | `uint64` | us | | the timestamp of the raw data |
| beacon_id | `uint8` | | |
| range | `float32` | m | | Range measurement |
| lat | `float64` | deg | | Latitude |
| lon | `float64` | deg | | Longitude |
| alt | `float32` | m | | Beacon altitude (frame defined in alt_type) |
| alt_type | `uint8` | | [ALT_TYPE](#ALT_TYPE) | Altitude frame for alt field |
| hacc | `float32` | m | | Groundbeacon horizontal accuracy |
| vacc | `float32` | m | | Groundbeacon vertical accuracy |
| sequence_nr | `uint8` | | |
| status | `uint8` | | |
| carrier_freq | `uint16` | MHz | | Carrier frequency |
| range_accuracy | `float32` | m | | Range accuracy estimate |
## Enums
### ALT_TYPE {#ALT_TYPE}
| Name | Type | Value | Description |
| ------------------------------------------- | ------- | ----- | ------------------------------------ |
| <a id="#ALT_TYPE_WGS84"></a> ALT_TYPE_WGS84 | `uint8` | 0 | Altitude above WGS84 ellipsoid |
| <a id="#ALT_TYPE_MSL"></a> ALT_TYPE_MSL | `uint8` | 1 | Altitude above Mean Sea Level (AMSL) |
## Source Message
[Source file (GitHub)](https://github.com/PX4/PX4-Autopilot/blob/main/msg/RangingBeacon.msg)
::: details Click here to see original file
```c
# Ranging beacon measurement data (e.g. LoRa, UWB)
uint64 timestamp # [us] time since system start
uint64 timestamp_sample # [us] the timestamp of the raw data
uint8 beacon_id
float32 range # [m] Range measurement
float64 lat # [deg] Latitude
float64 lon # [deg] Longitude
float32 alt # [m] Beacon altitude (frame defined in alt_type)
uint8 alt_type # [@enum ALT_TYPE] Altitude frame for alt field
uint8 ALT_TYPE_WGS84 = 0 # Altitude above WGS84 ellipsoid
uint8 ALT_TYPE_MSL = 1 # Altitude above Mean Sea Level (AMSL)
float32 hacc # [m] Groundbeacon horizontal accuracy
float32 vacc # [m] Groundbeacon vertical accuracy
uint8 sequence_nr
uint8 status
uint16 carrier_freq # [MHz] Carrier frequency
float32 range_accuracy # [m] Range accuracy estimate
# TOPICS ranging_beacon
```
:::
+1
View File
@@ -192,6 +192,7 @@ Graphs showing how these are used [can be found here](../middleware/uorb_graph.m
- [QshellReq](QshellReq.md)
- [QshellRetval](QshellRetval.md)
- [RadioStatus](RadioStatus.md)
- [RangingBeacon](RangingBeacon.md) — Ranging beacon measurement data (e.g. LoRa, UWB).
- [RateCtrlStatus](RateCtrlStatus.md)
- [RcChannels](RcChannels.md)
- [RcParameterMap](RcParameterMap.md)
+7 -1
View File
@@ -14,7 +14,13 @@
"docs:get_alt_sidebar_windows": "python ./scripts/gen_alt_sidebar.py",
"start": "yarn docs:dev",
"linkcheck": "markdown_link_checker_sc -r .. -d docs -e en -i assets",
"build_docs_metadata_ubuntu": "(cd .. && Tools/ci/metadata_sync.sh --generate && Tools/ci/metadata_sync.sh --sync) && echo 'NOTE: These metadata changes are for local testing only and do not need to be merged.'"
"build_docs_metadata_ubuntu": "(cd .. && Tools/ci/metadata_sync.sh --generate && Tools/ci/metadata_sync.sh --sync) && echo 'NOTE: These metadata changes are for local testing only and do not need to be merged.'",
"gen_fc_sections": "python3 ./scripts/fc_doc_generator/fc_doc_generator.py --apply",
"new_fc_doc": "python3 ./scripts/fc_doc_generator/fc_doc_generator.py --new-doc --since-version v1.18",
"check_fc_doc": "python3 ./scripts/fc_doc_generator/fc_doc_generator.py --check-doc",
"check_fc_docs": "python3 ./scripts/fc_doc_generator/fc_doc_generator.py --check-all",
"test_fc_doc": "python3 -m pytest scripts/fc_doc_generator/ -v",
"update_fc_snapshots": "python3 -m pytest scripts/fc_doc_generator/ -v --update-snapshots"
},
"dependencies": {
"@red-asuka/vitepress-plugin-tabs": "0.0.4",
File diff suppressed because one or more lines are too long
Binary file not shown.
File diff suppressed because one or more lines are too long
+156
View File
@@ -0,0 +1,156 @@
# fc_doc_generator
Auto-generates flight controller documentation sections for PX4-Autopilot
from board source files (`boards/<vendor>/<board>/`).
## What it does
Parses PX4 board C/Kconfig source files and generates Markdown sections
inserted into `docs/en/flight_controller/*.md` docs. Sections generated:
- `## Specifications` — processor, sensors, interfaces
- `## PWM Outputs` — timer groups, DShot/BDShot capability per output
- `## Serial` — UART → /dev/ttyS* mapping with labels and flow control
- `## Radio Control` — RC input protocols and ports
- `## GPS & Compass` — GPS/safety connector info
- `## Power` — power input ports and monitor type
- `## Telemetry Radios` — TELEM port listing
- `## SD Card` — presence/absence
## File layout
```
fc_doc_generator/
├── fc_doc_generator.py # Main script (~3700 lines)
├── pytest.ini # testpaths = tests
├── metadata/ # Per-board cached JSON (data + wizard overrides)
│ ├── <vendor>_<board>_data.json # Parsed board data
│ └── <vendor>_<board>_wizard.json # User-supplied wizard overrides
└── tests/
├── conftest.py # snapshot fixture + board_* path fixtures
├── fixtures/ # Minimal fake board trees
│ ├── stm32h7_all_dshot/
│ ├── stm32h7_mixed_io/
│ ├── stm32h7_ppm_shared/
│ ├── stm32h7_capture_channels/ # 8 regular + 8 initIOTimerChannelCapture outputs
│ ├── stm32f4_no_dshot/
│ └── imxrt_all_dshot/
├── snapshots/ # Expected markdown output (.md files)
├── test_parsers.py # Unit tests for parse_* functions
├── test_compute.py # Unit tests for compute_groups / compute_bdshot
├── test_generators.py # Snapshot tests for generate_*_section functions
├── test_helpers.py # Unit tests for helper functions
└── test_wizard.py # Tests for wizard cache and generate_full_template
```
## Running the script
Run from the repo root (requires the PX4 `boards/` tree to be present):
```sh
# Generate metadata JSON + fc_sections.md (no file edits):
python docs/scripts/fc_doc_generator/fc_doc_generator.py
# Apply sections to existing FC docs:
python docs/scripts/fc_doc_generator/fc_doc_generator.py --apply
# Apply a single section only:
python docs/scripts/fc_doc_generator/fc_doc_generator.py --apply --section pwm_outputs
# Apply all sections to a single doc only (stem or filename, implies --apply):
python docs/scripts/fc_doc_generator/fc_doc_generator.py --doc cuav_x25-evo.md
# Apply a single section to a single doc:
python docs/scripts/fc_doc_generator/fc_doc_generator.py --doc cuav_x25-evo.md --section pwm_outputs
# Create a new stub FC doc (interactive wizard):
python docs/scripts/fc_doc_generator/fc_doc_generator.py --new-doc
# Check a single doc against quality specs:
python docs/scripts/fc_doc_generator/fc_doc_generator.py --check-doc docs/en/flight_controller/holybro_kakuteh7.md
# Check all FC docs:
python docs/scripts/fc_doc_generator/fc_doc_generator.py --check-all
```
Via yarn (from the `docs/` directory): `cd docs && yarn gen_fc_sections`
## Running tests
From `docs/scripts/fc_doc_generator/`:
```sh
pytest # run all tests
pytest --update-snapshots # regenerate snapshot files after intentional changes
pytest tests/test_generators.py # specific test file
```
## Snapshot tests
Tests in `test_generators.py` use the `snapshot` fixture from `conftest.py`.
- Snapshot files live in `tests/snapshots/*.md`
- To add a new snapshot test: call `snapshot("my_name.md", result)` — then run `pytest --update-snapshots` to create the file
- After intentional generator changes: run `pytest --update-snapshots` then review diffs with `git diff tests/snapshots/`
## Extension pattern (adding a new section)
1. Write `parse_<thing>(board_path: Path) -> dict` and call it in `gather_board_data()`, merging into the entry
2. Write `generate_<thing>_section(board_key, entry) -> str`
3. Register both in `SECTION_GENERATORS` and `SECTION_ORDER`
4. Add snapshot tests in `test_generators.py`
5. Re-run `cd docs && yarn gen_fc_sections` to regenerate metadata JSON + `fc_sections.md`
## Key architecture notes
- **Parsers** read from `boards/<vendor>/<board>/` source files:
- `nuttx-config/nsh/defconfig` — chip family, enabled UARTs, SD card
- `src/board_config.h` — PWM count, IO board presence, GPIOs
- `src/timer_config.cpp` — timer groups and channels
- `default.px4board` — Kconfig board settings (serial labels, RC, GPS, drivers)
- `nuttx-config/include/board.h` — flow control GPIO definitions
- `init/rc.board_sensors` — sensor driver start commands; comments immediately
preceding a sensor start line are parsed for port labels (e.g.
`# External compass on GPS1/I2C1:``port_label: 'GPS1'` on that sensor entry);
power monitor drivers (INA226/INA228/INA238) are also captured in
`sensor_bus_info['power_monitor']`
- `src/i2c.cpp` — authoritative I2C bus routing:
`initI2CBusExternal(N)` = external connector; `initI2CBusInternal(N)` = on-board only.
When present, stored in `i2c_bus_config` and enables the detailed per-bus I2C output.
- **Metadata JSON** in `metadata/` caches parsed data (`*_data.json`) and
wizard-supplied overrides (`*_wizard.json`). Wizard data persists across runs
and provides connector types, sensor names, dimensions, etc.
- **`BOARD_TO_DOC`** — static mapping from `vendor/board` key to doc filename.
Boards mapped to `None` have no existing doc page yet.
- **Section insertion** — `_apply_section()` finds existing headings and
replaces them, or inserts before anchor headings like `## Where to Buy`.
The `specifications` section is special: it preserves hand-written content
and appends generated content as a `<!-- specifications-proposed -->` comment.
- **Wizard** — `--new-doc` runs an interactive prompts session and caches
answers to `metadata/<stem>_wizard.json` for future re-use.
## Conventions
- British English in doc output
- Asset files lowercase with underscores; asset folder named after doc stem
- Section generators emit embedded `<!-- *-source-data ... -->` JSON comments
so the raw parsed values are visible in the doc for manual verification
- `TODO:` placeholders are left wherever data cannot be auto-detected
## Development rules
**When modifying `fc_doc_generator.py`:**
1. All existing tests must pass: run `pytest` from `docs/scripts/fc_doc_generator/`
2. New functionality must have new tests (unit tests and/or snapshot tests as appropriate)
3. Update this `CLAUDE.md` if the change affects how to run the script, the architecture, extension patterns, or conventions
4. **Wizard JSON backward compatibility**`metadata/*_wizard.json` files are persisted user
data. A new tool version must work correctly with an old wizard JSON:
- **Adding** a new field to `_WIZARD_CACHE_FIELDS`: safe — missing keys are read via
`cached.get(...)` which returns `None`, triggering re-prompting.
- **Renaming** an existing field or **changing its structure** (e.g. the shape of
`i2c_buses_wizard` entries): **breaking change** — old data is silently lost or
misinterpreted. This must be explicitly flagged in the plan and requires a migration
strategy (e.g. read both old and new key names, or add a one-time upgrade step).
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,214 @@
{
"board": "3dr/ctrl-zero-h7-oem-revg",
"chip_family": "stm32h7",
"chip_model": "STM32H743",
"total_outputs": 8,
"has_io_board": false,
"io_outputs": 0,
"groups": [
{
"group": 1,
"timer": "Timer1",
"outputs": [
1,
2,
3,
4
],
"dshot": true,
"dshot_outputs": [
1,
2,
3,
4
],
"non_dshot_outputs": [],
"bdshot_outputs": [
1,
2,
3,
4
],
"bdshot_output_only": []
},
{
"group": 2,
"timer": "Timer4",
"outputs": [
5,
6
],
"dshot": true,
"dshot_outputs": [
5,
6
],
"non_dshot_outputs": [],
"bdshot_outputs": [
5,
6
],
"bdshot_output_only": []
},
{
"group": 3,
"timer": "Timer8",
"outputs": [
7,
8
],
"dshot": true,
"dshot_outputs": [
7,
8
],
"non_dshot_outputs": [],
"bdshot_outputs": [
7,
8
],
"bdshot_output_only": []
}
],
"serial_ports": [
{
"uart": "USART2",
"device": "/dev/ttyS0",
"label": "TELEM1",
"flow_control": true
},
{
"uart": "USART3",
"device": "/dev/ttyS1",
"label": "TELEM2",
"flow_control": true
},
{
"uart": "UART4",
"device": "/dev/ttyS2",
"label": "GPS1",
"flow_control": false
},
{
"uart": "USART6",
"device": "/dev/ttyS3",
"label": "",
"flow_control": false
},
{
"uart": "UART7",
"device": "/dev/ttyS4",
"label": "TELEM3",
"flow_control": false
},
{
"uart": "UART8",
"device": "/dev/ttyS5",
"label": "Debug Console",
"flow_control": false
}
],
"has_rc_input": true,
"has_common_rc": false,
"rc_serial_device": null,
"has_ppm_pin": true,
"ppm_shared_with_rc_serial": false,
"has_pps_capture": false,
"has_safety_switch": true,
"has_safety_led": false,
"has_buzzer": true,
"num_power_inputs": 1,
"has_redundant_power": false,
"has_dual_battery_monitoring": false,
"has_dronecan_power_input": false,
"power_monitor_type": "ina226",
"has_sd_card": true,
"has_ethernet": false,
"has_heater": false,
"sensor_imu_drivers": [
"BMI088",
"ICM-20602",
"ICM-20948"
],
"sensor_baro_drivers": [
"DPS310"
],
"sensor_mag_drivers": [],
"sensor_osd_drivers": [],
"sensor_bus_info": {
"imu": [
{
"name": "ICM-20602",
"bus_type": "SPI",
"bus_num": 1,
"external": false
},
{
"name": "BMI088",
"bus_type": "SPI",
"bus_num": 5,
"external": false
},
{
"name": "ICM-20948",
"bus_type": "SPI",
"bus_num": 1,
"external": false
}
],
"baro": [
{
"name": "DPS310",
"bus_type": "SPI",
"bus_num": 2,
"external": false
}
],
"mag": [],
"osd": []
},
"sensor_variant_info": {
"has_variants": false,
"unconditional": {
"imu": [
{
"name": "ICM-20602",
"bus_type": "SPI",
"bus_num": 1,
"external": false
},
{
"name": "BMI088",
"bus_type": "SPI",
"bus_num": 5,
"external": false
},
{
"name": "ICM-20948",
"bus_type": "SPI",
"bus_num": 1,
"external": false
}
],
"baro": [
{
"name": "DPS310",
"bus_type": "SPI",
"bus_num": 2,
"external": false
}
],
"mag": [],
"osd": []
},
"variants": {}
},
"num_i2c_buses": 3,
"num_spi_buses": 3,
"num_can_buses": 2,
"has_usb": true,
"doc_url": null,
"doc_file": null,
"doc_exists": false,
"documented": false
}
@@ -0,0 +1,282 @@
{
"board": "accton-godwit/ga1",
"chip_family": "stm32h7",
"chip_model": "STM32H753",
"total_outputs": 9,
"has_io_board": true,
"io_outputs": 8,
"groups": [
{
"group": 1,
"timer": "Timer5",
"outputs": [
1,
2,
3,
4
],
"dshot": true,
"dshot_outputs": [
1,
2,
3,
4
],
"non_dshot_outputs": [],
"bdshot_outputs": [
1,
2,
3,
4
],
"bdshot_output_only": []
},
{
"group": 2,
"timer": "Timer4",
"outputs": [
5,
6
],
"dshot": true,
"dshot_outputs": [
5,
6
],
"non_dshot_outputs": [],
"bdshot_outputs": [
5,
6
],
"bdshot_output_only": []
},
{
"group": 3,
"timer": "Timer12",
"outputs": [
7,
8
],
"dshot": false,
"dshot_outputs": [],
"non_dshot_outputs": [
7,
8
],
"bdshot_outputs": [],
"bdshot_output_only": []
},
{
"group": 4,
"timer": "Timer1",
"outputs": [
9
],
"dshot": false,
"dshot_outputs": [],
"non_dshot_outputs": [
9
],
"bdshot_outputs": [],
"bdshot_output_only": []
}
],
"serial_ports": [
{
"uart": "USART1",
"device": "/dev/ttyS0",
"label": "GPS1",
"flow_control": false
},
{
"uart": "USART2",
"device": "/dev/ttyS1",
"label": "TELEM3",
"flow_control": true
},
{
"uart": "USART3",
"device": "/dev/ttyS2",
"label": "Debug Console",
"flow_control": false
},
{
"uart": "UART4",
"device": "/dev/ttyS3",
"label": "EXT2",
"flow_control": false
},
{
"uart": "UART5",
"device": "/dev/ttyS4",
"label": "TELEM2",
"flow_control": false
},
{
"uart": "USART6",
"device": "/dev/ttyS5",
"label": "PX4IO",
"flow_control": false
},
{
"uart": "UART7",
"device": "/dev/ttyS6",
"label": "TELEM1",
"flow_control": true
},
{
"uart": "UART8",
"device": "/dev/ttyS7",
"label": "GPS2",
"flow_control": false
}
],
"has_rc_input": true,
"has_common_rc": false,
"rc_serial_device": null,
"has_ppm_pin": true,
"ppm_shared_with_rc_serial": false,
"has_pps_capture": false,
"has_safety_switch": true,
"has_safety_led": true,
"has_buzzer": true,
"num_power_inputs": 2,
"has_redundant_power": true,
"has_dual_battery_monitoring": true,
"has_dronecan_power_input": true,
"power_monitor_type": "ina238",
"has_sd_card": true,
"has_ethernet": true,
"has_heater": true,
"sensor_imu_drivers": [
"BMI088",
"ICM-42688P"
],
"sensor_baro_drivers": [
"BMP388",
"ICP-20100",
"MS5611"
],
"sensor_mag_drivers": [
"BMM150",
"IST8308",
"IST8310",
"MMC5983MA",
"RM3100"
],
"sensor_osd_drivers": [],
"sensor_bus_info": {
"imu": [
{
"name": "BMI088",
"bus_type": "SPI",
"bus_num": null,
"external": false
},
{
"name": "ICM-42688P",
"bus_type": "SPI",
"bus_num": 2,
"external": false
},
{
"name": "ICM-42688P",
"bus_type": "SPI",
"bus_num": 1,
"external": false
}
],
"baro": [
{
"name": "ICP-20100",
"bus_type": "I2C",
"bus_num": null,
"external": false
},
{
"name": "ICP-20100",
"bus_type": "I2C",
"bus_num": null,
"external": true
}
],
"mag": [
{
"name": "RM3100",
"bus_type": "I2C",
"bus_num": 4,
"external": false
},
{
"name": "IST8310",
"bus_type": "I2C",
"bus_num": 1,
"external": true
}
],
"osd": []
},
"sensor_variant_info": {
"has_variants": false,
"unconditional": {
"imu": [
{
"name": "BMI088",
"bus_type": "SPI",
"bus_num": null,
"external": false
},
{
"name": "ICM-42688P",
"bus_type": "SPI",
"bus_num": 2,
"external": false
},
{
"name": "ICM-42688P",
"bus_type": "SPI",
"bus_num": 1,
"external": false
}
],
"baro": [
{
"name": "ICP-20100",
"bus_type": "I2C",
"bus_num": null,
"external": false
},
{
"name": "ICP-20100",
"bus_type": "I2C",
"bus_num": null,
"external": true
}
],
"mag": [
{
"name": "RM3100",
"bus_type": "I2C",
"bus_num": 4,
"external": false
},
{
"name": "IST8310",
"bus_type": "I2C",
"bus_num": 1,
"external": true
}
],
"osd": []
},
"variants": {}
},
"num_i2c_buses": 4,
"num_spi_buses": 5,
"num_can_buses": 2,
"has_usb": true,
"doc_url": "https://docs.px4.io/main/en/flight_controller/accton-godwit_ga1",
"doc_file": "accton-godwit_ga1.md",
"doc_exists": true,
"documented": true
}
@@ -0,0 +1,158 @@
{
"board": "airmind/mindpx-v2",
"chip_family": "stm32f4",
"chip_model": "STM32F42",
"total_outputs": 8,
"has_io_board": false,
"io_outputs": 0,
"groups": [
{
"group": 1,
"timer": "Timer1",
"outputs": [
1,
2,
3,
4
],
"dshot": false,
"dshot_outputs": [],
"non_dshot_outputs": [
1,
2,
3,
4
],
"bdshot_outputs": [],
"bdshot_output_only": []
},
{
"group": 2,
"timer": "Timer4",
"outputs": [
5,
6,
7,
8
],
"dshot": false,
"dshot_outputs": [],
"non_dshot_outputs": [
5,
6,
7,
8
],
"bdshot_outputs": [],
"bdshot_output_only": []
}
],
"serial_ports": [],
"has_rc_input": true,
"has_common_rc": false,
"rc_serial_device": null,
"has_ppm_pin": true,
"ppm_shared_with_rc_serial": false,
"has_pps_capture": false,
"has_safety_switch": false,
"has_safety_led": false,
"has_buzzer": false,
"num_power_inputs": 1,
"has_redundant_power": false,
"has_dual_battery_monitoring": false,
"has_dronecan_power_input": false,
"power_monitor_type": "ina226",
"has_sd_card": true,
"has_ethernet": false,
"has_heater": false,
"sensor_imu_drivers": [
"ICM-20948",
"MPU-6000"
],
"sensor_baro_drivers": [
"MS5611"
],
"sensor_mag_drivers": [
"HMC5883L",
"QMC5883L"
],
"sensor_osd_drivers": [],
"sensor_bus_info": {
"imu": [
{
"name": "MPU-6000",
"bus_type": "SPI",
"bus_num": null,
"external": false
}
],
"baro": [
{
"name": "MS5611",
"bus_type": "SPI",
"bus_num": null,
"external": false
}
],
"mag": [
{
"name": "HMC5883L",
"bus_type": "I2C",
"bus_num": null,
"external": false
},
{
"name": "QMC5883L",
"bus_type": "I2C",
"bus_num": null,
"external": false
}
],
"osd": []
},
"sensor_variant_info": {
"has_variants": false,
"unconditional": {
"imu": [
{
"name": "MPU-6000",
"bus_type": "SPI",
"bus_num": null,
"external": false
}
],
"baro": [
{
"name": "MS5611",
"bus_type": "SPI",
"bus_num": null,
"external": false
}
],
"mag": [
{
"name": "HMC5883L",
"bus_type": "I2C",
"bus_num": null,
"external": false
},
{
"name": "QMC5883L",
"bus_type": "I2C",
"bus_num": null,
"external": false
}
],
"osd": []
},
"variants": {}
},
"num_i2c_buses": 2,
"num_spi_buses": 3,
"num_can_buses": 0,
"has_usb": true,
"doc_url": "https://docs.px4.io/main/en/flight_controller/mindpx",
"doc_file": "mindpx.md",
"doc_exists": true,
"documented": true
}
@@ -0,0 +1,249 @@
{
"board": "ark/cannode",
"chip_family": "stm32f4",
"chip_model": "STM32F412",
"total_outputs": 8,
"has_io_board": false,
"io_outputs": 0,
"groups": [
{
"group": 1,
"timer": "Timer2",
"outputs": [
1,
2,
3
],
"dshot": true,
"dshot_outputs": [
1,
2,
3
],
"non_dshot_outputs": [],
"bdshot_outputs": [],
"bdshot_output_only": []
},
{
"group": 2,
"timer": "Timer3",
"outputs": [
4,
5,
6,
7
],
"dshot": true,
"dshot_outputs": [
4,
5,
6,
7
],
"non_dshot_outputs": [],
"bdshot_outputs": [],
"bdshot_output_only": []
},
{
"group": 3,
"timer": "Timer4",
"outputs": [
8
],
"dshot": true,
"dshot_outputs": [
8
],
"non_dshot_outputs": [],
"bdshot_outputs": [],
"bdshot_output_only": []
}
],
"serial_ports": [],
"has_rc_input": false,
"has_common_rc": false,
"rc_serial_device": null,
"has_ppm_pin": false,
"ppm_shared_with_rc_serial": false,
"has_pps_capture": false,
"has_safety_switch": false,
"has_safety_led": false,
"has_buzzer": false,
"num_power_inputs": 1,
"has_redundant_power": false,
"has_dual_battery_monitoring": false,
"has_dronecan_power_input": false,
"power_monitor_type": null,
"has_sd_card": false,
"has_ethernet": false,
"has_heater": false,
"sensor_imu_drivers": [
"ADIS16507",
"ICM-20948",
"ICM-42688P"
],
"sensor_baro_drivers": [
"SPL06"
],
"sensor_mag_drivers": [
"HMC5883L",
"IST8308",
"IST8310",
"IIS2MDC",
"LIS3MDL",
"QMC5883L",
"RM3100",
"AK09916"
],
"sensor_osd_drivers": [],
"sensor_bus_info": {
"imu": [
{
"name": "ICM-42688P",
"bus_type": "SPI",
"bus_num": null,
"external": false
}
],
"baro": [
{
"name": "SPL06",
"bus_type": "I2C",
"bus_num": null,
"external": true
}
],
"mag": [
{
"name": "HMC5883L",
"bus_type": "I2C",
"bus_num": null,
"external": true
},
{
"name": "IST8308",
"bus_type": "I2C",
"bus_num": null,
"external": true
},
{
"name": "IST8310",
"bus_type": "I2C",
"bus_num": null,
"external": true
},
{
"name": "IIS2MDC",
"bus_type": "I2C",
"bus_num": null,
"external": true
},
{
"name": "LIS3MDL",
"bus_type": "I2C",
"bus_num": null,
"external": true
},
{
"name": "QMC5883L",
"bus_type": "I2C",
"bus_num": null,
"external": true
},
{
"name": "RM3100",
"bus_type": "I2C",
"bus_num": null,
"external": true
},
{
"name": "AK09916",
"bus_type": "I2C",
"bus_num": null,
"external": true
}
],
"osd": []
},
"sensor_variant_info": {
"has_variants": false,
"unconditional": {
"imu": [
{
"name": "ICM-42688P",
"bus_type": "SPI",
"bus_num": null,
"external": false
}
],
"baro": [
{
"name": "SPL06",
"bus_type": "I2C",
"bus_num": null,
"external": true
}
],
"mag": [
{
"name": "HMC5883L",
"bus_type": "I2C",
"bus_num": null,
"external": true
},
{
"name": "IST8308",
"bus_type": "I2C",
"bus_num": null,
"external": true
},
{
"name": "IST8310",
"bus_type": "I2C",
"bus_num": null,
"external": true
},
{
"name": "IIS2MDC",
"bus_type": "I2C",
"bus_num": null,
"external": true
},
{
"name": "LIS3MDL",
"bus_type": "I2C",
"bus_num": null,
"external": true
},
{
"name": "QMC5883L",
"bus_type": "I2C",
"bus_num": null,
"external": true
},
{
"name": "RM3100",
"bus_type": "I2C",
"bus_num": null,
"external": true
},
{
"name": "AK09916",
"bus_type": "I2C",
"bus_num": null,
"external": true
}
],
"osd": []
},
"variants": {}
},
"num_i2c_buses": 1,
"num_spi_buses": 2,
"num_can_buses": 1,
"has_usb": false,
"doc_url": null,
"doc_file": null,
"doc_exists": false,
"documented": false
}
@@ -0,0 +1,245 @@
{
"board": "ark/fmu-v6x",
"chip_family": "stm32h7",
"chip_model": "STM32H753",
"total_outputs": 9,
"has_io_board": true,
"io_outputs": 8,
"groups": [
{
"group": 1,
"timer": "Timer5",
"outputs": [
1,
2,
3,
4
],
"dshot": true,
"dshot_outputs": [
1,
2,
3,
4
],
"non_dshot_outputs": [],
"bdshot_outputs": [
1,
2,
3,
4
],
"bdshot_output_only": []
},
{
"group": 2,
"timer": "Timer4",
"outputs": [
5,
6
],
"dshot": true,
"dshot_outputs": [
5,
6
],
"non_dshot_outputs": [],
"bdshot_outputs": [
5,
6
],
"bdshot_output_only": []
},
{
"group": 3,
"timer": "Timer12",
"outputs": [
7,
8
],
"dshot": false,
"dshot_outputs": [],
"non_dshot_outputs": [
7,
8
],
"bdshot_outputs": [],
"bdshot_output_only": []
},
{
"group": 4,
"timer": "Timer1",
"outputs": [
9
],
"dshot": false,
"dshot_outputs": [],
"non_dshot_outputs": [
9
],
"bdshot_outputs": [],
"bdshot_output_only": []
}
],
"serial_ports": [
{
"uart": "USART1",
"device": "/dev/ttyS0",
"label": "GPS1",
"flow_control": false
},
{
"uart": "USART2",
"device": "/dev/ttyS1",
"label": "TELEM3",
"flow_control": true
},
{
"uart": "USART3",
"device": "/dev/ttyS2",
"label": "Debug Console",
"flow_control": false
},
{
"uart": "UART4",
"device": "/dev/ttyS3",
"label": "TELEM4",
"flow_control": false
},
{
"uart": "UART5",
"device": "/dev/ttyS4",
"label": "TELEM2",
"flow_control": false
},
{
"uart": "USART6",
"device": "/dev/ttyS5",
"label": "PX4IO/RC",
"flow_control": false
},
{
"uart": "UART7",
"device": "/dev/ttyS6",
"label": "TELEM1",
"flow_control": true
},
{
"uart": "UART8",
"device": "/dev/ttyS7",
"label": "GPS2",
"flow_control": false
}
],
"has_rc_input": false,
"has_common_rc": true,
"rc_serial_device": "/dev/ttyS5",
"has_ppm_pin": true,
"ppm_shared_with_rc_serial": false,
"has_pps_capture": true,
"has_safety_switch": true,
"has_safety_led": true,
"has_buzzer": true,
"num_power_inputs": 2,
"has_redundant_power": true,
"has_dual_battery_monitoring": true,
"has_dronecan_power_input": true,
"power_monitor_type": "ina238",
"has_sd_card": true,
"has_ethernet": true,
"has_heater": true,
"sensor_imu_drivers": [
"ADIS16507",
"ICM-42688P",
"IIM-42652"
],
"sensor_baro_drivers": [
"BMP388"
],
"sensor_mag_drivers": [
"BMM150",
"IST8310",
"LIS3MDL",
"RM3100",
"IIS2MDC"
],
"sensor_osd_drivers": [],
"sensor_bus_info": {
"imu": [],
"baro": [
{
"name": "BMP388",
"bus_type": "I2C",
"bus_num": null,
"external": false
}
],
"mag": [
{
"name": "BMM150",
"bus_type": "I2C",
"bus_num": null,
"external": false
}
],
"osd": []
},
"sensor_variant_info": {
"has_variants": true,
"unconditional": {
"imu": [],
"baro": [
{
"name": "BMP388",
"bus_type": "I2C",
"bus_num": null,
"external": false
}
],
"mag": [
{
"name": "BMM150",
"bus_type": "I2C",
"bus_num": null,
"external": false
}
],
"osd": []
},
"variants": {
"ARKV6X000": {
"imu": [
{
"name": "IIM-42652",
"bus_type": "SPI",
"bus_num": 1,
"external": false
},
{
"name": "ICM-42688P",
"bus_type": "SPI",
"bus_num": 2,
"external": false
},
{
"name": "ICM-42688P",
"bus_type": "SPI",
"bus_num": 3,
"external": false
}
],
"baro": [],
"mag": [],
"osd": []
}
}
},
"num_i2c_buses": 4,
"num_spi_buses": 5,
"num_can_buses": 2,
"has_usb": true,
"doc_url": "https://docs.px4.io/main/en/flight_controller/ark_v6x",
"doc_file": "ark_v6x.md",
"doc_exists": true,
"documented": true
}
@@ -0,0 +1,203 @@
{
"board": "ark/fpv",
"chip_family": "stm32h7",
"chip_model": "STM32H743",
"total_outputs": 9,
"has_io_board": false,
"io_outputs": 0,
"groups": [
{
"group": 1,
"timer": "Timer5",
"outputs": [
1,
2,
3,
4
],
"dshot": true,
"dshot_outputs": [
1,
2,
3,
4
],
"non_dshot_outputs": [],
"bdshot_outputs": [
1,
2,
3,
4
],
"bdshot_output_only": []
},
{
"group": 2,
"timer": "Timer8",
"outputs": [
5,
6,
7,
8
],
"dshot": true,
"dshot_outputs": [
5,
6,
7,
8
],
"non_dshot_outputs": [],
"bdshot_outputs": [
5,
6,
7,
8
],
"bdshot_output_only": []
},
{
"group": 3,
"timer": "Timer4",
"outputs": [
9
],
"dshot": false,
"dshot_outputs": [],
"non_dshot_outputs": [
9
],
"bdshot_outputs": [],
"bdshot_output_only": []
}
],
"serial_ports": [
{
"uart": "USART1",
"device": "/dev/ttyS0",
"label": "GPS1",
"flow_control": false
},
{
"uart": "USART2",
"device": "/dev/ttyS1",
"label": "TELEM3",
"flow_control": false
},
{
"uart": "USART3",
"device": "/dev/ttyS2",
"label": "Debug Console",
"flow_control": false
},
{
"uart": "UART4",
"device": "/dev/ttyS3",
"label": "TELEM4",
"flow_control": false
},
{
"uart": "UART5",
"device": "/dev/ttyS4",
"label": "TELEM2",
"flow_control": false
},
{
"uart": "USART6",
"device": "/dev/ttyS5",
"label": "RC",
"flow_control": false
},
{
"uart": "UART7",
"device": "/dev/ttyS6",
"label": "TELEM1",
"flow_control": true
}
],
"has_rc_input": false,
"has_common_rc": true,
"rc_serial_device": "/dev/ttyS5",
"has_ppm_pin": false,
"ppm_shared_with_rc_serial": false,
"has_pps_capture": false,
"has_safety_switch": false,
"has_safety_led": false,
"has_buzzer": false,
"num_power_inputs": 1,
"has_redundant_power": false,
"has_dual_battery_monitoring": false,
"has_dronecan_power_input": false,
"power_monitor_type": "analog",
"has_sd_card": true,
"has_ethernet": false,
"has_heater": true,
"sensor_imu_drivers": [],
"sensor_baro_drivers": [
"BMP388"
],
"sensor_mag_drivers": [
"BMM150",
"HMC5883L",
"QMC5883L",
"IST8308",
"IST8310",
"LIS3MDL",
"LSM303AGR",
"RM3100",
"IIS2MDC"
],
"sensor_osd_drivers": [],
"sensor_bus_info": {
"imu": [],
"baro": [
{
"name": "BMP388",
"bus_type": "I2C",
"bus_num": 2,
"external": false
}
],
"mag": [
{
"name": "IIS2MDC",
"bus_type": "I2C",
"bus_num": 4,
"external": false
}
],
"osd": []
},
"sensor_variant_info": {
"has_variants": false,
"unconditional": {
"imu": [],
"baro": [
{
"name": "BMP388",
"bus_type": "I2C",
"bus_num": 2,
"external": false
}
],
"mag": [
{
"name": "IIS2MDC",
"bus_type": "I2C",
"bus_num": 4,
"external": false
}
],
"osd": []
},
"variants": {}
},
"num_i2c_buses": 3,
"num_spi_buses": 2,
"num_can_buses": 1,
"has_usb": true,
"doc_url": "https://docs.px4.io/main/en/flight_controller/ark_fpv",
"doc_file": "ark_fpv.md",
"doc_exists": true,
"documented": true
}
@@ -0,0 +1,208 @@
{
"board": "ark/pi6x",
"chip_family": "stm32h7",
"chip_model": "STM32H743",
"total_outputs": 8,
"has_io_board": false,
"io_outputs": 0,
"groups": [
{
"group": 1,
"timer": "Timer5",
"outputs": [
1,
2,
3,
4
],
"dshot": true,
"dshot_outputs": [
1,
2,
3,
4
],
"non_dshot_outputs": [],
"bdshot_outputs": [
1,
2,
3,
4
],
"bdshot_output_only": []
},
{
"group": 2,
"timer": "Timer4",
"outputs": [
5,
6
],
"dshot": true,
"dshot_outputs": [
5,
6
],
"non_dshot_outputs": [],
"bdshot_outputs": [
5,
6
],
"bdshot_output_only": []
},
{
"group": 3,
"timer": "Timer12",
"outputs": [
7,
8
],
"dshot": false,
"dshot_outputs": [],
"non_dshot_outputs": [
7,
8
],
"bdshot_outputs": [],
"bdshot_output_only": []
}
],
"serial_ports": [
{
"uart": "USART1",
"device": "/dev/ttyS0",
"label": "GPS1",
"flow_control": false
},
{
"uart": "USART3",
"device": "/dev/ttyS1",
"label": "Debug Console",
"flow_control": false
},
{
"uart": "UART4",
"device": "/dev/ttyS2",
"label": "TELEM4",
"flow_control": false
},
{
"uart": "UART5",
"device": "/dev/ttyS3",
"label": "TELEM2",
"flow_control": false
},
{
"uart": "USART6",
"device": "/dev/ttyS4",
"label": "RC",
"flow_control": false
},
{
"uart": "UART7",
"device": "/dev/ttyS5",
"label": "TELEM1",
"flow_control": true
}
],
"has_rc_input": false,
"has_common_rc": true,
"rc_serial_device": "/dev/ttyS4",
"has_ppm_pin": false,
"ppm_shared_with_rc_serial": false,
"has_pps_capture": false,
"has_safety_switch": false,
"has_safety_led": false,
"has_buzzer": true,
"num_power_inputs": 1,
"has_redundant_power": false,
"has_dual_battery_monitoring": false,
"has_dronecan_power_input": true,
"power_monitor_type": "ina226",
"has_sd_card": true,
"has_ethernet": false,
"has_heater": true,
"sensor_imu_drivers": [
"ICM-42688P"
],
"sensor_baro_drivers": [
"BMP388"
],
"sensor_mag_drivers": [
"MMC5983MA",
"IIS2MDC"
],
"sensor_osd_drivers": [],
"sensor_bus_info": {
"imu": [],
"baro": [
{
"name": "BMP388",
"bus_type": "I2C",
"bus_num": 4,
"external": false
}
],
"mag": [
{
"name": "MMC5983MA",
"bus_type": "I2C",
"bus_num": 4,
"external": false
}
],
"osd": []
},
"sensor_variant_info": {
"has_variants": true,
"unconditional": {
"imu": [],
"baro": [
{
"name": "BMP388",
"bus_type": "I2C",
"bus_num": 4,
"external": false
}
],
"mag": [
{
"name": "MMC5983MA",
"bus_type": "I2C",
"bus_num": 4,
"external": false
}
],
"osd": []
},
"variants": {
"ARKPI6X000": {
"imu": [
{
"name": "ICM-42688P",
"bus_type": "SPI",
"bus_num": 1,
"external": false
},
{
"name": "ICM-42688P",
"bus_type": "SPI",
"bus_num": 2,
"external": false
}
],
"baro": [],
"mag": [],
"osd": []
}
}
},
"num_i2c_buses": 3,
"num_spi_buses": 4,
"num_can_buses": 1,
"has_usb": true,
"doc_url": "https://docs.px4.io/main/en/flight_controller/ark_pi6x",
"doc_file": "ark_pi6x.md",
"doc_exists": true,
"documented": true
}
@@ -0,0 +1,70 @@
{
"manufacturer": "Arkin Labs",
"product": "A2M6X",
"fmu_version": null,
"since_version": "v1.18",
"manufacturer_url": "TODO",
"rc_ports_wizard": [
{
"label": "TODO: RC port label",
"side": "IO"
},
{
"label": "PPM",
"side": "IO",
"ppm_only": true
}
],
"gps_ports_wizard": [
{
"port_key": "GPS1",
"label": "GPS1",
"pixhawk_standard": true,
"full_port": true
},
{
"port_key": "GPS2",
"label": "GPS2",
"pixhawk_standard": true,
"full_port": false
}
],
"power_ports_wizard": [
{
"label": "POWER",
"connector_type": "TODO: connector type",
"monitor_type": "analog"
},
{
"label": "POWER 2",
"connector_type": "TODO: connector type",
"monitor_type": "dronecan"
}
],
"overview_wizard": {
"imu": [
"ADIS16470",
"BMI088",
"ICM-20602",
"ICM-20649",
"ICM-20948",
"ICM-42670P",
"ICM-42688P",
"ICM-45686",
"IIM-42652"
],
"baro": [
"BMP388",
"ICP-20100",
"MS5611"
],
"mag": null,
"osd": null,
"dimensions_mm": null,
"weight_g": null,
"voltage_range": null,
"usb_connector": null,
"num_additional_adc_inputs": null,
"sensor_variant_labels": null
}
}
@@ -0,0 +1,72 @@
{
"manufacturer": "Arkin Labs",
"product": "AeroMind 6x",
"board": "arkin/a2m6x",
"fmu_version": null,
"since_version": "v1.18",
"manufacturer_url": "https://www.arkinlabs.in/aeromind-6x",
"rc_ports_wizard": [
{
"label": "DSM",
"side": "IO"
},
{
"label": "PPM",
"side": "IO",
"ppm_only": true
}
],
"gps_ports_wizard": [
{
"port_key": "GPS1",
"label": "GPS & SAFETY",
"pixhawk_standard": true,
"full_port": true
},
{
"port_key": "GPS2",
"label": "GPS 2",
"pixhawk_standard": true,
"full_port": false
}
],
"power_ports_wizard": [
{
"label": "POWER 1",
"connector_type": "TODOCONNECTORTYPE",
"monitor_type": "analog"
},
{
"label": "POWER 2",
"connector_type": "TODOCONNECTORTYPE",
"monitor_type": "dronecan"
}
],
"overview_wizard": {
"imu": [
"ICM-45686",
"ICM-45686",
"ICM-45686"
],
"baro": [
"ICP-20100",
"ICP-20100"
],
"mag": [
"RM3100"
],
"osd": null,
"width_mm": "46",
"length_mm": "94",
"height_mm": "38",
"weight_g": 150.0,
"min_voltage": null,
"max_voltage": "6V",
"usb_connectors": [
"USB-C",
"JST GH"
],
"num_additional_adc_inputs": null,
"sensor_variant_labels": null
}
}
@@ -0,0 +1,152 @@
{
"board": "atl/mantis-edu",
"chip_family": "stm32f7",
"chip_model": "STM32F765",
"total_outputs": null,
"has_io_board": false,
"io_outputs": 0,
"groups": [],
"serial_ports": [
{
"uart": "USART1",
"device": "/dev/ttyS0",
"label": "",
"flow_control": false
},
{
"uart": "USART2",
"device": "/dev/ttyS1",
"label": "",
"flow_control": true
},
{
"uart": "USART3",
"device": "/dev/ttyS2",
"label": "",
"flow_control": true
},
{
"uart": "UART4",
"device": "/dev/ttyS3",
"label": "",
"flow_control": false
},
{
"uart": "UART5",
"device": "/dev/ttyS4",
"label": "",
"flow_control": false
},
{
"uart": "USART6",
"device": "/dev/ttyS5",
"label": "",
"flow_control": true
},
{
"uart": "UART7",
"device": "/dev/ttyS6",
"label": "",
"flow_control": false
},
{
"uart": "UART8",
"device": "/dev/ttyS7",
"label": "Debug Console",
"flow_control": false
}
],
"has_rc_input": false,
"has_common_rc": false,
"rc_serial_device": null,
"has_ppm_pin": false,
"ppm_shared_with_rc_serial": false,
"has_pps_capture": false,
"has_safety_switch": false,
"has_safety_led": false,
"has_buzzer": false,
"num_power_inputs": 1,
"has_redundant_power": false,
"has_dual_battery_monitoring": false,
"has_dronecan_power_input": false,
"power_monitor_type": "analog",
"has_sd_card": true,
"has_ethernet": false,
"has_heater": false,
"sensor_imu_drivers": [
"ICM-20602"
],
"sensor_baro_drivers": [
"MPC2520"
],
"sensor_mag_drivers": [
"IST8310"
],
"sensor_osd_drivers": [],
"sensor_bus_info": {
"imu": [
{
"name": "ICM-20602",
"bus_type": "SPI",
"bus_num": 1,
"external": false
}
],
"baro": [
{
"name": "MPC2520",
"bus_type": "I2C",
"bus_num": 4,
"external": false
}
],
"mag": [
{
"name": "IST8310",
"bus_type": "I2C",
"bus_num": 2,
"external": false
}
],
"osd": []
},
"sensor_variant_info": {
"has_variants": false,
"unconditional": {
"imu": [
{
"name": "ICM-20602",
"bus_type": "SPI",
"bus_num": 1,
"external": false
}
],
"baro": [
{
"name": "MPC2520",
"bus_type": "I2C",
"bus_num": 4,
"external": false
}
],
"mag": [
{
"name": "IST8310",
"bus_type": "I2C",
"bus_num": 2,
"external": false
}
],
"osd": []
},
"variants": {}
},
"num_i2c_buses": 2,
"num_spi_buses": 2,
"num_can_buses": 0,
"has_usb": true,
"doc_url": null,
"doc_file": null,
"doc_exists": false,
"documented": false
}
@@ -0,0 +1,267 @@
{
"board": "auterion/fmu-v6s",
"chip_family": "stm32h7",
"chip_model": "STM32H743",
"total_outputs": 10,
"has_io_board": false,
"io_outputs": 0,
"groups": [
{
"group": 1,
"timer": "Timer1",
"outputs": [
1,
2,
3,
4
],
"dshot": true,
"dshot_outputs": [
1,
2,
3,
4
],
"non_dshot_outputs": [],
"bdshot_outputs": [
1,
2,
3,
4
],
"bdshot_output_only": []
},
{
"group": 2,
"timer": "Timer3",
"outputs": [
5,
6,
7,
8
],
"dshot": true,
"dshot_outputs": [
5,
6,
7,
8
],
"non_dshot_outputs": [],
"bdshot_outputs": [
5,
6,
7,
8
],
"bdshot_output_only": []
},
{
"group": 3,
"timer": "Timer5",
"outputs": [
9
],
"dshot": false,
"dshot_outputs": [],
"non_dshot_outputs": [
9
],
"bdshot_outputs": [],
"bdshot_output_only": []
},
{
"group": 4,
"timer": "Timer8",
"outputs": [
10
],
"dshot": false,
"dshot_outputs": [],
"non_dshot_outputs": [
10
],
"bdshot_outputs": [],
"bdshot_output_only": []
}
],
"serial_ports": [
{
"uart": "USART1",
"device": "/dev/ttyS0",
"label": "TELEM1",
"flow_control": true
},
{
"uart": "USART2",
"device": "/dev/ttyS1",
"label": "Debug Console",
"flow_control": true
},
{
"uart": "USART3",
"device": "/dev/ttyS2",
"label": "TELEM2",
"flow_control": false
},
{
"uart": "UART4",
"device": "/dev/ttyS3",
"label": "",
"flow_control": false
},
{
"uart": "UART5",
"device": "/dev/ttyS4",
"label": "RC",
"flow_control": false
},
{
"uart": "UART7",
"device": "/dev/ttyS5",
"label": "",
"flow_control": false
},
{
"uart": "UART8",
"device": "/dev/ttyS6",
"label": "GPS1",
"flow_control": false
}
],
"has_rc_input": false,
"has_common_rc": true,
"rc_serial_device": "/dev/ttyS4",
"has_ppm_pin": false,
"ppm_shared_with_rc_serial": false,
"has_pps_capture": true,
"has_safety_switch": false,
"has_safety_led": false,
"has_buzzer": false,
"num_power_inputs": 1,
"has_redundant_power": false,
"has_dual_battery_monitoring": false,
"has_dronecan_power_input": false,
"power_monitor_type": "ina238",
"has_sd_card": true,
"has_ethernet": true,
"has_heater": false,
"sensor_imu_drivers": [
"BMI088"
],
"sensor_baro_drivers": [
"BMP388"
],
"sensor_mag_drivers": [
"BMM150",
"BMM350",
"IST8310"
],
"sensor_osd_drivers": [],
"sensor_bus_info": {
"imu": [
{
"name": "BMI088",
"bus_type": "SPI",
"bus_num": null,
"external": false
}
],
"baro": [
{
"name": "BMP388",
"bus_type": "I2C",
"bus_num": 4,
"external": false
}
],
"mag": [
{
"name": "IST8310",
"bus_type": "I2C",
"bus_num": 1,
"external": true
}
],
"osd": []
},
"sensor_variant_info": {
"has_variants": true,
"unconditional": {
"imu": [
{
"name": "BMI088",
"bus_type": "SPI",
"bus_num": null,
"external": false
}
],
"baro": [
{
"name": "BMP388",
"bus_type": "I2C",
"bus_num": 4,
"external": false
}
],
"mag": [
{
"name": "IST8310",
"bus_type": "I2C",
"bus_num": 1,
"external": true
}
],
"osd": []
},
"variants": {
"V6S013": {
"imu": [],
"baro": [],
"mag": [
{
"name": "BMM150",
"bus_type": "I2C",
"bus_num": null,
"external": false
}
],
"osd": []
},
"V6S015": {
"imu": [],
"baro": [],
"mag": [
{
"name": "BMM150",
"bus_type": "I2C",
"bus_num": null,
"external": false
}
],
"osd": []
},
"__other__": {
"imu": [],
"baro": [],
"mag": [
{
"name": "BMM350",
"bus_type": "I2C",
"bus_num": null,
"external": false
}
],
"osd": []
}
}
},
"num_i2c_buses": 2,
"num_spi_buses": 2,
"num_can_buses": 1,
"has_usb": false,
"doc_url": null,
"doc_file": null,
"doc_exists": false,
"documented": false
}
@@ -0,0 +1,278 @@
{
"board": "auterion/fmu-v6x",
"chip_family": "stm32h7",
"chip_model": "STM32H753",
"total_outputs": 9,
"has_io_board": true,
"io_outputs": 8,
"groups": [
{
"group": 1,
"timer": "Timer5",
"outputs": [
1,
2,
3,
4
],
"dshot": true,
"dshot_outputs": [
1,
2,
3,
4
],
"non_dshot_outputs": [],
"bdshot_outputs": [
1,
2,
3,
4
],
"bdshot_output_only": []
},
{
"group": 2,
"timer": "Timer4",
"outputs": [
5,
6
],
"dshot": true,
"dshot_outputs": [
5,
6
],
"non_dshot_outputs": [],
"bdshot_outputs": [
5,
6
],
"bdshot_output_only": []
},
{
"group": 3,
"timer": "Timer12",
"outputs": [
7,
8
],
"dshot": false,
"dshot_outputs": [],
"non_dshot_outputs": [
7,
8
],
"bdshot_outputs": [],
"bdshot_output_only": []
},
{
"group": 4,
"timer": "Timer1",
"outputs": [
9
],
"dshot": false,
"dshot_outputs": [],
"non_dshot_outputs": [
9
],
"bdshot_outputs": [],
"bdshot_output_only": []
}
],
"serial_ports": [
{
"uart": "USART1",
"device": "/dev/ttyS0",
"label": "GPS1",
"flow_control": false
},
{
"uart": "USART2",
"device": "/dev/ttyS1",
"label": "TELEM3",
"flow_control": true
},
{
"uart": "USART3",
"device": "/dev/ttyS2",
"label": "Debug Console",
"flow_control": false
},
{
"uart": "UART4",
"device": "/dev/ttyS3",
"label": "EXT2",
"flow_control": false
},
{
"uart": "UART5",
"device": "/dev/ttyS4",
"label": "TELEM2",
"flow_control": false
},
{
"uart": "USART6",
"device": "/dev/ttyS5",
"label": "PX4IO/RC",
"flow_control": false
},
{
"uart": "UART7",
"device": "/dev/ttyS6",
"label": "TELEM1",
"flow_control": true
},
{
"uart": "UART8",
"device": "/dev/ttyS7",
"label": "GPS2",
"flow_control": false
}
],
"has_rc_input": false,
"has_common_rc": true,
"rc_serial_device": "/dev/ttyS5",
"has_ppm_pin": true,
"ppm_shared_with_rc_serial": false,
"has_pps_capture": true,
"has_safety_switch": true,
"has_safety_led": true,
"has_buzzer": true,
"num_power_inputs": 2,
"has_redundant_power": true,
"has_dual_battery_monitoring": true,
"has_dronecan_power_input": true,
"power_monitor_type": "ina238",
"has_sd_card": true,
"has_ethernet": true,
"has_heater": false,
"sensor_imu_drivers": [
"BMI088",
"ICM-20602",
"ICM-42688P"
],
"sensor_baro_drivers": [
"BMP388"
],
"sensor_mag_drivers": [
"BMM150",
"IST8310"
],
"sensor_osd_drivers": [],
"sensor_bus_info": {
"imu": [
{
"name": "BMI088",
"bus_type": "SPI",
"bus_num": null,
"external": false
},
{
"name": "ICM-42688P",
"bus_type": "SPI",
"bus_num": null,
"external": false
},
{
"name": "ICM-20602",
"bus_type": "SPI",
"bus_num": null,
"external": false
}
],
"baro": [
{
"name": "BMP388",
"bus_type": "I2C",
"bus_num": null,
"external": false
},
{
"name": "BMP388",
"bus_type": "I2C",
"bus_num": null,
"external": true
}
],
"mag": [
{
"name": "BMM150",
"bus_type": "I2C",
"bus_num": null,
"external": false
},
{
"name": "IST8310",
"bus_type": "I2C",
"bus_num": 1,
"external": true
}
],
"osd": []
},
"sensor_variant_info": {
"has_variants": false,
"unconditional": {
"imu": [
{
"name": "BMI088",
"bus_type": "SPI",
"bus_num": null,
"external": false
},
{
"name": "ICM-42688P",
"bus_type": "SPI",
"bus_num": null,
"external": false
},
{
"name": "ICM-20602",
"bus_type": "SPI",
"bus_num": null,
"external": false
}
],
"baro": [
{
"name": "BMP388",
"bus_type": "I2C",
"bus_num": null,
"external": false
},
{
"name": "BMP388",
"bus_type": "I2C",
"bus_num": null,
"external": true
}
],
"mag": [
{
"name": "BMM150",
"bus_type": "I2C",
"bus_num": null,
"external": false
},
{
"name": "IST8310",
"bus_type": "I2C",
"bus_num": 1,
"external": true
}
],
"osd": []
},
"variants": {}
},
"num_i2c_buses": 4,
"num_spi_buses": 5,
"num_can_buses": 2,
"has_usb": true,
"doc_url": null,
"doc_file": null,
"doc_exists": false,
"documented": false
}
@@ -0,0 +1,213 @@
{
"board": "av/x-v1",
"chip_family": "stm32f7",
"chip_model": "STM32F777",
"total_outputs": 9,
"has_io_board": false,
"io_outputs": 0,
"groups": [
{
"group": 1,
"timer": "Timer1",
"outputs": [
1,
2,
3,
4
],
"dshot": false,
"dshot_outputs": [],
"non_dshot_outputs": [
1,
2,
3,
4
],
"bdshot_outputs": [],
"bdshot_output_only": []
},
{
"group": 2,
"timer": "Timer2",
"outputs": [
5
],
"dshot": false,
"dshot_outputs": [],
"non_dshot_outputs": [
5
],
"bdshot_outputs": [],
"bdshot_output_only": []
},
{
"group": 3,
"timer": "Timer8",
"outputs": [
6
],
"dshot": false,
"dshot_outputs": [],
"non_dshot_outputs": [
6
],
"bdshot_outputs": [],
"bdshot_output_only": []
},
{
"group": 4,
"timer": "Timer11",
"outputs": [
7
],
"dshot": false,
"dshot_outputs": [],
"non_dshot_outputs": [
7
],
"bdshot_outputs": [],
"bdshot_output_only": []
},
{
"group": 5,
"timer": "Timer10",
"outputs": [
8
],
"dshot": false,
"dshot_outputs": [],
"non_dshot_outputs": [
8
],
"bdshot_outputs": [],
"bdshot_output_only": []
},
{
"group": 6,
"timer": "Timer4",
"outputs": [
9
],
"dshot": false,
"dshot_outputs": [],
"non_dshot_outputs": [
9
],
"bdshot_outputs": [],
"bdshot_output_only": []
}
],
"serial_ports": [
{
"uart": "USART1",
"device": "/dev/ttyS0",
"label": "TELEM1",
"flow_control": false
},
{
"uart": "USART2",
"device": "/dev/ttyS1",
"label": "TELEM2",
"flow_control": false
},
{
"uart": "USART3",
"device": "/dev/ttyS2",
"label": "TELEM3",
"flow_control": false
},
{
"uart": "UART4",
"device": "/dev/ttyS3",
"label": "TELEM4",
"flow_control": false
},
{
"uart": "UART5",
"device": "/dev/ttyS4",
"label": "",
"flow_control": false
},
{
"uart": "USART6",
"device": "/dev/ttyS5",
"label": "",
"flow_control": false
},
{
"uart": "UART7",
"device": "/dev/ttyS6",
"label": "GPS1",
"flow_control": false
},
{
"uart": "UART8",
"device": "/dev/ttyS7",
"label": "Debug Console",
"flow_control": false
}
],
"has_rc_input": true,
"has_common_rc": false,
"rc_serial_device": null,
"has_ppm_pin": false,
"ppm_shared_with_rc_serial": false,
"has_pps_capture": false,
"has_safety_switch": false,
"has_safety_led": false,
"has_buzzer": false,
"num_power_inputs": 1,
"has_redundant_power": false,
"has_dual_battery_monitoring": false,
"has_dronecan_power_input": false,
"power_monitor_type": "ina226",
"has_sd_card": true,
"has_ethernet": true,
"has_heater": false,
"sensor_imu_drivers": [
"ICM-20948"
],
"sensor_baro_drivers": [],
"sensor_mag_drivers": [
"LSM303AGR"
],
"sensor_osd_drivers": [],
"sensor_bus_info": {
"imu": [],
"baro": [],
"mag": [
{
"name": "LSM303AGR",
"bus_type": "SPI",
"bus_num": null,
"external": false
}
],
"osd": []
},
"sensor_variant_info": {
"has_variants": false,
"unconditional": {
"imu": [],
"baro": [],
"mag": [
{
"name": "LSM303AGR",
"bus_type": "SPI",
"bus_num": null,
"external": false
}
],
"osd": []
},
"variants": {}
},
"num_i2c_buses": 3,
"num_spi_buses": 4,
"num_can_buses": 1,
"has_usb": false,
"doc_url": null,
"doc_file": null,
"doc_exists": false,
"documented": false
}
@@ -0,0 +1,104 @@
{
"board": "bitcraze/crazyflie21",
"chip_family": "stm32f4",
"chip_model": "STM32F405",
"total_outputs": 4,
"has_io_board": false,
"io_outputs": 0,
"groups": [
{
"group": 1,
"timer": "Timer2",
"outputs": [
1,
2,
3
],
"dshot": false,
"dshot_outputs": [],
"non_dshot_outputs": [
1,
2,
3
],
"bdshot_outputs": [],
"bdshot_output_only": []
},
{
"group": 2,
"timer": "Timer4",
"outputs": [
4
],
"dshot": false,
"dshot_outputs": [],
"non_dshot_outputs": [
4
],
"bdshot_outputs": [],
"bdshot_output_only": []
}
],
"serial_ports": [],
"has_rc_input": false,
"has_common_rc": false,
"rc_serial_device": null,
"has_ppm_pin": false,
"ppm_shared_with_rc_serial": false,
"has_pps_capture": false,
"has_safety_switch": false,
"has_safety_led": false,
"has_buzzer": false,
"num_power_inputs": 1,
"has_redundant_power": false,
"has_dual_battery_monitoring": false,
"has_dronecan_power_input": false,
"power_monitor_type": null,
"has_sd_card": true,
"has_ethernet": false,
"has_heater": false,
"sensor_imu_drivers": [],
"sensor_baro_drivers": [
"BMP388"
],
"sensor_mag_drivers": [],
"sensor_osd_drivers": [],
"sensor_bus_info": {
"imu": [],
"baro": [
{
"name": "BMP388",
"bus_type": "I2C",
"bus_num": null,
"external": false
}
],
"mag": [],
"osd": []
},
"sensor_variant_info": {
"has_variants": false,
"unconditional": {
"imu": [],
"baro": [
{
"name": "BMP388",
"bus_type": "I2C",
"bus_num": null,
"external": false
}
],
"mag": [],
"osd": []
},
"variants": {}
},
"num_i2c_buses": 2,
"num_spi_buses": 1,
"num_can_buses": 0,
"has_usb": true,
"doc_url": null,
"doc_file": null,
"doc_exists": false,
"documented": false
}
@@ -0,0 +1,122 @@
{
"board": "bitcraze/crazyflie",
"chip_family": "stm32f4",
"chip_model": "STM32F405",
"total_outputs": 4,
"has_io_board": false,
"io_outputs": 0,
"groups": [
{
"group": 1,
"timer": "Timer2",
"outputs": [
1,
2,
3
],
"dshot": false,
"dshot_outputs": [],
"non_dshot_outputs": [
1,
2,
3
],
"bdshot_outputs": [],
"bdshot_output_only": []
},
{
"group": 2,
"timer": "Timer4",
"outputs": [
4
],
"dshot": false,
"dshot_outputs": [],
"non_dshot_outputs": [
4
],
"bdshot_outputs": [],
"bdshot_output_only": []
}
],
"serial_ports": [],
"has_rc_input": false,
"has_common_rc": false,
"rc_serial_device": null,
"has_ppm_pin": false,
"ppm_shared_with_rc_serial": false,
"has_pps_capture": false,
"has_safety_switch": false,
"has_safety_led": false,
"has_buzzer": false,
"num_power_inputs": 1,
"has_redundant_power": false,
"has_dual_battery_monitoring": false,
"has_dronecan_power_input": false,
"power_monitor_type": null,
"has_sd_card": true,
"has_ethernet": false,
"has_heater": false,
"sensor_imu_drivers": [
"MPU-9250"
],
"sensor_baro_drivers": [
"LPS25H"
],
"sensor_mag_drivers": [
"AK8963"
],
"sensor_osd_drivers": [],
"sensor_bus_info": {
"imu": [],
"baro": [
{
"name": "LPS25H",
"bus_type": "I2C",
"bus_num": 3,
"external": false
}
],
"mag": [
{
"name": "AK8963",
"bus_type": "I2C",
"bus_num": 3,
"external": false
}
],
"osd": []
},
"sensor_variant_info": {
"has_variants": false,
"unconditional": {
"imu": [],
"baro": [
{
"name": "LPS25H",
"bus_type": "I2C",
"bus_num": 3,
"external": false
}
],
"mag": [
{
"name": "AK8963",
"bus_type": "I2C",
"bus_num": 3,
"external": false
}
],
"osd": []
},
"variants": {}
},
"num_i2c_buses": 2,
"num_spi_buses": 1,
"num_can_buses": 0,
"has_usb": true,
"doc_url": null,
"doc_file": null,
"doc_exists": false,
"documented": false
}
@@ -0,0 +1,230 @@
{
"board": "corvon/743v1",
"chip_family": "stm32h7",
"chip_model": "STM32H743",
"total_outputs": 10,
"has_io_board": false,
"io_outputs": 0,
"groups": [
{
"group": 1,
"timer": "Timer1",
"outputs": [
1,
2,
3,
4
],
"dshot": true,
"dshot_outputs": [
1,
2,
3,
4
],
"non_dshot_outputs": [],
"bdshot_outputs": [
1,
2,
3,
4
],
"bdshot_output_only": []
},
{
"group": 2,
"timer": "Timer3",
"outputs": [
5,
6
],
"dshot": true,
"dshot_outputs": [
5,
6
],
"non_dshot_outputs": [],
"bdshot_outputs": [
5,
6
],
"bdshot_output_only": []
},
{
"group": 3,
"timer": "Timer4",
"outputs": [
7,
8,
9,
10
],
"dshot": true,
"dshot_outputs": [
7,
8,
9,
10
],
"non_dshot_outputs": [],
"bdshot_outputs": [
7,
8,
9
],
"bdshot_output_only": [
10
]
}
],
"serial_ports": [
{
"uart": "USART1",
"device": "/dev/ttyS0",
"label": "TELEM1",
"flow_control": false
},
{
"uart": "USART2",
"device": "/dev/ttyS1",
"label": "TELEM2",
"flow_control": false
},
{
"uart": "USART3",
"device": "/dev/ttyS2",
"label": "GPS1",
"flow_control": false
},
{
"uart": "UART4",
"device": "/dev/ttyS3",
"label": "TELEM3",
"flow_control": false
},
{
"uart": "USART6",
"device": "/dev/ttyS4",
"label": "RC",
"flow_control": false
},
{
"uart": "UART7",
"device": "/dev/ttyS5",
"label": "URT6",
"flow_control": false
},
{
"uart": "UART8",
"device": "/dev/ttyS6",
"label": "TELEM4",
"flow_control": false
}
],
"has_rc_input": true,
"has_common_rc": true,
"rc_serial_device": "/dev/ttyS4",
"has_ppm_pin": false,
"ppm_shared_with_rc_serial": false,
"has_pps_capture": true,
"has_safety_switch": false,
"has_safety_led": false,
"has_buzzer": false,
"num_power_inputs": 1,
"has_redundant_power": false,
"has_dual_battery_monitoring": false,
"has_dronecan_power_input": false,
"power_monitor_type": null,
"has_sd_card": true,
"has_ethernet": false,
"has_heater": false,
"sensor_imu_drivers": [
"BMI088",
"BMI270"
],
"sensor_baro_drivers": [
"DPS310"
],
"sensor_mag_drivers": [
"IST8310"
],
"sensor_osd_drivers": [],
"sensor_bus_info": {
"imu": [
{
"name": "BMI088",
"bus_type": "SPI",
"bus_num": 2,
"external": false
},
{
"name": "BMI270",
"bus_type": "SPI",
"bus_num": 2,
"external": false
}
],
"baro": [
{
"name": "DPS310",
"bus_type": "I2C",
"bus_num": null,
"external": false
}
],
"mag": [
{
"name": "IST8310",
"bus_type": "I2C",
"bus_num": null,
"external": false
}
],
"osd": []
},
"sensor_variant_info": {
"has_variants": false,
"unconditional": {
"imu": [
{
"name": "BMI088",
"bus_type": "SPI",
"bus_num": 2,
"external": false
},
{
"name": "BMI270",
"bus_type": "SPI",
"bus_num": 2,
"external": false
}
],
"baro": [
{
"name": "DPS310",
"bus_type": "I2C",
"bus_num": null,
"external": false
}
],
"mag": [
{
"name": "IST8310",
"bus_type": "I2C",
"bus_num": null,
"external": false
}
],
"osd": []
},
"variants": {}
},
"num_i2c_buses": 2,
"num_spi_buses": 1,
"num_can_buses": 1,
"has_usb": true,
"doc_url": "https://docs.px4.io/main/en/flight_controller/corvon_743v1",
"doc_file": "corvon_743v1.md",
"doc_exists": true,
"documented": true
}
@@ -0,0 +1,59 @@
{
"manufacturer": "corvon",
"product": "arse1",
"fmu_version": "fmu-v5x",
"since_version": "v1.18",
"manufacturer_url": "TODO",
"rc_ports_wizard": [
{
"label": "ddd",
"side": "IO"
}
],
"gps_ports_wizard": [
{
"port_key": "GPS1",
"label": "GPS1",
"pixhawk_standard": true,
"full_port": true
},
{
"port_key": "GPS2",
"label": "GPS2",
"pixhawk_standard": true,
"full_port": false
}
],
"power_ports_wizard": [
{
"label": "POWER 1",
"connector_type": "TODO: connector type",
"monitor_type": "analog"
},
{
"label": "POWER 2",
"connector_type": "TODO: connector type",
"monitor_type": "dronecan"
}
],
"overview_wizard": {
"imu": [
"ADIS16507",
"BMI088",
"ICM-20602",
"ICM-20649",
"ICM-20948",
"ICM-42688P",
"IIM-42652"
],
"baro": [
"BMP388",
"MS5611"
],
"mag": null,
"osd": null,
"dimensions_mm": null,
"weight_g": null,
"voltage_range": null
}
}
@@ -0,0 +1,51 @@
{
"manufacturer": "corvon",
"product": "arse",
"fmu_version": "fmu-v5",
"since_version": "v1.18",
"manufacturer_url": "TODO",
"rc_ports_wizard": [
{
"label": "TODO: RC port label",
"side": "IO"
},
{
"label": "PPM",
"side": "IO",
"ppm_only": true
}
],
"gps_ports_wizard": [
{
"port_key": "GPS1",
"label": "GPS1",
"pixhawk_standard": true,
"full_port": true
}
],
"power_ports_wizard": [
{
"label": "POWER 1",
"connector_type": "TODO: connector type"
},
{
"label": "POWER 2",
"connector_type": "TODO: connector type"
}
],
"overview_wizard": {
"imu": [
"BMI055",
"ICM-20602",
"ICM-20689",
"ICM-20948",
"ICM-42688P"
],
"baro": null,
"mag": null,
"osd": null,
"dimensions_mm": null,
"weight_g": null,
"voltage_range": null
}
}
@@ -0,0 +1,295 @@
{
"board": "cuav/7-nano",
"chip_family": "stm32h7",
"chip_model": "STM32H753",
"total_outputs": 14,
"has_io_board": false,
"io_outputs": 0,
"groups": [
{
"group": 1,
"timer": "Timer5",
"outputs": [
1,
2,
3,
4
],
"dshot": true,
"dshot_outputs": [
1,
2,
3,
4
],
"non_dshot_outputs": [],
"bdshot_outputs": [
1,
2,
3,
4
],
"bdshot_output_only": []
},
{
"group": 2,
"timer": "Timer4",
"outputs": [
5,
6
],
"dshot": true,
"dshot_outputs": [
5,
6
],
"non_dshot_outputs": [],
"bdshot_outputs": [
5,
6
],
"bdshot_output_only": []
},
{
"group": 3,
"timer": "Timer1",
"outputs": [
7,
8
],
"dshot": false,
"dshot_outputs": [],
"non_dshot_outputs": [
7,
8
],
"bdshot_outputs": [],
"bdshot_output_only": []
},
{
"group": 4,
"timer": "Timer8",
"outputs": [
9,
10,
11
],
"dshot": false,
"dshot_outputs": [],
"non_dshot_outputs": [
9,
10,
11
],
"bdshot_outputs": [],
"bdshot_output_only": []
},
{
"group": 5,
"timer": "Timer15",
"outputs": [
12
],
"dshot": false,
"dshot_outputs": [],
"non_dshot_outputs": [
12
],
"bdshot_outputs": [],
"bdshot_output_only": []
},
{
"group": 6,
"timer": "Timer12",
"outputs": [
13,
14
],
"dshot": false,
"dshot_outputs": [],
"non_dshot_outputs": [
13,
14
],
"bdshot_outputs": [],
"bdshot_output_only": []
}
],
"serial_ports": [
{
"uart": "USART1",
"device": "/dev/ttyS0",
"label": "GPS1",
"flow_control": false
},
{
"uart": "USART2",
"device": "/dev/ttyS1",
"label": "TELEM3",
"flow_control": true
},
{
"uart": "USART3",
"device": "/dev/ttyS2",
"label": "Debug Console",
"flow_control": false
},
{
"uart": "UART5",
"device": "/dev/ttyS3",
"label": "TELEM2",
"flow_control": false
},
{
"uart": "USART6",
"device": "/dev/ttyS4",
"label": "",
"flow_control": false
},
{
"uart": "UART7",
"device": "/dev/ttyS5",
"label": "TELEM1",
"flow_control": true
},
{
"uart": "UART8",
"device": "/dev/ttyS6",
"label": "GPS2",
"flow_control": false
}
],
"has_rc_input": true,
"has_common_rc": false,
"rc_serial_device": null,
"has_ppm_pin": true,
"ppm_shared_with_rc_serial": false,
"has_pps_capture": false,
"has_safety_switch": true,
"has_safety_led": true,
"has_buzzer": true,
"num_power_inputs": 1,
"has_redundant_power": false,
"has_dual_battery_monitoring": false,
"has_dronecan_power_input": false,
"power_monitor_type": "analog",
"has_sd_card": true,
"has_ethernet": true,
"has_heater": false,
"sensor_imu_drivers": [
"BMI088",
"ICM-20948",
"IIM-42652"
],
"sensor_baro_drivers": [
"BMP581",
"ICP-20100"
],
"sensor_mag_drivers": [
"IIS2MDC",
"IST8310"
],
"sensor_osd_drivers": [],
"sensor_bus_info": {
"imu": [
{
"name": "IIM-42652",
"bus_type": "SPI",
"bus_num": null,
"external": false
},
{
"name": "BMI088",
"bus_type": "SPI",
"bus_num": null,
"external": false
}
],
"baro": [
{
"name": "BMP581",
"bus_type": "SPI",
"bus_num": null,
"external": false
},
{
"name": "ICP-20100",
"bus_type": "I2C",
"bus_num": null,
"external": false
}
],
"mag": [
{
"name": "IIS2MDC",
"bus_type": "I2C",
"bus_num": null,
"external": false
},
{
"name": "IST8310",
"bus_type": "I2C",
"bus_num": 1,
"external": true
}
],
"osd": []
},
"sensor_variant_info": {
"has_variants": false,
"unconditional": {
"imu": [
{
"name": "IIM-42652",
"bus_type": "SPI",
"bus_num": null,
"external": false
},
{
"name": "BMI088",
"bus_type": "SPI",
"bus_num": null,
"external": false
}
],
"baro": [
{
"name": "BMP581",
"bus_type": "SPI",
"bus_num": null,
"external": false
},
{
"name": "ICP-20100",
"bus_type": "I2C",
"bus_num": null,
"external": false
}
],
"mag": [
{
"name": "IIS2MDC",
"bus_type": "I2C",
"bus_num": null,
"external": false
},
{
"name": "IST8310",
"bus_type": "I2C",
"bus_num": 1,
"external": true
}
],
"osd": []
},
"variants": {}
},
"num_i2c_buses": 4,
"num_spi_buses": 5,
"num_can_buses": 2,
"has_usb": true,
"doc_url": null,
"doc_file": null,
"doc_exists": false,
"documented": false
}
@@ -0,0 +1,280 @@
{
"board": "cuav/fmu-v6x",
"chip_family": "stm32h7",
"chip_model": "STM32H753",
"total_outputs": 9,
"has_io_board": true,
"io_outputs": 8,
"groups": [
{
"group": 1,
"timer": "Timer5",
"outputs": [
1,
2,
3,
4
],
"dshot": true,
"dshot_outputs": [
1,
2,
3,
4
],
"non_dshot_outputs": [],
"bdshot_outputs": [
1,
2,
3,
4
],
"bdshot_output_only": []
},
{
"group": 2,
"timer": "Timer4",
"outputs": [
5,
6
],
"dshot": true,
"dshot_outputs": [
5,
6
],
"non_dshot_outputs": [],
"bdshot_outputs": [
5,
6
],
"bdshot_output_only": []
},
{
"group": 3,
"timer": "Timer12",
"outputs": [
7,
8
],
"dshot": false,
"dshot_outputs": [],
"non_dshot_outputs": [
7,
8
],
"bdshot_outputs": [],
"bdshot_output_only": []
},
{
"group": 4,
"timer": "Timer1",
"outputs": [
9
],
"dshot": false,
"dshot_outputs": [],
"non_dshot_outputs": [
9
],
"bdshot_outputs": [],
"bdshot_output_only": []
}
],
"serial_ports": [
{
"uart": "USART1",
"device": "/dev/ttyS0",
"label": "GPS1",
"flow_control": false
},
{
"uart": "USART2",
"device": "/dev/ttyS1",
"label": "TELEM3",
"flow_control": true
},
{
"uart": "USART3",
"device": "/dev/ttyS2",
"label": "Debug Console",
"flow_control": false
},
{
"uart": "UART4",
"device": "/dev/ttyS3",
"label": "EXT2",
"flow_control": false
},
{
"uart": "UART5",
"device": "/dev/ttyS4",
"label": "TELEM2",
"flow_control": false
},
{
"uart": "USART6",
"device": "/dev/ttyS5",
"label": "PX4IO",
"flow_control": false
},
{
"uart": "UART7",
"device": "/dev/ttyS6",
"label": "TELEM1",
"flow_control": true
},
{
"uart": "UART8",
"device": "/dev/ttyS7",
"label": "GPS2",
"flow_control": false
}
],
"has_rc_input": true,
"has_common_rc": false,
"rc_serial_device": null,
"has_ppm_pin": true,
"ppm_shared_with_rc_serial": false,
"has_pps_capture": false,
"has_safety_switch": true,
"has_safety_led": true,
"has_buzzer": true,
"num_power_inputs": 2,
"has_redundant_power": true,
"has_dual_battery_monitoring": true,
"has_dronecan_power_input": true,
"power_monitor_type": "ina238",
"has_sd_card": true,
"has_ethernet": true,
"has_heater": true,
"sensor_imu_drivers": [
"BMI088",
"ICM-20948",
"ICM-45686",
"IIM-42652"
],
"sensor_baro_drivers": [
"BMP581",
"ICP-20100"
],
"sensor_mag_drivers": [
"RM3100",
"IST8310"
],
"sensor_osd_drivers": [],
"sensor_bus_info": {
"imu": [
{
"name": "IIM-42652",
"bus_type": "SPI",
"bus_num": null,
"external": false
},
{
"name": "BMI088",
"bus_type": "SPI",
"bus_num": null,
"external": false
},
{
"name": "ICM-45686",
"bus_type": "SPI",
"bus_num": null,
"external": false
}
],
"baro": [
{
"name": "BMP581",
"bus_type": "I2C",
"bus_num": 2,
"external": true
},
{
"name": "ICP-20100",
"bus_type": "I2C",
"bus_num": null,
"external": false
}
],
"mag": [
{
"name": "RM3100",
"bus_type": "I2C",
"bus_num": 4,
"external": false
},
{
"name": "IST8310",
"bus_type": "I2C",
"bus_num": 1,
"external": true
}
],
"osd": []
},
"sensor_variant_info": {
"has_variants": false,
"unconditional": {
"imu": [
{
"name": "IIM-42652",
"bus_type": "SPI",
"bus_num": null,
"external": false
},
{
"name": "BMI088",
"bus_type": "SPI",
"bus_num": null,
"external": false
},
{
"name": "ICM-45686",
"bus_type": "SPI",
"bus_num": null,
"external": false
}
],
"baro": [
{
"name": "BMP581",
"bus_type": "I2C",
"bus_num": 2,
"external": true
},
{
"name": "ICP-20100",
"bus_type": "I2C",
"bus_num": null,
"external": false
}
],
"mag": [
{
"name": "RM3100",
"bus_type": "I2C",
"bus_num": 4,
"external": false
},
{
"name": "IST8310",
"bus_type": "I2C",
"bus_num": 1,
"external": true
}
],
"osd": []
},
"variants": {}
},
"num_i2c_buses": 4,
"num_spi_buses": 5,
"num_can_buses": 2,
"has_usb": true,
"doc_url": "https://docs.px4.io/main/en/flight_controller/cuav_pixhawk_v6x",
"doc_file": "cuav_pixhawk_v6x.md",
"doc_exists": true,
"documented": true
}
@@ -0,0 +1,298 @@
{
"board": "cuav/nora",
"chip_family": "stm32h7",
"chip_model": "STM32H743",
"total_outputs": 14,
"has_io_board": false,
"io_outputs": 0,
"groups": [
{
"group": 1,
"timer": "Timer5",
"outputs": [
1,
2,
3,
4
],
"dshot": true,
"dshot_outputs": [
1,
2,
3,
4
],
"non_dshot_outputs": [],
"bdshot_outputs": [
1,
2,
3,
4
],
"bdshot_output_only": []
},
{
"group": 2,
"timer": "Timer4",
"outputs": [
5,
6,
7,
8
],
"dshot": true,
"dshot_outputs": [
5,
6,
7,
8
],
"non_dshot_outputs": [],
"bdshot_outputs": [
5,
6,
7
],
"bdshot_output_only": [
8
]
},
{
"group": 3,
"timer": "Timer1",
"outputs": [
9,
10,
11,
12
],
"dshot": true,
"dshot_outputs": [
9,
10,
11,
12
],
"non_dshot_outputs": [],
"bdshot_outputs": [
9,
10,
11,
12
],
"bdshot_output_only": []
},
{
"group": 4,
"timer": "Timer12",
"outputs": [
13,
14
],
"dshot": false,
"dshot_outputs": [],
"non_dshot_outputs": [
13,
14
],
"bdshot_outputs": [],
"bdshot_output_only": []
}
],
"serial_ports": [
{
"uart": "USART1",
"device": "/dev/ttyS0",
"label": "GPS1",
"flow_control": false
},
{
"uart": "USART2",
"device": "/dev/ttyS1",
"label": "TELEM1",
"flow_control": true
},
{
"uart": "UART4",
"device": "/dev/ttyS2",
"label": "GPS2",
"flow_control": false
},
{
"uart": "USART6",
"device": "/dev/ttyS3",
"label": "TELEM2",
"flow_control": true
},
{
"uart": "UART7",
"device": "/dev/ttyS4",
"label": "Debug Console",
"flow_control": false
},
{
"uart": "UART8",
"device": "/dev/ttyS5",
"label": "",
"flow_control": false
}
],
"has_rc_input": true,
"has_common_rc": false,
"rc_serial_device": null,
"has_ppm_pin": true,
"ppm_shared_with_rc_serial": false,
"has_pps_capture": false,
"has_safety_switch": true,
"has_safety_led": true,
"has_buzzer": false,
"num_power_inputs": 2,
"has_redundant_power": true,
"has_dual_battery_monitoring": false,
"has_dronecan_power_input": true,
"power_monitor_type": "ina226",
"has_sd_card": true,
"has_ethernet": false,
"has_heater": true,
"sensor_imu_drivers": [
"BMI088",
"ICM-20649",
"ICM-20689",
"ICM-20948",
"ICM-42688P"
],
"sensor_baro_drivers": [
"MS5611"
],
"sensor_mag_drivers": [
"RM3100",
"IST8310"
],
"sensor_osd_drivers": [],
"sensor_bus_info": {
"imu": [
{
"name": "ICM-20689",
"bus_type": "SPI",
"bus_num": 1,
"external": false
},
{
"name": "BMI088",
"bus_type": "SPI",
"bus_num": 4,
"external": false
},
{
"name": "ICM-42688P",
"bus_type": "SPI",
"bus_num": null,
"external": false
},
{
"name": "ICM-20689",
"bus_type": "SPI",
"bus_num": 6,
"external": false
}
],
"baro": [
{
"name": "MS5611",
"bus_type": "SPI",
"bus_num": 4,
"external": false
},
{
"name": "MS5611",
"bus_type": "SPI",
"bus_num": 6,
"external": false
}
],
"mag": [
{
"name": "RM3100",
"bus_type": "SPI",
"bus_num": 2,
"external": false
},
{
"name": "IST8310",
"bus_type": "I2C",
"bus_num": 1,
"external": true
}
],
"osd": []
},
"sensor_variant_info": {
"has_variants": false,
"unconditional": {
"imu": [
{
"name": "ICM-20689",
"bus_type": "SPI",
"bus_num": 1,
"external": false
},
{
"name": "BMI088",
"bus_type": "SPI",
"bus_num": 4,
"external": false
},
{
"name": "ICM-42688P",
"bus_type": "SPI",
"bus_num": null,
"external": false
},
{
"name": "ICM-20689",
"bus_type": "SPI",
"bus_num": 6,
"external": false
}
],
"baro": [
{
"name": "MS5611",
"bus_type": "SPI",
"bus_num": 4,
"external": false
},
{
"name": "MS5611",
"bus_type": "SPI",
"bus_num": 6,
"external": false
}
],
"mag": [
{
"name": "RM3100",
"bus_type": "SPI",
"bus_num": 2,
"external": false
},
{
"name": "IST8310",
"bus_type": "I2C",
"bus_num": 1,
"external": true
}
],
"osd": []
},
"variants": {}
},
"num_i2c_buses": 4,
"num_spi_buses": 5,
"num_can_buses": 2,
"has_usb": true,
"doc_url": "https://docs.px4.io/main/en/flight_controller/cuav_nora",
"doc_file": "cuav_nora.md",
"doc_exists": true,
"documented": true
}
@@ -0,0 +1,283 @@
{
"board": "cuav/x25-evo",
"chip_family": "stm32h7",
"chip_model": "STM32H743",
"total_outputs": 16,
"has_io_board": false,
"io_outputs": 0,
"groups": [
{
"group": 1,
"timer": "Timer5",
"outputs": [
1,
2,
3,
4
],
"dshot": true,
"dshot_outputs": [
1,
2,
3,
4
],
"non_dshot_outputs": [],
"bdshot_outputs": [
1,
2,
3,
4
],
"bdshot_output_only": []
},
{
"group": 2,
"timer": "Timer4",
"outputs": [
5,
6,
7,
8
],
"dshot": true,
"dshot_outputs": [
5,
6,
7,
8
],
"non_dshot_outputs": [],
"bdshot_outputs": [
5,
6,
7
],
"bdshot_output_only": [
8
]
},
{
"group": 3,
"timer": "Timer1",
"outputs": [
9,
10,
11
],
"dshot": false,
"dshot_outputs": [],
"non_dshot_outputs": [
9,
10,
11
],
"bdshot_outputs": [],
"bdshot_output_only": []
},
{
"group": 4,
"timer": "Timer8",
"outputs": [
12,
13,
14
],
"dshot": false,
"dshot_outputs": [],
"non_dshot_outputs": [
12,
13,
14
],
"bdshot_outputs": [],
"bdshot_output_only": []
},
{
"group": 5,
"timer": "Timer12",
"outputs": [
15,
16
],
"dshot": false,
"dshot_outputs": [],
"non_dshot_outputs": [
15,
16
],
"bdshot_outputs": [],
"bdshot_output_only": []
}
],
"serial_ports": [
{
"uart": "USART1",
"device": "/dev/ttyS0",
"label": "GPS1",
"flow_control": false
},
{
"uart": "USART2",
"device": "/dev/ttyS1",
"label": "GPS2",
"flow_control": true
},
{
"uart": "USART3",
"device": "/dev/ttyS2",
"label": "Debug Console",
"flow_control": false
},
{
"uart": "UART4",
"device": "/dev/ttyS3",
"label": "EXT2",
"flow_control": false
},
{
"uart": "UART5",
"device": "/dev/ttyS4",
"label": "TELEM2",
"flow_control": false
},
{
"uart": "USART6",
"device": "/dev/ttyS5",
"label": "",
"flow_control": false
},
{
"uart": "UART7",
"device": "/dev/ttyS6",
"label": "TELEM1",
"flow_control": true
},
{
"uart": "UART8",
"device": "/dev/ttyS7",
"label": "",
"flow_control": false
}
],
"has_rc_input": true,
"has_common_rc": false,
"rc_serial_device": null,
"has_ppm_pin": true,
"ppm_shared_with_rc_serial": false,
"has_pps_capture": false,
"has_safety_switch": true,
"has_safety_led": true,
"has_buzzer": true,
"num_power_inputs": 2,
"has_redundant_power": true,
"has_dual_battery_monitoring": true,
"has_dronecan_power_input": false,
"power_monitor_type": "ina238",
"has_sd_card": true,
"has_ethernet": true,
"has_heater": true,
"sensor_imu_drivers": [
"ICM-20948",
"IIM-42652"
],
"sensor_baro_drivers": [
"BMP581",
"ICP-20100"
],
"sensor_mag_drivers": [
"RM3100",
"IST8310"
],
"sensor_osd_drivers": [],
"sensor_bus_info": {
"imu": [
{
"name": "IIM-42652",
"bus_type": "SPI",
"bus_num": 1,
"external": false
}
],
"baro": [
{
"name": "BMP581",
"bus_type": "SPI",
"bus_num": 4,
"external": false
},
{
"name": "ICP-20100",
"bus_type": "I2C",
"bus_num": 4,
"external": false
}
],
"mag": [
{
"name": "RM3100",
"bus_type": "SPI",
"bus_num": 4,
"external": false
},
{
"name": "IST8310",
"bus_type": "I2C",
"bus_num": 1,
"external": true
}
],
"osd": []
},
"sensor_variant_info": {
"has_variants": false,
"unconditional": {
"imu": [
{
"name": "IIM-42652",
"bus_type": "SPI",
"bus_num": 1,
"external": false
}
],
"baro": [
{
"name": "BMP581",
"bus_type": "SPI",
"bus_num": 4,
"external": false
},
{
"name": "ICP-20100",
"bus_type": "I2C",
"bus_num": 4,
"external": false
}
],
"mag": [
{
"name": "RM3100",
"bus_type": "SPI",
"bus_num": 4,
"external": false
},
{
"name": "IST8310",
"bus_type": "I2C",
"bus_num": 1,
"external": true
}
],
"osd": []
},
"variants": {}
},
"num_i2c_buses": 4,
"num_spi_buses": 5,
"num_can_buses": 2,
"has_usb": true,
"doc_url": "https://docs.px4.io/main/en/flight_controller/cuav_x25-evo",
"doc_file": "cuav_x25-evo.md",
"doc_exists": true,
"documented": true
}
@@ -0,0 +1,282 @@
{
"board": "cuav/x25-super",
"chip_family": "stm32h7",
"chip_model": "STM32H743",
"total_outputs": 16,
"has_io_board": false,
"io_outputs": 0,
"groups": [
{
"group": 1,
"timer": "Timer5",
"outputs": [
1,
2,
3,
4
],
"dshot": true,
"dshot_outputs": [
1,
2,
3,
4
],
"non_dshot_outputs": [],
"bdshot_outputs": [
1,
2,
3,
4
],
"bdshot_output_only": []
},
{
"group": 2,
"timer": "Timer4",
"outputs": [
5,
6,
7,
8
],
"dshot": true,
"dshot_outputs": [
5,
6,
7,
8
],
"non_dshot_outputs": [],
"bdshot_outputs": [
5,
6,
7
],
"bdshot_output_only": [
8
]
},
{
"group": 3,
"timer": "Timer1",
"outputs": [
9,
10,
11
],
"dshot": false,
"dshot_outputs": [],
"non_dshot_outputs": [
9,
10,
11
],
"bdshot_outputs": [],
"bdshot_output_only": []
},
{
"group": 4,
"timer": "Timer8",
"outputs": [
12,
13,
14
],
"dshot": false,
"dshot_outputs": [],
"non_dshot_outputs": [
12,
13,
14
],
"bdshot_outputs": [],
"bdshot_output_only": []
},
{
"group": 5,
"timer": "Timer12",
"outputs": [
15,
16
],
"dshot": false,
"dshot_outputs": [],
"non_dshot_outputs": [
15,
16
],
"bdshot_outputs": [],
"bdshot_output_only": []
}
],
"serial_ports": [
{
"uart": "USART1",
"device": "/dev/ttyS0",
"label": "GPS1",
"flow_control": false
},
{
"uart": "USART2",
"device": "/dev/ttyS1",
"label": "GPS2",
"flow_control": true
},
{
"uart": "USART3",
"device": "/dev/ttyS2",
"label": "Debug Console",
"flow_control": false
},
{
"uart": "UART4",
"device": "/dev/ttyS3",
"label": "EXT2",
"flow_control": false
},
{
"uart": "UART5",
"device": "/dev/ttyS4",
"label": "TELEM2",
"flow_control": false
},
{
"uart": "USART6",
"device": "/dev/ttyS5",
"label": "",
"flow_control": false
},
{
"uart": "UART7",
"device": "/dev/ttyS6",
"label": "TELEM1",
"flow_control": true
},
{
"uart": "UART8",
"device": "/dev/ttyS7",
"label": "",
"flow_control": false
}
],
"has_rc_input": true,
"has_common_rc": false,
"rc_serial_device": null,
"has_ppm_pin": true,
"ppm_shared_with_rc_serial": false,
"has_pps_capture": false,
"has_safety_switch": true,
"has_safety_led": true,
"has_buzzer": true,
"num_power_inputs": 2,
"has_redundant_power": true,
"has_dual_battery_monitoring": true,
"has_dronecan_power_input": true,
"power_monitor_type": "ina238",
"has_sd_card": true,
"has_ethernet": true,
"has_heater": true,
"sensor_imu_drivers": [
"IIM-42652"
],
"sensor_baro_drivers": [
"BMP581",
"ICP-20100"
],
"sensor_mag_drivers": [
"RM3100",
"IST8310"
],
"sensor_osd_drivers": [],
"sensor_bus_info": {
"imu": [
{
"name": "IIM-42652",
"bus_type": "SPI",
"bus_num": 2,
"external": false
}
],
"baro": [
{
"name": "BMP581",
"bus_type": "SPI",
"bus_num": 4,
"external": false
},
{
"name": "ICP-20100",
"bus_type": "I2C",
"bus_num": 4,
"external": false
}
],
"mag": [
{
"name": "RM3100",
"bus_type": "SPI",
"bus_num": 4,
"external": false
},
{
"name": "IST8310",
"bus_type": "I2C",
"bus_num": 1,
"external": true
}
],
"osd": []
},
"sensor_variant_info": {
"has_variants": false,
"unconditional": {
"imu": [
{
"name": "IIM-42652",
"bus_type": "SPI",
"bus_num": 2,
"external": false
}
],
"baro": [
{
"name": "BMP581",
"bus_type": "SPI",
"bus_num": 4,
"external": false
},
{
"name": "ICP-20100",
"bus_type": "I2C",
"bus_num": 4,
"external": false
}
],
"mag": [
{
"name": "RM3100",
"bus_type": "SPI",
"bus_num": 4,
"external": false
},
{
"name": "IST8310",
"bus_type": "I2C",
"bus_num": 1,
"external": true
}
],
"osd": []
},
"variants": {}
},
"num_i2c_buses": 4,
"num_spi_buses": 5,
"num_can_buses": 2,
"has_usb": true,
"doc_url": "https://docs.px4.io/main/en/flight_controller/cuav_x25-super",
"doc_file": "cuav_x25-super.md",
"doc_exists": true,
"documented": true
}
@@ -0,0 +1,299 @@
{
"board": "cuav/x7pro",
"chip_family": "stm32h7",
"chip_model": "STM32H743",
"total_outputs": 14,
"has_io_board": false,
"io_outputs": 0,
"groups": [
{
"group": 1,
"timer": "Timer5",
"outputs": [
1,
2,
3,
4
],
"dshot": true,
"dshot_outputs": [
1,
2,
3,
4
],
"non_dshot_outputs": [],
"bdshot_outputs": [
1,
2,
3,
4
],
"bdshot_output_only": []
},
{
"group": 2,
"timer": "Timer4",
"outputs": [
5,
6,
7,
8
],
"dshot": true,
"dshot_outputs": [
5,
6,
7,
8
],
"non_dshot_outputs": [],
"bdshot_outputs": [
5,
6,
7
],
"bdshot_output_only": [
8
]
},
{
"group": 3,
"timer": "Timer1",
"outputs": [
9,
10,
11,
12
],
"dshot": true,
"dshot_outputs": [
9,
10,
11,
12
],
"non_dshot_outputs": [],
"bdshot_outputs": [
9,
10,
11,
12
],
"bdshot_output_only": []
},
{
"group": 4,
"timer": "Timer12",
"outputs": [
13,
14
],
"dshot": false,
"dshot_outputs": [],
"non_dshot_outputs": [
13,
14
],
"bdshot_outputs": [],
"bdshot_output_only": []
}
],
"serial_ports": [
{
"uart": "USART1",
"device": "/dev/ttyS0",
"label": "GPS1",
"flow_control": false
},
{
"uart": "USART2",
"device": "/dev/ttyS1",
"label": "TELEM1",
"flow_control": true
},
{
"uart": "UART4",
"device": "/dev/ttyS2",
"label": "GPS2",
"flow_control": false
},
{
"uart": "USART6",
"device": "/dev/ttyS3",
"label": "TELEM2",
"flow_control": true
},
{
"uart": "UART7",
"device": "/dev/ttyS4",
"label": "Debug Console",
"flow_control": false
},
{
"uart": "UART8",
"device": "/dev/ttyS5",
"label": "",
"flow_control": false
}
],
"has_rc_input": true,
"has_common_rc": false,
"rc_serial_device": null,
"has_ppm_pin": true,
"ppm_shared_with_rc_serial": false,
"has_pps_capture": false,
"has_safety_switch": true,
"has_safety_led": true,
"has_buzzer": false,
"num_power_inputs": 2,
"has_redundant_power": true,
"has_dual_battery_monitoring": false,
"has_dronecan_power_input": true,
"power_monitor_type": "ina226",
"has_sd_card": true,
"has_ethernet": false,
"has_heater": true,
"sensor_imu_drivers": [
"ADIS16470",
"BMI088",
"ICM-20649",
"ICM-20689",
"ICM-20948",
"ICM-42688P"
],
"sensor_baro_drivers": [
"MS5611"
],
"sensor_mag_drivers": [
"RM3100",
"IST8310"
],
"sensor_osd_drivers": [],
"sensor_bus_info": {
"imu": [
{
"name": "ADIS16470",
"bus_type": "SPI",
"bus_num": 1,
"external": false
},
{
"name": "BMI088",
"bus_type": "SPI",
"bus_num": 4,
"external": false
},
{
"name": "ICM-42688P",
"bus_type": "SPI",
"bus_num": null,
"external": false
},
{
"name": "ICM-20689",
"bus_type": "SPI",
"bus_num": 6,
"external": false
}
],
"baro": [
{
"name": "MS5611",
"bus_type": "SPI",
"bus_num": 4,
"external": false
},
{
"name": "MS5611",
"bus_type": "SPI",
"bus_num": 6,
"external": false
}
],
"mag": [
{
"name": "RM3100",
"bus_type": "SPI",
"bus_num": 2,
"external": false
},
{
"name": "IST8310",
"bus_type": "I2C",
"bus_num": 1,
"external": true
}
],
"osd": []
},
"sensor_variant_info": {
"has_variants": false,
"unconditional": {
"imu": [
{
"name": "ADIS16470",
"bus_type": "SPI",
"bus_num": 1,
"external": false
},
{
"name": "BMI088",
"bus_type": "SPI",
"bus_num": 4,
"external": false
},
{
"name": "ICM-42688P",
"bus_type": "SPI",
"bus_num": null,
"external": false
},
{
"name": "ICM-20689",
"bus_type": "SPI",
"bus_num": 6,
"external": false
}
],
"baro": [
{
"name": "MS5611",
"bus_type": "SPI",
"bus_num": 4,
"external": false
},
{
"name": "MS5611",
"bus_type": "SPI",
"bus_num": 6,
"external": false
}
],
"mag": [
{
"name": "RM3100",
"bus_type": "SPI",
"bus_num": 2,
"external": false
},
{
"name": "IST8310",
"bus_type": "I2C",
"bus_num": 1,
"external": true
}
],
"osd": []
},
"variants": {}
},
"num_i2c_buses": 4,
"num_spi_buses": 5,
"num_can_buses": 2,
"has_usb": true,
"doc_url": "https://docs.px4.io/main/en/flight_controller/cuav_x7",
"doc_file": "cuav_x7.md",
"doc_exists": true,
"documented": true
}
@@ -0,0 +1,207 @@
{
"board": "cubepilot/cubeorange",
"chip_family": "stm32h7",
"chip_model": "STM32H743",
"total_outputs": 6,
"has_io_board": true,
"io_outputs": 8,
"groups": [
{
"group": 1,
"timer": "Timer1",
"outputs": [
1,
2,
3,
4
],
"dshot": true,
"dshot_outputs": [
1,
2,
3,
4
],
"non_dshot_outputs": [],
"bdshot_outputs": [
1,
2,
3,
4
],
"bdshot_output_only": []
},
{
"group": 2,
"timer": "Timer4",
"outputs": [
5,
6
],
"dshot": true,
"dshot_outputs": [
5,
6
],
"non_dshot_outputs": [],
"bdshot_outputs": [
5,
6
],
"bdshot_output_only": []
}
],
"serial_ports": [
{
"uart": "USART2",
"device": "/dev/ttyS0",
"label": "TELEM1",
"flow_control": true
},
{
"uart": "USART3",
"device": "/dev/ttyS1",
"label": "TELEM2",
"flow_control": true
},
{
"uart": "UART4",
"device": "/dev/ttyS2",
"label": "GPS1",
"flow_control": false
},
{
"uart": "USART6",
"device": "/dev/ttyS3",
"label": "PX4IO",
"flow_control": false
},
{
"uart": "UART7",
"device": "/dev/ttyS4",
"label": "",
"flow_control": false
},
{
"uart": "UART8",
"device": "/dev/ttyS5",
"label": "GPS2",
"flow_control": false
}
],
"has_rc_input": false,
"has_common_rc": false,
"rc_serial_device": null,
"has_ppm_pin": false,
"ppm_shared_with_rc_serial": false,
"has_pps_capture": false,
"has_safety_switch": false,
"has_safety_led": false,
"has_buzzer": true,
"num_power_inputs": 2,
"has_redundant_power": true,
"has_dual_battery_monitoring": false,
"has_dronecan_power_input": false,
"power_monitor_type": "ina226",
"has_sd_card": true,
"has_ethernet": false,
"has_heater": true,
"sensor_imu_drivers": [
"ICM-20602",
"ICM-20649",
"ICM-20948"
],
"sensor_baro_drivers": [
"MS5611"
],
"sensor_mag_drivers": [],
"sensor_osd_drivers": [],
"sensor_bus_info": {
"imu": [
{
"name": "ICM-20602",
"bus_type": "SPI",
"bus_num": 4,
"external": false
},
{
"name": "ICM-20948",
"bus_type": "SPI",
"bus_num": 4,
"external": false
},
{
"name": "ICM-20649",
"bus_type": "SPI",
"bus_num": 1,
"external": false
}
],
"baro": [
{
"name": "MS5611",
"bus_type": "SPI",
"bus_num": 4,
"external": false
},
{
"name": "MS5611",
"bus_type": "SPI",
"bus_num": 1,
"external": false
}
],
"mag": [],
"osd": []
},
"sensor_variant_info": {
"has_variants": false,
"unconditional": {
"imu": [
{
"name": "ICM-20602",
"bus_type": "SPI",
"bus_num": 4,
"external": false
},
{
"name": "ICM-20948",
"bus_type": "SPI",
"bus_num": 4,
"external": false
},
{
"name": "ICM-20649",
"bus_type": "SPI",
"bus_num": 1,
"external": false
}
],
"baro": [
{
"name": "MS5611",
"bus_type": "SPI",
"bus_num": 4,
"external": false
},
{
"name": "MS5611",
"bus_type": "SPI",
"bus_num": 1,
"external": false
}
],
"mag": [],
"osd": []
},
"variants": {}
},
"num_i2c_buses": 2,
"num_spi_buses": 3,
"num_can_buses": 2,
"has_usb": true,
"doc_url": "https://docs.px4.io/main/en/flight_controller/cubepilot_cube_orange",
"doc_file": "cubepilot_cube_orange.md",
"doc_exists": true,
"documented": true
}
@@ -0,0 +1,224 @@
{
"board": "cubepilot/cubeorangeplus",
"chip_family": "stm32h7",
"chip_model": "STM32H747",
"total_outputs": 6,
"has_io_board": true,
"io_outputs": 8,
"groups": [
{
"group": 1,
"timer": "Timer1",
"outputs": [
1,
2,
3,
4
],
"dshot": true,
"dshot_outputs": [
1,
2,
3,
4
],
"non_dshot_outputs": [],
"bdshot_outputs": [
1,
2,
3,
4
],
"bdshot_output_only": []
},
{
"group": 2,
"timer": "Timer4",
"outputs": [
5,
6
],
"dshot": true,
"dshot_outputs": [
5,
6
],
"non_dshot_outputs": [],
"bdshot_outputs": [
5,
6
],
"bdshot_output_only": []
}
],
"serial_ports": [
{
"uart": "USART2",
"device": "/dev/ttyS0",
"label": "TELEM1",
"flow_control": true
},
{
"uart": "USART3",
"device": "/dev/ttyS1",
"label": "TELEM2",
"flow_control": true
},
{
"uart": "UART4",
"device": "/dev/ttyS2",
"label": "GPS1",
"flow_control": false
},
{
"uart": "USART6",
"device": "/dev/ttyS3",
"label": "PX4IO",
"flow_control": false
},
{
"uart": "UART7",
"device": "/dev/ttyS4",
"label": "",
"flow_control": false
},
{
"uart": "UART8",
"device": "/dev/ttyS5",
"label": "GPS2",
"flow_control": false
}
],
"has_rc_input": false,
"has_common_rc": false,
"rc_serial_device": null,
"has_ppm_pin": false,
"ppm_shared_with_rc_serial": false,
"has_pps_capture": false,
"has_safety_switch": false,
"has_safety_led": false,
"has_buzzer": true,
"num_power_inputs": 2,
"has_redundant_power": true,
"has_dual_battery_monitoring": false,
"has_dronecan_power_input": false,
"power_monitor_type": "ina226",
"has_sd_card": true,
"has_ethernet": false,
"has_heater": true,
"sensor_imu_drivers": [
"ICM-20649",
"ICM-20948",
"ICM-42688P",
"ICM-45686"
],
"sensor_baro_drivers": [
"MS5611"
],
"sensor_mag_drivers": [
"AK09916"
],
"sensor_osd_drivers": [],
"sensor_bus_info": {
"imu": [
{
"name": "ICM-42688P",
"bus_type": "SPI",
"bus_num": 4,
"external": false
},
{
"name": "ICM-45686",
"bus_type": "SPI",
"bus_num": 4,
"external": false
},
{
"name": "ICM-20649",
"bus_type": "SPI",
"bus_num": 1,
"external": false
}
],
"baro": [
{
"name": "MS5611",
"bus_type": "SPI",
"bus_num": 4,
"external": false
},
{
"name": "MS5611",
"bus_type": "SPI",
"bus_num": 1,
"external": false
}
],
"mag": [
{
"name": "AK09916",
"bus_type": "I2C",
"bus_num": null,
"external": false
}
],
"osd": []
},
"sensor_variant_info": {
"has_variants": false,
"unconditional": {
"imu": [
{
"name": "ICM-42688P",
"bus_type": "SPI",
"bus_num": 4,
"external": false
},
{
"name": "ICM-45686",
"bus_type": "SPI",
"bus_num": 4,
"external": false
},
{
"name": "ICM-20649",
"bus_type": "SPI",
"bus_num": 1,
"external": false
}
],
"baro": [
{
"name": "MS5611",
"bus_type": "SPI",
"bus_num": 4,
"external": false
},
{
"name": "MS5611",
"bus_type": "SPI",
"bus_num": 1,
"external": false
}
],
"mag": [
{
"name": "AK09916",
"bus_type": "I2C",
"bus_num": null,
"external": false
}
],
"osd": []
},
"variants": {}
},
"num_i2c_buses": 3,
"num_spi_buses": 3,
"num_can_buses": 2,
"has_usb": true,
"doc_url": "https://docs.px4.io/main/en/flight_controller/cubepilot_cube_orangeplus",
"doc_file": "cubepilot_cube_orangeplus.md",
"doc_exists": true,
"documented": true
}
@@ -0,0 +1,204 @@
{
"board": "cubepilot/cubeyellow",
"chip_family": "stm32f7",
"chip_model": "STM32F777",
"total_outputs": 6,
"has_io_board": true,
"io_outputs": 8,
"groups": [
{
"group": 1,
"timer": "Timer1",
"outputs": [
1,
2,
3,
4
],
"dshot": true,
"dshot_outputs": [
1,
2,
3,
4
],
"non_dshot_outputs": [],
"bdshot_outputs": [
1,
2,
3,
4
],
"bdshot_output_only": []
},
{
"group": 2,
"timer": "Timer4",
"outputs": [
5,
6
],
"dshot": false,
"dshot_outputs": [],
"non_dshot_outputs": [
5,
6
],
"bdshot_outputs": [],
"bdshot_output_only": []
}
],
"serial_ports": [
{
"uart": "USART2",
"device": "/dev/ttyS0",
"label": "TELEM1",
"flow_control": true
},
{
"uart": "USART3",
"device": "/dev/ttyS1",
"label": "TELEM2",
"flow_control": true
},
{
"uart": "UART4",
"device": "/dev/ttyS2",
"label": "GPS1",
"flow_control": false
},
{
"uart": "USART6",
"device": "/dev/ttyS3",
"label": "PX4IO",
"flow_control": false
},
{
"uart": "UART7",
"device": "/dev/ttyS4",
"label": "TELEM3",
"flow_control": false
},
{
"uart": "UART8",
"device": "/dev/ttyS5",
"label": "GPS2",
"flow_control": false
}
],
"has_rc_input": false,
"has_common_rc": false,
"rc_serial_device": null,
"has_ppm_pin": false,
"ppm_shared_with_rc_serial": false,
"has_pps_capture": false,
"has_safety_switch": false,
"has_safety_led": false,
"has_buzzer": true,
"num_power_inputs": 2,
"has_redundant_power": true,
"has_dual_battery_monitoring": false,
"has_dronecan_power_input": false,
"power_monitor_type": "ina226",
"has_sd_card": true,
"has_ethernet": false,
"has_heater": false,
"sensor_imu_drivers": [
"ICM-20602",
"ICM-20649",
"ICM-20948"
],
"sensor_baro_drivers": [
"MS5611"
],
"sensor_mag_drivers": [],
"sensor_osd_drivers": [],
"sensor_bus_info": {
"imu": [
{
"name": "ICM-20602",
"bus_type": "SPI",
"bus_num": 4,
"external": false
},
{
"name": "ICM-20948",
"bus_type": "SPI",
"bus_num": 4,
"external": false
},
{
"name": "ICM-20649",
"bus_type": "SPI",
"bus_num": 1,
"external": false
}
],
"baro": [
{
"name": "MS5611",
"bus_type": "SPI",
"bus_num": 4,
"external": false
},
{
"name": "MS5611",
"bus_type": "SPI",
"bus_num": 1,
"external": false
}
],
"mag": [],
"osd": []
},
"sensor_variant_info": {
"has_variants": false,
"unconditional": {
"imu": [
{
"name": "ICM-20602",
"bus_type": "SPI",
"bus_num": 4,
"external": false
},
{
"name": "ICM-20948",
"bus_type": "SPI",
"bus_num": 4,
"external": false
},
{
"name": "ICM-20649",
"bus_type": "SPI",
"bus_num": 1,
"external": false
}
],
"baro": [
{
"name": "MS5611",
"bus_type": "SPI",
"bus_num": 4,
"external": false
},
{
"name": "MS5611",
"bus_type": "SPI",
"bus_num": 1,
"external": false
}
],
"mag": [],
"osd": []
},
"variants": {}
},
"num_i2c_buses": 2,
"num_spi_buses": 3,
"num_can_buses": 2,
"has_usb": true,
"doc_url": "https://docs.px4.io/main/en/flight_controller/cubepilot_cube_yellow",
"doc_file": "cubepilot_cube_yellow.md",
"doc_exists": true,
"documented": true
}
@@ -0,0 +1,108 @@
{
"board": "cubepilot/io-v2",
"chip_family": "stm32f4",
"chip_model": "STM32F100",
"total_outputs": 8,
"has_io_board": false,
"io_outputs": 0,
"groups": [
{
"group": 1,
"timer": "Timer2",
"outputs": [
1,
2
],
"dshot": false,
"dshot_outputs": [],
"non_dshot_outputs": [
1,
2
],
"bdshot_outputs": [],
"bdshot_output_only": []
},
{
"group": 2,
"timer": "Timer4",
"outputs": [
3,
4
],
"dshot": false,
"dshot_outputs": [],
"non_dshot_outputs": [
3,
4
],
"bdshot_outputs": [],
"bdshot_output_only": []
},
{
"group": 3,
"timer": "Timer3",
"outputs": [
5,
6,
7,
8
],
"dshot": false,
"dshot_outputs": [],
"non_dshot_outputs": [
5,
6,
7,
8
],
"bdshot_outputs": [],
"bdshot_output_only": []
}
],
"serial_ports": [],
"has_rc_input": false,
"has_common_rc": false,
"rc_serial_device": null,
"has_ppm_pin": true,
"ppm_shared_with_rc_serial": false,
"has_pps_capture": false,
"has_safety_switch": true,
"has_safety_led": true,
"has_buzzer": false,
"num_power_inputs": 1,
"has_redundant_power": false,
"has_dual_battery_monitoring": false,
"has_dronecan_power_input": false,
"power_monitor_type": null,
"has_sd_card": false,
"has_ethernet": false,
"has_heater": false,
"sensor_imu_drivers": [],
"sensor_baro_drivers": [],
"sensor_mag_drivers": [],
"sensor_osd_drivers": [],
"sensor_bus_info": {
"imu": [],
"baro": [],
"mag": [],
"osd": []
},
"sensor_variant_info": {
"has_variants": false,
"unconditional": {
"imu": [],
"baro": [],
"mag": [],
"osd": []
},
"variants": {}
},
"num_i2c_buses": 0,
"num_spi_buses": 0,
"num_can_buses": 0,
"has_usb": false,
"doc_url": null,
"doc_file": null,
"doc_exists": false,
"documented": false
}
@@ -0,0 +1,140 @@
{
"board": "diatone/mamba-f405-mk2",
"chip_family": "stm32f4",
"chip_model": "STM32F405",
"total_outputs": 4,
"has_io_board": false,
"io_outputs": 0,
"groups": [
{
"group": 1,
"timer": "Timer3",
"outputs": [
1,
2
],
"dshot": true,
"dshot_outputs": [
1,
2
],
"non_dshot_outputs": [],
"bdshot_outputs": [],
"bdshot_output_only": []
},
{
"group": 2,
"timer": "Timer2",
"outputs": [
3,
4
],
"dshot": true,
"dshot_outputs": [
3,
4
],
"non_dshot_outputs": [],
"bdshot_outputs": [],
"bdshot_output_only": []
}
],
"serial_ports": [],
"has_rc_input": true,
"has_common_rc": false,
"rc_serial_device": null,
"has_ppm_pin": true,
"ppm_shared_with_rc_serial": false,
"has_pps_capture": false,
"has_safety_switch": false,
"has_safety_led": false,
"has_buzzer": false,
"num_power_inputs": 1,
"has_redundant_power": false,
"has_dual_battery_monitoring": false,
"has_dronecan_power_input": false,
"power_monitor_type": null,
"has_sd_card": false,
"has_ethernet": false,
"has_heater": false,
"sensor_imu_drivers": [
"ICM-20602",
"MPU-6000",
"MPU-9250",
"ICM-42688P"
],
"sensor_baro_drivers": [
"BMP280"
],
"sensor_mag_drivers": [
"AK8963",
"HMC5883L"
],
"sensor_osd_drivers": [],
"sensor_bus_info": {
"imu": [
{
"name": "ICM-42688P",
"bus_type": "SPI",
"bus_num": null,
"external": false
}
],
"baro": [
{
"name": "BMP280",
"bus_type": "I2C",
"bus_num": 2,
"external": true
}
],
"mag": [
{
"name": "AK8963",
"bus_type": "I2C",
"bus_num": 2,
"external": true
}
],
"osd": []
},
"sensor_variant_info": {
"has_variants": false,
"unconditional": {
"imu": [
{
"name": "ICM-42688P",
"bus_type": "SPI",
"bus_num": null,
"external": false
}
],
"baro": [
{
"name": "BMP280",
"bus_type": "I2C",
"bus_num": 2,
"external": true
}
],
"mag": [
{
"name": "AK8963",
"bus_type": "I2C",
"bus_num": 2,
"external": true
}
],
"osd": []
},
"variants": {}
},
"num_i2c_buses": 1,
"num_spi_buses": 3,
"num_can_buses": 0,
"has_usb": true,
"doc_url": null,
"doc_file": null,
"doc_exists": false,
"documented": false
}
@@ -0,0 +1,76 @@
{
"board": "espressif/esp32",
"chip_family": "unknown",
"chip_model": null,
"total_outputs": 4,
"has_io_board": false,
"io_outputs": 0,
"groups": [
{
"group": 1,
"timer": "Timer0",
"outputs": [
1,
2,
3,
4
],
"dshot": false,
"dshot_outputs": [],
"non_dshot_outputs": [
1,
2,
3,
4
],
"bdshot_outputs": [],
"bdshot_output_only": []
}
],
"serial_ports": [],
"has_rc_input": false,
"has_common_rc": false,
"rc_serial_device": null,
"has_ppm_pin": false,
"ppm_shared_with_rc_serial": false,
"has_pps_capture": false,
"has_safety_switch": false,
"has_safety_led": false,
"has_buzzer": false,
"num_power_inputs": 1,
"has_redundant_power": false,
"has_dual_battery_monitoring": false,
"has_dronecan_power_input": false,
"power_monitor_type": null,
"has_sd_card": true,
"has_ethernet": true,
"has_heater": false,
"sensor_imu_drivers": [],
"sensor_baro_drivers": [],
"sensor_mag_drivers": [],
"sensor_osd_drivers": [],
"sensor_bus_info": {
"imu": [],
"baro": [],
"mag": [],
"osd": []
},
"sensor_variant_info": {
"has_variants": false,
"unconditional": {
"imu": [],
"baro": [],
"mag": [],
"osd": []
},
"variants": {}
},
"num_i2c_buses": 0,
"num_spi_buses": 0,
"num_can_buses": 0,
"has_usb": false,
"doc_url": null,
"doc_file": null,
"doc_exists": false,
"documented": false
}
@@ -0,0 +1,120 @@
{
"board": "flywoo/gn-f405",
"chip_family": "stm32f4",
"chip_model": "STM32F405",
"total_outputs": 4,
"has_io_board": false,
"io_outputs": 0,
"groups": [
{
"group": 1,
"timer": "Timer2",
"outputs": [
3,
4
],
"dshot": true,
"dshot_outputs": [
3,
4
],
"non_dshot_outputs": [],
"bdshot_outputs": [],
"bdshot_output_only": []
},
{
"group": 2,
"timer": "Timer3",
"outputs": [
1,
2
],
"dshot": true,
"dshot_outputs": [
1,
2
],
"non_dshot_outputs": [],
"bdshot_outputs": [],
"bdshot_output_only": []
}
],
"serial_ports": [],
"has_rc_input": true,
"has_common_rc": false,
"rc_serial_device": null,
"has_ppm_pin": true,
"ppm_shared_with_rc_serial": false,
"has_pps_capture": false,
"has_safety_switch": false,
"has_safety_led": false,
"has_buzzer": false,
"num_power_inputs": 1,
"has_redundant_power": false,
"has_dual_battery_monitoring": false,
"has_dronecan_power_input": false,
"power_monitor_type": null,
"has_sd_card": false,
"has_ethernet": false,
"has_heater": false,
"sensor_imu_drivers": [
"MPU-6000"
],
"sensor_baro_drivers": [
"BMP280"
],
"sensor_mag_drivers": [],
"sensor_osd_drivers": [],
"sensor_bus_info": {
"imu": [
{
"name": "MPU-6000",
"bus_type": "SPI",
"bus_num": null,
"external": false
}
],
"baro": [
{
"name": "BMP280",
"bus_type": "I2C",
"bus_num": null,
"external": true
}
],
"mag": [],
"osd": []
},
"sensor_variant_info": {
"has_variants": false,
"unconditional": {
"imu": [
{
"name": "MPU-6000",
"bus_type": "SPI",
"bus_num": null,
"external": false
}
],
"baro": [
{
"name": "BMP280",
"bus_type": "I2C",
"bus_num": null,
"external": true
}
],
"mag": [],
"osd": []
},
"variants": {}
},
"num_i2c_buses": 1,
"num_spi_buses": 3,
"num_can_buses": 0,
"has_usb": true,
"doc_url": null,
"doc_file": null,
"doc_exists": false,
"documented": false
}
@@ -0,0 +1,228 @@
{
"board": "gearup/airbrainh743",
"chip_family": "stm32h7",
"chip_model": "STM32H743",
"total_outputs": 9,
"has_io_board": false,
"io_outputs": 0,
"groups": [
{
"group": 1,
"timer": "Timer1",
"outputs": [
1,
2,
3,
4
],
"dshot": true,
"dshot_outputs": [
1,
2,
3,
4
],
"non_dshot_outputs": [],
"bdshot_outputs": [
1,
2,
3,
4
],
"bdshot_output_only": []
},
{
"group": 2,
"timer": "Timer3",
"outputs": [
5,
6
],
"dshot": true,
"dshot_outputs": [
5,
6
],
"non_dshot_outputs": [],
"bdshot_outputs": [
5,
6
],
"bdshot_output_only": []
},
{
"group": 3,
"timer": "Timer2",
"outputs": [
7,
8
],
"dshot": true,
"dshot_outputs": [
7,
8
],
"non_dshot_outputs": [],
"bdshot_outputs": [
7,
8
],
"bdshot_output_only": []
},
{
"group": 4,
"timer": "Timer5",
"outputs": [
9
],
"dshot": false,
"dshot_outputs": [],
"non_dshot_outputs": [
9
],
"bdshot_outputs": [],
"bdshot_output_only": []
}
],
"serial_ports": [
{
"uart": "USART1",
"device": "/dev/ttyS0",
"label": "Debug Console",
"flow_control": false
},
{
"uart": "USART2",
"device": "/dev/ttyS1",
"label": "RC",
"flow_control": false
},
{
"uart": "USART3",
"device": "/dev/ttyS2",
"label": "TELEM4",
"flow_control": false
},
{
"uart": "UART4",
"device": "/dev/ttyS3",
"label": "TELEM1",
"flow_control": false
},
{
"uart": "UART5",
"device": "/dev/ttyS4",
"label": "TELEM2",
"flow_control": false
},
{
"uart": "UART7",
"device": "/dev/ttyS5",
"label": "TELEM3",
"flow_control": false
},
{
"uart": "UART8",
"device": "/dev/ttyS6",
"label": "GPS1",
"flow_control": false
}
],
"has_rc_input": true,
"has_common_rc": false,
"rc_serial_device": "/dev/ttyS1",
"has_ppm_pin": false,
"ppm_shared_with_rc_serial": false,
"has_pps_capture": false,
"has_safety_switch": false,
"has_safety_led": false,
"has_buzzer": false,
"num_power_inputs": 1,
"has_redundant_power": false,
"has_dual_battery_monitoring": false,
"has_dronecan_power_input": false,
"power_monitor_type": null,
"has_sd_card": false,
"has_ethernet": false,
"has_heater": false,
"sensor_imu_drivers": [
"ICM-42688P"
],
"sensor_baro_drivers": [
"DPS310"
],
"sensor_mag_drivers": [
"HMC5883L",
"IST8310",
"LIS3MDL",
"QMC5883L",
"IIS2MDC"
],
"sensor_osd_drivers": [],
"sensor_bus_info": {
"imu": [
{
"name": "ICM-42688P",
"bus_type": "SPI",
"bus_num": 1,
"external": false
}
],
"baro": [
{
"name": "DPS310",
"bus_type": "I2C",
"bus_num": null,
"external": false
}
],
"mag": [
{
"name": "IIS2MDC",
"bus_type": "I2C",
"bus_num": null,
"external": false
}
],
"osd": []
},
"sensor_variant_info": {
"has_variants": false,
"unconditional": {
"imu": [
{
"name": "ICM-42688P",
"bus_type": "SPI",
"bus_num": 1,
"external": false
}
],
"baro": [
{
"name": "DPS310",
"bus_type": "I2C",
"bus_num": null,
"external": false
}
],
"mag": [
{
"name": "IIS2MDC",
"bus_type": "I2C",
"bus_num": null,
"external": false
}
],
"osd": []
},
"variants": {}
},
"num_i2c_buses": 2,
"num_spi_buses": 3,
"num_can_buses": 0,
"has_usb": true,
"doc_url": "https://docs.px4.io/main/en/flight_controller/gearup_airbrainh743",
"doc_file": "gearup_airbrainh743.md",
"doc_exists": true,
"documented": true
}
@@ -0,0 +1,212 @@
{
"board": "hkust/nxt-dual",
"chip_family": "stm32h7",
"chip_model": "STM32H743",
"total_outputs": 8,
"has_io_board": false,
"io_outputs": 0,
"groups": [
{
"group": 1,
"timer": "Timer1",
"outputs": [
1,
2,
3,
4
],
"dshot": true,
"dshot_outputs": [
1,
2,
3,
4
],
"non_dshot_outputs": [],
"bdshot_outputs": [
1,
2,
3,
4
],
"bdshot_output_only": []
},
{
"group": 2,
"timer": "Timer2",
"outputs": [
7,
8
],
"dshot": true,
"dshot_outputs": [
7,
8
],
"non_dshot_outputs": [],
"bdshot_outputs": [
7,
8
],
"bdshot_output_only": []
},
{
"group": 3,
"timer": "Timer3",
"outputs": [
5,
6
],
"dshot": true,
"dshot_outputs": [
5,
6
],
"non_dshot_outputs": [],
"bdshot_outputs": [
5,
6
],
"bdshot_output_only": []
}
],
"serial_ports": [
{
"uart": "USART1",
"device": "/dev/ttyS0",
"label": "GPS1",
"flow_control": false
},
{
"uart": "USART2",
"device": "/dev/ttyS1",
"label": "TELEM1",
"flow_control": false
},
{
"uart": "USART3",
"device": "/dev/ttyS2",
"label": "GPS2",
"flow_control": false
},
{
"uart": "UART4",
"device": "/dev/ttyS3",
"label": "TELEM2",
"flow_control": false
},
{
"uart": "UART5",
"device": "/dev/ttyS4",
"label": "RC",
"flow_control": false
},
{
"uart": "USART6",
"device": "/dev/ttyS5",
"label": "Debug Console",
"flow_control": false
},
{
"uart": "UART7",
"device": "/dev/ttyS6",
"label": "TELEM3",
"flow_control": false
},
{
"uart": "UART8",
"device": "/dev/ttyS7",
"label": "TELEM4",
"flow_control": false
}
],
"has_rc_input": true,
"has_common_rc": false,
"rc_serial_device": "/dev/ttyS4",
"has_ppm_pin": false,
"ppm_shared_with_rc_serial": false,
"has_pps_capture": false,
"has_safety_switch": false,
"has_safety_led": false,
"has_buzzer": true,
"num_power_inputs": 1,
"has_redundant_power": false,
"has_dual_battery_monitoring": false,
"has_dronecan_power_input": false,
"power_monitor_type": null,
"has_sd_card": true,
"has_ethernet": false,
"has_heater": false,
"sensor_imu_drivers": [
"BMI088"
],
"sensor_baro_drivers": [
"SPL06"
],
"sensor_mag_drivers": [],
"sensor_osd_drivers": [],
"sensor_bus_info": {
"imu": [
{
"name": "BMI088",
"bus_type": "SPI",
"bus_num": 1,
"external": false
},
{
"name": "BMI088",
"bus_type": "SPI",
"bus_num": 4,
"external": false
}
],
"baro": [
{
"name": "SPL06",
"bus_type": "I2C",
"bus_num": null,
"external": true
}
],
"mag": [],
"osd": []
},
"sensor_variant_info": {
"has_variants": false,
"unconditional": {
"imu": [
{
"name": "BMI088",
"bus_type": "SPI",
"bus_num": 1,
"external": false
},
{
"name": "BMI088",
"bus_type": "SPI",
"bus_num": 4,
"external": false
}
],
"baro": [
{
"name": "SPL06",
"bus_type": "I2C",
"bus_num": null,
"external": true
}
],
"mag": [],
"osd": []
},
"variants": {}
},
"num_i2c_buses": 2,
"num_spi_buses": 4,
"num_can_buses": 0,
"has_usb": true,
"doc_url": null,
"doc_file": null,
"doc_exists": false,
"documented": false
}
@@ -0,0 +1,212 @@
{
"board": "hkust/nxt-v1",
"chip_family": "stm32h7",
"chip_model": "STM32H743",
"total_outputs": 8,
"has_io_board": false,
"io_outputs": 0,
"groups": [
{
"group": 1,
"timer": "Timer5",
"outputs": [
1,
2,
3,
4
],
"dshot": true,
"dshot_outputs": [
1,
2,
3,
4
],
"non_dshot_outputs": [],
"bdshot_outputs": [
1,
2,
3,
4
],
"bdshot_output_only": []
},
{
"group": 2,
"timer": "Timer4",
"outputs": [
5,
6
],
"dshot": true,
"dshot_outputs": [
5,
6
],
"non_dshot_outputs": [],
"bdshot_outputs": [
5
],
"bdshot_output_only": [
6
]
},
{
"group": 3,
"timer": "Timer1",
"outputs": [
8
],
"dshot": false,
"dshot_outputs": [],
"non_dshot_outputs": [
8
],
"bdshot_outputs": [],
"bdshot_output_only": []
},
{
"group": 4,
"timer": "Timer3",
"outputs": [
7
],
"dshot": false,
"dshot_outputs": [],
"non_dshot_outputs": [
7
],
"bdshot_outputs": [],
"bdshot_output_only": []
}
],
"serial_ports": [
{
"uart": "USART1",
"device": "/dev/ttyS0",
"label": "GPS1",
"flow_control": false
},
{
"uart": "USART2",
"device": "/dev/ttyS1",
"label": "GPS2",
"flow_control": false
},
{
"uart": "USART3",
"device": "/dev/ttyS2",
"label": "TELEM1",
"flow_control": false
},
{
"uart": "UART4",
"device": "/dev/ttyS3",
"label": "TELEM2",
"flow_control": false
},
{
"uart": "UART5",
"device": "/dev/ttyS4",
"label": "RC",
"flow_control": false
},
{
"uart": "UART7",
"device": "/dev/ttyS5",
"label": "TELEM3",
"flow_control": false
}
],
"has_rc_input": true,
"has_common_rc": false,
"rc_serial_device": "/dev/ttyS4",
"has_ppm_pin": false,
"ppm_shared_with_rc_serial": false,
"has_pps_capture": false,
"has_safety_switch": false,
"has_safety_led": false,
"has_buzzer": true,
"num_power_inputs": 1,
"has_redundant_power": false,
"has_dual_battery_monitoring": false,
"has_dronecan_power_input": false,
"power_monitor_type": null,
"has_sd_card": true,
"has_ethernet": false,
"has_heater": false,
"sensor_imu_drivers": [
"BMI088",
"ICM-20602",
"ICM-42688P"
],
"sensor_baro_drivers": [
"BMP388"
],
"sensor_mag_drivers": [],
"sensor_osd_drivers": [],
"sensor_bus_info": {
"imu": [
{
"name": "ICM-42688P",
"bus_type": "SPI",
"bus_num": null,
"external": false
},
{
"name": "BMI088",
"bus_type": "SPI",
"bus_num": null,
"external": false
}
],
"baro": [
{
"name": "BMP388",
"bus_type": "I2C",
"bus_num": null,
"external": false
}
],
"mag": [],
"osd": []
},
"sensor_variant_info": {
"has_variants": false,
"unconditional": {
"imu": [
{
"name": "ICM-42688P",
"bus_type": "SPI",
"bus_num": null,
"external": false
},
{
"name": "BMI088",
"bus_type": "SPI",
"bus_num": null,
"external": false
}
],
"baro": [
{
"name": "BMP388",
"bus_type": "I2C",
"bus_num": null,
"external": false
}
],
"mag": [],
"osd": []
},
"variants": {}
},
"num_i2c_buses": 2,
"num_spi_buses": 3,
"num_can_buses": 0,
"has_usb": true,
"doc_url": null,
"doc_file": null,
"doc_exists": false,
"documented": false
}
@@ -0,0 +1,270 @@
{
"board": "holybro/durandal-v1",
"chip_family": "stm32h7",
"chip_model": "STM32H743",
"total_outputs": 10,
"has_io_board": true,
"io_outputs": 8,
"groups": [
{
"group": 1,
"timer": "Timer1",
"outputs": [
1,
2,
3,
4
],
"dshot": true,
"dshot_outputs": [
1,
2,
3,
4
],
"non_dshot_outputs": [],
"bdshot_outputs": [
1,
2,
3,
4
],
"bdshot_output_only": []
},
{
"group": 2,
"timer": "Timer4",
"outputs": [
5
],
"dshot": true,
"dshot_outputs": [
5
],
"non_dshot_outputs": [],
"bdshot_outputs": [
5
],
"bdshot_output_only": []
},
{
"group": 3,
"timer": "Timer2",
"outputs": [
6,
7,
8
],
"dshot": false,
"dshot_outputs": [],
"non_dshot_outputs": [
6,
7,
8
],
"bdshot_outputs": [],
"bdshot_output_only": []
},
{
"group": 4,
"timer": "Timer12",
"outputs": [
9,
10
],
"dshot": false,
"dshot_outputs": [],
"non_dshot_outputs": [
9,
10
],
"bdshot_outputs": [],
"bdshot_output_only": []
}
],
"serial_ports": [
{
"uart": "USART1",
"device": "/dev/ttyS0",
"label": "GPS1",
"flow_control": false
},
{
"uart": "USART2",
"device": "/dev/ttyS1",
"label": "TELEM1",
"flow_control": true
},
{
"uart": "USART3",
"device": "/dev/ttyS2",
"label": "TELEM2",
"flow_control": true
},
{
"uart": "UART4",
"device": "/dev/ttyS3",
"label": "TELEM4",
"flow_control": false
},
{
"uart": "USART6",
"device": "/dev/ttyS4",
"label": "TELEM3",
"flow_control": true
},
{
"uart": "UART7",
"device": "/dev/ttyS5",
"label": "Debug Console",
"flow_control": false
},
{
"uart": "UART8",
"device": "/dev/ttyS6",
"label": "PX4IO",
"flow_control": false
}
],
"has_rc_input": false,
"has_common_rc": false,
"rc_serial_device": null,
"has_ppm_pin": false,
"ppm_shared_with_rc_serial": false,
"has_pps_capture": false,
"has_safety_switch": true,
"has_safety_led": true,
"has_buzzer": true,
"num_power_inputs": 2,
"has_redundant_power": true,
"has_dual_battery_monitoring": false,
"has_dronecan_power_input": false,
"power_monitor_type": "ina226",
"has_sd_card": true,
"has_ethernet": false,
"has_heater": true,
"sensor_imu_drivers": [
"BMI088",
"ICM-20602",
"ICM-20689",
"ICM-20948"
],
"sensor_baro_drivers": [
"MS5611"
],
"sensor_mag_drivers": [
"IST8310"
],
"sensor_osd_drivers": [],
"sensor_bus_info": {
"imu": [
{
"name": "ICM-20689",
"bus_type": "SPI",
"bus_num": null,
"external": false
},
{
"name": "BMI088",
"bus_type": "SPI",
"bus_num": null,
"external": false
}
],
"baro": [
{
"name": "MS5611",
"bus_type": "SPI",
"bus_num": null,
"external": false
}
],
"mag": [
{
"name": "IST8310",
"bus_type": "I2C",
"bus_num": null,
"external": false
},
{
"name": "IST8310",
"bus_type": "I2C",
"bus_num": 1,
"external": true
}
],
"osd": []
},
"sensor_variant_info": {
"has_variants": true,
"unconditional": {
"imu": [
{
"name": "ICM-20689",
"bus_type": "SPI",
"bus_num": null,
"external": false
}
],
"baro": [
{
"name": "MS5611",
"bus_type": "SPI",
"bus_num": null,
"external": false
}
],
"mag": [
{
"name": "IST8310",
"bus_type": "I2C",
"bus_num": null,
"external": false
},
{
"name": "IST8310",
"bus_type": "I2C",
"bus_num": 1,
"external": true
}
],
"osd": []
},
"variants": {
"VD000000": {
"imu": [
{
"name": "BMI088",
"bus_type": "SPI",
"bus_num": null,
"external": false
}
],
"baro": [],
"mag": [],
"osd": []
},
"VD000001": {
"imu": [
{
"name": "ICM-20602",
"bus_type": "SPI",
"bus_num": null,
"external": false
}
],
"baro": [],
"mag": [],
"osd": []
}
}
},
"num_i2c_buses": 4,
"num_spi_buses": 5,
"num_can_buses": 2,
"has_usb": true,
"doc_url": "https://docs.px4.io/main/en/flight_controller/durandal",
"doc_file": "durandal.md",
"doc_exists": true,
"documented": true
}
@@ -0,0 +1,49 @@
{
"manufacturer": "holybro",
"product": "durandal",
"fmu_version": null,
"since_version": "v1.18",
"manufacturer_url": "https://holybro.com/",
"rc_ports_wizard": [
{
"label": "RC INX",
"side": "IO"
}
],
"gps_ports_wizard": [
{
"port_key": "GPS1",
"label": "GPS1",
"pixhawk_standard": true,
"full_port": true
}
],
"power_ports_wizard": [
{
"label": "PowerXX1",
"connector_type": "TODO: connector type"
},
{
"label": "POWER 2",
"connector_type": "TODO: connector type"
}
],
"overview_wizard": {
"imu": [
"BMI088",
"ICM-20689"
],
"baro": null,
"mag": null,
"osd": null,
"dimensions_mm": null,
"weight_g": null,
"voltage_range": null,
"usb_connector": null,
"num_additional_adc_inputs": null,
"sensor_variant_labels": {
"VD000000": "Var1.1",
"VD000001": "var1.102"
}
}
}
@@ -0,0 +1,198 @@
{
"board": "holybro/kakutef7",
"chip_family": "stm32f7",
"chip_model": "STM32F745",
"total_outputs": 6,
"has_io_board": false,
"io_outputs": 0,
"groups": [
{
"group": 1,
"timer": "Timer3",
"outputs": [
1,
2
],
"dshot": true,
"dshot_outputs": [
1,
2
],
"non_dshot_outputs": [],
"bdshot_outputs": [],
"bdshot_output_only": [
1,
2
]
},
{
"group": 2,
"timer": "Timer1",
"outputs": [
3,
4
],
"dshot": true,
"dshot_outputs": [
3,
4
],
"non_dshot_outputs": [],
"bdshot_outputs": [
3,
4
],
"bdshot_output_only": []
},
{
"group": 3,
"timer": "Timer8",
"outputs": [
5
],
"dshot": true,
"dshot_outputs": [
5
],
"non_dshot_outputs": [],
"bdshot_outputs": [],
"bdshot_output_only": [
5
]
},
{
"group": 4,
"timer": "Timer5",
"outputs": [
6
],
"dshot": true,
"dshot_outputs": [
6
],
"non_dshot_outputs": [],
"bdshot_outputs": [],
"bdshot_output_only": [
6
]
}
],
"serial_ports": [
{
"uart": "USART1",
"device": "/dev/ttyS0",
"label": "TELEM1",
"flow_control": false
},
{
"uart": "USART2",
"device": "/dev/ttyS1",
"label": "TELEM2",
"flow_control": false
},
{
"uart": "USART3",
"device": "/dev/ttyS2",
"label": "Debug Console",
"flow_control": false
},
{
"uart": "UART4",
"device": "/dev/ttyS3",
"label": "GPS1",
"flow_control": false
},
{
"uart": "USART6",
"device": "/dev/ttyS4",
"label": "RC",
"flow_control": false
},
{
"uart": "UART7",
"device": "/dev/ttyS5",
"label": "",
"flow_control": false
}
],
"has_rc_input": true,
"has_common_rc": false,
"rc_serial_device": "/dev/ttyS4",
"has_ppm_pin": false,
"ppm_shared_with_rc_serial": false,
"has_pps_capture": false,
"has_safety_switch": false,
"has_safety_led": false,
"has_buzzer": false,
"num_power_inputs": 1,
"has_redundant_power": false,
"has_dual_battery_monitoring": false,
"has_dronecan_power_input": false,
"power_monitor_type": null,
"has_sd_card": false,
"has_ethernet": false,
"has_heater": false,
"sensor_imu_drivers": [
"ICM-20689",
"MPU-6000"
],
"sensor_baro_drivers": [
"BMP280"
],
"sensor_mag_drivers": [],
"sensor_osd_drivers": [
"AT7456E"
],
"sensor_bus_info": {
"imu": [
{
"name": "ICM-20689",
"bus_type": "SPI",
"bus_num": null,
"external": false
}
],
"baro": [
{
"name": "BMP280",
"bus_type": "I2C",
"bus_num": null,
"external": true
}
],
"mag": [],
"osd": []
},
"sensor_variant_info": {
"has_variants": false,
"unconditional": {
"imu": [
{
"name": "ICM-20689",
"bus_type": "SPI",
"bus_num": null,
"external": false
}
],
"baro": [
{
"name": "BMP280",
"bus_type": "I2C",
"bus_num": null,
"external": true
}
],
"mag": [],
"osd": []
},
"variants": {}
},
"num_i2c_buses": 1,
"num_spi_buses": 3,
"num_can_buses": 0,
"has_usb": true,
"doc_url": "https://docs.px4.io/main/en/flight_controller/kakutef7",
"doc_file": "kakutef7.md",
"doc_exists": true,
"documented": true
}
@@ -0,0 +1,266 @@
{
"board": "holybro/kakuteh7-wing",
"chip_family": "stm32h7",
"chip_model": "STM32H743",
"total_outputs": 14,
"has_io_board": false,
"io_outputs": 0,
"groups": [
{
"group": 1,
"timer": "Timer1",
"outputs": [
1,
2,
3,
4
],
"dshot": true,
"dshot_outputs": [
1,
2,
3,
4
],
"non_dshot_outputs": [],
"bdshot_outputs": [
1,
2,
3,
4
],
"bdshot_output_only": []
},
{
"group": 2,
"timer": "Timer4",
"outputs": [
5,
6
],
"dshot": true,
"dshot_outputs": [
5,
6
],
"non_dshot_outputs": [],
"bdshot_outputs": [
5
],
"bdshot_output_only": [
6
]
},
{
"group": 3,
"timer": "Timer5",
"outputs": [
7,
8
],
"dshot": true,
"dshot_outputs": [
7,
8
],
"non_dshot_outputs": [],
"bdshot_outputs": [
7,
8
],
"bdshot_output_only": []
},
{
"group": 4,
"timer": "Timer15",
"outputs": [
9,
10
],
"dshot": false,
"dshot_outputs": [],
"non_dshot_outputs": [
9,
10
],
"bdshot_outputs": [],
"bdshot_output_only": []
},
{
"group": 5,
"timer": "Timer3",
"outputs": [
11,
12,
13
],
"dshot": true,
"dshot_outputs": [
11,
12,
13
],
"non_dshot_outputs": [],
"bdshot_outputs": [
11,
12,
13
],
"bdshot_output_only": []
},
{
"group": 6,
"timer": "Timer2",
"outputs": [
14
],
"dshot": true,
"dshot_outputs": [
14
],
"non_dshot_outputs": [],
"bdshot_outputs": [
14
],
"bdshot_output_only": []
}
],
"serial_ports": [
{
"uart": "USART1",
"device": "/dev/ttyS0",
"label": "GPS1",
"flow_control": false
},
{
"uart": "USART2",
"device": "/dev/ttyS1",
"label": "GPS2",
"flow_control": false
},
{
"uart": "USART3",
"device": "/dev/ttyS2",
"label": "TELEM1",
"flow_control": false
},
{
"uart": "UART5",
"device": "/dev/ttyS3",
"label": "TELEM2",
"flow_control": false
},
{
"uart": "USART6",
"device": "/dev/ttyS4",
"label": "RC",
"flow_control": false
},
{
"uart": "UART7",
"device": "/dev/ttyS5",
"label": "TELEM3",
"flow_control": true
},
{
"uart": "UART8",
"device": "/dev/ttyS6",
"label": "Debug Console",
"flow_control": false
}
],
"has_rc_input": true,
"has_common_rc": false,
"rc_serial_device": "/dev/ttyS4",
"has_ppm_pin": true,
"ppm_shared_with_rc_serial": true,
"has_pps_capture": false,
"has_safety_switch": false,
"has_safety_led": false,
"has_buzzer": true,
"num_power_inputs": 2,
"has_redundant_power": true,
"has_dual_battery_monitoring": false,
"has_dronecan_power_input": false,
"power_monitor_type": "analog",
"has_sd_card": true,
"has_ethernet": false,
"has_heater": false,
"sensor_imu_drivers": [
"ICM-42688P"
],
"sensor_baro_drivers": [
"BMP280",
"SPA06"
],
"sensor_mag_drivers": [],
"sensor_osd_drivers": [
"AT7456E"
],
"sensor_bus_info": {
"imu": [
{
"name": "ICM-42688P",
"bus_type": "SPI",
"bus_num": null,
"external": false
}
],
"baro": [
{
"name": "SPA06",
"bus_type": "I2C",
"bus_num": 4,
"external": false
}
],
"mag": [],
"osd": [
{
"name": "AT7456E",
"bus_type": "SPI",
"bus_num": null,
"external": false
}
]
},
"sensor_variant_info": {
"has_variants": false,
"unconditional": {
"imu": [
{
"name": "ICM-42688P",
"bus_type": "SPI",
"bus_num": null,
"external": false
}
],
"baro": [
{
"name": "SPA06",
"bus_type": "I2C",
"bus_num": 4,
"external": false
}
],
"mag": [],
"osd": [
{
"name": "AT7456E",
"bus_type": "SPI",
"bus_num": null,
"external": false
}
]
},
"variants": {}
},
"num_i2c_buses": 3,
"num_spi_buses": 3,
"num_can_buses": 1,
"has_usb": true,
"doc_url": "https://docs.px4.io/main/en/flight_controller/kakuteh7-wing",
"doc_file": "kakuteh7-wing.md",
"doc_exists": true,
"documented": true
}
@@ -0,0 +1,203 @@
{
"board": "holybro/kakuteh7",
"chip_family": "stm32h7",
"chip_model": "STM32H743",
"total_outputs": 8,
"has_io_board": false,
"io_outputs": 0,
"groups": [
{
"group": 1,
"timer": "Timer3",
"outputs": [
1,
2
],
"dshot": true,
"dshot_outputs": [
1,
2
],
"non_dshot_outputs": [],
"bdshot_outputs": [
1,
2
],
"bdshot_output_only": []
},
{
"group": 2,
"timer": "Timer2",
"outputs": [
3,
4
],
"dshot": true,
"dshot_outputs": [
3,
4
],
"non_dshot_outputs": [],
"bdshot_outputs": [
3,
4
],
"bdshot_output_only": []
},
{
"group": 3,
"timer": "Timer5",
"outputs": [
5,
6
],
"dshot": true,
"dshot_outputs": [
5,
6
],
"non_dshot_outputs": [],
"bdshot_outputs": [
5,
6
],
"bdshot_output_only": []
},
{
"group": 4,
"timer": "Timer8",
"outputs": [
7,
8
],
"dshot": true,
"dshot_outputs": [
7,
8
],
"non_dshot_outputs": [],
"bdshot_outputs": [
7,
8
],
"bdshot_output_only": []
}
],
"serial_ports": [
{
"uart": "USART1",
"device": "/dev/ttyS0",
"label": "TELEM1",
"flow_control": false
},
{
"uart": "USART2",
"device": "/dev/ttyS1",
"label": "TELEM2",
"flow_control": false
},
{
"uart": "USART3",
"device": "/dev/ttyS2",
"label": "Debug Console",
"flow_control": false
},
{
"uart": "UART4",
"device": "/dev/ttyS3",
"label": "GPS1",
"flow_control": false
},
{
"uart": "USART6",
"device": "/dev/ttyS4",
"label": "RC",
"flow_control": false
},
{
"uart": "UART7",
"device": "/dev/ttyS5",
"label": "",
"flow_control": false
}
],
"has_rc_input": true,
"has_common_rc": false,
"rc_serial_device": "/dev/ttyS4",
"has_ppm_pin": false,
"ppm_shared_with_rc_serial": false,
"has_pps_capture": false,
"has_safety_switch": false,
"has_safety_led": false,
"has_buzzer": false,
"num_power_inputs": 1,
"has_redundant_power": false,
"has_dual_battery_monitoring": false,
"has_dronecan_power_input": false,
"power_monitor_type": "ina226",
"has_sd_card": true,
"has_ethernet": false,
"has_heater": false,
"sensor_imu_drivers": [
"BMI270",
"ICM-42688P",
"MPU-6000"
],
"sensor_baro_drivers": [
"SPA06"
],
"sensor_mag_drivers": [],
"sensor_osd_drivers": [],
"sensor_bus_info": {
"imu": [
{
"name": "ICM-42688P",
"bus_type": "SPI",
"bus_num": null,
"external": false
}
],
"baro": [
{
"name": "SPA06",
"bus_type": "I2C",
"bus_num": null,
"external": true
}
],
"mag": [],
"osd": []
},
"sensor_variant_info": {
"has_variants": false,
"unconditional": {
"imu": [
{
"name": "ICM-42688P",
"bus_type": "SPI",
"bus_num": null,
"external": false
}
],
"baro": [
{
"name": "SPA06",
"bus_type": "I2C",
"bus_num": null,
"external": true
}
],
"mag": [],
"osd": []
},
"variants": {}
},
"num_i2c_buses": 1,
"num_spi_buses": 3,
"num_can_buses": 0,
"has_usb": true,
"doc_url": "https://docs.px4.io/main/en/flight_controller/kakuteh7",
"doc_file": "kakuteh7.md",
"doc_exists": true,
"documented": true
}
@@ -0,0 +1,14 @@
{
"manufacturer": "Holybro",
"product": "KakuteH7",
"fmu_version": "v1.18",
"since_version": "n",
"manufacturer_url": "https://holybro.com/",
"rc_ports_wizard": [
{
"label": "GPS1",
"side": "FMU"
}
],
"gps_ports_wizard": null
}
@@ -0,0 +1,36 @@
{
"manufacturer": "Holybro",
"product": "KakuteH7",
"board": null,
"fmu_version": "v1.18",
"since_version": "RC",
"manufacturer_url": "https://holybro.com/",
"rc_ports_wizard": [
{
"label": "n",
"side": "FMU"
}
],
"gps_ports_wizard": null,
"power_ports_wizard": [
{
"label": "GPS1",
"connector_type": "n"
}
],
"overview_wizard": {
"imu": null,
"baro": null,
"mag": null,
"osd": null,
"width_mm": null,
"length_mm": null,
"height_mm": null,
"weight_g": null,
"min_voltage": null,
"max_voltage": null,
"usb_connectors": null,
"num_additional_adc_inputs": null,
"sensor_variant_labels": null
}
}
@@ -0,0 +1,216 @@
{
"board": "holybro/kakuteh7dualimu",
"chip_family": "stm32h7",
"chip_model": "STM32H743",
"total_outputs": 8,
"has_io_board": false,
"io_outputs": 0,
"groups": [
{
"group": 1,
"timer": "Timer3",
"outputs": [
1,
2
],
"dshot": true,
"dshot_outputs": [
1,
2
],
"non_dshot_outputs": [],
"bdshot_outputs": [
1,
2
],
"bdshot_output_only": []
},
{
"group": 2,
"timer": "Timer2",
"outputs": [
3,
4
],
"dshot": true,
"dshot_outputs": [
3,
4
],
"non_dshot_outputs": [],
"bdshot_outputs": [
3,
4
],
"bdshot_output_only": []
},
{
"group": 3,
"timer": "Timer5",
"outputs": [
5,
6
],
"dshot": true,
"dshot_outputs": [
5,
6
],
"non_dshot_outputs": [],
"bdshot_outputs": [
5,
6
],
"bdshot_output_only": []
},
{
"group": 4,
"timer": "Timer4",
"outputs": [
7,
8
],
"dshot": true,
"dshot_outputs": [
7,
8
],
"non_dshot_outputs": [],
"bdshot_outputs": [
7,
8
],
"bdshot_output_only": []
}
],
"serial_ports": [
{
"uart": "USART1",
"device": "/dev/ttyS0",
"label": "TELEM1",
"flow_control": false
},
{
"uart": "USART2",
"device": "/dev/ttyS1",
"label": "TELEM2",
"flow_control": false
},
{
"uart": "USART3",
"device": "/dev/ttyS2",
"label": "TELEM3",
"flow_control": false
},
{
"uart": "UART4",
"device": "/dev/ttyS3",
"label": "GPS1",
"flow_control": false
},
{
"uart": "USART6",
"device": "/dev/ttyS4",
"label": "RC",
"flow_control": false
},
{
"uart": "UART7",
"device": "/dev/ttyS5",
"label": "TELEM4",
"flow_control": false
}
],
"has_rc_input": true,
"has_common_rc": false,
"rc_serial_device": "/dev/ttyS4",
"has_ppm_pin": true,
"ppm_shared_with_rc_serial": true,
"has_pps_capture": false,
"has_safety_switch": false,
"has_safety_led": false,
"has_buzzer": true,
"num_power_inputs": 1,
"has_redundant_power": false,
"has_dual_battery_monitoring": false,
"has_dronecan_power_input": false,
"power_monitor_type": null,
"has_sd_card": true,
"has_ethernet": false,
"has_heater": false,
"sensor_imu_drivers": [
"ICM-42688P",
"ICM-45686"
],
"sensor_baro_drivers": [
"ICP-20100"
],
"sensor_mag_drivers": [],
"sensor_osd_drivers": [
"AT7456E"
],
"sensor_bus_info": {
"imu": [
{
"name": "ICM-45686",
"bus_type": "SPI",
"bus_num": null,
"external": false
},
{
"name": "ICM-42688P",
"bus_type": "SPI",
"bus_num": null,
"external": false
}
],
"baro": [
{
"name": "ICP-20100",
"bus_type": "I2C",
"bus_num": null,
"external": true
}
],
"mag": [],
"osd": []
},
"sensor_variant_info": {
"has_variants": false,
"unconditional": {
"imu": [
{
"name": "ICM-45686",
"bus_type": "SPI",
"bus_num": null,
"external": false
},
{
"name": "ICM-42688P",
"bus_type": "SPI",
"bus_num": null,
"external": false
}
],
"baro": [
{
"name": "ICP-20100",
"bus_type": "I2C",
"bus_num": null,
"external": true
}
],
"mag": [],
"osd": []
},
"variants": {}
},
"num_i2c_buses": 1,
"num_spi_buses": 3,
"num_can_buses": 1,
"has_usb": true,
"doc_url": "https://docs.px4.io/main/en/flight_controller/kakuteh7v2",
"doc_file": "kakuteh7v2.md",
"doc_exists": true,
"documented": true
}
@@ -0,0 +1,203 @@
{
"board": "holybro/kakuteh7mini",
"chip_family": "stm32h7",
"chip_model": "STM32H743",
"total_outputs": 8,
"has_io_board": false,
"io_outputs": 0,
"groups": [
{
"group": 1,
"timer": "Timer3",
"outputs": [
1,
2
],
"dshot": true,
"dshot_outputs": [
1,
2
],
"non_dshot_outputs": [],
"bdshot_outputs": [
1,
2
],
"bdshot_output_only": []
},
{
"group": 2,
"timer": "Timer2",
"outputs": [
3,
4
],
"dshot": true,
"dshot_outputs": [
3,
4
],
"non_dshot_outputs": [],
"bdshot_outputs": [
3,
4
],
"bdshot_output_only": []
},
{
"group": 3,
"timer": "Timer5",
"outputs": [
5,
6
],
"dshot": true,
"dshot_outputs": [
5,
6
],
"non_dshot_outputs": [],
"bdshot_outputs": [
5,
6
],
"bdshot_output_only": []
},
{
"group": 4,
"timer": "Timer8",
"outputs": [
7,
8
],
"dshot": true,
"dshot_outputs": [
7,
8
],
"non_dshot_outputs": [],
"bdshot_outputs": [
7,
8
],
"bdshot_output_only": []
}
],
"serial_ports": [
{
"uart": "USART1",
"device": "/dev/ttyS0",
"label": "TELEM1",
"flow_control": false
},
{
"uart": "USART2",
"device": "/dev/ttyS1",
"label": "TELEM2",
"flow_control": false
},
{
"uart": "USART3",
"device": "/dev/ttyS2",
"label": "Debug Console",
"flow_control": false
},
{
"uart": "UART4",
"device": "/dev/ttyS3",
"label": "GPS1",
"flow_control": false
},
{
"uart": "USART6",
"device": "/dev/ttyS4",
"label": "RC",
"flow_control": false
},
{
"uart": "UART7",
"device": "/dev/ttyS5",
"label": "",
"flow_control": false
}
],
"has_rc_input": true,
"has_common_rc": false,
"rc_serial_device": "/dev/ttyS4",
"has_ppm_pin": false,
"ppm_shared_with_rc_serial": false,
"has_pps_capture": false,
"has_safety_switch": false,
"has_safety_led": false,
"has_buzzer": false,
"num_power_inputs": 1,
"has_redundant_power": false,
"has_dual_battery_monitoring": false,
"has_dronecan_power_input": false,
"power_monitor_type": "ina226",
"has_sd_card": true,
"has_ethernet": false,
"has_heater": false,
"sensor_imu_drivers": [
"BMI270",
"ICM-42688P",
"MPU-6000"
],
"sensor_baro_drivers": [
"SPA06"
],
"sensor_mag_drivers": [],
"sensor_osd_drivers": [],
"sensor_bus_info": {
"imu": [
{
"name": "ICM-42688P",
"bus_type": "SPI",
"bus_num": null,
"external": false
}
],
"baro": [
{
"name": "SPA06",
"bus_type": "I2C",
"bus_num": null,
"external": true
}
],
"mag": [],
"osd": []
},
"sensor_variant_info": {
"has_variants": false,
"unconditional": {
"imu": [
{
"name": "ICM-42688P",
"bus_type": "SPI",
"bus_num": null,
"external": false
}
],
"baro": [
{
"name": "SPA06",
"bus_type": "I2C",
"bus_num": null,
"external": true
}
],
"mag": [],
"osd": []
},
"variants": {}
},
"num_i2c_buses": 1,
"num_spi_buses": 3,
"num_can_buses": 0,
"has_usb": true,
"doc_url": "https://docs.px4.io/main/en/flight_controller/kakuteh7mini",
"doc_file": "kakuteh7mini.md",
"doc_exists": true,
"documented": true
}
@@ -0,0 +1,203 @@
{
"board": "holybro/kakuteh7v2",
"chip_family": "stm32h7",
"chip_model": "STM32H743",
"total_outputs": 8,
"has_io_board": false,
"io_outputs": 0,
"groups": [
{
"group": 1,
"timer": "Timer3",
"outputs": [
1,
2
],
"dshot": true,
"dshot_outputs": [
1,
2
],
"non_dshot_outputs": [],
"bdshot_outputs": [
1,
2
],
"bdshot_output_only": []
},
{
"group": 2,
"timer": "Timer2",
"outputs": [
3,
4
],
"dshot": true,
"dshot_outputs": [
3,
4
],
"non_dshot_outputs": [],
"bdshot_outputs": [
3,
4
],
"bdshot_output_only": []
},
{
"group": 3,
"timer": "Timer5",
"outputs": [
5,
6
],
"dshot": true,
"dshot_outputs": [
5,
6
],
"non_dshot_outputs": [],
"bdshot_outputs": [
5,
6
],
"bdshot_output_only": []
},
{
"group": 4,
"timer": "Timer8",
"outputs": [
7,
8
],
"dshot": true,
"dshot_outputs": [
7,
8
],
"non_dshot_outputs": [],
"bdshot_outputs": [
7,
8
],
"bdshot_output_only": []
}
],
"serial_ports": [
{
"uart": "USART1",
"device": "/dev/ttyS0",
"label": "TELEM1",
"flow_control": false
},
{
"uart": "USART2",
"device": "/dev/ttyS1",
"label": "TELEM2",
"flow_control": false
},
{
"uart": "USART3",
"device": "/dev/ttyS2",
"label": "Debug Console",
"flow_control": false
},
{
"uart": "UART4",
"device": "/dev/ttyS3",
"label": "GPS1",
"flow_control": false
},
{
"uart": "USART6",
"device": "/dev/ttyS4",
"label": "RC",
"flow_control": false
},
{
"uart": "UART7",
"device": "/dev/ttyS5",
"label": "",
"flow_control": false
}
],
"has_rc_input": true,
"has_common_rc": false,
"rc_serial_device": "/dev/ttyS4",
"has_ppm_pin": false,
"ppm_shared_with_rc_serial": false,
"has_pps_capture": false,
"has_safety_switch": false,
"has_safety_led": false,
"has_buzzer": false,
"num_power_inputs": 1,
"has_redundant_power": false,
"has_dual_battery_monitoring": false,
"has_dronecan_power_input": false,
"power_monitor_type": "ina226",
"has_sd_card": true,
"has_ethernet": false,
"has_heater": false,
"sensor_imu_drivers": [
"BMI270",
"ICM-42688P",
"MPU-6000"
],
"sensor_baro_drivers": [
"SPA06"
],
"sensor_mag_drivers": [],
"sensor_osd_drivers": [],
"sensor_bus_info": {
"imu": [
{
"name": "ICM-42688P",
"bus_type": "SPI",
"bus_num": null,
"external": false
}
],
"baro": [
{
"name": "SPA06",
"bus_type": "I2C",
"bus_num": null,
"external": true
}
],
"mag": [],
"osd": []
},
"sensor_variant_info": {
"has_variants": false,
"unconditional": {
"imu": [
{
"name": "ICM-42688P",
"bus_type": "SPI",
"bus_num": null,
"external": false
}
],
"baro": [
{
"name": "SPA06",
"bus_type": "I2C",
"bus_num": null,
"external": true
}
],
"mag": [],
"osd": []
},
"variants": {}
},
"num_i2c_buses": 1,
"num_spi_buses": 3,
"num_can_buses": 0,
"has_usb": true,
"doc_url": "https://docs.px4.io/main/en/flight_controller/kakuteh7v2",
"doc_file": "kakuteh7v2.md",
"doc_exists": true,
"documented": true
}
@@ -0,0 +1,261 @@
{
"board": "holybro/pix32v5",
"chip_family": "stm32f7",
"chip_model": "STM32F765",
"total_outputs": 11,
"has_io_board": true,
"io_outputs": 8,
"groups": [
{
"group": 1,
"timer": "Timer1",
"outputs": [
1,
2,
3,
4
],
"dshot": true,
"dshot_outputs": [
1,
2,
3,
4
],
"non_dshot_outputs": [],
"bdshot_outputs": [
1,
2,
3,
4
],
"bdshot_output_only": []
},
{
"group": 2,
"timer": "Timer4",
"outputs": [
5,
6
],
"dshot": false,
"dshot_outputs": [],
"non_dshot_outputs": [
5,
6
],
"bdshot_outputs": [],
"bdshot_output_only": []
},
{
"group": 3,
"timer": "Timer12",
"outputs": [
7,
8
],
"dshot": false,
"dshot_outputs": [],
"non_dshot_outputs": [
7,
8
],
"bdshot_outputs": [],
"bdshot_output_only": []
},
{
"group": 4,
"timer": "Timer2",
"outputs": [
9,
10,
11
],
"dshot": false,
"dshot_outputs": [],
"non_dshot_outputs": [
9,
10,
11
],
"bdshot_outputs": [],
"bdshot_output_only": []
}
],
"serial_ports": [
{
"uart": "USART1",
"device": "/dev/ttyS0",
"label": "GPS1",
"flow_control": false
},
{
"uart": "USART2",
"device": "/dev/ttyS1",
"label": "TELEM1",
"flow_control": true
},
{
"uart": "USART3",
"device": "/dev/ttyS2",
"label": "TELEM2",
"flow_control": true
},
{
"uart": "UART4",
"device": "/dev/ttyS3",
"label": "TELEM4",
"flow_control": false
},
{
"uart": "USART6",
"device": "/dev/ttyS4",
"label": "TELEM3",
"flow_control": true
},
{
"uart": "UART7",
"device": "/dev/ttyS5",
"label": "Debug Console",
"flow_control": false
},
{
"uart": "UART8",
"device": "/dev/ttyS6",
"label": "PX4IO",
"flow_control": false
}
],
"has_rc_input": true,
"has_common_rc": false,
"rc_serial_device": null,
"has_ppm_pin": true,
"ppm_shared_with_rc_serial": false,
"has_pps_capture": false,
"has_safety_switch": true,
"has_safety_led": true,
"has_buzzer": true,
"num_power_inputs": 2,
"has_redundant_power": true,
"has_dual_battery_monitoring": false,
"has_dronecan_power_input": false,
"power_monitor_type": "ina226",
"has_sd_card": true,
"has_ethernet": false,
"has_heater": false,
"sensor_imu_drivers": [
"BMI055",
"ICM-20602",
"ICM-20689",
"ICM-20948"
],
"sensor_baro_drivers": [
"MS5611"
],
"sensor_mag_drivers": [
"IST8310"
],
"sensor_osd_drivers": [],
"sensor_bus_info": {
"imu": [
{
"name": "ICM-20602",
"bus_type": "SPI",
"bus_num": null,
"external": false
},
{
"name": "ICM-20689",
"bus_type": "SPI",
"bus_num": null,
"external": false
},
{
"name": "BMI055",
"bus_type": "SPI",
"bus_num": null,
"external": false
}
],
"baro": [
{
"name": "MS5611",
"bus_type": "SPI",
"bus_num": null,
"external": false
}
],
"mag": [
{
"name": "IST8310",
"bus_type": "I2C",
"bus_num": null,
"external": false
},
{
"name": "IST8310",
"bus_type": "I2C",
"bus_num": 1,
"external": true
}
],
"osd": []
},
"sensor_variant_info": {
"has_variants": false,
"unconditional": {
"imu": [
{
"name": "ICM-20602",
"bus_type": "SPI",
"bus_num": null,
"external": false
},
{
"name": "ICM-20689",
"bus_type": "SPI",
"bus_num": null,
"external": false
},
{
"name": "BMI055",
"bus_type": "SPI",
"bus_num": null,
"external": false
}
],
"baro": [
{
"name": "MS5611",
"bus_type": "SPI",
"bus_num": null,
"external": false
}
],
"mag": [
{
"name": "IST8310",
"bus_type": "I2C",
"bus_num": null,
"external": false
},
{
"name": "IST8310",
"bus_type": "I2C",
"bus_num": 1,
"external": true
}
],
"osd": []
},
"variants": {}
},
"num_i2c_buses": 4,
"num_spi_buses": 5,
"num_can_buses": 3,
"has_usb": true,
"doc_url": "https://docs.px4.io/main/en/flight_controller/holybro_pix32_v5",
"doc_file": "holybro_pix32_v5.md",
"doc_exists": true,
"documented": true
}
@@ -0,0 +1,136 @@
{
"board": "matek/gnss-m9n-f4",
"chip_family": "stm32f4",
"chip_model": "STM32F405",
"total_outputs": null,
"has_io_board": false,
"io_outputs": 0,
"groups": [
{
"group": 1,
"timer": "Timer3",
"outputs": [
1,
2
],
"dshot": true,
"dshot_outputs": [
1,
2
],
"non_dshot_outputs": [],
"bdshot_outputs": [],
"bdshot_output_only": []
},
{
"group": 2,
"timer": "Timer2",
"outputs": [
3,
4
],
"dshot": true,
"dshot_outputs": [
3,
4
],
"non_dshot_outputs": [],
"bdshot_outputs": [],
"bdshot_output_only": []
}
],
"serial_ports": [],
"has_rc_input": false,
"has_common_rc": false,
"rc_serial_device": null,
"has_ppm_pin": false,
"ppm_shared_with_rc_serial": false,
"has_pps_capture": false,
"has_safety_switch": false,
"has_safety_led": false,
"has_buzzer": false,
"num_power_inputs": 1,
"has_redundant_power": false,
"has_dual_battery_monitoring": false,
"has_dronecan_power_input": false,
"power_monitor_type": null,
"has_sd_card": false,
"has_ethernet": false,
"has_heater": false,
"sensor_imu_drivers": [
"ICM-20602"
],
"sensor_baro_drivers": [
"DPS310"
],
"sensor_mag_drivers": [
"RM3100"
],
"sensor_osd_drivers": [],
"sensor_bus_info": {
"imu": [
{
"name": "ICM-20602",
"bus_type": "SPI",
"bus_num": null,
"external": false
}
],
"baro": [
{
"name": "DPS310",
"bus_type": "I2C",
"bus_num": null,
"external": true
}
],
"mag": [
{
"name": "RM3100",
"bus_type": "SPI",
"bus_num": 2,
"external": false
}
],
"osd": []
},
"sensor_variant_info": {
"has_variants": false,
"unconditional": {
"imu": [
{
"name": "ICM-20602",
"bus_type": "SPI",
"bus_num": null,
"external": false
}
],
"baro": [
{
"name": "DPS310",
"bus_type": "I2C",
"bus_num": null,
"external": true
}
],
"mag": [
{
"name": "RM3100",
"bus_type": "SPI",
"bus_num": 2,
"external": false
}
],
"osd": []
},
"variants": {}
},
"num_i2c_buses": 1,
"num_spi_buses": 3,
"num_can_buses": 1,
"has_usb": true,
"doc_url": null,
"doc_file": null,
"doc_exists": false,
"documented": false
}
@@ -0,0 +1,246 @@
{
"board": "matek/h743-mini",
"chip_family": "stm32h7",
"chip_model": "STM32H743",
"total_outputs": 12,
"has_io_board": false,
"io_outputs": 0,
"groups": [
{
"group": 1,
"timer": "Timer3",
"outputs": [
1,
2
],
"dshot": true,
"dshot_outputs": [
1,
2
],
"non_dshot_outputs": [],
"bdshot_outputs": [
1,
2
],
"bdshot_output_only": []
},
{
"group": 2,
"timer": "Timer5",
"outputs": [
3,
4,
5,
6
],
"dshot": true,
"dshot_outputs": [
3,
4,
5,
6
],
"non_dshot_outputs": [],
"bdshot_outputs": [
3,
4,
5,
6
],
"bdshot_output_only": []
},
{
"group": 3,
"timer": "Timer4",
"outputs": [
7,
8,
9,
10
],
"dshot": true,
"dshot_outputs": [
7,
8,
9,
10
],
"non_dshot_outputs": [],
"bdshot_outputs": [
7,
8,
9
],
"bdshot_output_only": [
10
]
},
{
"group": 4,
"timer": "Timer15",
"outputs": [
11,
12
],
"dshot": false,
"dshot_outputs": [],
"non_dshot_outputs": [
11,
12
],
"bdshot_outputs": [],
"bdshot_output_only": []
}
],
"serial_ports": [
{
"uart": "USART1",
"device": "/dev/ttyS0",
"label": "Debug Console",
"flow_control": false
},
{
"uart": "USART2",
"device": "/dev/ttyS1",
"label": "GPS1",
"flow_control": false
},
{
"uart": "USART3",
"device": "/dev/ttyS2",
"label": "TELEM1",
"flow_control": false
},
{
"uart": "UART4",
"device": "/dev/ttyS3",
"label": "TELEM2",
"flow_control": false
},
{
"uart": "USART6",
"device": "/dev/ttyS4",
"label": "",
"flow_control": false
},
{
"uart": "UART7",
"device": "/dev/ttyS5",
"label": "TELEM3",
"flow_control": true
},
{
"uart": "UART8",
"device": "/dev/ttyS6",
"label": "TELEM4",
"flow_control": false
}
],
"has_rc_input": true,
"has_common_rc": false,
"rc_serial_device": null,
"has_ppm_pin": false,
"ppm_shared_with_rc_serial": false,
"has_pps_capture": false,
"has_safety_switch": false,
"has_safety_led": false,
"has_buzzer": false,
"num_power_inputs": 1,
"has_redundant_power": false,
"has_dual_battery_monitoring": false,
"has_dronecan_power_input": false,
"power_monitor_type": null,
"has_sd_card": true,
"has_ethernet": false,
"has_heater": false,
"sensor_imu_drivers": [
"ICM-20602",
"MPU-6000"
],
"sensor_baro_drivers": [
"DPS310"
],
"sensor_mag_drivers": [
"QMC5883L"
],
"sensor_osd_drivers": [],
"sensor_bus_info": {
"imu": [
{
"name": "ICM-20602",
"bus_type": "SPI",
"bus_num": null,
"external": false
},
{
"name": "MPU-6000",
"bus_type": "SPI",
"bus_num": null,
"external": false
}
],
"baro": [
{
"name": "DPS310",
"bus_type": "I2C",
"bus_num": null,
"external": false
}
],
"mag": [
{
"name": "QMC5883L",
"bus_type": "I2C",
"bus_num": null,
"external": true
}
],
"osd": []
},
"sensor_variant_info": {
"has_variants": false,
"unconditional": {
"imu": [
{
"name": "ICM-20602",
"bus_type": "SPI",
"bus_num": null,
"external": false
},
{
"name": "MPU-6000",
"bus_type": "SPI",
"bus_num": null,
"external": false
}
],
"baro": [
{
"name": "DPS310",
"bus_type": "I2C",
"bus_num": null,
"external": false
}
],
"mag": [
{
"name": "QMC5883L",
"bus_type": "I2C",
"bus_num": null,
"external": true
}
],
"osd": []
},
"variants": {}
},
"num_i2c_buses": 2,
"num_spi_buses": 4,
"num_can_buses": 1,
"has_usb": true,
"doc_url": null,
"doc_file": null,
"doc_exists": false,
"documented": false
}
@@ -0,0 +1,247 @@
{
"board": "matek/h743-slim",
"chip_family": "stm32h7",
"chip_model": "STM32H743",
"total_outputs": 12,
"has_io_board": false,
"io_outputs": 0,
"groups": [
{
"group": 1,
"timer": "Timer3",
"outputs": [
1,
2
],
"dshot": true,
"dshot_outputs": [
1,
2
],
"non_dshot_outputs": [],
"bdshot_outputs": [
1,
2
],
"bdshot_output_only": []
},
{
"group": 2,
"timer": "Timer5",
"outputs": [
3,
4,
5,
6
],
"dshot": true,
"dshot_outputs": [
3,
4,
5,
6
],
"non_dshot_outputs": [],
"bdshot_outputs": [
3,
4,
5,
6
],
"bdshot_output_only": []
},
{
"group": 3,
"timer": "Timer4",
"outputs": [
7,
8,
9,
10
],
"dshot": true,
"dshot_outputs": [
7,
8,
9,
10
],
"non_dshot_outputs": [],
"bdshot_outputs": [
7,
8,
9
],
"bdshot_output_only": [
10
]
},
{
"group": 4,
"timer": "Timer15",
"outputs": [
11,
12
],
"dshot": false,
"dshot_outputs": [],
"non_dshot_outputs": [
11,
12
],
"bdshot_outputs": [],
"bdshot_output_only": []
}
],
"serial_ports": [
{
"uart": "USART1",
"device": "/dev/ttyS0",
"label": "Debug Console",
"flow_control": false
},
{
"uart": "USART2",
"device": "/dev/ttyS1",
"label": "GPS1",
"flow_control": false
},
{
"uart": "USART3",
"device": "/dev/ttyS2",
"label": "TELEM1",
"flow_control": false
},
{
"uart": "UART4",
"device": "/dev/ttyS3",
"label": "TELEM2",
"flow_control": false
},
{
"uart": "USART6",
"device": "/dev/ttyS4",
"label": "",
"flow_control": false
},
{
"uart": "UART7",
"device": "/dev/ttyS5",
"label": "TELEM3",
"flow_control": true
},
{
"uart": "UART8",
"device": "/dev/ttyS6",
"label": "TELEM4",
"flow_control": false
}
],
"has_rc_input": true,
"has_common_rc": false,
"rc_serial_device": null,
"has_ppm_pin": false,
"ppm_shared_with_rc_serial": false,
"has_pps_capture": false,
"has_safety_switch": false,
"has_safety_led": false,
"has_buzzer": false,
"num_power_inputs": 1,
"has_redundant_power": false,
"has_dual_battery_monitoring": false,
"has_dronecan_power_input": false,
"power_monitor_type": null,
"has_sd_card": true,
"has_ethernet": false,
"has_heater": false,
"sensor_imu_drivers": [
"ICM-20602",
"ICM-42688P",
"MPU-6000"
],
"sensor_baro_drivers": [
"DPS310"
],
"sensor_mag_drivers": [
"QMC5883L"
],
"sensor_osd_drivers": [],
"sensor_bus_info": {
"imu": [
{
"name": "MPU-6000",
"bus_type": "SPI",
"bus_num": 1,
"external": false
},
{
"name": "ICM-20602",
"bus_type": "SPI",
"bus_num": 4,
"external": false
}
],
"baro": [
{
"name": "DPS310",
"bus_type": "I2C",
"bus_num": null,
"external": false
}
],
"mag": [
{
"name": "QMC5883L",
"bus_type": "I2C",
"bus_num": null,
"external": true
}
],
"osd": []
},
"sensor_variant_info": {
"has_variants": false,
"unconditional": {
"imu": [
{
"name": "MPU-6000",
"bus_type": "SPI",
"bus_num": 1,
"external": false
},
{
"name": "ICM-20602",
"bus_type": "SPI",
"bus_num": 4,
"external": false
}
],
"baro": [
{
"name": "DPS310",
"bus_type": "I2C",
"bus_num": null,
"external": false
}
],
"mag": [
{
"name": "QMC5883L",
"bus_type": "I2C",
"bus_num": null,
"external": true
}
],
"osd": []
},
"variants": {}
},
"num_i2c_buses": 2,
"num_spi_buses": 4,
"num_can_buses": 1,
"has_usb": true,
"doc_url": null,
"doc_file": null,
"doc_exists": false,
"documented": false
}
@@ -0,0 +1,235 @@
{
"board": "matek/h743",
"chip_family": "stm32h7",
"chip_model": "STM32H743",
"total_outputs": 12,
"has_io_board": false,
"io_outputs": 0,
"groups": [
{
"group": 1,
"timer": "Timer3",
"outputs": [
1,
2
],
"dshot": true,
"dshot_outputs": [
1,
2
],
"non_dshot_outputs": [],
"bdshot_outputs": [
1,
2
],
"bdshot_output_only": []
},
{
"group": 2,
"timer": "Timer5",
"outputs": [
3,
4,
5,
6
],
"dshot": true,
"dshot_outputs": [
3,
4,
5,
6
],
"non_dshot_outputs": [],
"bdshot_outputs": [
3,
4,
5,
6
],
"bdshot_output_only": []
},
{
"group": 3,
"timer": "Timer4",
"outputs": [
7,
8,
9,
10
],
"dshot": true,
"dshot_outputs": [
7,
8,
9,
10
],
"non_dshot_outputs": [],
"bdshot_outputs": [
7,
8,
9
],
"bdshot_output_only": [
10
]
},
{
"group": 4,
"timer": "Timer15",
"outputs": [
11,
12
],
"dshot": false,
"dshot_outputs": [],
"non_dshot_outputs": [
11,
12
],
"bdshot_outputs": [],
"bdshot_output_only": []
}
],
"serial_ports": [
{
"uart": "USART1",
"device": "/dev/ttyS0",
"label": "Debug Console",
"flow_control": false
},
{
"uart": "USART2",
"device": "/dev/ttyS1",
"label": "GPS1",
"flow_control": false
},
{
"uart": "USART3",
"device": "/dev/ttyS2",
"label": "TELEM1",
"flow_control": false
},
{
"uart": "UART4",
"device": "/dev/ttyS3",
"label": "TELEM2",
"flow_control": false
},
{
"uart": "USART6",
"device": "/dev/ttyS4",
"label": "",
"flow_control": false
},
{
"uart": "UART7",
"device": "/dev/ttyS5",
"label": "TELEM3",
"flow_control": true
},
{
"uart": "UART8",
"device": "/dev/ttyS6",
"label": "TELEM4",
"flow_control": false
}
],
"has_rc_input": true,
"has_common_rc": false,
"rc_serial_device": null,
"has_ppm_pin": false,
"ppm_shared_with_rc_serial": false,
"has_pps_capture": false,
"has_safety_switch": false,
"has_safety_led": false,
"has_buzzer": false,
"num_power_inputs": 1,
"has_redundant_power": false,
"has_dual_battery_monitoring": false,
"has_dronecan_power_input": false,
"power_monitor_type": null,
"has_sd_card": true,
"has_ethernet": false,
"has_heater": false,
"sensor_imu_drivers": [
"ICM-20602",
"ICM-42688P",
"MPU-6000"
],
"sensor_baro_drivers": [
"DPS310"
],
"sensor_mag_drivers": [
"QMC5883L"
],
"sensor_osd_drivers": [],
"sensor_bus_info": {
"imu": [
{
"name": "ICM-42688P",
"bus_type": "SPI",
"bus_num": 1,
"external": false
}
],
"baro": [
{
"name": "DPS310",
"bus_type": "I2C",
"bus_num": null,
"external": false
}
],
"mag": [
{
"name": "QMC5883L",
"bus_type": "I2C",
"bus_num": null,
"external": true
}
],
"osd": []
},
"sensor_variant_info": {
"has_variants": false,
"unconditional": {
"imu": [
{
"name": "ICM-42688P",
"bus_type": "SPI",
"bus_num": 1,
"external": false
}
],
"baro": [
{
"name": "DPS310",
"bus_type": "I2C",
"bus_num": null,
"external": false
}
],
"mag": [
{
"name": "QMC5883L",
"bus_type": "I2C",
"bus_num": null,
"external": true
}
],
"osd": []
},
"variants": {}
},
"num_i2c_buses": 2,
"num_spi_buses": 4,
"num_can_buses": 1,
"has_usb": true,
"doc_url": null,
"doc_file": null,
"doc_exists": false,
"documented": false
}
@@ -0,0 +1,210 @@
{
"board": "micoair/h743-aio",
"chip_family": "stm32h7",
"chip_model": "STM32H743",
"total_outputs": 9,
"has_io_board": false,
"io_outputs": 0,
"groups": [
{
"group": 1,
"timer": "Timer1",
"outputs": [
1,
2,
3,
4
],
"dshot": true,
"dshot_outputs": [
1,
2,
3,
4
],
"non_dshot_outputs": [],
"bdshot_outputs": [
1,
2,
3,
4
],
"bdshot_output_only": []
},
{
"group": 2,
"timer": "Timer3",
"outputs": [
5,
6
],
"dshot": true,
"dshot_outputs": [
5,
6
],
"non_dshot_outputs": [],
"bdshot_outputs": [
5,
6
],
"bdshot_output_only": []
},
{
"group": 3,
"timer": "Timer4",
"outputs": [
7,
8,
9
],
"dshot": true,
"dshot_outputs": [
7,
8,
9
],
"non_dshot_outputs": [],
"bdshot_outputs": [
7,
8,
9
],
"bdshot_output_only": []
}
],
"serial_ports": [
{
"uart": "USART1",
"device": "/dev/ttyS0",
"label": "TELEM1",
"flow_control": false
},
{
"uart": "USART2",
"device": "/dev/ttyS1",
"label": "TELEM2",
"flow_control": false
},
{
"uart": "USART3",
"device": "/dev/ttyS2",
"label": "GPS1",
"flow_control": false
},
{
"uart": "UART4",
"device": "/dev/ttyS3",
"label": "TELEM3",
"flow_control": false
},
{
"uart": "USART6",
"device": "/dev/ttyS4",
"label": "RC",
"flow_control": false
},
{
"uart": "UART7",
"device": "/dev/ttyS5",
"label": "URT6",
"flow_control": false
},
{
"uart": "UART8",
"device": "/dev/ttyS6",
"label": "TELEM4",
"flow_control": false
}
],
"has_rc_input": false,
"has_common_rc": true,
"rc_serial_device": "/dev/ttyS4",
"has_ppm_pin": false,
"ppm_shared_with_rc_serial": false,
"has_pps_capture": true,
"has_safety_switch": false,
"has_safety_led": false,
"has_buzzer": false,
"num_power_inputs": 1,
"has_redundant_power": false,
"has_dual_battery_monitoring": false,
"has_dronecan_power_input": false,
"power_monitor_type": "ina238",
"has_sd_card": true,
"has_ethernet": false,
"has_heater": false,
"sensor_imu_drivers": [
"BMI088",
"BMI270"
],
"sensor_baro_drivers": [
"DPS310"
],
"sensor_mag_drivers": [],
"sensor_osd_drivers": [],
"sensor_bus_info": {
"imu": [
{
"name": "BMI088",
"bus_type": "SPI",
"bus_num": 2,
"external": false
},
{
"name": "BMI270",
"bus_type": "SPI",
"bus_num": 2,
"external": false
}
],
"baro": [
{
"name": "DPS310",
"bus_type": "I2C",
"bus_num": null,
"external": false
}
],
"mag": [],
"osd": []
},
"sensor_variant_info": {
"has_variants": false,
"unconditional": {
"imu": [
{
"name": "BMI088",
"bus_type": "SPI",
"bus_num": 2,
"external": false
},
{
"name": "BMI270",
"bus_type": "SPI",
"bus_num": 2,
"external": false
}
],
"baro": [
{
"name": "DPS310",
"bus_type": "I2C",
"bus_num": null,
"external": false
}
],
"mag": [],
"osd": []
},
"variants": {}
},
"num_i2c_buses": 2,
"num_spi_buses": 1,
"num_can_buses": 0,
"has_usb": true,
"doc_url": null,
"doc_file": null,
"doc_exists": false,
"documented": false
}
@@ -0,0 +1,238 @@
{
"board": "micoair/h743-lite",
"chip_family": "stm32h7",
"chip_model": "STM32H743",
"total_outputs": 14,
"has_io_board": false,
"io_outputs": 0,
"groups": [
{
"group": 1,
"timer": "Timer1",
"outputs": [
1,
2,
3,
4
],
"dshot": true,
"dshot_outputs": [
1,
2,
3,
4
],
"non_dshot_outputs": [],
"bdshot_outputs": [
1,
2,
3,
4
],
"bdshot_output_only": []
},
{
"group": 2,
"timer": "Timer3",
"outputs": [
5,
6,
7,
8
],
"dshot": true,
"dshot_outputs": [
5,
6,
7,
8
],
"non_dshot_outputs": [],
"bdshot_outputs": [
5,
6,
7,
8
],
"bdshot_output_only": []
},
{
"group": 3,
"timer": "Timer4",
"outputs": [
11,
12
],
"dshot": true,
"dshot_outputs": [
11,
12
],
"non_dshot_outputs": [],
"bdshot_outputs": [
11,
12
],
"bdshot_output_only": []
},
{
"group": 4,
"timer": "Timer12",
"outputs": [
13,
14
],
"dshot": false,
"dshot_outputs": [],
"non_dshot_outputs": [
13,
14
],
"bdshot_outputs": [],
"bdshot_output_only": []
},
{
"group": 5,
"timer": "Timer15",
"outputs": [
9,
10
],
"dshot": false,
"dshot_outputs": [],
"non_dshot_outputs": [
9,
10
],
"bdshot_outputs": [],
"bdshot_output_only": []
}
],
"serial_ports": [
{
"uart": "USART1",
"device": "/dev/ttyS0",
"label": "TELEM1",
"flow_control": false
},
{
"uart": "USART2",
"device": "/dev/ttyS1",
"label": "GPS2",
"flow_control": false
},
{
"uart": "USART3",
"device": "/dev/ttyS2",
"label": "GPS1",
"flow_control": false
},
{
"uart": "UART4",
"device": "/dev/ttyS3",
"label": "TELEM2",
"flow_control": false
},
{
"uart": "UART5",
"device": "/dev/ttyS4",
"label": "TELEM3",
"flow_control": false
},
{
"uart": "USART6",
"device": "/dev/ttyS5",
"label": "RC",
"flow_control": false
},
{
"uart": "UART7",
"device": "/dev/ttyS6",
"label": "URT6",
"flow_control": false
},
{
"uart": "UART8",
"device": "/dev/ttyS7",
"label": "TELEM4",
"flow_control": false
}
],
"has_rc_input": false,
"has_common_rc": true,
"rc_serial_device": "/dev/ttyS5",
"has_ppm_pin": false,
"ppm_shared_with_rc_serial": false,
"has_pps_capture": true,
"has_safety_switch": false,
"has_safety_led": false,
"has_buzzer": false,
"num_power_inputs": 1,
"has_redundant_power": false,
"has_dual_battery_monitoring": false,
"has_dronecan_power_input": false,
"power_monitor_type": "ina238",
"has_sd_card": true,
"has_ethernet": false,
"has_heater": false,
"sensor_imu_drivers": [
"ICM-45686"
],
"sensor_baro_drivers": [
"SPA06"
],
"sensor_mag_drivers": [],
"sensor_osd_drivers": [],
"sensor_bus_info": {
"imu": [
{
"name": "ICM-45686",
"bus_type": "SPI",
"bus_num": 3,
"external": false
}
],
"baro": [
{
"name": "SPA06",
"bus_type": "I2C",
"bus_num": 2,
"external": true
}
],
"mag": [],
"osd": []
},
"sensor_variant_info": {
"has_variants": false,
"unconditional": {
"imu": [
{
"name": "ICM-45686",
"bus_type": "SPI",
"bus_num": 3,
"external": false
}
],
"baro": [
{
"name": "SPA06",
"bus_type": "I2C",
"bus_num": 2,
"external": true
}
],
"mag": [],
"osd": []
},
"variants": {}
},
"num_i2c_buses": 2,
"num_spi_buses": 1,
"num_can_buses": 0,
"has_usb": true,
"doc_url": "https://docs.px4.io/main/en/flight_controller/micoair743-lite",
"doc_file": "micoair743-lite.md",
"doc_exists": true,
"documented": true
}
@@ -0,0 +1,245 @@
{
"board": "micoair/h743-v2",
"chip_family": "stm32h7",
"chip_model": "STM32H743",
"total_outputs": 10,
"has_io_board": false,
"io_outputs": 0,
"groups": [
{
"group": 1,
"timer": "Timer1",
"outputs": [
1,
2,
3,
4
],
"dshot": true,
"dshot_outputs": [
1,
2,
3,
4
],
"non_dshot_outputs": [],
"bdshot_outputs": [
1,
2,
3,
4
],
"bdshot_output_only": []
},
{
"group": 2,
"timer": "Timer3",
"outputs": [
5,
6
],
"dshot": true,
"dshot_outputs": [
5,
6
],
"non_dshot_outputs": [],
"bdshot_outputs": [
5,
6
],
"bdshot_output_only": []
},
{
"group": 3,
"timer": "Timer4",
"outputs": [
7,
8
],
"dshot": true,
"dshot_outputs": [
7,
8
],
"non_dshot_outputs": [],
"bdshot_outputs": [
7,
8
],
"bdshot_output_only": []
},
{
"group": 4,
"timer": "Timer15",
"outputs": [
9,
10
],
"dshot": false,
"dshot_outputs": [],
"non_dshot_outputs": [
9,
10
],
"bdshot_outputs": [],
"bdshot_output_only": []
}
],
"serial_ports": [
{
"uart": "USART1",
"device": "/dev/ttyS0",
"label": "TELEM1",
"flow_control": false
},
{
"uart": "USART2",
"device": "/dev/ttyS1",
"label": "GPS2",
"flow_control": false
},
{
"uart": "USART3",
"device": "/dev/ttyS2",
"label": "GPS1",
"flow_control": false
},
{
"uart": "UART4",
"device": "/dev/ttyS3",
"label": "TELEM2",
"flow_control": false
},
{
"uart": "UART5",
"device": "/dev/ttyS4",
"label": "TELEM3",
"flow_control": false
},
{
"uart": "USART6",
"device": "/dev/ttyS5",
"label": "RC",
"flow_control": false
},
{
"uart": "UART7",
"device": "/dev/ttyS6",
"label": "URT6",
"flow_control": false
},
{
"uart": "UART8",
"device": "/dev/ttyS7",
"label": "TELEM4",
"flow_control": false
}
],
"has_rc_input": false,
"has_common_rc": true,
"rc_serial_device": "/dev/ttyS5",
"has_ppm_pin": false,
"ppm_shared_with_rc_serial": false,
"has_pps_capture": true,
"has_safety_switch": false,
"has_safety_led": false,
"has_buzzer": false,
"num_power_inputs": 1,
"has_redundant_power": false,
"has_dual_battery_monitoring": false,
"has_dronecan_power_input": false,
"power_monitor_type": "ina238",
"has_sd_card": true,
"has_ethernet": false,
"has_heater": false,
"sensor_imu_drivers": [
"BMI088",
"BMI270"
],
"sensor_baro_drivers": [
"SPL06"
],
"sensor_mag_drivers": [
"QMC5883L"
],
"sensor_osd_drivers": [],
"sensor_bus_info": {
"imu": [
{
"name": "BMI088",
"bus_type": "SPI",
"bus_num": 2,
"external": false
},
{
"name": "BMI270",
"bus_type": "SPI",
"bus_num": 3,
"external": false
}
],
"baro": [
{
"name": "SPL06",
"bus_type": "I2C",
"bus_num": null,
"external": false
}
],
"mag": [
{
"name": "QMC5883L",
"bus_type": "I2C",
"bus_num": null,
"external": false
}
],
"osd": []
},
"sensor_variant_info": {
"has_variants": false,
"unconditional": {
"imu": [
{
"name": "BMI088",
"bus_type": "SPI",
"bus_num": 2,
"external": false
},
{
"name": "BMI270",
"bus_type": "SPI",
"bus_num": 3,
"external": false
}
],
"baro": [
{
"name": "SPL06",
"bus_type": "I2C",
"bus_num": null,
"external": false
}
],
"mag": [
{
"name": "QMC5883L",
"bus_type": "I2C",
"bus_num": null,
"external": false
}
],
"osd": []
},
"variants": {}
},
"num_i2c_buses": 2,
"num_spi_buses": 2,
"num_can_buses": 0,
"has_usb": true,
"doc_url": null,
"doc_file": null,
"doc_exists": false,
"documented": false
}
@@ -0,0 +1,230 @@
{
"board": "micoair/h743",
"chip_family": "stm32h7",
"chip_model": "STM32H743",
"total_outputs": 10,
"has_io_board": false,
"io_outputs": 0,
"groups": [
{
"group": 1,
"timer": "Timer1",
"outputs": [
1,
2,
3,
4
],
"dshot": true,
"dshot_outputs": [
1,
2,
3,
4
],
"non_dshot_outputs": [],
"bdshot_outputs": [
1,
2,
3,
4
],
"bdshot_output_only": []
},
{
"group": 2,
"timer": "Timer3",
"outputs": [
5,
6
],
"dshot": true,
"dshot_outputs": [
5,
6
],
"non_dshot_outputs": [],
"bdshot_outputs": [
5,
6
],
"bdshot_output_only": []
},
{
"group": 3,
"timer": "Timer4",
"outputs": [
7,
8,
9,
10
],
"dshot": true,
"dshot_outputs": [
7,
8,
9,
10
],
"non_dshot_outputs": [],
"bdshot_outputs": [
7,
8,
9
],
"bdshot_output_only": [
10
]
}
],
"serial_ports": [
{
"uart": "USART1",
"device": "/dev/ttyS0",
"label": "TELEM1",
"flow_control": false
},
{
"uart": "USART2",
"device": "/dev/ttyS1",
"label": "TELEM2",
"flow_control": false
},
{
"uart": "USART3",
"device": "/dev/ttyS2",
"label": "GPS1",
"flow_control": false
},
{
"uart": "UART4",
"device": "/dev/ttyS3",
"label": "TELEM3",
"flow_control": false
},
{
"uart": "USART6",
"device": "/dev/ttyS4",
"label": "RC",
"flow_control": false
},
{
"uart": "UART7",
"device": "/dev/ttyS5",
"label": "URT6",
"flow_control": false
},
{
"uart": "UART8",
"device": "/dev/ttyS6",
"label": "TELEM4",
"flow_control": false
}
],
"has_rc_input": false,
"has_common_rc": true,
"rc_serial_device": "/dev/ttyS4",
"has_ppm_pin": false,
"ppm_shared_with_rc_serial": false,
"has_pps_capture": true,
"has_safety_switch": false,
"has_safety_led": false,
"has_buzzer": false,
"num_power_inputs": 1,
"has_redundant_power": false,
"has_dual_battery_monitoring": false,
"has_dronecan_power_input": false,
"power_monitor_type": "ina238",
"has_sd_card": true,
"has_ethernet": false,
"has_heater": false,
"sensor_imu_drivers": [
"BMI088",
"BMI270"
],
"sensor_baro_drivers": [
"DPS310"
],
"sensor_mag_drivers": [
"IST8310"
],
"sensor_osd_drivers": [],
"sensor_bus_info": {
"imu": [
{
"name": "BMI088",
"bus_type": "SPI",
"bus_num": 2,
"external": false
},
{
"name": "BMI270",
"bus_type": "SPI",
"bus_num": 2,
"external": false
}
],
"baro": [
{
"name": "DPS310",
"bus_type": "I2C",
"bus_num": null,
"external": false
}
],
"mag": [
{
"name": "IST8310",
"bus_type": "I2C",
"bus_num": null,
"external": false
}
],
"osd": []
},
"sensor_variant_info": {
"has_variants": false,
"unconditional": {
"imu": [
{
"name": "BMI088",
"bus_type": "SPI",
"bus_num": 2,
"external": false
},
{
"name": "BMI270",
"bus_type": "SPI",
"bus_num": 2,
"external": false
}
],
"baro": [
{
"name": "DPS310",
"bus_type": "I2C",
"bus_num": null,
"external": false
}
],
"mag": [
{
"name": "IST8310",
"bus_type": "I2C",
"bus_num": null,
"external": false
}
],
"osd": []
},
"variants": {}
},
"num_i2c_buses": 2,
"num_spi_buses": 1,
"num_can_buses": 1,
"has_usb": true,
"doc_url": null,
"doc_file": null,
"doc_exists": false,
"documented": false
}
@@ -0,0 +1,215 @@
{
"board": "modalai/fc-v1",
"chip_family": "stm32f7",
"chip_model": "STM32F765",
"total_outputs": 8,
"has_io_board": false,
"io_outputs": 0,
"groups": [
{
"group": 1,
"timer": "Timer1",
"outputs": [
1,
2,
3,
4
],
"dshot": true,
"dshot_outputs": [
1,
2,
3,
4
],
"non_dshot_outputs": [],
"bdshot_outputs": [
1,
2,
3,
4
],
"bdshot_output_only": []
},
{
"group": 2,
"timer": "Timer4",
"outputs": [
5,
6,
7,
8
],
"dshot": true,
"dshot_outputs": [
5,
6,
7,
8
],
"non_dshot_outputs": [],
"bdshot_outputs": [
5,
6,
7
],
"bdshot_output_only": [
8
]
}
],
"serial_ports": [
{
"uart": "USART1",
"device": "/dev/ttyS0",
"label": "GPS1",
"flow_control": false
},
{
"uart": "USART2",
"device": "/dev/ttyS1",
"label": "TELEM3",
"flow_control": true
},
{
"uart": "USART3",
"device": "/dev/ttyS2",
"label": "Debug Console",
"flow_control": false
},
{
"uart": "UART4",
"device": "/dev/ttyS3",
"label": "TELEM4",
"flow_control": false
},
{
"uart": "UART5",
"device": "/dev/ttyS4",
"label": "TELEM2",
"flow_control": true
},
{
"uart": "USART6",
"device": "/dev/ttyS5",
"label": "",
"flow_control": false
},
{
"uart": "UART7",
"device": "/dev/ttyS6",
"label": "TELEM1",
"flow_control": true
},
{
"uart": "UART8",
"device": "/dev/ttyS7",
"label": "",
"flow_control": false
}
],
"has_rc_input": true,
"has_common_rc": false,
"rc_serial_device": null,
"has_ppm_pin": true,
"ppm_shared_with_rc_serial": false,
"has_pps_capture": false,
"has_safety_switch": true,
"has_safety_led": false,
"has_buzzer": false,
"num_power_inputs": 1,
"has_redundant_power": false,
"has_dual_battery_monitoring": false,
"has_dronecan_power_input": false,
"power_monitor_type": "ina226",
"has_sd_card": true,
"has_ethernet": false,
"has_heater": false,
"sensor_imu_drivers": [
"BMI088",
"ICM-20602",
"ICM-20948",
"ICM-42688P"
],
"sensor_baro_drivers": [
"BMP388"
],
"sensor_mag_drivers": [],
"sensor_osd_drivers": [],
"sensor_bus_info": {
"imu": [
{
"name": "ICM-20602",
"bus_type": "SPI",
"bus_num": null,
"external": false
},
{
"name": "ICM-42688P",
"bus_type": "SPI",
"bus_num": null,
"external": false
},
{
"name": "BMI088",
"bus_type": "SPI",
"bus_num": null,
"external": false
}
],
"baro": [
{
"name": "BMP388",
"bus_type": "I2C",
"bus_num": null,
"external": false
}
],
"mag": [],
"osd": []
},
"sensor_variant_info": {
"has_variants": false,
"unconditional": {
"imu": [
{
"name": "ICM-20602",
"bus_type": "SPI",
"bus_num": null,
"external": false
},
{
"name": "ICM-42688P",
"bus_type": "SPI",
"bus_num": null,
"external": false
},
{
"name": "BMI088",
"bus_type": "SPI",
"bus_num": null,
"external": false
}
],
"baro": [
{
"name": "BMP388",
"bus_type": "I2C",
"bus_num": null,
"external": false
}
],
"mag": [],
"osd": []
},
"variants": {}
},
"num_i2c_buses": 4,
"num_spi_buses": 4,
"num_can_buses": 1,
"has_usb": true,
"doc_url": "https://docs.px4.io/main/en/flight_controller/modalai_fc_v1",
"doc_file": "modalai_fc_v1.md",
"doc_exists": true,
"documented": true
}
@@ -0,0 +1,209 @@
{
"board": "modalai/fc-v2",
"chip_family": "stm32h7",
"chip_model": "STM32H753",
"total_outputs": 8,
"has_io_board": true,
"io_outputs": 8,
"groups": [
{
"group": 1,
"timer": "Timer5",
"outputs": [
1,
2,
3,
4
],
"dshot": true,
"dshot_outputs": [
1,
2,
3,
4
],
"non_dshot_outputs": [],
"bdshot_outputs": [
1,
2,
3,
4
],
"bdshot_output_only": []
},
{
"group": 2,
"timer": "Timer4",
"outputs": [
5,
6
],
"dshot": true,
"dshot_outputs": [
5,
6
],
"non_dshot_outputs": [],
"bdshot_outputs": [
5,
6
],
"bdshot_output_only": []
},
{
"group": 3,
"timer": "Timer12",
"outputs": [
7,
8
],
"dshot": false,
"dshot_outputs": [],
"non_dshot_outputs": [
7,
8
],
"bdshot_outputs": [],
"bdshot_output_only": []
}
],
"serial_ports": [
{
"uart": "USART1",
"device": "/dev/ttyS0",
"label": "GPS1",
"flow_control": false
},
{
"uart": "USART2",
"device": "/dev/ttyS1",
"label": "",
"flow_control": true
},
{
"uart": "USART3",
"device": "/dev/ttyS2",
"label": "Debug Console",
"flow_control": false
},
{
"uart": "UART4",
"device": "/dev/ttyS3",
"label": "",
"flow_control": false
},
{
"uart": "UART5",
"device": "/dev/ttyS4",
"label": "TELEM2",
"flow_control": false
},
{
"uart": "USART6",
"device": "/dev/ttyS5",
"label": "PX4IO",
"flow_control": false
},
{
"uart": "UART7",
"device": "/dev/ttyS6",
"label": "TELEM1",
"flow_control": true
},
{
"uart": "UART8",
"device": "/dev/ttyS7",
"label": "",
"flow_control": false
}
],
"has_rc_input": true,
"has_common_rc": false,
"rc_serial_device": null,
"has_ppm_pin": true,
"ppm_shared_with_rc_serial": false,
"has_pps_capture": false,
"has_safety_switch": false,
"has_safety_led": false,
"has_buzzer": false,
"num_power_inputs": 1,
"has_redundant_power": false,
"has_dual_battery_monitoring": false,
"has_dronecan_power_input": false,
"power_monitor_type": "ina226",
"has_sd_card": true,
"has_ethernet": false,
"has_heater": false,
"sensor_imu_drivers": [
"ICM-42688P"
],
"sensor_baro_drivers": [
"ICP-20100"
],
"sensor_mag_drivers": [],
"sensor_osd_drivers": [],
"sensor_bus_info": {
"imu": [
{
"name": "ICM-42688P",
"bus_type": "SPI",
"bus_num": 1,
"external": false
},
{
"name": "ICM-42688P",
"bus_type": "SPI",
"bus_num": 2,
"external": false
}
],
"baro": [
{
"name": "ICP-20100",
"bus_type": "I2C",
"bus_num": null,
"external": false
}
],
"mag": [],
"osd": []
},
"sensor_variant_info": {
"has_variants": false,
"unconditional": {
"imu": [
{
"name": "ICM-42688P",
"bus_type": "SPI",
"bus_num": 1,
"external": false
},
{
"name": "ICM-42688P",
"bus_type": "SPI",
"bus_num": 2,
"external": false
}
],
"baro": [
{
"name": "ICP-20100",
"bus_type": "I2C",
"bus_num": null,
"external": false
}
],
"mag": [],
"osd": []
},
"variants": {}
},
"num_i2c_buses": 4,
"num_spi_buses": 4,
"num_can_buses": 1,
"has_usb": true,
"doc_url": null,
"doc_file": null,
"doc_exists": false,
"documented": false
}
@@ -0,0 +1,108 @@
{
"board": "modalai/voxl2-io",
"chip_family": "stm32f4",
"chip_model": "STM32F100",
"total_outputs": 8,
"has_io_board": false,
"io_outputs": 0,
"groups": [
{
"group": 1,
"timer": "Timer2",
"outputs": [
1,
2
],
"dshot": false,
"dshot_outputs": [],
"non_dshot_outputs": [
1,
2
],
"bdshot_outputs": [],
"bdshot_output_only": []
},
{
"group": 2,
"timer": "Timer3",
"outputs": [
5,
6,
7,
8
],
"dshot": false,
"dshot_outputs": [],
"non_dshot_outputs": [
5,
6,
7,
8
],
"bdshot_outputs": [],
"bdshot_output_only": []
},
{
"group": 3,
"timer": "Timer4",
"outputs": [
3,
4
],
"dshot": false,
"dshot_outputs": [],
"non_dshot_outputs": [
3,
4
],
"bdshot_outputs": [],
"bdshot_output_only": []
}
],
"serial_ports": [],
"has_rc_input": false,
"has_common_rc": false,
"rc_serial_device": null,
"has_ppm_pin": true,
"ppm_shared_with_rc_serial": false,
"has_pps_capture": false,
"has_safety_switch": true,
"has_safety_led": true,
"has_buzzer": false,
"num_power_inputs": 1,
"has_redundant_power": false,
"has_dual_battery_monitoring": false,
"has_dronecan_power_input": false,
"power_monitor_type": null,
"has_sd_card": false,
"has_ethernet": false,
"has_heater": false,
"sensor_imu_drivers": [],
"sensor_baro_drivers": [],
"sensor_mag_drivers": [],
"sensor_osd_drivers": [],
"sensor_bus_info": {
"imu": [],
"baro": [],
"mag": [],
"osd": []
},
"sensor_variant_info": {
"has_variants": false,
"unconditional": {
"imu": [],
"baro": [],
"mag": [],
"osd": []
},
"variants": {}
},
"num_i2c_buses": 0,
"num_spi_buses": 0,
"num_can_buses": 0,
"has_usb": false,
"doc_url": null,
"doc_file": null,
"doc_exists": false,
"documented": false
}
@@ -0,0 +1,251 @@
{
"board": "mro/ctrl-zero-classic",
"chip_family": "stm32h7",
"chip_model": "STM32H743",
"total_outputs": 12,
"has_io_board": false,
"io_outputs": 0,
"groups": [
{
"group": 1,
"timer": "Timer1",
"outputs": [
1,
2,
3,
4
],
"dshot": true,
"dshot_outputs": [
1,
2,
3,
4
],
"non_dshot_outputs": [],
"bdshot_outputs": [
1,
2,
3,
4
],
"bdshot_output_only": []
},
{
"group": 2,
"timer": "Timer4",
"outputs": [
5,
6,
7
],
"dshot": true,
"dshot_outputs": [
5,
6,
7
],
"non_dshot_outputs": [],
"bdshot_outputs": [
5,
6
],
"bdshot_output_only": [
7
]
},
{
"group": 3,
"timer": "Timer2",
"outputs": [
8,
9,
10
],
"dshot": true,
"dshot_outputs": [
8,
9,
10
],
"non_dshot_outputs": [],
"bdshot_outputs": [
8,
9,
10
],
"bdshot_output_only": []
},
{
"group": 4,
"timer": "Timer15",
"outputs": [
11
],
"dshot": false,
"dshot_outputs": [],
"non_dshot_outputs": [
11
],
"bdshot_outputs": [],
"bdshot_output_only": []
},
{
"group": 5,
"timer": "Timer8",
"outputs": [
12
],
"dshot": true,
"dshot_outputs": [
12
],
"non_dshot_outputs": [],
"bdshot_outputs": [
12
],
"bdshot_output_only": []
}
],
"serial_ports": [
{
"uart": "USART1",
"device": "/dev/ttyS0",
"label": "TELEM4",
"flow_control": false
},
{
"uart": "USART2",
"device": "/dev/ttyS1",
"label": "TELEM1",
"flow_control": true
},
{
"uart": "USART3",
"device": "/dev/ttyS2",
"label": "TELEM2",
"flow_control": true
},
{
"uart": "UART4",
"device": "/dev/ttyS3",
"label": "GPS1",
"flow_control": false
},
{
"uart": "UART7",
"device": "/dev/ttyS4",
"label": "GPS2",
"flow_control": false
},
{
"uart": "UART8",
"device": "/dev/ttyS5",
"label": "TELEM3",
"flow_control": false
}
],
"has_rc_input": true,
"has_common_rc": false,
"rc_serial_device": null,
"has_ppm_pin": true,
"ppm_shared_with_rc_serial": false,
"has_pps_capture": false,
"has_safety_switch": true,
"has_safety_led": true,
"has_buzzer": true,
"num_power_inputs": 1,
"has_redundant_power": false,
"has_dual_battery_monitoring": false,
"has_dronecan_power_input": false,
"power_monitor_type": "ina226",
"has_sd_card": true,
"has_ethernet": false,
"has_heater": false,
"sensor_imu_drivers": [
"BMI088",
"ICM-20602",
"ICM-20948"
],
"sensor_baro_drivers": [
"DPS310"
],
"sensor_mag_drivers": [],
"sensor_osd_drivers": [],
"sensor_bus_info": {
"imu": [
{
"name": "ICM-20602",
"bus_type": "SPI",
"bus_num": 1,
"external": false
},
{
"name": "BMI088",
"bus_type": "SPI",
"bus_num": 5,
"external": false
},
{
"name": "ICM-20948",
"bus_type": "SPI",
"bus_num": 1,
"external": false
}
],
"baro": [
{
"name": "DPS310",
"bus_type": "SPI",
"bus_num": 2,
"external": false
}
],
"mag": [],
"osd": []
},
"sensor_variant_info": {
"has_variants": false,
"unconditional": {
"imu": [
{
"name": "ICM-20602",
"bus_type": "SPI",
"bus_num": 1,
"external": false
},
{
"name": "BMI088",
"bus_type": "SPI",
"bus_num": 5,
"external": false
},
{
"name": "ICM-20948",
"bus_type": "SPI",
"bus_num": 1,
"external": false
}
],
"baro": [
{
"name": "DPS310",
"bus_type": "SPI",
"bus_num": 2,
"external": false
}
],
"mag": [],
"osd": []
},
"variants": {}
},
"num_i2c_buses": 2,
"num_spi_buses": 4,
"num_can_buses": 2,
"has_usb": true,
"doc_url": null,
"doc_file": null,
"doc_exists": false,
"documented": false
}

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