02-28-2022 05:00 PM
I am trying to debug an error when using the FIFO on the bmx160 (I am using the driver for the bmi160 as Bosch recommends).
When I read data from the FIFO by calling bmi160_get_fifo_data (https://github.com/BoschSensortec/BMI160_driver/blob/master/bmi160.c#L2157) , the function returns -1 (BMI160_E_NULL_PTR).
I have debugged the code by adding print statements to see what’s happening. When attempting to get the fill level of the FIFO, https://github.com/BoschSensortec/BMI160_driver/blob/master/bmi160.c#L5485, then the result is -1.
The error is happening only occasionally. Sometimes I can read 10minutes of data without issue, sometimes I can read no more than 30s before I receive an error code.
I can share code, but I am writing in Rust and not C.
03-04-2022 09:52 AM
Hello richardlowe,
The header files are platform related and do not affect the use of the sensor API.
For example, in the following task, this is a program with rots.
void StartBMI160Task(void const * argument)
{
int8_t rslt = BMI160_OK;
struct bmi160_dev *dev;
dev = &bmi160dev;
Init_BMI160(dev);
#if defined(DATA_POLL)
for(;;)
{
...
}
}