docs: auto-sync metadata [skip ci]

Co-Authored-By: PX4 BuildBot <bot@px4.io>
This commit is contained in:
PX4BuildBot 2026-03-18 00:46:16 +00:00
parent f00e46f618
commit b597227da6
9 changed files with 609 additions and 348 deletions

View File

@ -4202,6 +4202,9 @@ Custom PWM rates can be used by directly setting any value >0.
**Values:**
- `-8`: BDShot150
- `-7`: BDShot300
- `-6`: BDShot600
- `-5`: DShot150
- `-4`: DShot300
- `-3`: DShot600
@ -19499,18 +19502,33 @@ When mixer outputs 1000 or value inside DSHOT 3D deadband, DShot 0 is sent.
| ------ | -------- | -------- | --------- | ------------ | ---- |
| &nbsp; | | | | Disabled (0) | |
### DSHOT_BIDIR_EN (`INT32`) {#DSHOT_BIDIR_EN}
### DSHOT_BIDIR_EDT (`INT32`) {#DSHOT_BIDIR_EDT}
Enable bidirectional DShot.
Enable Extended DShot Telemetry.
This parameter enables bidirectional DShot which provides RPM feedback.
Note that this requires ESCs that support bidirectional DSHot, e.g. BlHeli32.
This is not the same as DShot telemetry which requires an additional serial connection.
This parameter enables Extended DShot Telemetry which allows transmission of
additional telemetry within the eRPM frame. The EDT data is interleaved with
the eRPM frames at a low rate.
| Reboot | minValue | maxValue | increment | default | unit |
| ------- | -------- | -------- | --------- | ------------ | ---- |
| &check; | | | | Disabled (0) | |
### DSHOT_ESC_TYPE (`INT32`) {#DSHOT_ESC_TYPE}
ESC Type.
The ESC firmware type
**Values:**
- `0`: Unknown
- `1`: AM32
| Reboot | minValue | maxValue | increment | default | unit |
| ------ | -------- | -------- | --------- | ------- | ---- |
| &nbsp; | | | | 0 | |
### DSHOT_MIN (`FLOAT`) {#DSHOT_MIN}
Minimum DShot Motor Output.
@ -19523,6 +19541,174 @@ armed.
| ------ | -------- | -------- | --------- | ------- | ---- |
| &nbsp; | 0 | 1 | 0.01 | 0.055 | norm |
### DSHOT_MOT_POL1 (`INT32`) {#DSHOT_MOT_POL1}
Number of magnetic poles of motor 1.
Number of magnetic poles for motor 1.
Required to compute RPM from the eRPM returned by ESC telemetry.
Either get the number from the motor spec sheet or count the magnets
on the bell of the motor (not the stator magnets).
Typical motors for 5 inch props have 14 poles.
| Reboot | minValue | maxValue | increment | default | unit |
| ------ | -------- | -------- | --------- | ------- | ---- |
| &nbsp; | 2 | 400 | | 14 | |
### DSHOT_MOT_POL10 (`INT32`) {#DSHOT_MOT_POL10}
Number of magnetic poles of motor 10.
Number of magnetic poles for motor 10.
Required to compute RPM from the eRPM returned by ESC telemetry.
Either get the number from the motor spec sheet or count the magnets
on the bell of the motor (not the stator magnets).
Typical motors for 5 inch props have 14 poles.
| Reboot | minValue | maxValue | increment | default | unit |
| ------ | -------- | -------- | --------- | ------- | ---- |
| &nbsp; | 2 | 400 | | 14 | |
### DSHOT_MOT_POL11 (`INT32`) {#DSHOT_MOT_POL11}
Number of magnetic poles of motor 11.
Number of magnetic poles for motor 11.
Required to compute RPM from the eRPM returned by ESC telemetry.
Either get the number from the motor spec sheet or count the magnets
on the bell of the motor (not the stator magnets).
Typical motors for 5 inch props have 14 poles.
| Reboot | minValue | maxValue | increment | default | unit |
| ------ | -------- | -------- | --------- | ------- | ---- |
| &nbsp; | 2 | 400 | | 14 | |
### DSHOT_MOT_POL12 (`INT32`) {#DSHOT_MOT_POL12}
Number of magnetic poles of motor 12.
Number of magnetic poles for motor 12.
Required to compute RPM from the eRPM returned by ESC telemetry.
Either get the number from the motor spec sheet or count the magnets
on the bell of the motor (not the stator magnets).
Typical motors for 5 inch props have 14 poles.
| Reboot | minValue | maxValue | increment | default | unit |
| ------ | -------- | -------- | --------- | ------- | ---- |
| &nbsp; | 2 | 400 | | 14 | |
### DSHOT_MOT_POL2 (`INT32`) {#DSHOT_MOT_POL2}
Number of magnetic poles of motor 2.
Number of magnetic poles for motor 2.
Required to compute RPM from the eRPM returned by ESC telemetry.
Either get the number from the motor spec sheet or count the magnets
on the bell of the motor (not the stator magnets).
Typical motors for 5 inch props have 14 poles.
| Reboot | minValue | maxValue | increment | default | unit |
| ------ | -------- | -------- | --------- | ------- | ---- |
| &nbsp; | 2 | 400 | | 14 | |
### DSHOT_MOT_POL3 (`INT32`) {#DSHOT_MOT_POL3}
Number of magnetic poles of motor 3.
Number of magnetic poles for motor 3.
Required to compute RPM from the eRPM returned by ESC telemetry.
Either get the number from the motor spec sheet or count the magnets
on the bell of the motor (not the stator magnets).
Typical motors for 5 inch props have 14 poles.
| Reboot | minValue | maxValue | increment | default | unit |
| ------ | -------- | -------- | --------- | ------- | ---- |
| &nbsp; | 2 | 400 | | 14 | |
### DSHOT_MOT_POL4 (`INT32`) {#DSHOT_MOT_POL4}
Number of magnetic poles of motor 4.
Number of magnetic poles for motor 4.
Required to compute RPM from the eRPM returned by ESC telemetry.
Either get the number from the motor spec sheet or count the magnets
on the bell of the motor (not the stator magnets).
Typical motors for 5 inch props have 14 poles.
| Reboot | minValue | maxValue | increment | default | unit |
| ------ | -------- | -------- | --------- | ------- | ---- |
| &nbsp; | 2 | 400 | | 14 | |
### DSHOT_MOT_POL5 (`INT32`) {#DSHOT_MOT_POL5}
Number of magnetic poles of motor 5.
Number of magnetic poles for motor 5.
Required to compute RPM from the eRPM returned by ESC telemetry.
Either get the number from the motor spec sheet or count the magnets
on the bell of the motor (not the stator magnets).
Typical motors for 5 inch props have 14 poles.
| Reboot | minValue | maxValue | increment | default | unit |
| ------ | -------- | -------- | --------- | ------- | ---- |
| &nbsp; | 2 | 400 | | 14 | |
### DSHOT_MOT_POL6 (`INT32`) {#DSHOT_MOT_POL6}
Number of magnetic poles of motor 6.
Number of magnetic poles for motor 6.
Required to compute RPM from the eRPM returned by ESC telemetry.
Either get the number from the motor spec sheet or count the magnets
on the bell of the motor (not the stator magnets).
Typical motors for 5 inch props have 14 poles.
| Reboot | minValue | maxValue | increment | default | unit |
| ------ | -------- | -------- | --------- | ------- | ---- |
| &nbsp; | 2 | 400 | | 14 | |
### DSHOT_MOT_POL7 (`INT32`) {#DSHOT_MOT_POL7}
Number of magnetic poles of motor 7.
Number of magnetic poles for motor 7.
Required to compute RPM from the eRPM returned by ESC telemetry.
Either get the number from the motor spec sheet or count the magnets
on the bell of the motor (not the stator magnets).
Typical motors for 5 inch props have 14 poles.
| Reboot | minValue | maxValue | increment | default | unit |
| ------ | -------- | -------- | --------- | ------- | ---- |
| &nbsp; | 2 | 400 | | 14 | |
### DSHOT_MOT_POL8 (`INT32`) {#DSHOT_MOT_POL8}
Number of magnetic poles of motor 8.
Number of magnetic poles for motor 8.
Required to compute RPM from the eRPM returned by ESC telemetry.
Either get the number from the motor spec sheet or count the magnets
on the bell of the motor (not the stator magnets).
Typical motors for 5 inch props have 14 poles.
| Reboot | minValue | maxValue | increment | default | unit |
| ------ | -------- | -------- | --------- | ------- | ---- |
| &nbsp; | 2 | 400 | | 14 | |
### DSHOT_MOT_POL9 (`INT32`) {#DSHOT_MOT_POL9}
Number of magnetic poles of motor 9.
Number of magnetic poles for motor 9.
Required to compute RPM from the eRPM returned by ESC telemetry.
Either get the number from the motor spec sheet or count the magnets
on the bell of the motor (not the stator magnets).
Typical motors for 5 inch props have 14 poles.
| Reboot | minValue | maxValue | increment | default | unit |
| ------ | -------- | -------- | --------- | ------- | ---- |
| &nbsp; | 2 | 400 | | 14 | |
### DSHOT_TEL_CFG (`INT32`) {#DSHOT_TEL_CFG}
Serial Configuration for DShot Driver.
@ -19548,20 +19734,6 @@ Configure on which serial port to run DShot Driver.
| ------- | -------- | -------- | --------- | ------- | ---- |
| &check; | | | | 0 | |
### MOT_POLE_COUNT (`INT32`) {#MOT_POLE_COUNT}
Number of magnetic poles of the motors.
Specify the number of magnetic poles of the motors.
It is required to compute the RPM value from the eRPM returned with the ESC telemetry.
Either get the number from the motor spec sheet or count the magnets on the bell of the motor (not the stator magnets).
Typical motors for 5 inch props have 14 poles.
| Reboot | minValue | maxValue | increment | default | unit |
| ------ | -------- | -------- | --------- | ------- | ---- |
| &nbsp; | | | | 14 | |
## EKF2
### EKF2_ABIAS_INIT (`FLOAT`) {#EKF2_ABIAS_INIT}

