mirror of https://github.com/ArduPilot/ardupilot
Sub: rate-limit init_motor_test() calls
This commit is contained in:
parent
d23ad705e1
commit
ed6d7c434b
|
@ -197,10 +197,19 @@ bool Sub::handle_do_motor_test(mavlink_command_long_t command) {
|
|||
last_do_motor_test_ms = AP_HAL::millis();
|
||||
|
||||
// If we are not already testing motors, initialize test
|
||||
static uint32_t tLastInitializationFailed = 0;
|
||||
if(!ap.motor_test) {
|
||||
if (!init_motor_test()) {
|
||||
gcs().send_text(MAV_SEVERITY_WARNING, "motor test initialization failed!");
|
||||
return false; // init fail
|
||||
// Do not allow initializations attempt under 2 seconds
|
||||
// If one fails, we need to give the user time to fix the issue
|
||||
// instead of spamming error messages
|
||||
if (AP_HAL::millis() > (tLastInitializationFailed + 2000)) {
|
||||
if (!init_motor_test()) {
|
||||
gcs().send_text(MAV_SEVERITY_WARNING, "motor test initialization failed!");
|
||||
tLastInitializationFailed = AP_HAL::millis();
|
||||
return false; // init fail
|
||||
}
|
||||
} else {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue