diff --git a/src/boards/Payload/StateMachines/NASController/NASController.cpp b/src/boards/Payload/StateMachines/NASController/NASController.cpp index 2ea33a82c6561bea2f8abf4683d7e2e63aa04f4a..d5571e33053f4e07952debac7392ca2d27dbe5a0 100644 --- a/src/boards/Payload/StateMachines/NASController/NASController.cpp +++ b/src/boards/Payload/StateMachines/NASController/NASController.cpp @@ -115,13 +115,17 @@ void NASController::calibrate() ReferenceValues reference = nas.getReferenceValues(); reference.refPressure = pressure.getStats().mean; + // Set reference altitude using barometric measure + reference.refAltitude = Aeroutils::relAltitude(pressure.getStats().mean); + // If in this moment the GPS has fix i use that position as starting UBXGPSData gps = Sensors::getInstance().getUbxGpsLastSample(); if (gps.fix != 0) { + // We don't set the altitude with the GPS because of not precise + // measurements reference.refLatitude = gps.latitude; reference.refLongitude = gps.longitude; - reference.refAltitude = gps.height; } // Update the algorithm reference values