ardupilot icon indicating copy to clipboard operation
ardupilot copied to clipboard

Tradheli: After landing in Autotune and motor interlock disables, motor can restart

Open bnsgeyer opened this issue 7 months ago • 0 comments

Bug report

Issue details User experienced an unexpected motor restart after landing in Autotune (for heli, motor interlock disables once land complete flag is true). Here is the User's Post on this event

It was determined that Autotune does not handle the spool state similar to other non-manual throttle flight modes that are not intended for takeoff (like Brake mode). For heli's, once the aircraft lands, the spool state is set to GROUND_IDLE. This disables motor interlock in the code while the user's switch still has it enabled. Here is the lines of code in Mode_Autotune responsible for this behavior if (target_climb_rate < 0.0f) { copter.motors->set_desired_spool_state(AP_Motors::DesiredSpoolState::GROUND_IDLE); } else { copter.motors->set_desired_spool_state(AP_Motors::DesiredSpoolState::THROTTLE_UNLIMITED); }

Thus when the user accidentally raised the throttle above center which triggered a positive commanded climb rate, then the motor interlock was enabled again and the motor started.

I will start a PR with the solution that I think will work for multi and heli. Just wanted to document this issue.

Version ArduCopter 4.5.1

Platform [ ] All [ ] AntennaTracker [X] Copter [ ] Plane [ ] Rover [ ] Submarine

Airframe type Helicopter - Single

Hardware type CUAV Nora

Logs Link to relevant log is provided in discuss post

bnsgeyer avatar Jun 29 '24 17:06 bnsgeyer