Files
PX4-Autopilot/src/drivers
Jacob Dahl 6ab5e4b235 fix(dshot): 3D mode deadzone disarm + inclusive deadband (#26685)
* fix(dshot): send motor stop for 3D mode deadzone instead of min throttle

In DShot 3D mode, convert_output_to_3d_scaling() returns DSHOT_DISARM_VALUE
(0) for deadzone inputs. But up_dshot_motor_data_set() adds the MIN_throttle
offset (+48), causing motors to spin at minimum throttle instead of stopping.

Check the result of calculate_output_value() for DSHOT_DISARM_VALUE and send
an explicit motor stop command, bypassing the +48 offset.

* fix(dshot): make 3D deadband inclusive on both ends

Change the 3D deadband check from [L, H) to [L, H] so that setting
DSHOT_3D_DEAD_L equal to DSHOT_3D_DEAD_H (both default to 1000) produces
a single-point deadband at that value, matching the natural reading of
"between L and H" in the param description.

Clarify the DSHOT_3D_DEAD_L/H param descriptions to state the range is
inclusive and note the L=H default behavior.
2026-05-17 18:28:00 -06:00
..