idk what i am doing here
Some checks failed
EIVE/eive-obsw/pipeline/pr-main There was a failure building this commit

This commit is contained in:
Marius Eggert 2024-03-13 16:08:21 +01:00
parent 8374a02ae2
commit 3c869e5215
2 changed files with 20 additions and 2 deletions

View File

@ -254,9 +254,27 @@ ReturnValue_t GpsHyperionLinuxController::handleCoreTelemetry(bool modeIsSet) {
}
newFix = gps.fix.mode;
if (newFix == GpsHyperion::FixMode::NOT_SEEN or newFix == GpsHyperion::FixMode::NO_FIX) {
if (modeCommanded and maxTimeToReachFix.hasTimedOut()) {
if (maxTimeToReachFix.hasTimedOut()) {
// We are supposed to be on and functioning, but no fix was found
// ToDo:: maybe pull reset pins here
if (resetCallback != nullptr) {
PoolReadGuard pg(&gpsSet);
// Set HK entries invalid
gpsSet.setValidity(false, true);
ReturnValue_t result = resetCallback(0, 1, resetCallbackArgs);
if (result != returnvalue::OK) {
return result;
}
}
if (resetCallback != nullptr) {
PoolReadGuard pg(&gpsSet);
// Set HK entries invalid
gpsSet.setValidity(false, true);
ReturnValue_t result = resetCallback(1, 1, resetCallbackArgs);
if (result != returnvalue::OK) {
return result;
}
}
}
}
}

View File

@ -15,7 +15,7 @@ static constexpr uint8_t SUBSYSTEM_ID = SUBSYSTEM_ID::GPS_HANDLER;
static constexpr Event GPS_FIX_CHANGE = event::makeEvent(SUBSYSTEM_ID, 0, severity::INFO);
//! [EXPORT] : [COMMENT] Could not get fix in maximum allowed time. P1: Maximum allowed time
//! to get a fix after the GPS was switched on.
static constexpr Event CANT_GET_FIX = event::makeEvent(SUBSYSTEM_ID, 1, severity::LOW);
static constexpr Event CANT_GET_FIX = event::makeEvent(SUBSYSTEM_ID, 1, severity::MEDIUM);
static constexpr DeviceCommandId_t GPS_REPLY = 0;
static constexpr DeviceCommandId_t TRIGGER_RESET_PIN_GNSS = 5;