From 53611b9c4ff63a368ceacdbd69162cbcaa7a36f5 Mon Sep 17 00:00:00 2001 From: DonLakeFlyer Date: Thu, 25 May 2017 15:46:50 -0700 Subject: [PATCH] Discard bogus home position --- src/MissionManager/MissionSettingsItem.cc | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/src/MissionManager/MissionSettingsItem.cc b/src/MissionManager/MissionSettingsItem.cc index bcf63aed9..67072b78b 100644 --- a/src/MissionManager/MissionSettingsItem.cc +++ b/src/MissionManager/MissionSettingsItem.cc @@ -220,10 +220,14 @@ void MissionSettingsItem::_setDirty(void) void MissionSettingsItem::setCoordinate(const QGeoCoordinate& coordinate) { if (_plannedHomePositionCoordinate != coordinate) { - _plannedHomePositionCoordinate = coordinate; - emit coordinateChanged(coordinate); - emit exitCoordinateChanged(coordinate); - _plannedHomePositionAltitudeFact.setRawValue(coordinate.altitude()); + // ArduPilot tends to send crap home positions at initial vehicel boot, discard them + if (coordinate.latitude() != 0 || coordinate.longitude() != 0) { + qDebug() << "Setting home position" << coordinate; + _plannedHomePositionCoordinate = coordinate; + emit coordinateChanged(coordinate); + emit exitCoordinateChanged(coordinate); + _plannedHomePositionAltitudeFact.setRawValue(coordinate.altitude()); + } } } -- 2.22.0