Wenn es mit kurzen Sequenzen geht und mit Langen nicht, könnte es an einer "Überlastung" beim Controller liegen.
Bits werden verschluckt, weil der Controller gerade was anderes macht - Das Problem hatte ich mal bei einer SD-FAT Library.
Kommen die vorderen Bytes richtig an und die späteren nicht mehr?
Das würde auf so einen Fehler hinweisen.
Obwohl man das bei 2000 Bit/s eigentlich nicht schaffen kann.
Ich bin da leider mit dem Arduino nicht so fit, drum kann ich mit Deinem Code relativ wenig anfangen.
Versuch doch mal den Hardware USART zu nutzen und die Empfangsroutine im Interrupt laufen zu lassen.
Lesezeichen