Nur mal so: zwei wirklich synchron laufende Uhren hinzubekommen ist gar nicht so leicht. Der wirklich gute DS3232 hat eine Abweichung von ~2ppm. Nach 10 00s (also weniger als 20 Minuten) sind die Uhren dann schon bis zu 4ms auseinander. Nach 10 000s (also weniger als 3h) sind die Uhren dann schon bis zu 40ms auseinander.
Wenn man sich auf die Quarze verlässt muß man mit bis 100ppm Abweichung leben. Das können nach 1000s (also weniger als 20 Minuten) dann schon 0,2 Sekunden sein. Wenn man nur einen Resonator hat (wie einige der neueren Arduinos) sieht es noch schlimmer aus.
Uhren mit DCF77 zu synchronisieren ist auch nicht trivial weil die billig verfügbaren Empfänger eine Bandbreite <300 Hz haben, oft deutlich weniger. Weiterhin ist das Signal oft verrauscht. Millisekundengenauigkeit ist zwar trotzdem machbar aber einfach ist anders.
GPS ist auch keine saubere Lösung, außer man nimmt "Timekeeping GPS". Bei allen anderen hat man im Zweifelsfall Phasenjitter und unerwünschte Latenzen. Auf jeden Fall ist GPS teuer.
Sync per Funk ist auch nicht ohne weil man die Latenzen berücksichtigen muß. Speziell bei WLAN ist relativ schnell auch mal >100ms drin. XBee kenne ich mich nicht aus, aber ohne Messung würde ich mich auf sowas auch nicht verlassen. Interessant ist vor allem die Frage wie die Latenzen bei schwächeren Signalen aussehen (d.h. falls die Übertragungsraten abgesenkt werden müssen oder Fehlerkorrektur notwendig wird).
Um zu entscheiden welche Optionen geeignet sind müsste zuwerst der Anwendungsfall genau verstanden sein. Was soll gemessen werden und wie genau muß die Messung sein? Und wie sicher muß die "Auslösung" erkannt werden?