


Some of the issues that I've recently run into are related to misbehaving slaves. This will be critical to not only show the problem, but also to show others how to replicate the problem and be able to verify that it is fixed. The only way to track stuff like this down is going to be with logic analyzer pictures. I have run into issues & bugs in the Arduino Wire library code of AVR and pic32 (chipkit). It returns an int which can be -1 instead of the next 8 bit data byte. Perhaps the slave doesn't support repeated starts?Īlso note that Wire.read() can fail. devices will behave oddly if they do not see a STOP. no call to endTransmission(true) is made. is very possible to leave the bus in a hung state if the bus tenure has been properly ended with a STOP.

The wire library has a warning about using this no stop option: // WARNING: Nothing in the library keeps track of whether The code is using a flag to disable sending the STOP on a write and then doing a read which I guess does a repeat start operation on the next readFrom()ĭoes it work if you use the normal endTransmission() which sends the stop? You can post issues in the Arduino github repository but I think the issue needs to be further narrowed down before doing so.
