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 hshose force-pushed the feature/bmi270 branch 3 times, most recently from e0a6e76 to 6d3fa62 Compare March 16, 2026 10:49
@hshose hshose force-pushed the feature/bmi270 branch 2 times, most recently from 6908b10 to 4adbef9 Compare March 16, 2026 14:21
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