Skip to content
@pendulum-project

Project Pendulum (by Trifecta Tech Foundation)

Sync your clocks with memory-safe NTP and PTP

The Pendulum project is building modern, full-featured implementations of the Network Time Protocol and the Precision Time Protocol. Pendulum focuses on security and robustness, and uses the Rust programming language to guarantee memory safety.


Pendulum - NTP and PTP in Rust

Statime (PTP) and ntpd-rs (NTP) are the two projects that constitute Pendulum.

Objectives

NTP and PTP are vital building blocks of the Internet and other critical infrastructure, running on millions of devices and servers. Our mission is to create memory-safe timing protocol implementations that 1) provide reliable time synchronization and 2) are easily extensible to accommodate future improvements of timing standards.

Working with the timing community and sharing our insights and knowledge is an integral part of that mission.

Roadmap

  • Q2 2025: Start work on NTS Pool
  • Q2 2025: Release of NTPv5
  • Q3 2025: Clock synchronization library for PTP and NTP
  • Q4 2026: End work on NTS Pool

Support us

The Pendulum project is governed by the Trifecta Tech Foundation. We continuously seek the involvement of interested parties and funding for future work. Reach out to [email protected] if you're interested.

Funders

We thank our partner Tweede golf and Prossimo and the NLnet Foundation for their substantial support for the initial development.

In July of 2023, the Sovereign Tech Fund invested in Pendulum, securing development and maintenance for 2023 and maintenance and adoption work in 2024.

Prossimo

Logo NLnet

Logo Sovereign Tech Fund

Pinned Loading

  1. ntpd-rs ntpd-rs Public

    A full-featured implementation of the Network Time Protocol, including NTS support.

    Rust 956 60

  2. statime statime Public

    Implementation of the Precision Time Protocol (PTP) in Rust

    Rust 265 27

Repositories

Showing 10 of 12 repositories
  • nts-pool Public

    NTS pool key exchange server

    pendulum-project/nts-pool’s past year of commit activity
    Rust 4 Apache-2.0 2 15 4 Updated Nov 11, 2025
  • chrony Public Forked from mlichvar/chrony

    Fork of chrony with patches to support operating as a server for ke-style nts pools

    pendulum-project/chrony’s past year of commit activity
    C 0 GPL-2.0 57 0 0 Updated Nov 11, 2025
  • pendulum-project/nts-pool-draft’s past year of commit activity
    Makefile 1 0 0 0 Updated Nov 11, 2025
  • ntpd-rs Public

    A full-featured implementation of the Network Time Protocol, including NTS support.

    pendulum-project/ntpd-rs’s past year of commit activity
    Rust 956 60 43 6 Updated Nov 10, 2025
  • statime Public

    Implementation of the Precision Time Protocol (PTP) in Rust

    pendulum-project/statime’s past year of commit activity
    Rust 265 27 21 4 Updated Nov 7, 2025
  • timestamped-socket Public

    An asynchronous UDP socket that supports timestamping

    pendulum-project/timestamped-socket’s past year of commit activity
    Rust 11 11 0 1 Updated Nov 3, 2025
  • pendulum-project/clock-steering’s past year of commit activity
    Rust 8 4 2 2 Updated Nov 3, 2025
  • nts-timesyncd Public Forked from systemd/systemd

    NTS extensions for systemd-timesyncd

    pendulum-project/nts-timesyncd’s past year of commit activity
    C 0 GPL-2.0 4,253 6 0 Updated Sep 19, 2025
  • .github Public
    pendulum-project/.github’s past year of commit activity
    1 1 0 0 Updated Jul 11, 2025
  • pps-time Public

    A Rust interface for PPS devices

    pendulum-project/pps-time’s past year of commit activity
    Rust 2 1 1 0 Updated Jan 10, 2025