Bei TWI bleibt man eigentlich nur hängen, wenn irgendeiner die Clock-Leitung auf low hält (Bit-stretching) und nicht mehr ausläßt.
Verwendest du HW-TWI ?

Mach doch nach I2CStart eine Kontrolle, ob das überhaupt geklappt hat.
(if ERR = 1 ). Sonst schickst du ihn ja in den Krieg.

. Messen, ob im Normalzustand beide Leitungen wirklich auf High sind
. Test auf Durchlauf OHNE EEprom