Index: firmware/App/Modes/ModeGenDialysate.c =================================================================== diff -u -rde4b330865ad6f9966c76f3b335d5b3966f8a1b2 -r6408d79e3a9a543e90b2fa7ab823be348befd391 --- firmware/App/Modes/ModeGenDialysate.c (.../ModeGenDialysate.c) (revision de4b330865ad6f9966c76f3b335d5b3966f8a1b2) +++ firmware/App/Modes/ModeGenDialysate.c (.../ModeGenDialysate.c) (revision 6408d79e3a9a543e90b2fa7ab823be348befd391) @@ -245,57 +245,57 @@ *************************************************************************/ U32 execGenDialysateMode( void ) { + // Manage water level control + hydChamberWaterInletControl(); + + // Update any dynamic treatment parameter changes + updateTreatmentSettings(); + //TODO: Transition to post gen dialysate then standby. if ( TRUE == getU32OverrideValue( &pendingStopDDGenDialRequest ) ) { pendingStopDDGenDialRequest.data = FALSE; requestNewOperationMode( DD_MODE_STAN ); } - // Continuous water inlet pressure check - if ( genDialysateState != DD_GEND_DIALYSATE_DELIVERY_PAUSE ) + else if ( ( genDialysateState != DD_GEND_DIALYSATE_DELIVERY_PAUSE ) && + ( TRUE == areInletWaterConditionsAlarmsActive() ) ) { - if ( TRUE == areInletWaterConditionsAlarmsActive() ) // Check RO alarms as required - { - setModeGenDStateTransition( DD_GEND_DIALYSATE_DELIVERY_PAUSE ); - genDialysateState = DD_GEND_DIALYSATE_DELIVERY_PAUSE; - } + //Check RO alarms as required + setModeGenDStateTransition( DD_GEND_DIALYSATE_DELIVERY_PAUSE ); + genDialysateState = DD_GEND_DIALYSATE_DELIVERY_PAUSE; } - - // Manage water level control - hydChamberWaterInletControl(); - - // Update any dynamic treatment parameter changes - updateTreatmentSettings(); - - // execute current gen dialysate state - switch ( genDialysateState ) + else { - case DD_GEND_STATE_START: - setModeGenDStateTransition( DD_GEND_DIALYSATE_BYPASS_STATE ); - genDialysateState = DD_GEND_DIALYSATE_BYPASS_STATE; - break; + // execute current gen dialysate state + switch ( genDialysateState ) + { + case DD_GEND_STATE_START: + setModeGenDStateTransition( DD_GEND_DIALYSATE_BYPASS_STATE ); + genDialysateState = DD_GEND_DIALYSATE_BYPASS_STATE; + break; - case DD_GEND_DIALYSATE_BYPASS_STATE: - genDialysateState = handleGenDDialysateBypassState(); - break; + case DD_GEND_DIALYSATE_BYPASS_STATE: + genDialysateState = handleGenDDialysateBypassState(); + break; - case DD_GEND_DIALYSATE_DELIVERY_STATE: - genDialysateState = handleGenDDialysateDeliveryState(); - break; + case DD_GEND_DIALYSATE_DELIVERY_STATE: + genDialysateState = handleGenDDialysateDeliveryState(); + break; - case DD_GEND_DIALYSATE_DELIVERY_PAUSE: - genDialysateState = handleGenDDialysateDeliveryPauseState(); - break; + case DD_GEND_DIALYSATE_DELIVERY_PAUSE: + genDialysateState = handleGenDDialysateDeliveryPauseState(); + break; - case DD_GEND_ISOLATED_UF_STATE: - genDialysateState = handleGenDDialysateIsolatedUFState(); - break; + case DD_GEND_ISOLATED_UF_STATE: + genDialysateState = handleGenDDialysateIsolatedUFState(); + break; - default: - SET_ALARM_WITH_2_U32_DATA( ALARM_ID_DD_SOFTWARE_FAULT, SW_FAULT_ID_GEND_MODE_INVALID_EXEC_STATE, genDialysateState ) - genDialysateState = DD_GEND_STATE_START; - break; + default: + SET_ALARM_WITH_2_U32_DATA( ALARM_ID_DD_SOFTWARE_FAULT, SW_FAULT_ID_GEND_MODE_INVALID_EXEC_STATE, genDialysateState ) + genDialysateState = DD_GEND_STATE_START; + break; + } } //Publish Gen dialysate mode data @@ -678,22 +678,21 @@ /*********************************************************************//** * @brief - * The testDDstopGenDialysateOverride function sets the override value + * The testDDStopGenDialysateOverride function sets the override value * to stop the gen dialysate operation mode. * @details Inputs: pendingStopDDGenDialRequest * @details Outputs: pendingStopDDGenDialRequest * @param message Override message from Dialin which includes the flag * to override the operation mode. * @return TRUE if override successful, FALSE if not *************************************************************************/ -BOOL testDDstopGenDialysateOverride( MESSAGE_T *message ) +BOOL testDDStopGenDialysateOverride( MESSAGE_T *message ) { BOOL result = u32Override( message, &pendingStopDDGenDialRequest, FALSE, TRUE ); return result; } - /*********************************************************************//** * @brief * The testGenDExecStateOverride function sets the Gen dialysate execution state