Index: firmware/App/Controllers/Valves.c =================================================================== diff -u -r8ed20540782ec6b81fc870c33c7a7e6f589a6ff3 -r4d635c390c184a405bdc96e56ce35505fe3868c5 --- firmware/App/Controllers/Valves.c (.../Valves.c) (revision 8ed20540782ec6b81fc870c33c7a7e6f589a6ff3) +++ firmware/App/Controllers/Valves.c (.../Valves.c) (revision 4d635c390c184a405bdc96e56ce35505fe3868c5) @@ -302,15 +302,17 @@ * @details Inputs: valvesStatus * @details Outputs: valvesStatus * @param valve that is set to be homed + * @param force flag indicating whether homing should be forced even if already homed + * @param cartridge flag indicating whether a cartridge may be present requiring a more lax homing * @return TRUE if the homing command accepted otherwise, FALSE *************************************************************************/ -BOOL homeValve( VALVE_T valve ) +BOOL homeValve( VALVE_T valve, BOOL force, BOOL cartridge ) { BOOL result = FALSE; if ( valve < NUM_OF_VALVES ) { // If haven't already homed the valves, home the valves - if ( valvesStatus[ valve ].hasValveBeenHomed != TRUE ) + if ( ( valvesStatus[ valve ].hasValveBeenHomed != TRUE ) || ( VALVE_FORCE_HOME == force ) ) { valvesStatus[ valve ].hasHomingBeenRequested = TRUE; }