Browse Source

AP_Torqeedo: display master error code

gps-1.3.1
Randy Mackay 3 years ago committed by Peter Barker
parent
commit
6f98c26b67
  1. 57
      libraries/AP_Torqeedo/AP_Torqeedo.cpp

57
libraries/AP_Torqeedo/AP_Torqeedo.cpp

@ -310,7 +310,62 @@ void AP_Torqeedo::report_error_codes()
gcs().send_text(MAV_SEVERITY_CRITICAL, "%s batt nearly empty", msg_prefix); gcs().send_text(MAV_SEVERITY_CRITICAL, "%s batt nearly empty", msg_prefix);
} }
if (_display_system_state.master_error_code > 0) { if (_display_system_state.master_error_code > 0) {
gcs().send_text(MAV_SEVERITY_CRITICAL, "%s err:%u", msg_prefix, _display_system_state.master_error_code); char master_err_str_buff[22] = {};
switch (_display_system_state.master_error_code) {
case 2:
strncpy(master_err_str_buff, "stator high temp", ARRAY_SIZE(master_err_str_buff));
break;
case 5:
strncpy(master_err_str_buff, "propeller blocked", ARRAY_SIZE(master_err_str_buff));
break;
case 6:
strncpy(master_err_str_buff, "motor low voltage", ARRAY_SIZE(master_err_str_buff));
break;
case 7:
strncpy(master_err_str_buff, "motor high current", ARRAY_SIZE(master_err_str_buff));
break;
case 8:
strncpy(master_err_str_buff, "pcb temp high", ARRAY_SIZE(master_err_str_buff));
break;
case 21:
strncpy(master_err_str_buff, "tiller cal bad", ARRAY_SIZE(master_err_str_buff));
break;
case 22:
strncpy(master_err_str_buff, "mag bad", ARRAY_SIZE(master_err_str_buff));
break;
case 23:
strncpy(master_err_str_buff, "range incorrect", ARRAY_SIZE(master_err_str_buff));
break;
case 30:
strncpy(master_err_str_buff, "motor comm error", ARRAY_SIZE(master_err_str_buff));
break;
case 32:
strncpy(master_err_str_buff, "tiller comm error", ARRAY_SIZE(master_err_str_buff));
break;
case 33:
strncpy(master_err_str_buff, "general comm error", ARRAY_SIZE(master_err_str_buff));
break;
case 41:
case 42:
strncpy(master_err_str_buff, "charge voltage bad", ARRAY_SIZE(master_err_str_buff));
break;
case 43:
strncpy(master_err_str_buff, "battery flat", ARRAY_SIZE(master_err_str_buff));
break;
case 45:
strncpy(master_err_str_buff, "battery high current", ARRAY_SIZE(master_err_str_buff));
break;
case 46:
strncpy(master_err_str_buff, "battery temp error", ARRAY_SIZE(master_err_str_buff));
break;
case 48:
strncpy(master_err_str_buff, "charging temp error", ARRAY_SIZE(master_err_str_buff));
break;
default:
// unknown error code
break;
}
gcs().send_text(MAV_SEVERITY_CRITICAL, "%s err:%u %s", msg_prefix, _display_system_state.master_error_code, master_err_str_buff);
} }
// report motor status errors // report motor status errors

Loading…
Cancel
Save