HI Michi!

Ich meinte welche Pullups du am I2C-Bus benutzt.
4,7k? 10k?

Frage: Wie ist dein Taster beschaltet???

Die Errorwerte addieren, wäre eine Möglichkeit.
Aber warum machst du nicht sowas:

if(myfunction(...) != 0){
//error-routine
}

Da kannst du dann individuell auf den Fehler eingehen, und ihn gleich beheben.

Ist es möglich, dass das Problem evtl an deinem Taster liegt, wenn der Master andauernd sendet?

Geht die LED am Slave an?

SDA und SCL liegen ja an portc. HM.

Ist am Atmega JTAG deaktiviert?

VLG Tobi