• 0

Waveforms always spews the I2C error: "I2C bus error. Verify the signal pullups"



I have connected my AD2 to a BMI160 breakout board (https://www.amazon.com/6-axis-BMI160-Gravity-Accelerometer-Electronic/dp/B07RYG99F5).
My connections are as follows:
V+ --> VIN of breakout
GND -> GND  of breakout
SDA -> DIO 1 -> SDA of breakout
SCL -> DIO 0 -> SCL of breakout
SA0 of breakout -> GND

I have verified the above connection works fine to communicate with BMI160.

But when I use AD2 to communicate with it, I see the "I2C bus error. Verify the singal pullups."

Following is my script:

// Pmod GYRO - BMI160

const adr = 0x68;

if(Clear()!=true) return "I2C bus error. Check the pull-ups.";

if(Write(adr)!=true) return "Device NAK";

if(Read(adr, 0x00, 1) != 0xD1) return "Device ID mismatch";

Any help is appreciated.  You can see in page 102 of (https://www.bosch-sensortec.com/media/boschsensortec/downloads/datasheets/bst-bmi160-ds000.pdf) , it already has external pull-ups.

What am I missing here? 

Link to post
Share on other sites

1 answer to this question

Recommended Posts

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now