Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 5 additions & 2 deletions libraries/Wire/src/Wire.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -264,17 +264,20 @@ size_t TwoWire::write(uint8_t data)
// or after beginTransmission(address)
size_t TwoWire::write(const uint8_t *data, size_t quantity)
{
// number of bytes successfully added to the buffer
uint8_t bytesSent = 0;
if(transmitting){
// in master transmitter mode
for(size_t i = 0; i < quantity; ++i){
write(data[i]);
if (write(data[i]) == 1) // if a byte was successfully added to the buffer
bytesSent++;
}
}else{
// in slave send mode
// reply to master
twi_transmit(data, quantity);
}
return quantity;
return bytesSent;
}

// must be called in:
Expand Down
Loading