View File

@ -95,202 +95,204 @@ They are not build into the module, and hence are neither published or subscribe
::: details See messages
- [InternalCombustionEngineStatus](../msg_docs/InternalCombustionEngineStatus.md)
- [TuneControl](../msg_docs/TuneControl.md)
- [ButtonEvent](../msg_docs/ButtonEvent.md)
- [MavlinkTunnel](../msg_docs/MavlinkTunnel.md)
- [VehicleStatusV1](../msg_docs/VehicleStatusV1.md)
- [GpsDump](../msg_docs/GpsDump.md)
- [LandingTargetInnovations](../msg_docs/LandingTargetInnovations.md)
- [DebugKeyValue](../msg_docs/DebugKeyValue.md)
- [SensorBaro](../msg_docs/SensorBaro.md)
- [HoverThrustEstimate](../msg_docs/HoverThrustEstimate.md)
- [TrajectorySetpoint6dof](../msg_docs/TrajectorySetpoint6dof.md)
- [WheelEncoders](../msg_docs/WheelEncoders.md)
- [Px4ioStatus](../msg_docs/Px4ioStatus.md)
- [DatamanRequest](../msg_docs/DatamanRequest.md)
- [SensorAccel](../msg_docs/SensorAccel.md)
- [PowerMonitor](../msg_docs/PowerMonitor.md)
- [EventV0](../msg_docs/EventV0.md)
- [ActionRequest](../msg_docs/ActionRequest.md)
- [DebugArray](../msg_docs/DebugArray.md)
- [PpsCapture](../msg_docs/PpsCapture.md)
- [Gripper](../msg_docs/Gripper.md)
- [EstimatorBias3d](../msg_docs/EstimatorBias3d.md)
- [GimbalManagerInformation](../msg_docs/GimbalManagerInformation.md)
- [PowerButtonState](../msg_docs/PowerButtonState.md)
- [PositionControllerStatus](../msg_docs/PositionControllerStatus.md)
- [EstimatorGpsStatus](../msg_docs/EstimatorGpsStatus.md)
- [ParameterSetValueResponse](../msg_docs/ParameterSetValueResponse.md)
- [SensorGyroFft](../msg_docs/SensorGyroFft.md)
- [RtlStatus](../msg_docs/RtlStatus.md)
- [VehicleGlobalPositionV0](../msg_docs/VehicleGlobalPositionV0.md)
- [FigureEightStatus](../msg_docs/FigureEightStatus.md)
- [VehicleOpticalFlow](../msg_docs/VehicleOpticalFlow.md)
- [AdcReport](../msg_docs/AdcReport.md)
- [VehicleImuStatus](../msg_docs/VehicleImuStatus.md)
- [ConfigOverridesV0](../msg_docs/ConfigOverridesV0.md)
- [GimbalDeviceInformation](../msg_docs/GimbalDeviceInformation.md)
- [GpioOut](../msg_docs/GpioOut.md)
- [GimbalControls](../msg_docs/GimbalControls.md)
- [ActuatorTest](../msg_docs/ActuatorTest.md)
- [ParameterResetRequest](../msg_docs/ParameterResetRequest.md)
- [MavlinkLog](../msg_docs/MavlinkLog.md)
- [VehicleAngularVelocity](../msg_docs/VehicleAngularVelocity.md)
- [CellularStatus](../msg_docs/CellularStatus.md)
- [LandingTargetPose](../msg_docs/LandingTargetPose.md)
- [HealthReport](../msg_docs/HealthReport.md)
- [Mission](../msg_docs/Mission.md)
- [GpsInjectData](../msg_docs/GpsInjectData.md)
- [OrbitStatus](../msg_docs/OrbitStatus.md)
- [FuelTankStatus](../msg_docs/FuelTankStatus.md)
- [PwmInput](../msg_docs/PwmInput.md)
- [SensorGyro](../msg_docs/SensorGyro.md)
- [RoverAttitudeStatus](../msg_docs/RoverAttitudeStatus.md)
- [CameraStatus](../msg_docs/CameraStatus.md)
- [GpioConfig](../msg_docs/GpioConfig.md)
- [RegisterExtComponentReplyV0](../msg_docs/RegisterExtComponentReplyV0.md)
- [DatamanResponse](../msg_docs/DatamanResponse.md)
- [VehicleImu](../msg_docs/VehicleImu.md)
- [GimbalManagerSetAttitude](../msg_docs/GimbalManagerSetAttitude.md)
- [EstimatorBias](../msg_docs/EstimatorBias.md)
- [Event](../msg_docs/Event.md)
- [EscReport](../msg_docs/EscReport.md)
- [Ping](../msg_docs/Ping.md)
- [EstimatorAidSource3d](../msg_docs/EstimatorAidSource3d.md)
- [VehicleLocalPositionSetpoint](../msg_docs/VehicleLocalPositionSetpoint.md)
- [FixedWingRunwayControl](../msg_docs/FixedWingRunwayControl.md)
- [EstimatorSelectorStatus](../msg_docs/EstimatorSelectorStatus.md)
- [GimbalManagerStatus](../msg_docs/GimbalManagerStatus.md)
- [GpioIn](../msg_docs/GpioIn.md)
- [InternalCombustionEngineControl](../msg_docs/InternalCombustionEngineControl.md)
- [EstimatorAidSource1d](../msg_docs/EstimatorAidSource1d.md)
- [EstimatorEventFlags](../msg_docs/EstimatorEventFlags.md)
- [AutotuneAttitudeControlStatus](../msg_docs/AutotuneAttitudeControlStatus.md)
- [UavcanParameterRequest](../msg_docs/UavcanParameterRequest.md)
- [UlogStreamAck](../msg_docs/UlogStreamAck.md)
- [VehicleLocalPositionV0](../msg_docs/VehicleLocalPositionV0.md)
- [EstimatorStatus](../msg_docs/EstimatorStatus.md)
- [PositionSetpoint](../msg_docs/PositionSetpoint.md)
- [SensorGyroFifo](../msg_docs/SensorGyroFifo.md)
- [FixedWingLateralGuidanceStatus](../msg_docs/FixedWingLateralGuidanceStatus.md)
- [VehicleCommandAckV0](../msg_docs/VehicleCommandAckV0.md)
- [FollowTarget](../msg_docs/FollowTarget.md)
- [VehicleOpticalFlowVel](../msg_docs/VehicleOpticalFlowVel.md)
- [OpenDroneIdSelfId](../msg_docs/OpenDroneIdSelfId.md)
- [Rpm](../msg_docs/Rpm.md)
- [GeofenceStatus](../msg_docs/GeofenceStatus.md)
- [OrbTest](../msg_docs/OrbTest.md)
- [FollowTargetEstimator](../msg_docs/FollowTargetEstimator.md)
- [PurePursuitStatus](../msg_docs/PurePursuitStatus.md)
- [BatteryStatusV0](../msg_docs/BatteryStatusV0.md)
- [ControlAllocatorStatus](../msg_docs/ControlAllocatorStatus.md)
- [RadioStatus](../msg_docs/RadioStatus.md)
- [MissionResult](../msg_docs/MissionResult.md)
- [HeaterStatus](../msg_docs/HeaterStatus.md)
- [GeneratorStatus](../msg_docs/GeneratorStatus.md)
- [AirspeedValidatedV0](../msg_docs/AirspeedValidatedV0.md)
- [VehicleMagnetometer](../msg_docs/VehicleMagnetometer.md)
- [LedControl](../msg_docs/LedControl.md)
- [ParameterSetUsedRequest](../msg_docs/ParameterSetUsedRequest.md)
- [ParameterUpdate](../msg_docs/ParameterUpdate.md)
- [CameraCapture](../msg_docs/CameraCapture.md)
- [EstimatorAidSource2d](../msg_docs/EstimatorAidSource2d.md)
- [GeofenceResult](../msg_docs/GeofenceResult.md)
- [OrbTestMedium](../msg_docs/OrbTestMedium.md)
- [VehicleRoi](../msg_docs/VehicleRoi.md)
- [VehicleAngularAccelerationSetpoint](../msg_docs/VehicleAngularAccelerationSetpoint.md)
- [RegisterExtComponentRequestV0](../msg_docs/RegisterExtComponentRequestV0.md)
- [SensorSelection](../msg_docs/SensorSelection.md)
- [RoverRateStatus](../msg_docs/RoverRateStatus.md)
- [ParameterSetValueRequest](../msg_docs/ParameterSetValueRequest.md)
- [Airspeed](../msg_docs/Airspeed.md)
- [SatelliteInfo](../msg_docs/SatelliteInfo.md)
- [MagnetometerBiasEstimate](../msg_docs/MagnetometerBiasEstimate.md)
- [VehicleAcceleration](../msg_docs/VehicleAcceleration.md)
- [SensorsStatus](../msg_docs/SensorsStatus.md)
- [SystemPower](../msg_docs/SystemPower.md)
- [SensorGnssStatus](../msg_docs/SensorGnssStatus.md)
- [Vtx](../msg_docs/Vtx.md)
- [LogMessage](../msg_docs/LogMessage.md)
- [MagWorkerData](../msg_docs/MagWorkerData.md)
- [RtlTimeEstimate](../msg_docs/RtlTimeEstimate.md)
- [LandingGearWheel](../msg_docs/LandingGearWheel.md)
- [Ekf2Timestamps](../msg_docs/Ekf2Timestamps.md)
- [NavigatorStatus](../msg_docs/NavigatorStatus.md)
- [EscStatus](../msg_docs/EscStatus.md)
- [DebugVect](../msg_docs/DebugVect.md)
- [EscEepromWrite](../msg_docs/EscEepromWrite.md)
- [PowerButtonState](../msg_docs/PowerButtonState.md)
- [RaptorStatus](../msg_docs/RaptorStatus.md)
- [DeviceInformation](../msg_docs/DeviceInformation.md)
- [UlogStream](../msg_docs/UlogStream.md)
- [FailureDetectorStatus](../msg_docs/FailureDetectorStatus.md)
- [VelocityLimits](../msg_docs/VelocityLimits.md)
- [LoggerStatus](../msg_docs/LoggerStatus.md)
- [SensorAirflow](../msg_docs/SensorAirflow.md)
- [VehicleConstraints](../msg_docs/VehicleConstraints.md)
- [SensorAccelFifo](../msg_docs/SensorAccelFifo.md)
- [LedControl](../msg_docs/LedControl.md)
- [MavlinkLog](../msg_docs/MavlinkLog.md)
- [GeofenceResult](../msg_docs/GeofenceResult.md)
- [SensorGyroFifo](../msg_docs/SensorGyroFifo.md)
- [ParameterSetUsedRequest](../msg_docs/ParameterSetUsedRequest.md)
- [FollowTargetStatus](../msg_docs/FollowTargetStatus.md)
- [OrbTestLarge](../msg_docs/OrbTestLarge.md)
- [DronecanNodeStatus](../msg_docs/DronecanNodeStatus.md)
- [EstimatorInnovations](../msg_docs/EstimatorInnovations.md)
- [ArmingCheckReplyV0](../msg_docs/ArmingCheckReplyV0.md)
- [IridiumsbdStatus](../msg_docs/IridiumsbdStatus.md)
- [QshellRetval](../msg_docs/QshellRetval.md)
- [GimbalDeviceSetAttitude](../msg_docs/GimbalDeviceSetAttitude.md)
- [ArmingCheckRequestV0](../msg_docs/ArmingCheckRequestV0.md)
- [CanInterfaceStatus](../msg_docs/CanInterfaceStatus.md)
- [UavcanParameterValue](../msg_docs/UavcanParameterValue.md)
- [RaptorInput](../msg_docs/RaptorInput.md)
- [SensorUwb](../msg_docs/SensorUwb.md)
- [TiltrotorExtraControls](../msg_docs/TiltrotorExtraControls.md)
- [VehicleAirData](../msg_docs/VehicleAirData.md)
- [SensorTemp](../msg_docs/SensorTemp.md)
- [VehicleStatusV0](../msg_docs/VehicleStatusV0.md)
- [AirspeedWind](../msg_docs/AirspeedWind.md)
- [BatteryInfo](../msg_docs/BatteryInfo.md)
- [Cpuload](../msg_docs/Cpuload.md)
- [OpenDroneIdArmStatus](../msg_docs/OpenDroneIdArmStatus.md)
- [DifferentialPressure](../msg_docs/DifferentialPressure.md)
- [YawEstimatorStatus](../msg_docs/YawEstimatorStatus.md)
- [CameraTrigger](../msg_docs/CameraTrigger.md)
- [GpioRequest](../msg_docs/GpioRequest.md)
- [SensorPreflightMag](../msg_docs/SensorPreflightMag.md)
- [LaunchDetectionStatus](../msg_docs/LaunchDetectionStatus.md)
- [VehicleAttitudeSetpointV0](../msg_docs/VehicleAttitudeSetpointV0.md)
- [PositionControllerLandingStatus](../msg_docs/PositionControllerLandingStatus.md)
- [RateCtrlStatus](../msg_docs/RateCtrlStatus.md)
- [SensorMag](../msg_docs/SensorMag.md)
- [SensorGnssRelative](../msg_docs/SensorGnssRelative.md)
- [ActuatorControlsStatus](../msg_docs/ActuatorControlsStatus.md)
- [NeuralControl](../msg_docs/NeuralControl.md)
- [TecsStatus](../msg_docs/TecsStatus.md)
- [NavigatorMissionItem](../msg_docs/NavigatorMissionItem.md)
- [RcChannels](../msg_docs/RcChannels.md)
- [NormalizedUnsignedSetpoint](../msg_docs/NormalizedUnsignedSetpoint.md)
- [ManualControlSwitches](../msg_docs/ManualControlSwitches.md)
- [ActuatorOutputs](../msg_docs/ActuatorOutputs.md)
- [SensorHygrometer](../msg_docs/SensorHygrometer.md)
- [FlightPhaseEstimation](../msg_docs/FlightPhaseEstimation.md)
- [EstimatorSensorBias](../msg_docs/EstimatorSensorBias.md)
- [RcParameterMap](../msg_docs/RcParameterMap.md)
- [MountOrientation](../msg_docs/MountOrientation.md)
- [OpenDroneIdSystem](../msg_docs/OpenDroneIdSystem.md)
- [FixedWingLateralStatus](../msg_docs/FixedWingLateralStatus.md)
- [OpenDroneIdOperatorId](../msg_docs/OpenDroneIdOperatorId.md)
- [TakeoffStatus](../msg_docs/TakeoffStatus.md)
- [SensorsStatusImu](../msg_docs/SensorsStatusImu.md)
- [DistanceSensorModeChangeRequest](../msg_docs/DistanceSensorModeChangeRequest.md)
- [DebugValue](../msg_docs/DebugValue.md)
- [GainCompression](../msg_docs/GainCompression.md)
- [GimbalManagerSetManualControl](../msg_docs/GimbalManagerSetManualControl.md)
- [SensorCorrection](../msg_docs/SensorCorrection.md)
- [TaskStackInfo](../msg_docs/TaskStackInfo.md)
- [EstimatorStates](../msg_docs/EstimatorStates.md)
- [InputRc](../msg_docs/InputRc.md)
- [QshellReq](../msg_docs/QshellReq.md)
- [ActuatorServosTrim](../msg_docs/ActuatorServosTrim.md)
- [HomePositionV0](../msg_docs/HomePositionV0.md)
- [ActuatorArmed](../msg_docs/ActuatorArmed.md)
- [IrlockReport](../msg_docs/IrlockReport.md)
- [OpenDroneIdOperatorId](../msg_docs/OpenDroneIdOperatorId.md)
- [VehicleAcceleration](../msg_docs/VehicleAcceleration.md)
- [ButtonEvent](../msg_docs/ButtonEvent.md)
- [RtlStatus](../msg_docs/RtlStatus.md)
- [SensorGyroFft](../msg_docs/SensorGyroFft.md)
- [VehicleRoi](../msg_docs/VehicleRoi.md)
- [OrbTestLarge](../msg_docs/OrbTestLarge.md)
- [RoverSpeedStatus](../msg_docs/RoverSpeedStatus.md)
- [Event](../msg_docs/Event.md)
- [InternalCombustionEngineControl](../msg_docs/InternalCombustionEngineControl.md)
- [DebugVect](../msg_docs/DebugVect.md)
- [FailureDetectorStatus](../msg_docs/FailureDetectorStatus.md)
- [EventV0](../msg_docs/EventV0.md)
- [FuelTankStatus](../msg_docs/FuelTankStatus.md)
- [FixedWingLateralGuidanceStatus](../msg_docs/FixedWingLateralGuidanceStatus.md)
- [MissionResult](../msg_docs/MissionResult.md)
- [VehicleLocalPositionV0](../msg_docs/VehicleLocalPositionV0.md)
- [BatteryInfo](../msg_docs/BatteryInfo.md)
- [EstimatorGpsStatus](../msg_docs/EstimatorGpsStatus.md)
- [RegisterExtComponentReplyV0](../msg_docs/RegisterExtComponentReplyV0.md)
- [SensorUwb](../msg_docs/SensorUwb.md)
- [LandingTargetInnovations](../msg_docs/LandingTargetInnovations.md)
- [SensorCorrection](../msg_docs/SensorCorrection.md)
- [ConfigOverridesV0](../msg_docs/ConfigOverridesV0.md)
- [UlogStream](../msg_docs/UlogStream.md)
- [GpioOut](../msg_docs/GpioOut.md)
- [Mission](../msg_docs/Mission.md)
- [EscEepromRead](../msg_docs/EscEepromRead.md)
- [PpsCapture](../msg_docs/PpsCapture.md)
- [SensorSelection](../msg_docs/SensorSelection.md)
- [EstimatorAidSource1d](../msg_docs/EstimatorAidSource1d.md)
- [UavcanParameterValue](../msg_docs/UavcanParameterValue.md)
- [PwmInput](../msg_docs/PwmInput.md)
- [ManualControlSwitches](../msg_docs/ManualControlSwitches.md)
- [VehicleStatusV0](../msg_docs/VehicleStatusV0.md)
- [ParameterResetRequest](../msg_docs/ParameterResetRequest.md)
- [NeuralControl](../msg_docs/NeuralControl.md)
- [GpioRequest](../msg_docs/GpioRequest.md)
- [ActuatorTest](../msg_docs/ActuatorTest.md)
- [DebugArray](../msg_docs/DebugArray.md)
- [NormalizedUnsignedSetpoint](../msg_docs/NormalizedUnsignedSetpoint.md)
- [UavcanParameterRequest](../msg_docs/UavcanParameterRequest.md)
- [ActuatorServosTrim](../msg_docs/ActuatorServosTrim.md)
- [CellularStatus](../msg_docs/CellularStatus.md)
- [ParameterUpdate](../msg_docs/ParameterUpdate.md)
- [InternalCombustionEngineStatus](../msg_docs/InternalCombustionEngineStatus.md)
- [NavigatorMissionItem](../msg_docs/NavigatorMissionItem.md)
- [VehicleAttitudeSetpointV0](../msg_docs/VehicleAttitudeSetpointV0.md)
- [LoggerStatus](../msg_docs/LoggerStatus.md)
- [RcParameterMap](../msg_docs/RcParameterMap.md)
- [GpioIn](../msg_docs/GpioIn.md)
- [FlightPhaseEstimation](../msg_docs/FlightPhaseEstimation.md)
- [GimbalManagerSetAttitude](../msg_docs/GimbalManagerSetAttitude.md)
- [Ekf2Timestamps](../msg_docs/Ekf2Timestamps.md)
- [SensorGnssRelative](../msg_docs/SensorGnssRelative.md)
- [SensorTemp](../msg_docs/SensorTemp.md)
- [EstimatorAidSource2d](../msg_docs/EstimatorAidSource2d.md)
- [SensorGyro](../msg_docs/SensorGyro.md)
- [TuneControl](../msg_docs/TuneControl.md)
- [RcChannels](../msg_docs/RcChannels.md)
- [ControlAllocatorStatus](../msg_docs/ControlAllocatorStatus.md)
- [ActionRequest](../msg_docs/ActionRequest.md)
- [VehicleAirData](../msg_docs/VehicleAirData.md)
- [SensorsStatus](../msg_docs/SensorsStatus.md)
- [VehicleImu](../msg_docs/VehicleImu.md)
- [CameraTrigger](../msg_docs/CameraTrigger.md)
- [GeofenceStatus](../msg_docs/GeofenceStatus.md)
- [EstimatorBias3d](../msg_docs/EstimatorBias3d.md)
- [NavigatorStatus](../msg_docs/NavigatorStatus.md)
- [GeneratorStatus](../msg_docs/GeneratorStatus.md)
- [ParameterSetValueResponse](../msg_docs/ParameterSetValueResponse.md)
- [VehicleConstraints](../msg_docs/VehicleConstraints.md)
- [VehicleImuStatus](../msg_docs/VehicleImuStatus.md)
- [HomePositionV0](../msg_docs/HomePositionV0.md)
- [GimbalManagerInformation](../msg_docs/GimbalManagerInformation.md)
- [OpenDroneIdArmStatus](../msg_docs/OpenDroneIdArmStatus.md)
- [EstimatorBias](../msg_docs/EstimatorBias.md)
- [DeviceInformation](../msg_docs/DeviceInformation.md)
- [FixedWingLateralStatus](../msg_docs/FixedWingLateralStatus.md)
- [VelocityLimits](../msg_docs/VelocityLimits.md)
- [RoverAttitudeStatus](../msg_docs/RoverAttitudeStatus.md)
- [Airspeed](../msg_docs/Airspeed.md)
- [SensorMag](../msg_docs/SensorMag.md)
- [HeaterStatus](../msg_docs/HeaterStatus.md)
- [EstimatorSensorBias](../msg_docs/EstimatorSensorBias.md)
- [SensorHygrometer](../msg_docs/SensorHygrometer.md)
- [OrbTestMedium](../msg_docs/OrbTestMedium.md)
- [RaptorInput](../msg_docs/RaptorInput.md)
- [IrlockReport](../msg_docs/IrlockReport.md)
- [RadioStatus](../msg_docs/RadioStatus.md)
- [RateCtrlStatus](../msg_docs/RateCtrlStatus.md)
- [TrajectorySetpoint6dof](../msg_docs/TrajectorySetpoint6dof.md)
- [SensorAccel](../msg_docs/SensorAccel.md)
- [InputRc](../msg_docs/InputRc.md)
- [VehicleMagnetometer](../msg_docs/VehicleMagnetometer.md)
- [SensorsStatusImu](../msg_docs/SensorsStatusImu.md)
- [SensorBaro](../msg_docs/SensorBaro.md)
- [PurePursuitStatus](../msg_docs/PurePursuitStatus.md)
- [GimbalDeviceInformation](../msg_docs/GimbalDeviceInformation.md)
- [ParameterSetValueRequest](../msg_docs/ParameterSetValueRequest.md)
- [LandingGearWheel](../msg_docs/LandingGearWheel.md)
- [ArmingCheckReplyV0](../msg_docs/ArmingCheckReplyV0.md)
- [GimbalDeviceSetAttitude](../msg_docs/GimbalDeviceSetAttitude.md)
- [LaunchDetectionStatus](../msg_docs/LaunchDetectionStatus.md)
- [GimbalManagerSetManualControl](../msg_docs/GimbalManagerSetManualControl.md)
- [SensorAccelFifo](../msg_docs/SensorAccelFifo.md)
- [MavlinkTunnel](../msg_docs/MavlinkTunnel.md)
- [FigureEightStatus](../msg_docs/FigureEightStatus.md)
- [RtlTimeEstimate](../msg_docs/RtlTimeEstimate.md)
- [Px4ioStatus](../msg_docs/Px4ioStatus.md)
- [VehicleAngularAccelerationSetpoint](../msg_docs/VehicleAngularAccelerationSetpoint.md)
- [Vtx](../msg_docs/Vtx.md)
- [TaskStackInfo](../msg_docs/TaskStackInfo.md)
- [RoverRateStatus](../msg_docs/RoverRateStatus.md)
- [TecsStatus](../msg_docs/TecsStatus.md)
- [DronecanNodeStatus](../msg_docs/DronecanNodeStatus.md)
- [OpenDroneIdSelfId](../msg_docs/OpenDroneIdSelfId.md)
- [GpioConfig](../msg_docs/GpioConfig.md)
- [EstimatorInnovations](../msg_docs/EstimatorInnovations.md)
- [DebugKeyValue](../msg_docs/DebugKeyValue.md)
- [EstimatorEventFlags](../msg_docs/EstimatorEventFlags.md)
- [Rpm](../msg_docs/Rpm.md)
- [TakeoffStatus](../msg_docs/TakeoffStatus.md)
- [HoverThrustEstimate](../msg_docs/HoverThrustEstimate.md)
- [VehicleOpticalFlowVel](../msg_docs/VehicleOpticalFlowVel.md)
- [AutotuneAttitudeControlStatus](../msg_docs/AutotuneAttitudeControlStatus.md)
- [SensorAirflow](../msg_docs/SensorAirflow.md)
- [ActuatorControlsStatus](../msg_docs/ActuatorControlsStatus.md)
- [GimbalControls](../msg_docs/GimbalControls.md)
- [VehicleOpticalFlow](../msg_docs/VehicleOpticalFlow.md)
- [MagnetometerBiasEstimate](../msg_docs/MagnetometerBiasEstimate.md)
- [Gripper](../msg_docs/Gripper.md)
- [GimbalManagerStatus](../msg_docs/GimbalManagerStatus.md)
- [TiltrotorExtraControls](../msg_docs/TiltrotorExtraControls.md)
- [GpsDump](../msg_docs/GpsDump.md)
- [AdcReport](../msg_docs/AdcReport.md)
- [Ping](../msg_docs/Ping.md)
- [SensorPreflightMag](../msg_docs/SensorPreflightMag.md)
- [EscStatus](../msg_docs/EscStatus.md)
- [MountOrientation](../msg_docs/MountOrientation.md)
- [UlogStreamAck](../msg_docs/UlogStreamAck.md)
- [HealthReport](../msg_docs/HealthReport.md)
- [EstimatorSelectorStatus](../msg_docs/EstimatorSelectorStatus.md)
- [VehicleCommandAckV0](../msg_docs/VehicleCommandAckV0.md)
- [EstimatorStatus](../msg_docs/EstimatorStatus.md)
- [FollowTargetEstimator](../msg_docs/FollowTargetEstimator.md)
- [EscReport](../msg_docs/EscReport.md)
- [YawEstimatorStatus](../msg_docs/YawEstimatorStatus.md)
- [VehicleAngularVelocity](../msg_docs/VehicleAngularVelocity.md)
- [DatamanResponse](../msg_docs/DatamanResponse.md)
- [QshellRetval](../msg_docs/QshellRetval.md)
- [DistanceSensorModeChangeRequest](../msg_docs/DistanceSensorModeChangeRequest.md)
- [FollowTarget](../msg_docs/FollowTarget.md)
- [VehicleStatusV1](../msg_docs/VehicleStatusV1.md)
- [LandingTargetPose](../msg_docs/LandingTargetPose.md)
- [CameraCapture](../msg_docs/CameraCapture.md)
- [Cpuload](../msg_docs/Cpuload.md)
- [AirspeedValidatedV0](../msg_docs/AirspeedValidatedV0.md)
- [RegisterExtComponentRequestV0](../msg_docs/RegisterExtComponentRequestV0.md)
- [OrbitStatus](../msg_docs/OrbitStatus.md)
- [CameraStatus](../msg_docs/CameraStatus.md)
- [EstimatorStates](../msg_docs/EstimatorStates.md)
- [FixedWingRunwayControl](../msg_docs/FixedWingRunwayControl.md)
- [MagWorkerData](../msg_docs/MagWorkerData.md)
- [VehicleGlobalPositionV0](../msg_docs/VehicleGlobalPositionV0.md)
- [QshellReq](../msg_docs/QshellReq.md)
- [WheelEncoders](../msg_docs/WheelEncoders.md)
- [DebugValue](../msg_docs/DebugValue.md)
- [PositionControllerLandingStatus](../msg_docs/PositionControllerLandingStatus.md)
- [SensorGnssStatus](../msg_docs/SensorGnssStatus.md)
- [SystemPower](../msg_docs/SystemPower.md)
- [ArmingCheckRequestV0](../msg_docs/ArmingCheckRequestV0.md)
- [ActuatorOutputs](../msg_docs/ActuatorOutputs.md)
- [PositionControllerStatus](../msg_docs/PositionControllerStatus.md)
- [AirspeedWind](../msg_docs/AirspeedWind.md)
- [EstimatorAidSource3d](../msg_docs/EstimatorAidSource3d.md)
- [IridiumsbdStatus](../msg_docs/IridiumsbdStatus.md)
- [PowerMonitor](../msg_docs/PowerMonitor.md)
- [DatamanRequest](../msg_docs/DatamanRequest.md)
- [LogMessage](../msg_docs/LogMessage.md)
- [GpsInjectData](../msg_docs/GpsInjectData.md)
- [OpenDroneIdSystem](../msg_docs/OpenDroneIdSystem.md)
- [VehicleLocalPositionSetpoint](../msg_docs/VehicleLocalPositionSetpoint.md)
- [CanInterfaceStatus](../msg_docs/CanInterfaceStatus.md)
- [OrbTest](../msg_docs/OrbTest.md)
- [DifferentialPressure](../msg_docs/DifferentialPressure.md)
- [SatelliteInfo](../msg_docs/SatelliteInfo.md)
- [GainCompression](../msg_docs/GainCompression.md)
:::

