Hey,
I want to reduce lag of the gyroscope output of the stabilizer.
Thus I removed the software low-pass filter.
Secondly I want to increase the bandwidth (bw) and output-data-rate (odr) of the gyroscope. Here is where I have difficulties.
The gyroscope has eight different modes for bw and odr which are specified in the datasheet of bmi088 (section 5.5.5).
In default the firmware sets this mode to BMI088_GYRO_BW_116_ODR_1000_HZ which is done here.
If I increase for example to BMI088_GYRO_BW_532_ODR_2000_HZ I don't get any sensor data. But if I lower the settings everything works properly.
Why is that? Do I have to change something else in the firmware to effectively increase the bandwidth? Could there be other limitations which causes this problem?
Thanks for reading and answering!
Problem with bmi088 bandwidth and output-data-rate setting.
Re: Problem with bmi088 bandwidth and output-data-rate setting.
This sounds more related to the Bosch driver and I don't have any idea why. Maybe try asking Bosch?
Re: Problem with bmi088 bandwidth and output-data-rate setting.
Maybe my problem statement was misleading.
If I increase the odr/bw setting it isn't possible to set parameters and log variables. It seems like the hole program stops working.
I mean even if the gyroscope is giving corrupted data the rest of the firmware should work properly, right?
If I increase the odr/bw setting it isn't possible to set parameters and log variables. It seems like the hole program stops working.
I mean even if the gyroscope is giving corrupted data the rest of the firmware should work properly, right?
Re: Problem with bmi088 bandwidth and output-data-rate setting.
Hi crazgy!
Could you post your console log when the Crazyflie with modified firmware boots? Perhaps something goes wrong with initialization.
Jonas
Could you post your console log when the Crazyflie with modified firmware boots? Perhaps something goes wrong with initialization.
Jonas
Re: Problem with bmi088 bandwidth and output-data-rate setting.
I might have an idea what is going on. The stabilizer task is synced to the gyro output and is expected to run at 1khz. If you increase that to 2khz I'm not sure the system will cope, it gets overloaded. With some optimizations and adapting everything to 2khz it might be possible to run the system.