diff --git a/mission/controller/PowerController.cpp b/mission/controller/PowerController.cpp index bd760012..edda2911 100644 --- a/mission/controller/PowerController.cpp +++ b/mission/controller/PowerController.cpp @@ -246,13 +246,13 @@ void PowerController::watchStateOfCharge() { if (not pwrLvlLowFlag and pwrCtrlCoreHk.coulombCounterCharge.value < payloadOpLimitLow) { triggerEvent(power::POWER_LEVEL_LOW); pwrLvlLowFlag = true; - } else { + } else if (pwrLvlLowFlag and pwrCtrlCoreHk.coulombCounterCharge.value > payloadOpLimitLow) { pwrLvlLowFlag = false; } if (not pwrLvlCriticalFlag and pwrCtrlCoreHk.coulombCounterCharge.value < higherModesLimit) { triggerEvent(power::POWER_LEVEL_CRITICAL); pwrLvlCriticalFlag = true; - } else { + } else if (pwrLvlCriticalFlag and pwrCtrlCoreHk.coulombCounterCharge.value > higherModesLimit) { pwrLvlCriticalFlag = false; } } else {