Index: firmware/App/Modes/ModeStandby.c =================================================================== diff -u -ra1a0187daedaf2c12e6f9eccfbf9e423d952e029 -r92f32196d272e32f9480e82dd09a038bb68753bc --- firmware/App/Modes/ModeStandby.c (.../ModeStandby.c) (revision a1a0187daedaf2c12e6f9eccfbf9e423d952e029) +++ firmware/App/Modes/ModeStandby.c (.../ModeStandby.c) (revision 92f32196d272e32f9480e82dd09a038bb68753bc) @@ -77,6 +77,10 @@ /// Interval (in task intervals) at which to publish standby mode data to CAN bus. static OVERRIDE_U32_T standbyModePublishInterval = { DISINFECTS_DATA_PUB_INTERVAL, DISINFECTS_DATA_PUB_INTERVAL, DISINFECTS_DATA_PUB_INTERVAL, 0 }; +#ifdef CARTRIDGE_TEST_BUILD +static BOOL testCartridgesMode = FALSE; // Flag indicates we are testing cartridges. Used only for cartridge test build. +#endif + // ********** private function prototypes ********** static HD_STANDBY_STATE_T handleStandbyModeStartState( void ); @@ -231,6 +235,36 @@ break; } +#ifdef CARTRIDGE_TEST_BUILD + if ( TRUE == stop ) + { + if ( testCartridgesMode != TRUE ) + { + testSetBloodPumpTargetDutyCycle( 0.652F ); + testSetDialInPumpTargetDutyCycle( 0.701F ); + testSetDialOutPumpTargetDutyCycle( 0.566F ); + setValvePosition( VDI, VALVE_POSITION_B_OPEN ); + setValvePosition( VDO, VALVE_POSITION_B_OPEN ); + setValvePosition( VBA, VALVE_POSITION_B_OPEN ); + setValvePosition( VBV, VALVE_POSITION_B_OPEN ); + setValveAirTrap( STATE_CLOSED ); + testCartridgesMode = TRUE; + } + else + { + signalBloodPumpHardStop(); + signalDialInPumpHardStop(); + signalDialOutPumpHardStop(); + setValvePosition( VDI, VALVE_POSITION_A_INSERT_EJECT ); + setValvePosition( VDO, VALVE_POSITION_A_INSERT_EJECT ); + setValvePosition( VBA, VALVE_POSITION_A_INSERT_EJECT ); + setValvePosition( VBV, VALVE_POSITION_A_INSERT_EJECT ); + setValveAirTrap( STATE_OPEN ); + testCartridgesMode = FALSE; + } + } +#endif + return currentStandbyState; }