PX4-Autopilot/docs/en/test_cards/mc_08_dshot.md
Jacob Dahl f00e46f618
feat(dshot): Extended Telemetry and EEPROM support
Overhauls the DShot driver with per-timer BDShot selection, multi-timer                                                                                                                                  
sequential capture, Extended DShot Telemetry (EDT), and AM32 ESC EEPROM                                                                                                                                  
read/write via MAVLink. Expands ESC support from 8 to 12 channels.                                                                                                                                       
                                                                                                                                                                                                   
BDShot:                                                                                                                                                                                                  
- Per-timer BDShot protocol selection via actuator config UI                                                                                                                                             
- Multi-timer sequential burst/capture on any DMA-capable timer                                                                                                                                          
- Adaptive per-channel GCR bitstream decoding                                                                                                                                                            
- Per-channel online/offline detection with hysteresis                                                                                                                                                   
                                                                                                                                                                                                   
Extended DShot Telemetry (EDT):                                                                                                                                                                          
- Temperature, voltage, current from BDShot frames (no serial wire)                                                                                                                                      
- New DSHOT_BIDIR_EDT parameter                                                                                                                                     
- EDT data merged with serial telemetry when both available                                                                                                                                              
                                                                                                                                                                                                   
AM32 EEPROM:                                                                                                                                                                                             
- Read/write AM32 ESC settings via MAVLink ESC_EEPROM message                                                                                                                                            
- ESCSettingsInterface abstraction for future ESC firmware types                                                                                                                                         
- New DSHOT_ESC_TYPE parameter                                                                                                                                                                           
                                                                                                                                                                                                   
Other changes:                                                                                                                                                                                           
- Per-motor pole count params DSHOT_MOT_POL1–12 (replaces MOT_POLE_COUNT)                                                                                                                              
- EscStatus/EscReport expanded to 12 ESCs with uint16 bitmasks                                                                                                                                           
- Numerous bounds-check, overflow, and concurrency fixes                                                                                                                                                 
- Updated DShot documentation
2026-03-17 16:38:33 -08:00

1.6 KiB

Test MC_08 - DSHOT ESC

Objective

Regression test for DSHOT working with PX4

Preflight

Flight Tests

Stabilized mode

    ❏ Takeoff in stabilized mode to ensure correct motor spin

    ❏ Pitch/Roll/Yaw response 1:1

    ❏ Throttle response 1:1

Position mode

    ❏ Horizontal position should hold current value with stick centered

    ❏ Vertical position should hold current value with stick centered

    ❏ Throttle response set to climb/descent rate

    ❏ Pitch/Roll/Yaw response set to pitch/roll/yaw rates

Landing

❏ Land in either Position or Altitude mode with the throttle below 40%

❏ Upon touching ground, copter should disarm automatically within 2 seconds (default: see COM_DISARM_LAND)

Expected Results

  • Download flight logs

  • Load into Data Plot Juggler

  • Ensure data is logged for esc_status/esc.0x/esc_rpm

    Reference frames