This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

Why nRF52832 output wrong TWI wave?

Hi,

I was trying to communicate with an I2C device, which's address is 0x7C

But I always got NRF_DRV_TWI_EVT_ADDRESS_NACK event, so I took a check on the TWI wave:

Looks like the signal on SDA is correct but the SCK signal is 1 cycle later than normal, that make 0x7C as 0x80.

Why this could happen? is it an issue missed in errata?

Note: I noticed there's DMA issue in errata so I choosed TWI instead of TWIM

Parents
  • Hi,

    Can you show us the code you are using when you see this? Also, do you get the same behavior when using TWIM? Assuming you use the driver you only need to set TWI0_USE_EASY_DMA to 1 in your project sdk_config.h to use it.

    Regarding the DMA erratum, i assume you are referring to 109? This does not have any practical consequences if you are using the TWI driver from a recent SDK as it incorporates a workaround.

Reply
  • Hi,

    Can you show us the code you are using when you see this? Also, do you get the same behavior when using TWIM? Assuming you use the driver you only need to set TWI0_USE_EASY_DMA to 1 in your project sdk_config.h to use it.

    Regarding the DMA erratum, i assume you are referring to 109? This does not have any practical consequences if you are using the TWI driver from a recent SDK as it incorporates a workaround.

Children
Related