Merge pull request 'STR datasets to invalid on Shutdown' (#664) from str-invalid-off-transition into v3.0.0-dev
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good

Reviewed-on: #664
This commit is contained in:
Robin Müller 2023-06-06 11:12:54 +02:00
commit 8bfacbd5ef
2 changed files with 15 additions and 1 deletions

View File

@ -16,7 +16,7 @@ will consitute of a breaking change warranting a new major release:
# [unreleased] # [unreleased]
# [v2.2.0] to be released # [v4.0.0] to be released
# [v3.0.0] to be released # [v3.0.0] to be released
@ -93,6 +93,7 @@ will consitute of a breaking change warranting a new major release:
- Prevent spam of TCS controller heater unavailability event if all heaters are in external control. - Prevent spam of TCS controller heater unavailability event if all heaters are in external control.
- TCS heater switch info set contained invalid values because of a faulty `memcpy` in the TCS - TCS heater switch info set contained invalid values because of a faulty `memcpy` in the TCS
controller. There is not crash risk but the heater states were invalid. controller. There is not crash risk but the heater states were invalid.
- STR datasets were not set to invalid on shutdown.
- Fixed usage of quaternion valid flag, which does not actually represent the validity of the - Fixed usage of quaternion valid flag, which does not actually represent the validity of the
quaternion. quaternion.

View File

@ -100,6 +100,19 @@ void StarTrackerHandler::doShutDown() {
startupState = StartupState::IDLE; startupState = StartupState::IDLE;
bootState = FwBootState::NONE; bootState = FwBootState::NONE;
solutionSet.setReportingEnabled(false); solutionSet.setReportingEnabled(false);
{
PoolReadGuard pg(&solutionSet);
solutionSet.caliQw.value = 0.0;
solutionSet.caliQx.value = 0.0;
solutionSet.caliQy.value = 0.0;
solutionSet.caliQz.value = 0.0;
solutionSet.isTrustWorthy = 0;
solutionSet.setValidity(false, true);
}
{
PoolReadGuard pg(&temperatureSet);
temperatureSet.setValidity(false, true);
}
reinitNextSetParam = false; reinitNextSetParam = false;
setMode(_MODE_POWER_DOWN); setMode(_MODE_POWER_DOWN);
} }