Index: firmware/App/Modes/SampleWater.c =================================================================== diff -u -rf6b78d1fe6741043de38707211710ab0e8a08483 -r1f91b5a53bda942b0967817bbd5e68a499dbf816 --- firmware/App/Modes/SampleWater.c (.../SampleWater.c) (revision f6b78d1fe6741043de38707211710ab0e8a08483) +++ firmware/App/Modes/SampleWater.c (.../SampleWater.c) (revision 1f91b5a53bda942b0967817bbd5e68a499dbf816) @@ -1,14 +1,14 @@ /************************************************************************** * -* Copyright (c) 2021-2022 Diality Inc. - All Rights Reserved. +* Copyright (c) 2021-2023 Diality Inc. - All Rights Reserved. * * THIS CODE MAY NOT BE COPIED OR REPRODUCED IN ANY FORM, IN PART OR IN * WHOLE, WITHOUT THE EXPLICIT PERMISSION OF THE COPYRIGHT OWNER. * * @file SampleWater.c * -* @author (last) Quang Nguyen -* @date (last) 21-May-2021 +* @author (last) Michael Garthwaite +* @date (last) 19-Jan-2023 * * @author (original) Quang Nguyen * @date (original) 19-Feb-2021 @@ -87,23 +87,39 @@ *************************************************************************/ void execSampleWater( void ) { - switch ( currentSampleWaterState ) + SAMPLE_WATER_STATE_T priorSubState = currentSampleWaterState; + +#ifndef _RELEASE_ + if ( SW_CONFIG_ENABLE_VALUE == getSoftwareConfigStatus( SW_CONFIG_DISABLE_SAMPLE_WATER ) ) { - case SAMPLE_WATER_SETUP_STATE: - currentSampleWaterState = handleWaterSampleSetupState(); - break; + currentSampleWaterState = SAMPLE_WATER_COMPLETE_STATE; + } + else +#endif + { + switch ( currentSampleWaterState ) + { + case SAMPLE_WATER_SETUP_STATE: + currentSampleWaterState = handleWaterSampleSetupState(); + break; - case SAMPLE_WATER_STATE: - currentSampleWaterState = handleWaterSampleState(); - break; + case SAMPLE_WATER_STATE: + currentSampleWaterState = handleWaterSampleState(); + break; - case SAMPLE_WATER_COMPLETE_STATE: - break; + case SAMPLE_WATER_COMPLETE_STATE: + break; - default: - SET_ALARM_WITH_2_U32_DATA( ALARM_ID_HD_SOFTWARE_FAULT, SW_FAULT_ID_MODE_SAMPLE_WATER_INVALID_STATE, currentSampleWaterState ); - break; + default: + SET_ALARM_WITH_2_U32_DATA( ALARM_ID_HD_SOFTWARE_FAULT, SW_FAULT_ID_MODE_SAMPLE_WATER_INVALID_STATE, currentSampleWaterState ); + break; + } } + + if ( priorSubState != currentSampleWaterState ) + { + SEND_EVENT_WITH_2_U32_DATA( HD_EVENT_SUB_STATE_CHANGE, priorSubState, currentSampleWaterState ); + } } /*********************************************************************//** @@ -129,10 +145,12 @@ { SELF_TEST_STATUS_T result = SELF_TEST_STATUS_FAILED; +#ifndef _RELEASE_ if ( SW_CONFIG_ENABLE_VALUE == getSoftwareConfigStatus( SW_CONFIG_DISABLE_SAMPLE_WATER ) ) { sampleWaterResult = TRUE; } +#endif if ( TRUE == sampleWaterResult ) {