Index: firmware/App/Modes/SelfTests.c =================================================================== diff -u -r7e22520266e7e928bc0f37e312e293844a3d8a26 -ra07d9c4f115d1fed3c40c129edb5125d29070920 --- firmware/App/Modes/SelfTests.c (.../SelfTests.c) (revision 7e22520266e7e928bc0f37e312e293844a3d8a26) +++ firmware/App/Modes/SelfTests.c (.../SelfTests.c) (revision a07d9c4f115d1fed3c40c129edb5125d29070920) @@ -1044,6 +1044,10 @@ { seekSyringePlunger(); } + else + { + retractSyringePump(); + } } } } @@ -1413,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; @@ -1540,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; }