diff --git a/src/modules/land_detector/MulticopterLandDetector.cpp b/src/modules/land_detector/MulticopterLandDetector.cpp index 8cf57c95d6..9ffbd2aa35 100644 --- a/src/modules/land_detector/MulticopterLandDetector.cpp +++ b/src/modules/land_detector/MulticopterLandDetector.cpp @@ -187,8 +187,8 @@ bool MulticopterLandDetector::_get_ground_contact_state() _horizontal_movement = false; // not known } - if (lpos_available && _vehicle_local_position.dist_bottom_valid) { - _below_gnd_effect_hgt = _vehicle_local_position.dist_bottom < _get_gnd_effect_altitude(); + if (lpos_available && _vehicle_local_position.dist_bottom_valid && _param_lndmc_alt_gnd_effect.get() > 0) { + _below_gnd_effect_hgt = _vehicle_local_position.dist_bottom < _param_lndmc_alt_gnd_effect.get(); } else { _below_gnd_effect_hgt = false; @@ -323,16 +323,6 @@ bool MulticopterLandDetector::_get_landed_state() return _maybe_landed_hysteresis.get_state(); } -float MulticopterLandDetector::_get_gnd_effect_altitude() -{ - if (_param_lndmc_alt_gnd_effect.get() < 0.0f) { - return INFINITY; - - } else { - return _param_lndmc_alt_gnd_effect.get(); - } -} - bool MulticopterLandDetector::_get_ground_effect_state() { return (_in_descend && !_horizontal_movement) || diff --git a/src/modules/land_detector/MulticopterLandDetector.h b/src/modules/land_detector/MulticopterLandDetector.h index 5382b5024c..0e7680d945 100644 --- a/src/modules/land_detector/MulticopterLandDetector.h +++ b/src/modules/land_detector/MulticopterLandDetector.h @@ -79,8 +79,6 @@ protected: void _set_hysteresis_factor(const int factor) override; private: - - float _get_gnd_effect_altitude(); bool _is_close_to_ground(); /** Time in us that freefall has to hold before triggering freefall */ diff --git a/src/modules/land_detector/land_detector_params_mc.c b/src/modules/land_detector/land_detector_params_mc.c index cdfe6d5c76..3c979ac767 100644 --- a/src/modules/land_detector/land_detector_params_mc.c +++ b/src/modules/land_detector/land_detector_params_mc.c @@ -113,4 +113,4 @@ PARAM_DEFINE_FLOAT(LNDMC_ALT_MAX, -1.0f); * @group Land Detector * */ -PARAM_DEFINE_FLOAT(LNDMC_ALT_GND, -1.0f); +PARAM_DEFINE_FLOAT(LNDMC_ALT_GND, 2.f);