diff options
author | Lorenz Meier <lm@inf.ethz.ch> | 2014-07-14 00:41:12 +0200 |
---|---|---|
committer | Lorenz Meier <lm@inf.ethz.ch> | 2014-07-14 00:41:12 +0200 |
commit | 180b83cc6dc6872c5248993b5409ac835a201114 (patch) | |
tree | 52cacadfbb1d9246e5a8bd42df9fd8674f4399fe | |
parent | 7968c6864e1255b4a65427187119aec2c3fc7ae0 (diff) | |
download | px4-firmware-180b83cc6dc6872c5248993b5409ac835a201114.tar.gz px4-firmware-180b83cc6dc6872c5248993b5409ac835a201114.tar.bz2 px4-firmware-180b83cc6dc6872c5248993b5409ac835a201114.zip |
Better analog error handling
-rw-r--r-- | src/modules/commander/airspeed_calibration.cpp | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/src/modules/commander/airspeed_calibration.cpp b/src/modules/commander/airspeed_calibration.cpp index ea81ac6a6..92d50a025 100644 --- a/src/modules/commander/airspeed_calibration.cpp +++ b/src/modules/commander/airspeed_calibration.cpp @@ -94,9 +94,17 @@ int do_airspeed_calibration(int mavlink_fd) } if (!paramreset_successful) { - warn("FAILED to reset - assuming analog"); - mavlink_log_critical(mavlink_fd, "If analog sens, retry with [SENS_DPRES_ANSC=1000]"); + /* only warn if analog scaling is zero */ + float analog_scaling = 0.0f; + param_get(param_find("SENS_DPRES_ANSC"), &(analog_scaling)) + if (fabsf(analog_scaling) < 0.1f) { + mavlink_log_critical(mavlink_fd, "If analog sens, retry with [SENS_DPRES_ANSC=1000]"); + close(diff_pres_sub); + return ERROR; + } + + /* set scaling offset parameter */ if (param_set(param_find("SENS_DPRES_OFF"), &(diff_pres_offset))) { mavlink_log_critical(mavlink_fd, CAL_FAILED_SET_PARAMS_MSG); close(diff_pres_sub); |