Merge pull request 'This bugfix might be super important' (#621) from possible_bugfix_dual_lane_assy into main
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
All checks were successful
EIVE/eive-obsw/pipeline/head This commit looks good
Reviewed-on: #621 Reviewed-by: Marius Eggert <eggertm@irs.uni-stuttgart.de> Reviewed-by: Steffen Gaisser <gaisser@irs.uni-stuttgart.de>
This commit is contained in:
commit
4179e8e124
14
CHANGELOG.md
14
CHANGELOG.md
@ -16,6 +16,10 @@ will consitute of a breaking change warranting a new major release:
|
||||
|
||||
# [unreleased]
|
||||
|
||||
# [v2.2.0] to be released
|
||||
|
||||
# [v2.1.0] to be released
|
||||
|
||||
## Changed
|
||||
|
||||
- Adapt EM configuration to include all GomSpace PCDU devices except the ACU. For the ACU
|
||||
@ -34,6 +38,16 @@ will consitute of a breaking change warranting a new major release:
|
||||
- Host build is working again. Added reduced live TM helper which schedules the PUS and CFDP
|
||||
funnel.
|
||||
|
||||
# [v2.0.5] to be released
|
||||
|
||||
- The dual lane assembly transition failed handler started new transitions towards the current mode
|
||||
instead of the target mode. This means that if the dual lane assembly never reached the initial
|
||||
submode (e.g. mode normal and submode dual side), it will transition back to the current mode,
|
||||
which miht be `MODE_OFF`. Furthermore, this can lead to invalid internal states, so the subsequent
|
||||
recovery handling becomes stuck in the custom recovery sequence when swichting power back on.
|
||||
- The dual lane custom recovery handling was adapted to always perform proper power switch handling
|
||||
irrespective of current or target modes.
|
||||
|
||||
# [v2.0.4] 2023-04-19
|
||||
|
||||
## Fixed
|
||||
|
@ -205,7 +205,8 @@ bool DualLaneAssemblyBase::checkAndHandleRecovery() {
|
||||
opCode = pwrStateMachine.fsm();
|
||||
if (opCode == OpCodes::TO_OFF_DONE or opCode == OpCodes::TIMEOUT_OCCURED) {
|
||||
customRecoveryStates = RecoveryCustomStates::POWER_SWITCHING_ON;
|
||||
pwrStateMachine.start(targetMode, targetSubmode);
|
||||
// Command power back on in any case.
|
||||
pwrStateMachine.start(HasModesIF::MODE_ON, targetSubmode);
|
||||
}
|
||||
}
|
||||
if (customRecoveryStates == POWER_SWITCHING_ON) {
|
||||
|
Loading…
Reference in New Issue
Block a user