AnsweredAssumed Answered

LP I2C Master Does Not Complete Bus Transaction

Question asked by David Polonsky on Jan 31, 2019
Latest reply on Feb 26, 2019 by Jorge Antonio Alcala Vazquez

I am using the LPI2C_MasterTransferNonBlocking API to control the I2C bus on a i.MX RT 1052 EVKB.

The API creates a complete bus transaction the first time (either read or write) and fails in subsequent calls. See the logic analyzer trace of a failed transaction, attached


The callback that is registered via the LPI2C_MasterTransferCreateHandle API is called on the first use of  LPI2C_MasterTransferNonBlocking but not on the second, presumably because the bus transaction never completes.


If I substitute LPI2C_MasterTransferBlocking for LPI2C_MasterTransferNonBlocking in my code all works as expected.


I would like to use LPI2C_MasterTransferNonBlocking to implement an receive with a timeout.


Any help would be appreciated.