[INSTRM-149] Choose between NTP and PTP Created: 13/Jul/17  Updated: 18/Mar/23  Resolved: 18/Mar/23

Status: Done
Project: Instrument control development
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Task Priority: Normal
Reporter: cloomis Assignee: Unassigned
Resolution: Done Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Blocks
blocks INSTRM-291 Provide development computer(s) at Su... Done

 Description   

These days, Linux includes decent PTP support, and PTP can be used in place of NTP. Do we want to? The underlying question is whether we will ever need instrument-wide timing better than a few milliseconds.

The one obvious problem which could benefit from precise relative instrument-wide timing is matching fiber motion or LED strobes to MCS rows. If there is any chance we will want to synchronize those I believe we should use PTP. If not, NTP is fine.

I don't think there is a significant difference in management effort these days. The head server can use the observatory NTP feed for its absolute time, regardless of the chosen protocol.



 Comments   
Comment by shimono [ 13/Jul/17 ]

Subaru provides NTP over their summit network, under their stratum 1 from GPS.
I am not sure they can proveide PTP to us, but it is definitely important for us to have (some) precise timestamp, even if it is not synced to precise time, so let the project office to discuss/propose something to subaru (next week - week of 17th 07/2017).

Comment by shimono [ 26/Jul/17 ]

We need to get time from Subaru via NTP from stratum 2 NTP server at summit. I'd vote to have both NTP and PTP if we really want to have PTP in PFS ICS, since some hardware, including UPS, need NTP but not support PTP.

One concern for using PTP for timing of LED strobes is how we can use. Two light sources (FFIS in PFI, BIA in SpS) is controlling LED driver by GPIO of ethernet connected Arduino. Commanding to Arduino are done by remote computer (actor), CB2F for FFIS, SpS/5th rack for BIA, and there are some uncertain latency from commanding actor and hardware. Also it would be quite difficult to have PTP like timing software in Arduino.

Comment by rhl [ 26/Jul/17 ]

I don't care about UPS time, but for subsystems that we care about I really don't think we want two time protocols to get out of sync (although we could add a component to check for that, I suppose, and warn)

It appears that arduinos do support PTP (but Shimono-san and Craig are the experts); https://forum.arduino.cc/index.php?topic=348881.0 says that

$ opkg list | grep ptpd

returns:

ptpd - 2.1.0-2 - The PTP daemon (PTPd) implements version 2 of the Precision Time Protocol (PTP) as defined by the IEEE 1588-2008 standard. PTP was developed to provide very precise time coordination of LAN connected computers.
Comment by shimono [ 26/Jul/17 ]

I don't think Arduino Ethernet can run OpenWrt... Yun could be, which has processor and microcontroller.

Comment by arnaud.lefur [ 18/Mar/23 ]

the answer is NTP

Generated at Sat Feb 10 16:22:02 JST 2024 using Jira 8.3.4#803005-sha1:1f96e09b3c60279a408a2ae47be3c745f571388b.