Electronic – I2C communication between MPU6050 and MSP430FR2433

i2cmsp430

I'm trying to communicate in I2C between a MSP430FR2433 and an MPU6050. I can send the start bit then the slave address (0x68) followed by the write bit (0) but the slave send me a NACK. I'm using the GY-521 board and there are two pull-ups of 4k7. The clock is at 100 kHz which is under the maximum. I could once make the communication but since I always get a NACK

I2C communication red clock blue data

Best Answer

Have you considered the often confused issue of the slave address being considered a 7-bit quantity versus an 8-bit quantity?

When a slave address is considered an 8-bit quantity the least significant bit (LSB) of the address is the R/W bit so the slave device looks like it responds to two addresses, one for read and the other for write.

When specified as a 7-bit quantity the slave address is encoded as a value independent from the R/W bit.

Your waveform picture shows the 0x68 address encoded as 7-bits. But it could be that the device data sheet may have specified as an 8-bit in which case you may need to send out that first byte of the I2C protocol as a value of 0x68 instead of the 0xD0 value you have used now.