Bosch Sensortec Community

    cancel
    Showing results for 
    Search instead for 
    Did you mean: 

    Custom Board, BHI360 no output on HSDO

    Custom Board, BHI360 no output on HSDO

    schlecns
    New Poster

    Hi guys,

    I created a custom board with the BHI360 and BMM350. The schematic is attached.

    I'm using 4-wire SPI.
    RESETN is high.

    With using the BHY2-Sensor-API-master i get no output on the HSDO line when reading the product_id.

    	#if defined(USE_I2C_INTERFACE)
    	PDEBUG("Use I2C interface\r\n");
    	rslt = bhy2_init(BHY2_I2C_INTERFACE, bhy2_i2c_read, bhy2_i2c_write, bst_delay_us, BHY2_RD_WR_LEN, NULL, &bhy2dev);
    	#elif defined(USE_SPI_INTERFACE)
    	 PDEBUG("Use SPI interface\r\n");
    	rslt = bhy2_init(BHY2_SPI_INTERFACE, bhy2_spi_read, bhy2_spi_write, bst_delay_us, BHY2_RD_WR_LEN, NULL, &bhy2dev);
    	print_api_error(rslt, &bhy2dev);
    	HAL_Delay(5000);
    	rslt = bhy2_soft_reset(&bhy2dev);
    	print_api_error(rslt, &bhy2dev);
    	HAL_Delay(5000);
    	rslt = bhy2_get_product_id(&product_id, &bhy2dev);
    	print_api_error(rslt, &bhy2dev);
      /* Check for a valid product ID */
    	if (product_id != BHY2_PRODUCT_ID)
    	{
    		PDEBUG("Product ID read %X. Expected %X\r\n", product_id, BHY2_PRODUCT_ID);
    	}
    	else
    	{
    		PDEBUG("BHI260/BHA260 found. Product ID read %X\r\n", product_id);
    	}
    	#endif

    I also tried to only write a software reset in register 0x14, and then read data from the Host status register 0x17. But i get no output.

    void IMU_init(void){
    	// BHI360_read_data(0x16);
    	BHI360_write_data(tx, 0x14, 0x01);
    	HAL_Delay(100);
    	BHI360_write_data(tx, 0x16, 0x00);
    	BHI360_read_data(0x17);
    }


    Do i make something wrong in the software, or is there a problem because of VDD = 3.3V and VDDIO = 1.8V?  

    Thanks for your help!

    1 REPLY 1

    BSTRobin
    Community Moderator
    Community Moderator

    Hi schlecns,

    After review your schematic, BHI360's VDDIO can only be powered by 1.8V and cannot be powered by 3.3V, ensuring. We suggest using 1.8V power supply for both the VDD and VDDIO domains of BHI360 and BMM350.
    We suggest that you use a logic analyzer to capture SPI communication waveforms and check the actual communication waveform situation.

    SPI Read BHI360 Chip ID.png

    Icon--AD-black-48x48Icon--address-consumer-data-black-48x48Icon--appointment-black-48x48Icon--back-left-black-48x48Icon--calendar-black-48x48Icon--center-alignedIcon--Checkbox-checkIcon--clock-black-48x48Icon--close-black-48x48Icon--compare-black-48x48Icon--confirmation-black-48x48Icon--dealer-details-black-48x48Icon--delete-black-48x48Icon--delivery-black-48x48Icon--down-black-48x48Icon--download-black-48x48Ic-OverlayAlertIcon--externallink-black-48x48Icon-Filledforward-right_adjustedIcon--grid-view-black-48x48IC_gd_Check-Circle170821_Icons_Community170823_Bosch_Icons170823_Bosch_Icons170821_Icons_CommunityIC-logout170821_Icons_Community170825_Bosch_Icons170821_Icons_CommunityIC-shopping-cart2170821_Icons_CommunityIC-upIC_UserIcon--imageIcon--info-i-black-48x48Icon--left-alignedIcon--Less-minimize-black-48x48Icon-FilledIcon--List-Check-grennIcon--List-Check-blackIcon--List-Cross-blackIcon--list-view-mobile-black-48x48Icon--list-view-black-48x48Icon--More-Maximize-black-48x48Icon--my-product-black-48x48Icon--newsletter-black-48x48Icon--payment-black-48x48Icon--print-black-48x48Icon--promotion-black-48x48Icon--registration-black-48x48Icon--Reset-black-48x48Icon--right-alignedshare-circle1Icon--share-black-48x48Icon--shopping-bag-black-48x48Icon-shopping-cartIcon--start-play-black-48x48Icon--store-locator-black-48x48Ic-OverlayAlertIcon--summary-black-48x48tumblrIcon-FilledvineIc-OverlayAlertwhishlist