Index: firmware/App/Modes/SelfTests.c =================================================================== diff -u -rba62e6bc4d1e85d99d40675ed00ede7cdfb9b6ba -r9d4a653a85e0293b6527244016e7d95c3516a4d1 --- firmware/App/Modes/SelfTests.c (.../SelfTests.c) (revision ba62e6bc4d1e85d99d40675ed00ede7cdfb9b6ba) +++ firmware/App/Modes/SelfTests.c (.../SelfTests.c) (revision 9d4a653a85e0293b6527244016e7d95c3516a4d1) @@ -59,7 +59,7 @@ #define WET_SELF_TEST_FIRST_DISPLACEMENT_TARGET_VOLUME_ML 100.0 ///< Target of first displacement volume in ml. #define WET_SELF_TEST_SECOND_DISPLACEMENT_TARGET_VOLUME_ML 600.0 ///< Target of second displacement volume in ml. #define WET_SELF_TEST_INTEGRATED_VOLUME_TOLERANCE 5.0 ///< Tolerance on integrated volume in percentage. -#define WET_SELF_TEST_DISPLACEMENT_TOLERANCE_G 12.0 ///< Tolerance in the load cell readings of the displacement in grams (2%). +#define WET_SELF_TEST_DISPLACEMENT_TOLERANCE_G 25.0 ///< Tolerance in the load cell readings of the displacement in grams (2%). #define WET_SELF_TEST_DISPLACEMENT_TIME_MS ( SEC_PER_MIN * MS_PER_SECOND ) ///< Time to displace dialysate in wet self-test in ms. #define RESERVOIR_SETTLE_TIME_MS ( 4 * MS_PER_SECOND ) ///< Time allotted for reservoir to settle in ms. @@ -328,7 +328,7 @@ } else { - SET_ALARM_WITH_1_U32_DATA( ALARM_ID_HD_NO_CART_SELF_TEST_TIMEOUT, currentNoCartSelfTestsState ); +// SET_ALARM_WITH_1_U32_DATA( ALARM_ID_HD_NO_CART_SELF_TEST_TIMEOUT, currentNoCartSelfTestsState ); } } } @@ -383,10 +383,15 @@ { case DRY_SELF_TESTS_START_STATE: #ifdef SKIP_DRY_SELF_TESTS - // TODO: Remove once dry self-test is ready to use - currentDrySelfTestsState = DRY_SELF_TESTS_SYRINGE_PUMP_PRIME_STATE; + //if ( getSoftwareConfigStatus( SW_CONFIG_DISABLE_DRY_SELF_TESTS ) != SW_CONFIG_ENABLE_VALUE ) + { + // TODO: Remove once dry self-test is ready to use + currentDrySelfTestsState = DRY_SELF_TESTS_SYRINGE_PUMP_PRIME_STATE; + } #else - currentDrySelfTestsState = DRY_SELF_TESTS_WAIT_FOR_DOOR_CLOSE_STATE; + { + currentDrySelfTestsState = DRY_SELF_TESTS_WAIT_FOR_DOOR_CLOSE_STATE; + } #endif break; @@ -839,10 +844,10 @@ { state = DRY_SELF_TESTS_OCCLUSION_SENSORS_STATE; } - else - { - activateAlarmNoData( ALARM_ID_INSTALL_NEW_CARTRIDGE ); - } +// else +// { +// activateAlarmNoData( ALARM_ID_INSTALL_NEW_CARTRIDGE ); +// } if ( TRUE == doesAlarmStatusIndicateStop() ) { @@ -1068,9 +1073,14 @@ { selfTestsResumeRequested = FALSE; #ifndef SKIP_DRY_SELF_TESTS - state = DRY_SELF_TESTS_WAIT_FOR_DOOR_CLOSE_STATE; + //if ( getSoftwareConfigStatus( SW_CONFIG_DISABLE_DRY_SELF_TESTS ) != SW_CONFIG_ENABLE_VALUE ) + { + state = DRY_SELF_TESTS_WAIT_FOR_DOOR_CLOSE_STATE; + } #else - state = DRY_SELF_TESTS_SYRINGE_PUMP_PRIME_STATE; + { + state = DRY_SELF_TESTS_SYRINGE_PUMP_PRIME_STATE; + } #endif } @@ -1226,7 +1236,13 @@ if ( ( BUBBLE_NOT_DETECTED == ADABubbleStatus ) && ( BUBBLE_NOT_DETECTED == ADVBubbleStatus ) ) #endif { - zeroBloodLeak(); + +#ifndef IGNORE_BLOOD_LEAK_SELF_TEST + //if ( getSoftwareConfigStatus( SW_CONFIG_DISABLE_BLOOD_LEAK_SELF_TEST ) != SW_CONFIG_ENABLE_VALUE ) + { + zeroBloodLeak(); + } +#endif state = WET_SELF_TESTS_BLOOD_LEAK_DETECTOR_STATE; *result = SELF_TEST_STATUS_PASSED; } @@ -1252,7 +1268,10 @@ { WET_SELF_TESTS_STATE_T state = WET_SELF_TESTS_BLOOD_LEAK_DETECTOR_STATE; - if ( SELF_TEST_STATUS_PASSED == getBloodLeakSelfTestStatus() ) +#ifndef IGNORE_BLOOD_LEAK_SELF_TEST + if ( /*( getSoftwareConfigStatus( SW_CONFIG_DISABLE_BLOOD_LEAK_SELF_TEST ) != SW_CONFIG_ENABLE_VALUE ) || */ + ( SELF_TEST_STATUS_PASSED == getBloodLeakSelfTestStatus() ) ) +#endif { settleStartTime = getMSTimerCount(); state = WET_SELF_TESTS_FIRST_DISPLACEMENT_SETUP_STATE;