Strange power consumption _after_ I2C transactions on nrf52840


Manu R
 

Hi All,

We have a custom board with a nrf52840 and multiple I2C devices( accel, pressure, etc).

We noticed that anytime we do an I2C transaction ( reads in particular), the current draw is abnormally high ( ~1 mA) for almost 1.2 seconds after the transaction ! After that, it drops to our system normal ( ~55uA).

In the i2c_nrf5_transfer function, the TWI is disabled around line 249. When I add a k_sleep() before this instruction, the current stays high for that much longer. when I do it after this, it doesnt change the 1.2second pulse.
...
twi->ENABLE = TWI_ENABLE_ENABLE_Disabled;

From this, I surmise that there is some delayed mechanism after the disable IN THE TWI PERIPHERAL I hypothesize that its not my i2c device since the same thing happens with other devices on my bus as well.

Can anyone from nordic please shed some light on this? 
Much obliged!
Manu Rao

Join devel@lists.zephyrproject.org to automatically receive all group messages.