Periodically try to activate DSHOT telemetry if enabled but not working
commit81c226e7698f675ad92a8f208dc5911b1fd6011b
authorBruce Luckcuck <github@etracer.net>
Sat, 16 Mar 2019 18:05:30 +0000 (16 14:05 -0400)
committerBruce Luckcuck <github@etracer.net>
Sun, 17 Mar 2019 21:45:08 +0000 (17 17:45 -0400)
tree092090f2c7c4530855d36a624aa749a709670f73
parent7c6d36167c8bea74025385a5b19420bf5325fc6f
Periodically try to activate DSHOT telemetry if enabled but not working
If DSHOT telemetry is enabled but one or more ESC's are not supplying valid telemetry packets, then send the DSHOT command to enable telemetry once a second while disarmed until all ESC's are supplying telemetry.

Addresses the issue of the flight controller booting without the ESC's powered. In this case the initial command at boot to enable bidirectional telemetry will be missed by the ESC since they're not powered. If the battery is subsequently plugged in the ESC's will default to bidirectional telemetry disabled.

This change will detect that ESC's are not supplying telemetry and attempt to preiodically enable them.
src/main/drivers/pwm_output.h
src/main/drivers/pwm_output_dshot_shared.c
src/main/fc/core.c
src/main/fc/init.c
src/main/flight/mixer.c
src/main/flight/mixer.h