diff --git a/LUFA/Drivers/Peripheral/TWI.c b/LUFA/Drivers/Peripheral/TWI.c index eb513c454b8a26435b7a87f50cd797c130f26060..7986679972a379bc49d641e88827d569a041d8e7 100644 --- a/LUFA/Drivers/Peripheral/TWI.c +++ b/LUFA/Drivers/Peripheral/TWI.c @@ -66,8 +66,8 @@ bool TWI_StartTransmission(uint8_t SlaveAddress, uint8_t TimeoutMS) case TW_MR_SLA_ACK: return true; default: - TWI_StopTransmission(); - break; + TWCR = ((1 << TWINT) | (1 << TWSTO) | (1 << TWEN)); + return false; } } } diff --git a/LUFA/ManPages/ChangeLog.txt b/LUFA/ManPages/ChangeLog.txt index 155afa0991fc2f62976354bdc82a0c7c0711ae44..0ef0fbc95dee45d0e27b5136db2c43c60404219d 100644 --- a/LUFA/ManPages/ChangeLog.txt +++ b/LUFA/ManPages/ChangeLog.txt @@ -20,6 +20,7 @@ * <b>Fixed:</b> * - Fixed software PDI/TPI programming mode in the AVRISP project not correctly toggling just the clock pin * - Fixed TWI_StartTransmission() corrupting the contents of the GPIOR0 register + * - Fix TWI driver not aborting when faced with no response after attempting to address a device on the bus * * \section Sec_ChangeLog100219 Version 100219 *