I just bought the BHI260 shuttle module and have some issues with booting it.
My setup is a custom board with a BHI260 shuttle module and STM32WB55 MCU connected with I2C interface. I am using API from https://github.com/BoschSensortec/BHY2-Sensor-API and fw Bosch_APP30_SHUTTLE_BHI260.fw.h
This is my booting sequence:
Everything goes fine, but after sending boot cmd, both SCL and SDA lanes go to 0V and stay there till hard reset. This is definitely not a problem with STMs I2C because I can read every register normally. Only booting causes this issue.
Is it broken, or am I doing something wrong?
Solved! Go to Solution.
There was BHI260 example code on STM32F4 for your reference. This example used BHI2 sensor API on Github https://github.com/BoschSensortec/BHY2-Sensor-API
The problem is solved.
Shuttle board does not have a hardwired pull-up, however, has an integrated one. As I understood, while you are in bootloader mode, internal pull-up is active, but on software boot, it disables, leaving I2C without any pull-up. So I enabled pull up on my STM32WB, and it solved the problem.
Looks like a stupid mistake, but it is unreal to debug knowing that I2C works properly on a startup
It would be cool to have hardwired pull up as soon as it has no impact on SPI performance but helps a lot during the "breadboard" testing phase.
I hope it helps someone.