Posts with tag NTP

Illustration for (Self-built NTP) Using PPS on Tinker Board

(Self-built NTP) Using PPS on Tinker Board

In the previous article , I built a self-hosted NTP server using Tinker Board and an ATGM336H GPS/BeiDou module, with GPS as the time reference. In addition to the traditional serial output of NMEA sentences, the GPS module also provides a PPS signal that changes once per second. Originally, gpsd needed to continuously parse NMEA sentences from the GPS module, which took considerable time and was prone to being preempted by other processes, causing delay and jitter. The PPS signal, however, can directly trigger a CPU interrupt to run a simple handler at high priority, unaffected by other programs. Typically, Linux kernel provides native driver support for PPS. But in the previous setup, since Armbian Linux kernel on Tinker Board lacked PPS support, we couldn't enable it directly....

Illustration for Building a GPS-based NTP Server

Building a GPS-based NTP Server

What is NTP NTP (Network Time Protocol) is the most widely used internet time synchronization protocol. Common operating systems like Windows, macOS, and Linux come with built-in NTP clients that connect to remote servers to obtain the current time. For example, Windows' Internet time synchronization feature is based on NTP: (Image source: Internet) By default, Windows connects to time.windows.com , an NTP server maintained by Microsoft. However, this server performs poorly in mainland China. Located in the US, it suffers from high and unstable latency, making it difficult for NTP clients to obtain accurate time. Are there NTP servers in mainland China? Yes, but not many: cn.pool.ntp.org An NTP server pool project maintained by www.pool.ntp.org , with servers provided by volunteers....