View File

@ -191,28 +191,13 @@ Source: [drivers/dshot](https://github.com/PX4/PX4-Autopilot/tree/main/src/drive
### Description
This is the DShot output driver. It is similar to the fmu driver, and can be used as drop-in replacement
This is the DShot output driver. It can be used as drop-in replacement
to use DShot as ESC communication protocol instead of PWM.
On startup, the module tries to occupy all available pins for DShot output.
It skips all pins already in use (e.g. by a camera trigger module).
It supports:
- DShot150, DShot300, DShot600
- telemetry via separate UART and publishing as esc_status message
- sending DShot commands via CLI
### Examples
Permanently reverse motor 1:
```
dshot reverse -m 1
dshot save -m 1
```
After saving, the reversed direction will be regarded as the normal one. So to reverse again repeat the same commands.
### Usage {#dshot_usage}
@ -226,36 +211,6 @@ dshot <command> [arguments...]
values: <device>
[-x] Swap RX/TX pins
reverse Reverse motor direction
[-m <val>] Motor index (1-based, default=all)
normal Normal motor direction
[-m <val>] Motor index (1-based, default=all)
save Save current settings
[-m <val>] Motor index (1-based, default=all)
3d_on Enable 3D mode
[-m <val>] Motor index (1-based, default=all)
3d_off Disable 3D mode
[-m <val>] Motor index (1-based, default=all)
beep1 Send Beep pattern 1
[-m <val>] Motor index (1-based, default=all)
beep2 Send Beep pattern 2
[-m <val>] Motor index (1-based, default=all)
beep3 Send Beep pattern 3
[-m <val>] Motor index (1-based, default=all)
beep4 Send Beep pattern 4
[-m <val>] Motor index (1-based, default=all)
beep5 Send Beep pattern 5
[-m <val>] Motor index (1-based, default=all)
stop
status print status info

View File

@ -0,0 +1,41 @@
---
pageClass: is-wide-page
---
# EscEepromRead (UORB message)
**TOPICS:** esc_eeprom_read
## Fields
| Name | Type | Unit [Frame] | Range/Enum | Description |
| --------- | ----------- | ------------ | ---------- | ---------------------------------------------------- |
| timestamp | `uint64` | us | | Time since system start |
| firmware | `uint8` | | | ESC firmware type (see ESC_FIRMWARE enum in MAVLink) |
| index | `uint8` | | | Index of the ESC (0 = ESC1, 1 = ESC2, etc.) |
| length | `uint16` | | | Length of valid data |
| data | `uint8[48]` | | | Raw ESC EEPROM data |
## Constants
| Name | Type | Value | Description |
| ----------------------------------------------- | ------- | ----- | -------------------------------- |
| <a id="#ORB_QUEUE_LENGTH"></a> ORB_QUEUE_LENGTH | `uint8` | 8 | To support 8 queued up responses |
## Source Message
[Source file (GitHub)](https://github.com/PX4/PX4-Autopilot/blob/main/msg/EscEepromRead.msg)
::: details Click here to see original file
```c
uint64 timestamp # [us] Time since system start
uint8 firmware # [-] ESC firmware type (see ESC_FIRMWARE enum in MAVLink)
uint8 index # [-] Index of the ESC (0 = ESC1, 1 = ESC2, etc.)
uint16 length # [-] Length of valid data
uint8[48] data # [-] Raw ESC EEPROM data
uint8 ORB_QUEUE_LENGTH = 8 # To support 8 queued up responses
```
:::

View File

@ -0,0 +1,43 @@
---
pageClass: is-wide-page
---
# EscEepromWrite (UORB message)
**TOPICS:** esc_eeprom_write
## Fields
| Name | Type | Unit [Frame] | Range/Enum | Description |
| ---------- | ----------- | ------------ | ---------- | ---------------------------------------------------------------------------------- |
| timestamp | `uint64` | us | | Time since system start |
| firmware | `uint8` | | | ESC firmware type (see ESC_FIRMWARE enum in MAVLink) |
| index | `uint8` | | | Index of the ESC (0 = ESC1, 1 = ESC2, etc, 255 = All) |
| length | `uint16` | | | Length of valid data |
| data | `uint8[48]` | | | Raw ESC EEPROM data |
| write_mask | `uint32[2]` | | | Bitmask indicating which bytes in the data array should be written (max 48 values) |
## Constants
| Name | Type | Value | Description |
| ----------------------------------------------- | ------- | ----- | ------------------------------- |
| <a id="#ORB_QUEUE_LENGTH"></a> ORB_QUEUE_LENGTH | `uint8` | 8 | To support 8 queued up requests |
## Source Message
[Source file (GitHub)](https://github.com/PX4/PX4-Autopilot/blob/main/msg/EscEepromWrite.msg)
::: details Click here to see original file
```c
uint64 timestamp # [us] Time since system start
uint8 firmware # [-] ESC firmware type (see ESC_FIRMWARE enum in MAVLink)
uint8 index # [-] Index of the ESC (0 = ESC1, 1 = ESC2, etc, 255 = All)
uint16 length # [-] Length of valid data
uint8[48] data # [-] Raw ESC EEPROM data
uint32[2] write_mask # [-] Bitmask indicating which bytes in the data array should be written (max 48 values)
uint8 ORB_QUEUE_LENGTH = 8 # To support 8 queued up requests
```
:::

View File

@ -8,28 +8,27 @@ pageClass: is-wide-page
## Fields
| Name | Type | Unit [Frame] | Range/Enum | Description |
| ----------------- | --------- | ------------ | ---------- | ------------------------------------------------------------------ |
| timestamp | `uint64` | | | time since system start (microseconds) |
| esc_errorcount | `uint32` | | | Number of reported errors by ESC - if supported |
| esc_rpm | `int32` | | | Motor RPM, negative for reverse rotation [RPM] - if supported |
| esc_voltage | `float32` | | | Voltage measured from current ESC [V] - if supported |
| esc_current | `float32` | | | Current measured from current ESC [A] - if supported |
| esc_temperature | `float32` | | | Temperature measured from current ESC [degC] - if supported |
| motor_temperature | `int16` | | | Temperature measured from current motor [degC] - if supported |
| esc_address | `uint8` | | | Address of current ESC (in most cases 1-8 / must be set by driver) |
| esc_cmdcount | `uint8` | | | Counter of number of commands |
| esc_state | `uint8` | | | State of ESC - depend on Vendor |
| actuator_function | `uint8` | | | actuator output function (one of Motor1...MotorN) |
| failures | `uint16` | | | Bitmask to indicate the internal ESC faults |
| esc_power | `int8` | | | Applied power 0-100 in % (negative values reserved) |
| Name | Type | Unit [Frame] | Range/Enum | Description |
| ----------------- | --------- | ------------ | ------------------- | ------------------------------------------------------------------- |
| timestamp | `uint64` | us | | Time since system start |
| esc_errorcount | `uint32` | | | Number of reported errors by ESC - if supported |
| esc_rpm | `int32` | rpm | | Motor RPM, negative for reverse rotation - if supported |
| esc_voltage | `float32` | V | | Voltage measured from current ESC - if supported |
| esc_current | `float32` | A | | Current measured from current ESC - if supported |
| esc_temperature | `float32` | degC | | Temperature measured from current ESC - if supported |
| esc_address | `uint8` | | | Address of current ESC (in most cases 1-12 / must be set by driver) |
| motor_temperature | `int16` | degC | | Temperature measured from current motor - if supported |
| esc_state | `uint8` | | | State of ESC - depend on Vendor |
| actuator_function | `uint8` | | | Actuator output function (one of Motor1...MotorN) |
| failures | `uint16` | | [FAILURE](#FAILURE) | Bitmask to indicate the internal ESC faults |
| esc_power | `int8` | % | [0 : 100] | Applied power (negative values reserved) |
## Constants
## Enums
### FAILURE {#FAILURE}
| Name | Type | Value | Description |
| --------------------------------------------------------------------------- | ------- | ----- | ---------------------------------------------------------------------------- |
| <a id="#ACTUATOR_FUNCTION_MOTOR1"></a> ACTUATOR_FUNCTION_MOTOR1 | `uint8` | 101 |
| <a id="#ACTUATOR_FUNCTION_MOTOR_MAX"></a> ACTUATOR_FUNCTION_MOTOR_MAX | `uint8` | 112 | output_functions.yaml Motor.start + Motor.count - 1 |
| <a id="#FAILURE_OVER_CURRENT"></a> FAILURE_OVER_CURRENT | `uint8` | 0 | (1 << 0) |
| <a id="#FAILURE_OVER_VOLTAGE"></a> FAILURE_OVER_VOLTAGE | `uint8` | 1 | (1 << 1) |
| <a id="#FAILURE_MOTOR_OVER_TEMPERATURE"></a> FAILURE_MOTOR_OVER_TEMPERATURE | `uint8` | 2 | (1 << 2) |
@ -40,7 +39,14 @@ pageClass: is-wide-page
| <a id="#FAILURE_MOTOR_WARN_TEMPERATURE"></a> FAILURE_MOTOR_WARN_TEMPERATURE | `uint8` | 7 | (1 << 7) |
| <a id="#FAILURE_WARN_ESC_TEMPERATURE"></a> FAILURE_WARN_ESC_TEMPERATURE | `uint8` | 8 | (1 << 8) |
| <a id="#FAILURE_OVER_ESC_TEMPERATURE"></a> FAILURE_OVER_ESC_TEMPERATURE | `uint8` | 9 | (1 << 9) |
| <a id="#ESC_FAILURE_COUNT"></a> ESC_FAILURE_COUNT | `uint8` | 10 | Counter - keep it as last element! |
## Constants
| Name | Type | Value | Description |
| --------------------------------------------------------------------- | ------- | ----- | --------------------------------------------------- |
| <a id="#ACTUATOR_FUNCTION_MOTOR1"></a> ACTUATOR_FUNCTION_MOTOR1 | `uint8` | 101 |
| <a id="#ACTUATOR_FUNCTION_MOTOR_MAX"></a> ACTUATOR_FUNCTION_MOTOR_MAX | `uint8` | 112 | output_functions.yaml Motor.start + Motor.count - 1 |
| <a id="#ESC_FAILURE_COUNT"></a> ESC_FAILURE_COUNT | `uint8` | 10 | Counter - keep it as last element! |
## Source Message
@ -49,36 +55,37 @@ pageClass: is-wide-page
::: details Click here to see original file
```c
uint64 timestamp # time since system start (microseconds)
uint32 esc_errorcount # Number of reported errors by ESC - if supported
int32 esc_rpm # Motor RPM, negative for reverse rotation [RPM] - if supported
float32 esc_voltage # Voltage measured from current ESC [V] - if supported
float32 esc_current # Current measured from current ESC [A] - if supported
float32 esc_temperature # Temperature measured from current ESC [degC] - if supported
int16 motor_temperature # Temperature measured from current motor [degC] - if supported
uint8 esc_address # Address of current ESC (in most cases 1-8 / must be set by driver)
uint8 esc_cmdcount # Counter of number of commands
uint64 timestamp # [us] Time since system start
uint8 esc_state # State of ESC - depend on Vendor
uint32 esc_errorcount # [-] Number of reported errors by ESC - if supported
int32 esc_rpm # [rpm] Motor RPM, negative for reverse rotation - if supported
float32 esc_voltage # [V] Voltage measured from current ESC - if supported
float32 esc_current # [A] Current measured from current ESC - if supported
float32 esc_temperature # [degC] Temperature measured from current ESC - if supported
uint8 esc_address # [-] Address of current ESC (in most cases 1-12 / must be set by driver)
int16 motor_temperature # [degC] Temperature measured from current motor - if supported
uint8 esc_state # [-] State of ESC - depend on Vendor
uint8 actuator_function # [-] Actuator output function (one of Motor1...MotorN)
uint8 actuator_function # actuator output function (one of Motor1...MotorN)
uint8 ACTUATOR_FUNCTION_MOTOR1 = 101
uint8 ACTUATOR_FUNCTION_MOTOR_MAX = 112 # output_functions.yaml Motor.start + Motor.count - 1
uint16 failures # Bitmask to indicate the internal ESC faults
int8 esc_power # Applied power 0-100 in % (negative values reserved)
uint16 failures # [@enum FAILURE] Bitmask to indicate the internal ESC faults
int8 esc_power # [%] [@range 0,100] Applied power (negative values reserved)
uint8 FAILURE_OVER_CURRENT = 0 # (1 << 0)
uint8 FAILURE_OVER_VOLTAGE = 1 # (1 << 1)
uint8 FAILURE_MOTOR_OVER_TEMPERATURE = 2 # (1 << 2)
uint8 FAILURE_OVER_RPM = 3 # (1 << 3)
uint8 FAILURE_INCONSISTENT_CMD = 4 # (1 << 4) Set if ESC received an inconsistent command (i.e out of boundaries)
uint8 FAILURE_MOTOR_STUCK = 5 # (1 << 5)
uint8 FAILURE_GENERIC = 6 # (1 << 6)
uint8 FAILURE_MOTOR_WARN_TEMPERATURE = 7 # (1 << 7)
uint8 FAILURE_WARN_ESC_TEMPERATURE = 8 # (1 << 8)
uint8 FAILURE_OVER_ESC_TEMPERATURE = 9 # (1 << 9)
uint8 ESC_FAILURE_COUNT = 10 # Counter - keep it as last element!
uint8 FAILURE_OVER_CURRENT = 0 # (1 << 0)
uint8 FAILURE_OVER_VOLTAGE = 1 # (1 << 1)
uint8 FAILURE_MOTOR_OVER_TEMPERATURE = 2 # (1 << 2)
uint8 FAILURE_OVER_RPM = 3 # (1 << 3)
uint8 FAILURE_INCONSISTENT_CMD = 4 # (1 << 4) Set if ESC received an inconsistent command (i.e out of boundaries)
uint8 FAILURE_MOTOR_STUCK = 5 # (1 << 5)
uint8 FAILURE_GENERIC = 6 # (1 << 6)
uint8 FAILURE_MOTOR_WARN_TEMPERATURE = 7 # (1 << 7)
uint8 FAILURE_WARN_ESC_TEMPERATURE = 8 # (1 << 8)
uint8 FAILURE_OVER_ESC_TEMPERATURE = 9 # (1 << 9)
uint8 ESC_FAILURE_COUNT = 10 # Counter - keep it as last element!
```
:::

View File

@ -8,27 +8,34 @@ pageClass: is-wide-page
## Fields
| Name | Type | Unit [Frame] | Range/Enum | Description |
| ------------------ | -------------- | ------------ | ---------- | ------------------------------------------------------------------------------------------------------------------------------------------------- |
| timestamp | `uint64` | | | time since system start (microseconds) |
| counter | `uint16` | | | incremented by the writing thread everytime new data is stored |
| esc_count | `uint8` | | | number of connected ESCs |
| esc_connectiontype | `uint8` | | | how ESCs connected to the system |
| esc_online_flags | `uint8` | | | Bitmask indicating which ESC is online/offline |
| esc_armed_flags | `uint8` | | | Bitmask indicating which ESC is armed. For ESC's where the arming state is not known (returned by the ESC), the arming bits should always be set. |
| esc | `EscReport[8]` | | |
| Name | Type | Unit [Frame] | Range/Enum | Description |
| ------------------ | --------------- | ------------ | ------------------------------------------- | --------------------------------------------------------------- |
| timestamp | `uint64` | us | | Time since system start |
| counter | `uint16` | | | Incremented by the writing thread everytime new data is stored |
| esc_count | `uint8` | | | Number of connected ESCs |
| esc_connectiontype | `uint8` | | [ESC_CONNECTION_TYPE](#ESC_CONNECTION_TYPE) | How ESCs connected to the system |
| esc_online_flags | `uint16` | | | Bitmask indicating which ESC is online/offline (in motor order) |
| esc_armed_flags | `uint16` | | | Bitmask indicating which ESC is armed (in motor order) |
| esc | `EscReport[12]` | | |
## Enums
### ESC_CONNECTION_TYPE {#ESC_CONNECTION_TYPE}
| Name | Type | Value | Description |
| --------------------------------------------------------------------- | ------- | ----- | ------------------------ |
| <a id="#ESC_CONNECTION_TYPE_PPM"></a> ESC_CONNECTION_TYPE_PPM | `uint8` | 0 | Traditional PPM ESC |
| <a id="#ESC_CONNECTION_TYPE_SERIAL"></a> ESC_CONNECTION_TYPE_SERIAL | `uint8` | 1 | Serial Bus connected ESC |
| <a id="#ESC_CONNECTION_TYPE_ONESHOT"></a> ESC_CONNECTION_TYPE_ONESHOT | `uint8` | 2 | One Shot PPM |
| <a id="#ESC_CONNECTION_TYPE_I2C"></a> ESC_CONNECTION_TYPE_I2C | `uint8` | 3 | I2C |
| <a id="#ESC_CONNECTION_TYPE_CAN"></a> ESC_CONNECTION_TYPE_CAN | `uint8` | 4 | CAN-Bus |
| <a id="#ESC_CONNECTION_TYPE_DSHOT"></a> ESC_CONNECTION_TYPE_DSHOT | `uint8` | 5 | DShot |
## Constants
| Name | Type | Value | Description |
| --------------------------------------------------------------------- | ------- | ----- | ----------------------------------------------------------------- |
| <a id="#CONNECTED_ESC_MAX"></a> CONNECTED_ESC_MAX | `uint8` | 8 | The number of ESCs supported. Current (Q2/2013) we support 8 ESCs |
| <a id="#ESC_CONNECTION_TYPE_PPM"></a> ESC_CONNECTION_TYPE_PPM | `uint8` | 0 | Traditional PPM ESC |
| <a id="#ESC_CONNECTION_TYPE_SERIAL"></a> ESC_CONNECTION_TYPE_SERIAL | `uint8` | 1 | Serial Bus connected ESC |
| <a id="#ESC_CONNECTION_TYPE_ONESHOT"></a> ESC_CONNECTION_TYPE_ONESHOT | `uint8` | 2 | One Shot PPM |
| <a id="#ESC_CONNECTION_TYPE_I2C"></a> ESC_CONNECTION_TYPE_I2C | `uint8` | 3 | I2C |
| <a id="#ESC_CONNECTION_TYPE_CAN"></a> ESC_CONNECTION_TYPE_CAN | `uint8` | 4 | CAN-Bus |
| <a id="#ESC_CONNECTION_TYPE_DSHOT"></a> ESC_CONNECTION_TYPE_DSHOT | `uint8` | 5 | DShot |
| Name | Type | Value | Description |
| ------------------------------------------------- | ------- | ----- | --------------------------------------------- |
| <a id="#CONNECTED_ESC_MAX"></a> CONNECTED_ESC_MAX | `uint8` | 12 | The number of ESCs supported (Motor1-Motor12) |
## Source Message
@ -37,34 +44,38 @@ pageClass: is-wide-page
::: details Click here to see original file
```c
uint64 timestamp # time since system start (microseconds)
uint8 CONNECTED_ESC_MAX = 8 # The number of ESCs supported. Current (Q2/2013) we support 8 ESCs
uint64 timestamp # [us] Time since system start
uint8 CONNECTED_ESC_MAX = 12 # The number of ESCs supported (Motor1-Motor12)
uint8 ESC_CONNECTION_TYPE_PPM = 0 # Traditional PPM ESC
uint8 ESC_CONNECTION_TYPE_SERIAL = 1 # Serial Bus connected ESC
uint8 ESC_CONNECTION_TYPE_ONESHOT = 2 # One Shot PPM
uint8 ESC_CONNECTION_TYPE_I2C = 3 # I2C
uint8 ESC_CONNECTION_TYPE_CAN = 4 # CAN-Bus
uint8 ESC_CONNECTION_TYPE_DSHOT = 5 # DShot
uint8 ESC_CONNECTION_TYPE_PPM = 0 # Traditional PPM ESC
uint8 ESC_CONNECTION_TYPE_SERIAL = 1 # Serial Bus connected ESC
uint8 ESC_CONNECTION_TYPE_ONESHOT = 2 # One Shot PPM
uint8 ESC_CONNECTION_TYPE_I2C = 3 # I2C
uint8 ESC_CONNECTION_TYPE_CAN = 4 # CAN-Bus
uint8 ESC_CONNECTION_TYPE_DSHOT = 5 # DShot
uint16 counter # incremented by the writing thread everytime new data is stored
uint16 counter # [-] Incremented by the writing thread everytime new data is stored
uint8 esc_count # number of connected ESCs
uint8 esc_connectiontype # how ESCs connected to the system
uint8 esc_count # [-] Number of connected ESCs
uint8 esc_connectiontype # [@enum ESC_CONNECTION_TYPE] How ESCs connected to the system
uint8 esc_online_flags # Bitmask indicating which ESC is online/offline
# esc_online_flags bit 0 : Set to 1 if ESC0 is online
# esc_online_flags bit 1 : Set to 1 if ESC1 is online
# esc_online_flags bit 2 : Set to 1 if ESC2 is online
# esc_online_flags bit 3 : Set to 1 if ESC3 is online
# esc_online_flags bit 4 : Set to 1 if ESC4 is online
# esc_online_flags bit 5 : Set to 1 if ESC5 is online
# esc_online_flags bit 6 : Set to 1 if ESC6 is online
# esc_online_flags bit 7 : Set to 1 if ESC7 is online
uint16 esc_online_flags # Bitmask indicating which ESC is online/offline (in motor order)
# esc_online_flags bit 0 : Set to 1 if Motor1 is online
# esc_online_flags bit 1 : Set to 1 if Motor2 is online
# esc_online_flags bit 2 : Set to 1 if Motor3 is online
# esc_online_flags bit 3 : Set to 1 if Motor4 is online
# esc_online_flags bit 4 : Set to 1 if Motor5 is online
# esc_online_flags bit 5 : Set to 1 if Motor6 is online
# esc_online_flags bit 6 : Set to 1 if Motor7 is online
# esc_online_flags bit 7 : Set to 1 if Motor8 is online
# esc_online_flags bit 8 : Set to 1 if Motor9 is online
# esc_online_flags bit 9 : Set to 1 if Motor10 is online
# esc_online_flags bit 10: Set to 1 if Motor11 is online
# esc_online_flags bit 11: Set to 1 if Motor12 is online
uint8 esc_armed_flags # Bitmask indicating which ESC is armed. For ESC's where the arming state is not known (returned by the ESC), the arming bits should always be set.
uint16 esc_armed_flags # [-] Bitmask indicating which ESC is armed (in motor order)
EscReport[8] esc
EscReport[12] esc
```
:::

View File

@ -1052,6 +1052,20 @@ Actuator configuration command.
| 6 | | | ? |
| 7 | | | ? |
### VEHICLE_CMD_ESC_REQUEST_EEPROM (312)
Request EEPROM data from an ESC.
| Param | Units | Range/Enum | Description |
| ----- | ----- | ---------- | ------------- |
| 1 | | | ESC Index |
| 2 | | | Firmware Type |
| 3 | | | Unused |
| 4 | | | Unused |
| 5 | | | Unused |
| 6 | | | ? |
| 7 | | | ? |
### VEHICLE_CMD_COMPONENT_ARM_DISARM (400)
Arms / Disarms a component.
@ -1526,16 +1540,22 @@ Change mode by specifying nav_state directly.
## Constants
| Name | Type | Value | Description |
| --------------------------------------------------------------------------------------------------------- | -------- | ----- | ------------------------------------------------------------------------------------------ |
| Name | Type | Value | Description |
| --------------------------------------------------------------------------------------------------------- | -------- | ----- | ----------------------------------------------------------------------------------------------------- |
| <a id="#MESSAGE_VERSION"></a> MESSAGE_VERSION | `uint32` | 0 |
| <a id="#PREFLIGHT_CALIBRATION_TEMPERATURE_CALIBRATION"></a> PREFLIGHT_CALIBRATION_TEMPERATURE_CALIBRATION | `uint16` | 3 | Param value for VEHICLE_CMD_PREFLIGHT_CALIBRATION to start temperature calibration. |
| <a id="#VEHICLE_MOUNT_MODE_RETRACT"></a> VEHICLE_MOUNT_MODE_RETRACT | `uint8` | 0 | Load and keep safe position (Roll,Pitch,Yaw) from permanent memory and stop stabilization. |
| <a id="#VEHICLE_MOUNT_MODE_NEUTRAL"></a> VEHICLE_MOUNT_MODE_NEUTRAL | `uint8` | 1 | Load and keep neutral position (Roll,Pitch,Yaw) from permanent memory. |
| <a id="#VEHICLE_MOUNT_MODE_MAVLINK_TARGETING"></a> VEHICLE_MOUNT_MODE_MAVLINK_TARGETING | `uint8` | 2 | Load neutral position and start MAVLink Roll,Pitch,Yaw control with stabilization. |
| <a id="#VEHICLE_MOUNT_MODE_RC_TARGETING"></a> VEHICLE_MOUNT_MODE_RC_TARGETING | `uint8` | 3 | Load neutral position and start RC Roll,Pitch,Yaw control with stabilization. |
| <a id="#VEHICLE_MOUNT_MODE_GPS_POINT"></a> VEHICLE_MOUNT_MODE_GPS_POINT | `uint8` | 4 | Load neutral position and start to point to Lat,Lon,Alt. |
| <a id="#PREFLIGHT_CALIBRATION_TEMPERATURE_CALIBRATION"></a> PREFLIGHT_CALIBRATION_TEMPERATURE_CALIBRATION | `uint16` | 3 | Param value for VEHICLE_CMD_PREFLIGHT_CALIBRATION to start temperature calibration. |
| <a id="#VEHICLE_MOUNT_MODE_RETRACT"></a> VEHICLE_MOUNT_MODE_RETRACT | `uint8` | 0 | Load and keep safe position (Roll,Pitch,Yaw) from permanent memory and stop stabilization. |
| <a id="#VEHICLE_MOUNT_MODE_NEUTRAL"></a> VEHICLE_MOUNT_MODE_NEUTRAL | `uint8` | 1 | Load and keep neutral position (Roll,Pitch,Yaw) from permanent memory. |
| <a id="#VEHICLE_MOUNT_MODE_MAVLINK_TARGETING"></a> VEHICLE_MOUNT_MODE_MAVLINK_TARGETING | `uint8` | 2 | Load neutral position and start MAVLink Roll,Pitch,Yaw control with stabilization. |
| <a id="#VEHICLE_MOUNT_MODE_RC_TARGETING"></a> VEHICLE_MOUNT_MODE_RC_TARGETING | `uint8` | 3 | Load neutral position and start RC Roll,Pitch,Yaw control with stabilization. |
| <a id="#VEHICLE_MOUNT_MODE_GPS_POINT"></a> VEHICLE_MOUNT_MODE_GPS_POINT | `uint8` | 4 | Load neutral position and start to point to Lat,Lon,Alt. |
| <a id="#VEHICLE_MOUNT_MODE_ENUM_END"></a> VEHICLE_MOUNT_MODE_ENUM_END | `uint8` | 5 |
| <a id="#ACTUATOR_CONFIGURATION_NONE"></a> ACTUATOR_CONFIGURATION_NONE | `uint8` | 0 | Do nothing. |
| <a id="#ACTUATOR_CONFIGURATION_BEEP"></a> ACTUATOR_CONFIGURATION_BEEP | `uint8` | 1 | Command the actuator to beep now. |
| <a id="#ACTUATOR_CONFIGURATION_3D_MODE_ON"></a> ACTUATOR_CONFIGURATION_3D_MODE_ON | `uint8` | 2 | Permanently set the actuator (ESC) to 3D mode (reversible thrust). |
| <a id="#ACTUATOR_CONFIGURATION_3D_MODE_OFF"></a> ACTUATOR_CONFIGURATION_3D_MODE_OFF | `uint8` | 3 | Permanently set the actuator (ESC) to non 3D mode (non-reversible thrust). |
| <a id="#ACTUATOR_CONFIGURATION_SPIN_DIRECTION1"></a> ACTUATOR_CONFIGURATION_SPIN_DIRECTION1 | `uint8` | 4 | Permanently set the actuator (ESC) to spin direction 1 (which can be clockwise or counter-clockwise). |
| <a id="#ACTUATOR_CONFIGURATION_SPIN_DIRECTION2"></a> ACTUATOR_CONFIGURATION_SPIN_DIRECTION2 | `uint8` | 5 | Permanently set the actuator (ESC) to spin direction 2 (opposite of direction 1). |
| <a id="#PARACHUTE_ACTION_DISABLE"></a> PARACHUTE_ACTION_DISABLE | `uint8` | 0 |
| <a id="#PARACHUTE_ACTION_ENABLE"></a> PARACHUTE_ACTION_ENABLE | `uint8` | 1 |
| <a id="#PARACHUTE_ACTION_RELEASE"></a> PARACHUTE_ACTION_RELEASE | `uint8` | 2 |
@ -1660,6 +1680,7 @@ uint16 VEHICLE_CMD_GIMBAL_DEVICE_INFORMATION = 283 # Command to ask information
uint16 VEHICLE_CMD_MISSION_START = 300 # Start running a mission. |first_item: the first mission item to run|last_item: the last mission item to run (after this item is run, the mission ends)|
uint16 VEHICLE_CMD_ACTUATOR_TEST = 310 # Actuator testing command. |[@range -1,1] value|[s] timeout|Unused|Unused|output function|
uint16 VEHICLE_CMD_CONFIGURE_ACTUATOR = 311 # Actuator configuration command. |configuration|Unused|Unused|Unused|output function|
uint16 VEHICLE_CMD_ESC_REQUEST_EEPROM = 312 # Request EEPROM data from an ESC. |ESC Index|Firmware Type|Unused|Unused|Unused|
uint16 VEHICLE_CMD_COMPONENT_ARM_DISARM = 400 # Arms / Disarms a component. |1 to arm, 0 to disarm.
uint16 VEHICLE_CMD_RUN_PREARM_CHECKS = 401 # Instructs a target system to run pre-arm checks.
uint16 VEHICLE_CMD_INJECT_FAILURE = 420 # Inject artificial failure for testing purposes.
@ -1709,6 +1730,13 @@ uint8 VEHICLE_ROI_LOCATION = 3 # Point toward fixed location.
uint8 VEHICLE_ROI_TARGET = 4 # Point toward target.
uint8 VEHICLE_ROI_ENUM_END = 5
uint8 ACTUATOR_CONFIGURATION_NONE = 0 # Do nothing.
uint8 ACTUATOR_CONFIGURATION_BEEP = 1 # Command the actuator to beep now.
uint8 ACTUATOR_CONFIGURATION_3D_MODE_ON = 2 # Permanently set the actuator (ESC) to 3D mode (reversible thrust).
uint8 ACTUATOR_CONFIGURATION_3D_MODE_OFF = 3 # Permanently set the actuator (ESC) to non 3D mode (non-reversible thrust).
uint8 ACTUATOR_CONFIGURATION_SPIN_DIRECTION1 = 4 # Permanently set the actuator (ESC) to spin direction 1 (which can be clockwise or counter-clockwise).
uint8 ACTUATOR_CONFIGURATION_SPIN_DIRECTION2 = 5 # Permanently set the actuator (ESC) to spin direction 2 (opposite of direction 1).
uint8 PARACHUTE_ACTION_DISABLE = 0
uint8 PARACHUTE_ACTION_ENABLE = 1
uint8 PARACHUTE_ACTION_RELEASE = 2

View File

@ -85,6 +85,8 @@ Graphs showing how these are used [can be found here](../middleware/uorb_graph.m
- [DistanceSensorModeChangeRequest](DistanceSensorModeChangeRequest.md)
- [DronecanNodeStatus](DronecanNodeStatus.md)
- [Ekf2Timestamps](Ekf2Timestamps.md) — this message contains the (relative) timestamps of the sensor inputs used by EKF2. It can be used for reproducible replay.
- [EscEepromRead](EscEepromRead.md)
- [EscEepromWrite](EscEepromWrite.md)
- [EscReport](EscReport.md)
- [EscStatus](EscStatus.md)
- [EstimatorAidSource1d](EstimatorAidSource1d.md)