Index: firmware/App/Modes/ModeStandby.c =================================================================== diff -u -rd9d085cdca67200ecddbdfbc75c489e704b23081 -r61153247029a9a246ca1beadc66d772e3e583e4e --- firmware/App/Modes/ModeStandby.c (.../ModeStandby.c) (revision d9d085cdca67200ecddbdfbc75c489e704b23081) +++ firmware/App/Modes/ModeStandby.c (.../ModeStandby.c) (revision 61153247029a9a246ca1beadc66d772e3e583e4e) @@ -84,9 +84,6 @@ setBloodPumpTargetFlowRate( 0, MOTOR_DIR_FORWARD, PUMP_CONTROL_MODE_CLOSED_LOOP ); setDialInPumpTargetFlowRate( 0, MOTOR_DIR_FORWARD, PUMP_CONTROL_MODE_CLOSED_LOOP ); setDialOutPumpTargetRate( 0, MOTOR_DIR_FORWARD, PUMP_CONTROL_MODE_CLOSED_LOOP ); -#ifdef EMC_TEST_BUILD - enableValvesPIDControl(0); // enable valves -#endif #ifdef RM46_EVAL_BOARD_TARGET start = getMSTimerCount(); #endif @@ -220,6 +217,13 @@ homeBloodPump(); homeDialInPump(); homeDialOutPump(); + homeValve( VDI ); + homeValve( VDO ); + homeValve( VBA ); + homeValve( VBV ); +#ifdef EMC_TEST_BUILD + startAirTrapControl(); +#endif break; case STANDBY_WAIT_FOR_TREATMENT_STATE: @@ -238,23 +242,23 @@ switch ( toggle ) { case 0: // pumps and valves off - setDialyzerInletValvePosition( 0 ); - setDialyzerOutletValvePosition( 0 ); - setVenousBloodValvePosition( 0 ); - setArterialBloodValvePosition( 0 ); + setValvePosition( VDI, VALVE_POSITION_C_CLOSE ); + setValvePosition( VDO, VALVE_POSITION_C_CLOSE ); + setValvePosition( VBA, VALVE_POSITION_C_CLOSE ); + setValvePosition( VBV, VALVE_POSITION_C_CLOSE ); break; case 1: // pumps on, valves off - setBloodPumpTargetFlowRate( 500, MOTOR_DIR_FORWARD, PUMP_CONTROL_MODE_OPEN_LOOP ); + setBloodPumpTargetFlowRate( 200, MOTOR_DIR_FORWARD, PUMP_CONTROL_MODE_OPEN_LOOP ); setDialInPumpTargetFlowRate( 500, MOTOR_DIR_FORWARD, PUMP_CONTROL_MODE_OPEN_LOOP ); setDialOutPumpTargetRate( 500, MOTOR_DIR_FORWARD, PUMP_CONTROL_MODE_OPEN_LOOP ); break; case 2: // pumps on, valves on - setDialyzerInletValvePosition( 12000 ); - setDialyzerOutletValvePosition( 12000 ); - setVenousBloodValvePosition( 12000 ); - setArterialBloodValvePosition( 12000 ); + setValvePosition( VDI, VALVE_POSITION_B_OPEN ); + setValvePosition( VDO, VALVE_POSITION_B_OPEN ); + setValvePosition( VBA, VALVE_POSITION_B_OPEN ); + setValvePosition( VBV, VALVE_POSITION_B_OPEN ); break; case 3: // pumps off, valves on @@ -268,10 +272,10 @@ setBloodPumpTargetFlowRate( 0, MOTOR_DIR_FORWARD, PUMP_CONTROL_MODE_OPEN_LOOP ); setDialInPumpTargetFlowRate( 0, MOTOR_DIR_FORWARD, PUMP_CONTROL_MODE_OPEN_LOOP ); setDialOutPumpTargetRate( 0, MOTOR_DIR_FORWARD, PUMP_CONTROL_MODE_OPEN_LOOP ); - setDialyzerInletValvePosition( 0 ); - setDialyzerOutletValvePosition( 0 ); - setVenousBloodValvePosition( 0 ); - setArterialBloodValvePosition( 0 ); + setValvePosition( VDI, VALVE_POSITION_C_CLOSE ); + setValvePosition( VDO, VALVE_POSITION_C_CLOSE ); + setValvePosition( VBA, VALVE_POSITION_C_CLOSE ); + setValvePosition( VBV, VALVE_POSITION_C_CLOSE ); break; } }