Index: firmware/App/Modes/ModeStandby.c =================================================================== diff -u -rf1d684e536e7911b356a5d35320c909a1016d3d0 -r94ec88c9d751596eaaeae6d87630c7ff4d655c1e --- firmware/App/Modes/ModeStandby.c (.../ModeStandby.c) (revision f1d684e536e7911b356a5d35320c909a1016d3d0) +++ firmware/App/Modes/ModeStandby.c (.../ModeStandby.c) (revision 94ec88c9d751596eaaeae6d87630c7ff4d655c1e) @@ -280,8 +280,8 @@ *************************************************************************/ BOOL signalUserInitiateTreatment( void ) { - BOOL result = FALSE; - DG_VERSIONS_T dgVersion = getDGVersion(); + BOOL result = FALSE; + DG_VERSIONS_T dgVersion = getDGVersion(); REQUEST_REJECT_REASON_CODE_T rejReason = REQUEST_REJECT_REASON_NONE; // Verify HD is in standby mode waiting for treatment start request @@ -316,7 +316,7 @@ #endif { // Verify HD and DG are not over due for service - if ( haveHDDGServicesBeenExpired( &rejReason ) != TRUE ) + if ( ( haveHDDGServicesBeenExpired( &rejReason ) != TRUE ) && ( getTestConfigStatus( TEST_CONFIG_SKIP_DISINFECT_AND_SERVICE_TX_BLOCKERS ) ) != TRUE ) { // Verify DG is disinfected if ( FALSE == isDGDisinfectValid() ) Index: firmware/App/Modes/SelfTests.c =================================================================== diff -u -r1bff8e530735be63ba557b77557a0bc2ac4b37b2 -r94ec88c9d751596eaaeae6d87630c7ff4d655c1e --- firmware/App/Modes/SelfTests.c (.../SelfTests.c) (revision 1bff8e530735be63ba557b77557a0bc2ac4b37b2) +++ firmware/App/Modes/SelfTests.c (.../SelfTests.c) (revision 94ec88c9d751596eaaeae6d87630c7ff4d655c1e) @@ -1835,13 +1835,20 @@ } else { - if ( fabs( resOneDiffAfterDisplacement - resTwoDiffAfterDisplacement) > WET_SELF_TEST_DISPLACEMENT_TOLERANCE_G ) + if ( getTestConfigStatus( TEST_CONFIG_DISABLE_WET_SELFTEST_DISPLACEMENT_CHECK ) != TRUE ) { - SET_ALARM_WITH_2_F32_DATA( ALARM_ID_HD_PRE_TREATMENT_WET_LC_TEST_FAILURE, resOneDiffAfterDisplacement, resTwoDiffAfterDisplacement ); + if ( fabs( resOneDiffAfterDisplacement - resTwoDiffAfterDisplacement) > WET_SELF_TEST_DISPLACEMENT_TOLERANCE_G ) + { + SET_ALARM_WITH_2_F32_DATA( ALARM_ID_HD_PRE_TREATMENT_WET_LC_TEST_FAILURE, resOneDiffAfterDisplacement, resTwoDiffAfterDisplacement ); + } + else + { + SET_ALARM_WITH_2_F32_DATA( ALARM_ID_HD_PRE_TREATMENT_WET_FLOW_TEST_FAILURE, averageDisp, fmdIntegratedVolume ); + } } else { - SET_ALARM_WITH_2_F32_DATA( ALARM_ID_HD_PRE_TREATMENT_WET_FLOW_TEST_FAILURE, averageDisp, fmdIntegratedVolume ); + state = WET_SELF_TESTS_SECOND_DISPLACEMENT_SETUP_STATE; } } @@ -1978,13 +1985,20 @@ } else { - if ( fabs( resOneDiffAfterDisplacement - resTwoDiffAfterDisplacement) > WET_SELF_TEST_DISPLACEMENT_TOLERANCE_G ) + if ( getTestConfigStatus( TEST_CONFIG_DISABLE_WET_SELFTEST_DISPLACEMENT_CHECK ) != TRUE ) { - SET_ALARM_WITH_2_F32_DATA( ALARM_ID_HD_PRE_TREATMENT_WET_LC_TEST_FAILURE, resOneDiffAfterDisplacement, resTwoDiffAfterDisplacement ); + if ( fabs( resOneDiffAfterDisplacement - resTwoDiffAfterDisplacement) > WET_SELF_TEST_DISPLACEMENT_TOLERANCE_G ) + { + SET_ALARM_WITH_2_F32_DATA( ALARM_ID_HD_PRE_TREATMENT_WET_LC_TEST_FAILURE, resOneDiffAfterDisplacement, resTwoDiffAfterDisplacement ); + } + else + { + SET_ALARM_WITH_2_F32_DATA( ALARM_ID_HD_PRE_TREATMENT_WET_FLOW_TEST_FAILURE, avgDisp, fmdIntegratedVolume ); + } } else { - SET_ALARM_WITH_2_F32_DATA( ALARM_ID_HD_PRE_TREATMENT_WET_FLOW_TEST_FAILURE, avgDisp, fmdIntegratedVolume ); + state = WET_SELF_TESTS_COMPLETE_STATE; } }