mirror of
https://gitee.com/mirrors_PX4/PX4-Autopilot.git
synced 2026-10-03 14:58:53 +08:00
fix commander: clear takeoff_time only on disarm
Otherwise the flight time restriction flag gets cleared too early, before disarming (which puts the vehicle into the previous mode and it might take off again).
This commit is contained in:
@@ -1766,6 +1766,7 @@ void Commander::run()
|
|||||||
_last_disarmed_timestamp = hrt_absolute_time();
|
_last_disarmed_timestamp = hrt_absolute_time();
|
||||||
|
|
||||||
_user_mode_intention.onDisarm();
|
_user_mode_intention.onDisarm();
|
||||||
|
_vehicle_status.takeoff_time = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!_arm_state_machine.isArmed()) {
|
if (!_arm_state_machine.isArmed()) {
|
||||||
@@ -1971,7 +1972,6 @@ void Commander::landDetectorUpdate()
|
|||||||
if (!was_landed && _vehicle_land_detected.landed) {
|
if (!was_landed && _vehicle_land_detected.landed) {
|
||||||
mavlink_log_info(&_mavlink_log_pub, "Landing detected\t");
|
mavlink_log_info(&_mavlink_log_pub, "Landing detected\t");
|
||||||
events::send(events::ID("commander_landing_detected"), events::Log::Info, "Landing detected");
|
events::send(events::ID("commander_landing_detected"), events::Log::Info, "Landing detected");
|
||||||
_vehicle_status.takeoff_time = 0;
|
|
||||||
|
|
||||||
} else if (was_landed && !_vehicle_land_detected.landed) {
|
} else if (was_landed && !_vehicle_land_detected.landed) {
|
||||||
mavlink_log_info(&_mavlink_log_pub, "Takeoff detected\t");
|
mavlink_log_info(&_mavlink_log_pub, "Takeoff detected\t");
|
||||||
|
|||||||
Reference in New Issue
Block a user