SoftwareSerial su ATmega1284P

Ho fatto un po di prove con la libreria per il protocollo Manchester.
Funziona in modo impeccabile ma ha le sue limitazioni..
Inviando una singola variabile a 16 bit non si ha alcun tipo di problema, e' un orologio... sia in ricezione continua che saltuaria, anche inviando piu' variabili con la codifica per identificare in modo univoco ogni singola variabile (4bit ID, 4bit checksum, 8bit dato) non si hanno problemi pero' solo se la ricezione avviene in modo continuo, quindi senza perdere alcun dato.
Il problema sorge quando si vuole ricevere un dato specifico in modo saltuario e il trasmettitore ne trasmette piu' di uno. Infatti, come ipotizzavo, non avendo un sincronismo e' necessario ricevere tutti i valori che trasmette il Trasmettitore, anche se ce ne servirebbe solo 1.
In pratica io ho impostato il trasmettitore che trasmetteva 4 variabili a 8bit codificate con il loro ID, il ricevitore deve necessariamente riceverle tutte e 4, anche se ne serve solo 1 o alcune di esse, quindi ho realizzato una funzione che riceve tutti e 4 i pacchetti, dopodiche' avendo il valore a disposizione posso usarlo a mia piacimento.

Come velocita' sono riuscito ad arrivare al massimo a 9600baud con 2 semplici fili (GND + Segnale) lunghi 50cm....oltre non sono riuscito ad andare, e' probabile che utilizzando connessioni piu' corte o con fili schermati si possa salire un po, ma a me serve averli a distanza di qualche decina di centimetri.
Come tempistiche purtroppo non e' eccezionale , ovviamente nel mio caso, la ricezione dei 4 dati avviene in circa 50-60 ms, un po troppi per il mio progetto. Ovviamente e' dovuto anche al basso baud rate.
Devo decidere se accontentarmi o provare con la SPI.

Questa libreria la vedo buona se si ha un ricevitore sempre in ascolto in attesa di ricevere dati, da 1 o più trasmettitori.