Index: firmware/App/Controllers/DryBiCart.c =================================================================== diff -u -r99e330b5b872f68fdf2d842bd0597e54044d9ba9 -rff0a30a210517557538ce69103c84449ef96b14a --- firmware/App/Controllers/DryBiCart.c (.../DryBiCart.c) (revision 99e330b5b872f68fdf2d842bd0597e54044d9ba9) +++ firmware/App/Controllers/DryBiCart.c (.../DryBiCart.c) (revision ff0a30a210517557538ce69103c84449ef96b14a) @@ -56,9 +56,7 @@ #define DRY_BICART_FILL_INITIATE_PRESSURE_PSI 1.5F ///< Minimum pressure required to initiate the dry bicart fill process. #define DRY_BICART_FILL_COMPLETE_SUPPLY_PRESSURE_PSI 10.0F ///< Maximum pressure allowed at bicart fill during supply process/state #define DRY_BICART_FILL_INITIATE_SUPPLY_PRESSURE_PSI 3.0F ///< Minimum pressure required to initiate the dry bicart fill during supply process/state -#define MAX_DRY_BICART_FILL_COMPLETE_PRESSURE 22.0F ///< Very max dry bicart fill complete pressure for persistence on d66 -#define DRY_BICART_DEFAULT_MAX_FILL_CYCLE_CNT 10 ///< Default max fill cycle allowed for dry bicart fill/mix with water. -#define DRY_BICART_MAX_FILL_CYCLE_CNT 15 ///< Max fill cycle allowed (by override) for dry bicart fill/mix with water. +#define DRY_BICART_MAX_FILL_CYCLE_CNT 10 ///< Max fill cycle allowed (by override) for dry bicart fill/mix with water. #define DRY_BICART_MINIMUM_FILL_CYCLE_CNT 3 ///< Minimum fill cycle count for filling dry bicart // Dry Bicart Fill Vent #define DRY_BICART_FILL_VENT_TIME_MS ( 1 * MS_PER_SECOND ) ///< Wait time to vent dry bicart gas before actuating Bicarb chamber(F) venting. @@ -195,8 +193,8 @@ dryBiCartDataPublishInterval.ovInitData = 0; dryBiCartDataPublishInterval.override = OVERRIDE_RESET; - biCartMaxFillCycleCount.data = DRY_BICART_DEFAULT_MAX_FILL_CYCLE_CNT; - biCartMaxFillCycleCount.ovData = DRY_BICART_DEFAULT_MAX_FILL_CYCLE_CNT; + biCartMaxFillCycleCount.data = DRY_BICART_MINIMUM_FILL_CYCLE_CNT; + biCartMaxFillCycleCount.ovData = DRY_BICART_MINIMUM_FILL_CYCLE_CNT; biCartMaxFillCycleCount.ovInitData = 0; biCartMaxFillCycleCount.override = OVERRIDE_RESET; @@ -1109,12 +1107,7 @@ { dryBiCartPersistenceStartTime = getMSTimerCount(); } - //check the the maximum cart pressure during persistence on D66 - if ( d66Pressure >= MAX_DRY_BICART_FILL_COMPLETE_PRESSURE ) - { - setValveState( D65_VALV, VALVE_STATE_CLOSED ); - dryBiCartPersistenceStartTime = 0; - } + // 200 ms persistence on D66 pressure since pressure overshoot just after D65 opening if ( TRUE == didTimeout( dryBiCartPersistenceStartTime, DRY_BICART_PERSISTENCE_DURATION_MS ) ) { @@ -1174,6 +1167,10 @@ state = BICARB_SUPPLY_VENT_END_STATE; } + else + { + dryBiCartPersistenceStartTime = 0; + } } return state;