sizeof(roomRaffstore)
Ich habe doch gesagt dass genau das nicht geht! Genau deshalb muss man die Größe extra übergeben. Du hast size als Parameter, dann verwende es auch
Zeiger sind auf einem 8-Bit Prozessor 16 Bit groß. Also kommt da immer 2 heraus. Dein Array ist aber 4 Bytes groß
Kleine Korrektur:
Ich hatte es erst so geschrieben dass man die Anzahl der Elemente im Array übergibt. Aber da du es byte-weise überträgt braucht man da tatsächlich die Größe in Bytes. Also nur sizeof() der Array-Variablen bei der Übergabe:
Raffstore(7, RafstoreLeo, sizeof(RafstoreLeo), pin3, pin4 );