Index: firmware/App/Modes/SelfTests.c =================================================================== diff -u -r2714cb7febd637831fd9091b2cfeac764d0e2111 -r098272da7396d05816a266142e7a34b40f4d93d3 --- firmware/App/Modes/SelfTests.c (.../SelfTests.c) (revision 2714cb7febd637831fd9091b2cfeac764d0e2111) +++ firmware/App/Modes/SelfTests.c (.../SelfTests.c) (revision 098272da7396d05816a266142e7a34b40f4d93d3) @@ -434,7 +434,7 @@ currentDrySelfTestsState = handleDrySelfTestPressureSensorsSetupState(); break; - case DRY_SELF_TESTS_PRESSURE_SENSORS_STATE: + case DRY_SELF_TESTS_PRESSURE_SENSORS_PRESSURIZED_STATE: currentDrySelfTestsState = handleDrySelfTestPressureSensorsState(); break; @@ -908,7 +908,7 @@ *************************************************************************/ static DRY_SELF_TESTS_STATE_T handleDrySelfTestPressureSensorsSetupState( void ) { - DRY_SELF_TESTS_STATE_T state = DRY_SELF_TESTS_PRESSURE_SENSORS_STATE; + DRY_SELF_TESTS_STATE_T state = DRY_SELF_TESTS_PRESSURE_SENSORS_PRESSURIZED_STATE; if ( TRUE == doesAlarmStatusIndicateStop() ) { @@ -942,7 +942,7 @@ *************************************************************************/ static DRY_SELF_TESTS_STATE_T handleDrySelfTestPressureSensorsState( void ) { - DRY_SELF_TESTS_STATE_T state = DRY_SELF_TESTS_PRESSURE_SENSORS_STATE; + DRY_SELF_TESTS_STATE_T state = DRY_SELF_TESTS_PRESSURE_SENSORS_PRESSURIZED_STATE; F32 const arterialPressure = getFilteredArterialPressure(); F32 const venousPressure = getFilteredVenousPressure(); @@ -1417,9 +1417,17 @@ F32 averageDisp = ( resOneDiffAfterDisplacement + resTwoDiffAfterDisplacement ) / 2.0; F32 integratedVolumeDiff = fabs( fmdIntegratedVolume - averageDisp ); F32 integratedVolumeToTargetPercent = fabs( 1.0 - ( fmdIntegratedVolume / averageDisp ) ); + F32 integrateVolumeToleranceG = WET_SELF_TEST_INTEGRATED_VOLUME_TOLERANCE; +#ifndef _RELEASE_ + if ( SW_CONFIG_ENABLE_VALUE == getSoftwareConfigStatus( SW_CONFIG_ENABLE_WET_SELF_TEST_WIDER_VOLUME_TOL ) ) + { + integrateVolumeToleranceG = 50.0F; + } +#endif + if ( ( fabs( resOneDiffAfterDisplacement - resTwoDiffAfterDisplacement) <= WET_SELF_TEST_DISPLACEMENT_TOLERANCE_G ) && - ( ( integratedVolumeDiff <= WET_SELF_TEST_INTEGRATED_VOLUME_TOLERANCE ) || + ( ( integratedVolumeDiff <= integrateVolumeToleranceG ) || ( integratedVolumeToTargetPercent <= WET_SELF_TEST_INTEGRATED_VOLUME_PCT_TOLERANCE ) ) ) { state = WET_SELF_TESTS_SECOND_DISPLACEMENT_SETUP_STATE; @@ -1544,9 +1552,17 @@ F32 resTwoDiffAfterDisplacement = getReservoirWeightLargeFilter( DG_RESERVOIR_2 ) - reservoirVolume[ DG_RESERVOIR_2 ]; F32 avgDisp = ( resOneDiffAfterDisplacement + resTwoDiffAfterDisplacement ) / 2.0; F32 integratedVolumeToTargetPercent = fabs( 1.0 - ( fmdIntegratedVolume / avgDisp ) ); + F32 integrateVolumeToleranceG = WET_SELF_TEST_INTEGRATED_VOLUME_TOLERANCE; +#ifndef _RELEASE_ + if ( SW_CONFIG_ENABLE_VALUE == getSoftwareConfigStatus( SW_CONFIG_ENABLE_WET_SELF_TEST_WIDER_VOLUME_TOL ) ) + { + integrateVolumeToleranceG = 50.0F; + } +#endif + if ( ( fabs( resOneDiffAfterDisplacement - resTwoDiffAfterDisplacement) <= WET_SELF_TEST_DISPLACEMENT_TOLERANCE_G ) && - ( integratedVolumeToTargetPercent <= WET_SELF_TEST_INTEGRATED_VOLUME_TOLERANCE ) ) + ( integratedVolumeToTargetPercent <= integrateVolumeToleranceG ) ) { state = WET_SELF_TESTS_COMPLETE_STATE; }