Nun, wenn das so geht ?
Ein "Ringbuffer" von 16 Byte
Du liest die ankommenden Bytes
und schreibst es in den Buffer.
Ist das Byte gleich dem zuvor,
Zähler + 1 ,
sonst
Zähler = 0

Erreicht der Zähler = 5 , dann hast du in dem Buffer 16 Zeichen, 11 zum auswerten und 5, die gleich waren

Btw: Ein ASCII- Zeichen IST ein Byte