uint8_t devid = ao_adxl375_reg_read(AO_ADXL375_DEVID);
if (devid != AO_ADXL375_DEVID_ID)
- ao_sensor_errors = 1;
+ AO_SENSOR_ERROR(AO_DATA_ADXL375);
/* Set the data rate */
ao_adxl375_reg_write(AO_ADXL375_BW_RATE,
(0 << AO_ADXL375_POWER_CTL_SLEEP) |
(AO_ADXL375_POWER_CTL_WAKEUP_8 << AO_ADXL375_POWER_CTL_WAKEUP));
- (void) ao_adxl375_total_value;
/* Perform self-test */
struct ao_adxl375_total self_test_off, self_test_on;
self_test_value = z_change;
- if (z_change < MIN_SELF_TEST || MAX_SELF_TEST < z_change)
- ao_sensor_errors = 1;
+ if (z_change < MIN_SELF_TEST)
+ AO_SENSOR_ERROR(AO_DATA_ADXL375);
+
+ /* This check is commented out as maximum self test is unreliable
+
+ if (z_change > MAX_SELF_TEST)
+ AO_SENSOR_ERROR(AO_DATA_ADXL375);
+
+ */
/* Discard some samples to let it settle down */
ao_adxl375_total_value(&self_test_off, AO_ADXL375_SELF_TEST_SETTLE);