Nope, hat doesn't seem to work either.
Here's how I request the data on the master side:
// ---------------------- Requesting data from convenience module at slave address #3
Wire.requestFrom(3, 9); //Requesting 9 bytes of data from convenience module
if (!Wire.available()) enterErrorTable(13); // if i²C connection is down, an error is entered into a
// table and a warning is given out
// that the convenience module is malfunctioning
else {
resetErrorTable(13); // if I²C works, the error table is reset in line 14
byte i = 0;
while (Wire.available()) // slave may send less than requested
{
convenienceModuleData[i] = Wire.read(); // receive a byte as character
i++;
}
What then happens is that the sketch goes through my errorTable one by one where those errors are stored and gives out a warning. And at present, I get a warning that the I²C connection is faulty because if (!Wire.available()) is true.