I am using the latest version of TdxAllLibrary V2.0-20170524 and I have a strange problem. Under C++ I sometimes get a timeout error (or byte not acknowledged?) with I2c_Write(…) function. But not every time. Most of the time it works. So it seems to be a timing problem of the hardware…
But with C# on the same hardware with the same DLL (tested with release and debug version) I never get this error. Tested it for hours and I it never raised this error.
I use exactly the same settings (BitRateHz=10000, SlaveAddrSize=0x52, RegisterAddrSize=0) and do everything the same (open bus etc.).
So it doesn’t look like it’s a hardware issue. I see the DLLs for C++ and C# are not exactly identical (file size), probably there is a issue? Is this problem known?
Try tomorrow to reproduce this with another I2C slave on the Ixora board.