This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
Hello TIers,
I am using an am263-cc board. I have some tests written for an API that wraps the TI SDK code. One of the tests tries to read from an address where no device exists. Let us call it TestA. Rest of the tests tries to read and write into some registers of an external temperature sensor. If I run this TestA and then run the rest of the tests, all the rest of the tests fail during read or write. The transaction API failed with -4. If I do not run the TestA, then all the rest of the tests succeed.
Now, if I run TestA and then do an I2C_probe() call before running the rest of the tests, the tests succeed.
From these observations, it sounds like there is something that th I2C_probe() is doing that (I2C_probe() also tries to read from an address where a device may or may not be existent and then looks for the ACK/NACK bit) that cleans up some state and perhaps that code is missing from the i2c driver. Currently my work around is to not run the TestA or I2C_probe() and only run the rest of the tests. But it would be nice to fix any bugs in the am263 driver code.
Cheers
Ramakrishnan
Hi Ramakrishnan,
We'll try to replicate this issue from our end.
if I run TestA and then do an I2C_probe() call before running the rest of the tests, the tests succeed.
Are you probing to Test A incorrect address or Test B correct address?
Do you have the project to take a look?
Regards,
Abishek S S