08-13-2024 03:35 AM
We are using BHI360 on custom board connected to host controller over I2C. I am trying to load firmware for BHI360 (BHI360.fw.h) and using euler example from BHY2 Sensor APIs. Loading of firmware to Ram is ok but "bhy2_hif_check_boot_status_ram " is timing out. I am seeing Boot Status Reg as 0x18 and its not changing.
The following is the debug print from host
./bhi360_test
BHI360 found. Product ID read 89
Host interrupt control
Wake up FIFO enabled.
Non wake up FIFO enabled.
Status FIFO disabled.
Debugging disabled.
Fault enabled.
Interrupt is active high.
Interrupt is level triggered.
Interrupt pin drive is push-pull.
Loading firmware into RAM.
Entered - bhy2_upload_firmware_to_ram
bhy2_upload_firmware_to_ram result - 0
Booting from RAM.
Entered Boot from Ram
bhy2_hif_exec_cmd result - 0
bhy2_hif_check_boot_status_ram result - -5
bhy2_hif_boot_program_ram - 1 Result - -5
bhy2_boot_from_ram result - -5
[API Error] Timed out
Kindly suggest way forward to resolve this issue.
yesterday
Hi thisiskishore,
Thank for your inquiry.
Ensure that your BHI360 hardware is designed with reference to the Shuttle board(https://www.bosch-sensortec.com/media/boschsensortec/downloads/shuttle_board_flyer/application_board...) and data sheet.
I uploaded BHI360 example code on STM32 for your reference, hope it will be helpful for you.
Euler example require acc, gyro, mag sensor. It is not corrent example for you as you only use BHI360. You can also refer to attached example code, enable the following macro definitions and eanble Game rotation vector virtual sensor ID to get Four elements output.
#define BHI260_6DOF