Hi, We are using a custom board with BHI260. HOST_BOOT pin is connected to GND on the board. The 4mB flash is connected to QSPI pins of the sensor. I am using micropython and esp32 for I2C communication. I am trying to upload firmware to flash by using commands which are stated in the API and the datasheet. The firmware which I am uploading is Bosch_SHUTTLE_BHI260-flash.fw. I followed every step in BHY2-Sensor-API. I imitated the whole operation of bhy2_upload_firmware_to_flash_partly method on my setup. Status code returns STATUS_FLASH_WRITE_COMPLETE, but BHY2_REG_BOOT_STATUS doesn't return BST_HOST_FW_VERIFY_DONE bit as 1 at the end of the upload. Basically, I am sending every packet as following. Every packet has the same structure and the sector address field is being updated before sending the package. [i2c_address][register_address][command(2bytes)][length of payload(2 bytes)][flash address (4 bytes)][firmware part] First packet = [0x28][0x00] [0x05,0x00][0xCC, 0x00][0x84, 0x1F, 0x00, 0x00][200 bytes part of the firmware] When I use the upload to ram function command, boot status returns 0x31. It includes BST_HOST_FW_VERIFY_DONE. I attached logicdata to this post. Can you help me to solve this problem? How can I achieve the upload firmware to flash and boot from flash operations succesfully? Moreover, after upload, I am sending BHY2_CMD_BOOT_FLASH, BHY2_REG_CHAN_STATUS, and the status code field points to the error which is [Sensor error] Host Download Channel Empty. Can you tell me what it is supposed to mean? Best regards, Meric
... View more