aboutsummaryrefslogtreecommitdiff
path: root/src/modules/commander
diff options
context:
space:
mode:
authorLorenz Meier <lm@inf.ethz.ch>2014-07-14 00:41:12 +0200
committerLorenz Meier <lm@inf.ethz.ch>2014-07-14 00:41:12 +0200
commit180b83cc6dc6872c5248993b5409ac835a201114 (patch)
tree52cacadfbb1d9246e5a8bd42df9fd8674f4399fe /src/modules/commander
parent7968c6864e1255b4a65427187119aec2c3fc7ae0 (diff)
downloadpx4-firmware-180b83cc6dc6872c5248993b5409ac835a201114.tar.gz
px4-firmware-180b83cc6dc6872c5248993b5409ac835a201114.tar.bz2
px4-firmware-180b83cc6dc6872c5248993b5409ac835a201114.zip
Better analog error handling
Diffstat (limited to 'src/modules/commander')
-rw-r--r--src/modules/commander/airspeed_calibration.cpp12
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);