Index: firmware/App/Modes/ModePreTreat.c =================================================================== diff -u -rb6b733b8d1f25bc2dbe2a94c620cd80aa3ae06f7 -rbbf4e1a170f66ce07af12908a1d0fe101a934e9e --- firmware/App/Modes/ModePreTreat.c (.../ModePreTreat.c) (revision b6b733b8d1f25bc2dbe2a94c620cd80aa3ae06f7) +++ firmware/App/Modes/ModePreTreat.c (.../ModePreTreat.c) (revision bbf4e1a170f66ce07af12908a1d0fe101a934e9e) @@ -39,6 +39,8 @@ // ********** private data ********** static BOOL treatStartReqReceived = FALSE; ///< Flag indicates user requests treatment begin. +static BOOL confirmInstallRequested = FALSE; ///< Flag indicates user confirms disposable installation. + static BOOL alarmActionStopReceived = FALSE; ///< Flag indicates an alarm w/ stop property was triggered. static BOOL alarmActionResumeReceived = FALSE; ///< Flag indicates alarm action resume received. @@ -156,6 +158,22 @@ /*********************************************************************//** * @brief + * The signalUserConfirmInstallation function handles user confirmation of + * disposable installation. + * @details Inputs: none + * @details Outputs: treatStartReqReceived, send response to treatment start + * @return TRUE if signal accepted, FALSE if not + *************************************************************************/ +void signalUserConfirmInstallation( void ) +{ + if ( ( MODE_PRET == getCurrentOperationMode() ) && ( HD_PRE_TREATMENT_CART_INSTALL_STATE == currentPreTreatmentState ) ) + { + confirmInstallRequested = TRUE; + } +} + +/*********************************************************************//** + * @brief * The signalUserBeginningTreatment function handles user start of a * treatment. * @details Inputs: none @@ -251,6 +269,8 @@ static void resetSignalFlags( void ) { treatStartReqReceived = FALSE; + confirmInstallRequested = FALSE; + alarmActionStopReceived = FALSE; alarmActionResumeReceived = FALSE; } @@ -324,9 +344,12 @@ { HD_PRE_TREATMENT_MODE_STATE_T state = HD_PRE_TREATMENT_CART_INSTALL_STATE; - // TODO: handle install verification and transition - transitionToDrySelfTests(); - state = HD_PRE_TREATMENT_SELF_TEST_DRY_STATE; + if ( TRUE == confirmInstallRequested ) + { + confirmInstallRequested = FALSE; + state = HD_PRE_TREATMENT_SELF_TEST_DRY_STATE; + transitionToDrySelfTests(); + } return state; }