I2C does not send read datagram when Wire.requestFrom(...) is called

Hi,

I have an issue with Arduino SDK I2C library and its reading capability. If I call the Wire.requestFrom(โ€ฆ) function correctly, it is executed without error, but the message datagram requesting byte/bytes does not appear on logic analyzer. The calling of the write function works as expected and logic analyser shows nice write-flagged datagram too. Details are described in GitHub issue below. After I created the issue, I tested it on older Arduino SDKs, but It was the same or it does not work at all on the oldest one.

I created issue on the github, without any reaction. Other issues there are mostly without reaction too and automatically closed because of no activity. This is bug I most probably canโ€™t fix myself without knowledge of the hardware registers and their function. Sadly, I have no I2C device with read write capability to create small usable sample. But It should be easily replicable on other device too. I did not done anything special.

Best regards,
electry

Hi @electry,

Can you try adding a delay directly after the API call of requestFrom?

Try delay(1);

Thank you.