diff --git a/libraries/AP_RangeFinder/AP_RangeFinder_SITL.cpp b/libraries/AP_RangeFinder/AP_RangeFinder_SITL.cpp index ed7a02cfce..2feac018be 100644 --- a/libraries/AP_RangeFinder/AP_RangeFinder_SITL.cpp +++ b/libraries/AP_RangeFinder/AP_RangeFinder_SITL.cpp @@ -34,13 +34,13 @@ void AP_RangeFinder_SITL::update(void) { const float dist = AP::sitl()->get_rangefinder(_instance); - // negative distance means nothing is connected - if (is_negative(dist)) { + // nan distance means nothing is connected + if (isnan(dist)) { state.status = RangeFinder::Status::NoData; return; } - state.distance_m = dist; + state.distance_m = MAX(0, dist); state.last_reading_ms = AP_HAL::millis(); // update range_valid state based on distance measured