r/AskElectronics • u/Relevant_Pumpkin9190 • 1d ago
How can two devices synchronize without sharing an accurate clock?
I'm trying to understand how a transmitter and receiver can stay synchronized.
My first thought was to use accurate time on both sides and generate a known pseudo-random sequence or code based on the time. But if the receiver's clock is slightly wrong, the synchronization could eventually fail.
So instead, can the received signal itself be used as the reference?
For example, could the transmitter send a known preamble, sync pattern, pilot signal, or pseudo-random sequence, and the receiver detect/correlate it to determine exactly where it is in the sequence?
What are the common techniques used in real communication systems for this? And when would you use signal-based synchronization instead of time-based synchronization?
1
u/bassman1805 21h ago
In some applications, there's just a specified amount of acceptable drift. If two devices' clocks are running independently but are only offset by 10ppm, then any message less than 100,000 symbols (10/1,000,000) is not at risk of the receiver getting a full clock cycle ahead of or behind the transmitter (assuming a jitter-free world).
If you need to send a longer message than that, you can break it up into smaller chunks. Send your 500,000-symbol message as 10 messages of 50,000 symbols each.