New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
BMI088 connected via I2C does not work right[Bug] #23111
Comments
Some observations:
|
I put some tracing in and here are my findings:
Maybe SPI connection is less prone to this behavior (which I doubt). Bugs - they are sooo buggy sometimes...
Basically, the BMI088_Gyroscope.cpp code on the bmi088_i2c side should look like this around line 500:
I think that SPI side needs another pass due to questionable frame rejection logic. Not to mention that having separate SPI and I2C branches is waiting for trouble.
@mrpollo @dagar - please review. I can make a pull request, but I won't be able to test it on CrazyFlie or SPI hardware, only on my two rovers with Raspberry Pi 4 and SeeedStudio boards. |
Please make the PR @slgrobotics |
Describe the bug
I am having hard time making bmi088_i2c driver to work.
It is used only in CrazyFlie, other platforms use SPI version (which I don't have).
I use SeedStudio BMI088 breakboard, very basic, with Raspberry Pi 4 and modified emlid build.
Gyro sensor data comes with significant jitter (looks like spikes). Accel data looks normal.
The EKF orientation output, as seen in QGC, is slow to react and goes wild when sensor is moved even slightly.
The question is - is bmi088_i2c driver still supported/tested by the team? Would it be possible to verify that it works on CrazyFlie 2.1 hardware?
To Reproduce
Follow CrazyFlie build/flash procedure and see if copter orientation shows properly in QGroundControl. If it does - it is my problem, otherwise something is in the bmi088_i2c code.
Expected behavior
CrazyFlie copter orientation shows properly in QGroundControl
Screenshot / Media
No response
Flight Log
https://review.px4.io/plot_app?log=39964b55-f407-47e5-b828-56f814986e1c
Software Version
Current Main as of May 8, 2024
Flight controller
Raspberry Pi + SeedStudio BMI088 over I2C
Vehicle type
Rover
How are the different components wired up (including port information)
No response
Additional context
@mrpollo - related to Community call today
The text was updated successfully, but these errors were encountered: