Skip to content
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

I2C issue: Ceva BNO085 IMU is not correctly detected #2454

Open
Rasmusfk opened this issue Sep 14, 2024 · 0 comments
Open

I2C issue: Ceva BNO085 IMU is not correctly detected #2454

Rasmusfk opened this issue Sep 14, 2024 · 0 comments
Labels
waiting for feedback Requires response from original poster

Comments

@Rasmusfk
Copy link

When running the i2c_scanner.ino program the BNO085 is not correctly detected, the address it is found at changes from time to time, and is not the correct I2C address (0x4B).
The SparkFun_BNO08x_Arduino_Library library does not work either.
4 other I2C devices I have works fine.

Making the following change in libraries/Wire/src/Wire.cpp in the TwoWire::endTransmission() function fixes the problem:

-        return _probe(_addr, _sda, _scl, _clkHz) ? 0 : 2;
+        return i2c_read_timeout_us(_i2c, _addr, _buff, 1, false, 1000) < 0 ? 2 : 0;

The other 4 I2C devices I have also still works after this change.

I will post pull request.

Regards
Rasmus

Rasmusfk pushed a commit to Rasmusfk/arduino-pico that referenced this issue Sep 14, 2024
@earlephilhower earlephilhower added the waiting for feedback Requires response from original poster label Sep 15, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
waiting for feedback Requires response from original poster
Projects
None yet
Development

No branches or pull requests

2 participants