BMV080 sparkfun breakout chip ID problem

I have exhausted my coding capacity and cannot get the sensor to function. Feels like i’m missing some chip definitions/parameters that have been updated on either bosch or sparkfun side? The SparkFun breakout uses a specific BMV080 die revision. Bosch released SDK v11.2.0 in July 2025 specifically adding ESP32-C6 support. Wondering if the chip ID check in the blob may have been compiled against an earlier or different hardware sample than what SparkFun sourced for their breakout. Please advise.

Bosch SDK version: v11.2.0

SparkFun SEN-26554

Chip ID (0x0079)

Adafruit ESP32-C6 feather (Qwiic)

ESPHome in Home Assistant

Arduino Framework

Our library uses the SparkFun Toolkit as a dependency; I’d suggest trying a known-good MCU and the basic example here (it might be worth swapping to a different non-C6 esp32, not sure…but if you have one using it would to help eliminate variables)

After getting that working I’d circle back to modifying the stock stuff

If the chip ID is being read correctly(0x0079), I’d suspect a SDK/firmware compatibility issue rather than wiring. It may be worth testing the Bosch example outside ESPHome first to determine whether the problem is with the SDK, ESP32-C6 support, or the SparkFun board revision.

UPDATE: I’ve switched to a sparkfun ESP32 WROOM (xtensa_esp32) (verified architecture compatibility in Bosch’s own docs) and am still running into the same problem with this sparkfun breakout of the bmv080. The issues is that chip ID 0x0079is returning error 107 on SEN-26554 with SDK v11.2.0 xtensa_esp32 blobs. communication is established; but the blobs will not recognize this chip on the sensor. i did find an interesting clue in the sparkfun documentation that suggests sparkfun is already trying to fix this issue by bypassing the Bosch blob dependency entirely. The SparkFun library README lists an upcoming feature named: “feature/remove-bosch-sdk” Is this a signal that this chip ID problem is known and the solution is sparkfun bypassing the bosch blob altogether.

Hi -

I worked on this library a little bit - let me see if I can help.

  • How are you encountering this error - is it in our library? Or are you using another system and calling into the Bosch compiled libraries?
  • The "feature/remove-bosch-sdk branch (?) was there when we learned we couldn’t include the bosch binaries in our library. So we removed the ‘.a’ files from our library using that branch/feature (I believe). No changes are planned going forward.
  • I’ve just run the first example in our library on an ESP32 and and ESP32-C6 - it works as expected. But we’re not accessing the ChipID.

One thing that comes to mind - if you’re not using our library and getting the error - is that the I2C communication with the device is “MSBFIRST” - so maybe the byte order is wrong. We set this explicitly in our library at startup.

Hope that helps - if not, any more information you have could help.

-Kirk