cancel
Showing results for 
Search instead for 
Did you mean: 

STM32F446 NACK on correct address

Dioswilson
Associate

I am trying to comunicate a stm32F103C8T6 with an STM32F446 over I2C
First thing I try to do is send data as master from F103 and I get NACK by F446
Here is logic analyzer's screenshot:

Dioswilson_0-1735183975794.png

And here is F446 configuration on CubeMX

Dioswilson_1-1735184006625.png

I don't get why is it sending NACK when address is correct.

When trying to do the opposite (F446->F103) it sometimes throws BERR error or same thing happens, NACK with correct address

1 REPLY 1
gbm
Lead III

The address octet shown in the diagram is 00011000. There are two conventions for specifying I2C addresses. ST HAL uses the one different from your logic analyzer. For ST, the address sent (and NACKed) is 0x18. You should probably set the slave address to 0x18 in CubeMX.

My STM32 stuff on github - compact USB device stack and more: https://github.com/gbm-ii/gbmUSBdevice