Skip to content

[driver] Bosch Sensortec BMI270 IMU#1340

Open
hshose wants to merge 3 commits intomodm-io:developfrom
hshose:feature/bmi270
Open

[driver] Bosch Sensortec BMI270 IMU#1340
hshose wants to merge 3 commits intomodm-io:developfrom
hshose:feature/bmi270

Conversation

@hshose
Copy link
Contributor

@hshose hshose commented Mar 5, 2026

BMI270 IMU driver.

  • example with interrupts i2c
  • example with interrupts spi
  • fifo buffer example
  • component retrim ("CRT") calibration example. There is a bug when writing to the devices non-volatile memory (only 14-ish write cycles per datasheet anyways), so the example is set up to allow for the stm32 to retrieve the retrim values, e.g., to store them in the flash_reserved section. @joelsa has more experience with the calibration. I messed around with the vendors offset calibration routine (this calibrates for constant bias and is called "FOC") and applying in the imu's registers, but this was pretty buggy. I therefore recommend to do bias calibration in software (e.g., from an average over motionless values).

Also thanks and credits to @joelsa for explaining the CRT issues to me and building the breakout board I used for testing 🎉

@hshose hshose marked this pull request as draft March 5, 2026 19:36
@hshose
Copy link
Contributor Author

hshose commented Mar 6, 2026

rebased fixup commits.

All I2C examples tested in hardware. Unfortunately, I don't have a breakout board to test the SPI example.

@hshose hshose marked this pull request as ready for review March 6, 2026 11:59
@hshose
Copy link
Contributor Author

hshose commented Mar 9, 2026

@salkinium thank you for the review :-)

hshose added 3 commits March 10, 2026 13:45
[driver] bmi270 removed exti

reverting to exti interface

fifo without exti

stupid fool

fixes
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Development

Successfully merging this pull request may close these issues.

3 participants