cancel
Showing results for 
Search instead for 
Did you mean: 

Hello, I have three STM32F469I-DISCO boards that I need to be fully synchronized. As I searched, the best way to do this is by making them all operate with the same clock. How can I do this? Please help.

RAlna.1
Associate

I read that this is possible by using an external clock or making two of them connected to the third board's clock. However, I do not know how to implement this. Please assist.

6 REPLIES 6

Synchronize in what sense exactly?

What level HW and SW skills or experience do you have?

These all have their own local clocks,and the VCO/PLL will likely also have unique traits.

Yes, I suppose they could share a common clock source, and you might need to review the schematic to understand what's connected where.

Typically you'd need to provide it from one source, with enough buffering/drive to provide to all of them.

Say perhaps an external TCXO or OCXO providing 10 MHz via bufferred 3V output, Something with a clipped sine output with 1 Vp-p would probably also suffice. You could perhaps find bench offerings in that regard.

For more general time synchronization you could use a GPS/GNSS receiver with a 1 PPS output, or if synchronization to such a time-base is overkill, one of the STM32 could be a master, generating a synchronization pulse the others could slave to.

Perhaps a "SI5351 Signal Generator Module" AdaFruit has one, and there are a host on Amazon / eBay, et al

Tips, Buy me a coffee, or three.. PayPal Venmo
Up vote any posts that you find helpful, it shows what's working..

https://www.adafruit.com/product/2045

Tips, Buy me a coffee, or three.. PayPal Venmo
Up vote any posts that you find helpful, it shows what's working..
Andrew Neil
Evangelist III

As @Community member​ said, you need to define what, exactly, you mean by "synchronise"

Having a common clock won't necessary synchronise the boards; conversely, synchronisation doesn't necessarily require common clocks.

You need to explain what you're trying to achieve here - maybe you don't even need "synchronisation" (whatever that means) at all ... ?

On providing an external clock, the Datasheet and Reference Manual will have details

RAlna.1
Associate

Thank you Tesla and Andrew for responding.

I am dealing with three boards in which one of them act as a master sending an RF signal to the other two boards. I am placing them at approximately equal distances far from the master. I need the two slaves to receive the signal at the exact same time.

I am testing them with the logic analyzer, and I have slight time differences between the two receivers. So, I was considering using one clock that controls both receivers so that they get the signal at the same time. This is what I mean by synchronization.

Do you think that this approach will work? Please let me know.

that doesn't make sense!

What's the point of using a wireless link if you're going to have a wired link distributing the clocks?

You might as well do the comms wired as well!

"I am placing them at approximately equal distances far from the master. I need the two slaves to receive the signal at the exact same time"

If you want the signals to be received at the exact same time, then distances will have to be exactly equal.

Having clocks synchronised won't make up for propagation time time differences!

All a bit non-specific.

What does "exact same time" mean, what's your budget, we talking about nano-seconds, pico-seconds? This is hard to do at a die level. How precisely can you control your RF, and signal paths?

Could you use lasers and mirrors and do time-of-flight, out and back?

If I wanted to get into the nano-second realm, and ppb for frequency, I probably go with a GPSDO at each location. Sort of thing I'd use to up-link to a satellite, and be tight on-frequency.

Depending on how much money you wanted to dump into things, in terms of clocks and synchronization, will ultimately dictate how precise you can define time.

Tips, Buy me a coffee, or three.. PayPal Venmo
Up vote any posts that you find helpful, it shows what's working..