Index: firmware/App/Controllers/UVReactors.c =================================================================== diff -u -r3b91172ed6cd004627473dc1dd1d71bf7a87f0d6 -r92708a5ab23026f5c9afce66bfa542c84141011a --- firmware/App/Controllers/UVReactors.c (.../UVReactors.c) (revision 3b91172ed6cd004627473dc1dd1d71bf7a87f0d6) +++ firmware/App/Controllers/UVReactors.c (.../UVReactors.c) (revision 92708a5ab23026f5c9afce66bfa542c84141011a) @@ -321,7 +321,7 @@ BOOL isOutletHealthy = (BOOL)getReactorHealth( OUTLET_UV_REACTOR ); // Check if both of them are healthy and if not, raise an alarm - if ( ( TRUE == isInletHealthy ) &&( TRUE == isOutletHealthy ) ) + if ( ( TRUE == isInletHealthy ) && ( TRUE == isOutletHealthy ) ) { uvReactorsSelfTestResult = SELF_TEST_STATUS_PASSED; } @@ -401,8 +401,17 @@ // Check if the alarm has been active if ( TRUE == isAlarmActive( ALARM_ID_UV_REACTOR_NOT_HEALTHY ) ) { - reactorsStatus[ reactor ].switchState = TURN_OFF; - reactorsStatus[ reactor ].healthStatus.data = UV_REACTOR_OFF; + reactorsStatus[ reactor ].switchState = TURN_OFF; + + // Check if the health status is overridden or not and then update the reactor's health + if ( OVERRIDE_KEY == reactorsStatus[ reactor ].healthStatus.override ) + { + reactorsStatus[ reactor ].healthStatus.ovData = UV_REACTOR_OFF; + } + else + { + reactorsStatus[ reactor ].healthStatus.data = UV_REACTOR_OFF; + } } // Check if it has been requested to turn off a reactor