Index: firmware/App/Controllers/AirTrap.c =================================================================== diff -u -rc1b9ac0dbf2196280895d2e440dd7ac288ac8424 -r60b6eccce34be08891b83299ca12936534d56361 --- firmware/App/Controllers/AirTrap.c (.../AirTrap.c) (revision c1b9ac0dbf2196280895d2e440dd7ac288ac8424) +++ firmware/App/Controllers/AirTrap.c (.../AirTrap.c) (revision 60b6eccce34be08891b83299ca12936534d56361) @@ -21,6 +21,7 @@ #include "FPGA.h" #include "ModeTreatmentParams.h" #include "OperationModes.h" +#include "Switches.h" #include "SystemCommMessages.h" #include "TaskGeneral.h" #include "TaskPriority.h" @@ -184,12 +185,17 @@ airTrapLevels[ AIR_TRAP_LEVEL_SENSOR_LOWER ].data = (U32)( TRUE == lower ? AIR_TRAP_LEVEL_AIR : AIR_TRAP_LEVEL_FLUID ); airTrapLevels[ AIR_TRAP_LEVEL_SENSOR_UPPER ].data = (U32)( TRUE == upper ? AIR_TRAP_LEVEL_AIR : AIR_TRAP_LEVEL_FLUID ); + if ( STATE_OPEN == getSwitchStatus( PUMP_TRACK_SWITCH ) ) + { + // If the pump track on open, zero the persistent counter to not check the air trap illegal level alarm + airTrapIllegalLevelSensorsCtr = 0; + } + // Check level readings are valid if ( ( AIR_TRAP_LEVEL_AIR == getAirTrapLevel( AIR_TRAP_LEVEL_SENSOR_LOWER ) ) && ( AIR_TRAP_LEVEL_FLUID == getAirTrapLevel( AIR_TRAP_LEVEL_SENSOR_UPPER ) ) ) { if ( ++airTrapIllegalLevelSensorsCtr >= AIR_TRAP_ILLEGAL_LEVELS_PERSISTENCE ) - { #ifndef _RELEASE_ if ( getSoftwareConfigStatus( SW_CONFIG_DISABLE_ILLEGAL_AIR_TRAP_ALARM ) != SW_CONFIG_ENABLE_VALUE )