Index: Accel.c =================================================================== diff -u -r23d1abf85337979b6d547aae1f9f34ce95473fe7 -r7d23c3c3515455637435d1fda0dbdb4a0fd625d7 --- Accel.c (.../Accel.c) (revision 23d1abf85337979b6d547aae1f9f34ce95473fe7) +++ Accel.c (.../Accel.c) (revision 7d23c3c3515455637435d1fda0dbdb4a0fd625d7) @@ -585,33 +585,31 @@ *************************************************************************/ SELF_TEST_STATUS_T execAccelTest( void ) { - SELF_TEST_STATUS_T result = SELF_TEST_STATUS_IN_PROGRESS; + SELF_TEST_STATUS_T result = SELF_TEST_STATUS_IN_PROGRESS; + +#ifdef _HD_ + HD_ACCELEROMETER_SENSOR_CAL_RECORD_T cal = getHDAccelerometerSensorCalibrationRecord(); +#endif +#ifdef _DG_ + DG_ACCELEROMETER_SENSOR_CAL_RECORD_T cal = getDGAccelerometerSensorCalibrationRecord(); +#endif switch ( accelSelfTestState ) { - case ACCELEROMETER_SELF_TEST_STATE_START: - { - CALIBRATION_DATA_T cal; + case ACCELEROMETER_SELF_TEST_STATE_START: - // Retrieve blood flow sensor calibration data - if ( TRUE == getCalibrationData( &cal ) ) - { - accelCalOffsets[ ACCEL_AXIS_X ] = cal.accelXOffset; - accelCalOffsets[ ACCEL_AXIS_Y ] = cal.accelYOffset; - accelCalOffsets[ ACCEL_AXIS_Z ] = cal.accelZOffset; - accelSelfTestState = ACCELEROMETER_SELF_TEST_STATE_IN_PROGRESS; - } - else - { // shouldn't get here - should have failed NV-Data POST prior - result = SELF_TEST_STATUS_FAILED; - accelSelfTestState = ACCELEROMETER_SELF_TEST_STATE_COMPLETE; + accelCalOffsets[ ACCEL_AXIS_X ] = cal.accelXOffset; + accelCalOffsets[ ACCEL_AXIS_Y ] = cal.accelYOffset; + accelCalOffsets[ ACCEL_AXIS_Z ] = cal.accelZOffset; + accelSelfTestState = ACCELEROMETER_SELF_TEST_STATE_IN_PROGRESS; + + result = SELF_TEST_STATUS_FAILED; + accelSelfTestState = ACCELEROMETER_SELF_TEST_STATE_COMPLETE; #ifdef _DG_ - SET_ALARM_WITH_1_U32_DATA( ALARM_ID_DG_ACCELEROMETER_SELF_TEST_FAILURE, 0 ) + SET_ALARM_WITH_1_U32_DATA( ALARM_ID_DG_ACCELEROMETER_SELF_TEST_FAILURE, 0 ) #else - SET_ALARM_WITH_1_U32_DATA( ALARM_ID_HD_ACCELEROMETER_SELF_TEST_FAILURE, 0 ) + SET_ALARM_WITH_1_U32_DATA( ALARM_ID_HD_ACCELEROMETER_SELF_TEST_FAILURE, 0 ) #endif - } - } break; case ACCELEROMETER_SELF_TEST_STATE_IN_PROGRESS: @@ -654,62 +652,8 @@ * TEST SUPPORT FUNCTIONS *************************************************************************/ - /*********************************************************************//** * @brief - * The setAccelCalibration function sets the accelerometer calibration - * factors and has them stored in non-volatile memory. - * @details Inputs: accelCalOffsets - * @details Outputs: accelCalOffsets - * @param offsetX offset calibration factor for X axis - * @param offsetY offset calibration factor for Y axis - * @param offsetZ offset calibration factor for Z axis - * @return TRUE if calibration factors successfully set/stored, FALSE if not - *************************************************************************/ -BOOL setAccelCalibration( F32 offsetX, F32 offsetY, F32 offsetZ ) -{ - BOOL result = FALSE; - - if ( TRUE == isTestingActivated() ) - { - CALIBRATION_DATA_T cal; - - getCalibrationData( &cal ); - // keep locally and apply immediately - accelCalOffsets[ ACCEL_AXIS_X ] = offsetX; - accelCalOffsets[ ACCEL_AXIS_Y ] = offsetY; - accelCalOffsets[ ACCEL_AXIS_Z ] = offsetZ; - // also update calibration record in non-volatile memory - cal.accelXOffset = offsetX; - cal.accelYOffset = offsetY; - cal.accelZOffset = offsetZ; - setCalibrationData( cal ); - result = TRUE; - } - - return result; -} - -/*********************************************************************//** - * @brief - * The getAccelCalibration function retrieves the current accelerometer - * calibration factors. - * @details Inputs: accelCalOffsets - * @details Outputs: none - * @param offsetX value to populate with X axis offset calibration factor - * @param offsetY value to populate with Y axis offset calibration factor - * @param offsetZ value to populate with Z axis offset calibration factor - * @return none - *************************************************************************/ -void getAccelCalibration( F32 *offsetX, F32 *offsetY, F32 *offsetZ ) -{ - *offsetX = accelCalOffsets[ ACCEL_AXIS_X ]; - *offsetY = accelCalOffsets[ ACCEL_AXIS_Y ]; - *offsetZ = accelCalOffsets[ ACCEL_AXIS_Z ]; -} - -/*********************************************************************//** - * @brief * The testSetAccelDataPublishIntervalOverride function overrides the * accelerometer data publish interval. * @details Inputs: accelDataPublishInterval