Se si utilizza una lunghezza di bit di arresto facilmente discernibile dal resto del flusso di dati, ad esempio un tempo di 1,5 bit, dovrebbe essere facile iniziare a ricevere la trasmissione intermedia. Tuttavia, ciò comporta un costo di spese generali maggiori. Il throughput totale dei dati disponibili ne risentirà all'aumentare della lunghezza del bit di stop.
Se non stai usando il bus in modo così pesante, e spesso hanno degli spazi tra i frame, allora potrebbe essere solo una questione di aspettare che si verifichi uno di questi spazi, e quindi raccogliere la prima trasmissione hi-lo come l'inizio del tuo prossimo inizio bit.
Tieni presente che il numero di bit di dati dovrebbe essere prevedibile, così come le dimensioni del frame, quindi anche se stai utilizzando il 100% della capacità del bus e il tuo bit di stop è un singolo bit, dovresti comunque essere in grado di trovare il iniziare a bit se si raccolgono abbastanza frame. È garantito che ogni frame abbia una transizione hi-lo. Il bit di stop è quello che è sempre alto. Il bit di avvio è sempre basso. Supponendo che i tuoi dati siano casuali (o abbastanza casuali), potresti fare qualcosa di semplice come creare un buffer delle dimensioni del tuo frame, impostare ogni bit in esso, quindi continuare a raccogliere frame e ANDarli in questo buffer fino a quando il buffer ha solo 1 bit set. Questo bit è il tuo bit di stop. Quello dopo è il tuo bit di partenza. Ecco! L'hai trovato
Se si utilizza un bit di parità, un'altra opzione sarebbe quella di acquisire due frame di dati, selezionare il primo bit basso come bit di inizio, quindi calcolare il checksum e confrontarlo con il bit di parità. Se corrisponde, allora hai (probabilmente) trovato il bit di inizio. In caso contrario, scegli il prossimo bit basso e ripeti fino a ottenere un buon checksum. Se non riesci a trovare un po 'nei tuoi due frame di dati che vengono estratti come bit di inizio validi, i tuoi dati sono stati danneggiati e dovrai prendere altri due frame.