Index: Accel.c =================================================================== diff -u -r598f2559c95f766b970912ebfe8afbcec9e442aa -r82404deaa5450f7195f03befeaa1d3c6becf4b0f --- Accel.c (.../Accel.c) (revision 598f2559c95f766b970912ebfe8afbcec9e442aa) +++ Accel.c (.../Accel.c) (revision 82404deaa5450f7195f03befeaa1d3c6becf4b0f) @@ -7,8 +7,8 @@ * * @file Accel.c * -* @author (last) Darren Cox -* @date (last) 22-Jun-2023 +* @author (last) Vinayakam Mani +* @date (last) 24-Aug-2023 * * @author (original) Sean Nash * @date (original) 29-Jul-2020 @@ -150,7 +150,7 @@ /*********************************************************************//** * @brief * The execAccel function executes the accelerometer monitor state machine. - * @details Inputs: accelState + * @details Inputs: accelState, accelSelfTestState * @details Outputs: accelState, alarm if software fault happened * @return none *************************************************************************/ @@ -164,8 +164,15 @@ switch ( accelState ) { - case ACCELEROMETER_START_STATE: - accelState = ACCELEROMETER_MONITOR_STATE; + case ACCELEROMETER_START_STATE: + /* Once accelerometer self test completed as part of InitandPost Mode, begin accelerometer monitor state. + * This helps to makes sure that the calibration records has been read from Non Volatile memory + * during power up and applied in to accelerometer readings. + */ + if ( ACCELEROMETER_SELF_TEST_STATE_COMPLETE == accelSelfTestState ) + { + accelState = ACCELEROMETER_MONITOR_STATE; + } break; case ACCELEROMETER_MONITOR_STATE: