---
title: "ESP32-S3 causal clock discipline — PToB research"
description: "The 22 October ESP32-S3 follow-up: 166.590 ns relative-PPS RMS across 657/660 records, with a separate second-board transfer and retained tails."
url: "https://ptob.dev/research/esp32-s3-causal-clock-discipline/"
language: "en"
robots: "index, follow, max-image-preview:large, max-snippet:-1, max-video-preview:-1"
representations: {"application/json":"https://ptob.dev/research/esp32-s3-causal-clock-discipline/?format=json","text/markdown":"https://ptob.dev/research/esp32-s3-causal-clock-discipline/?format=markdown"}
format_description: "https://ptob.dev/agent-formats.json"
---

# Precision Bluetooth Timing on ESP32-S3: Causal Clock Discipline and Hardware Event Capture

Research draft  22 October 2026  8 pages · PDF

How does internal causal clock quality compare with an independently observed relative PPS result?

[Read PDF](https://ptob.dev/papers/preview/?file=%2Fpapers%2Fptob-esp32s3-timing-preprint.pdf)[Cite this edition](https://ptob.dev/research/esp32-s3-causal-clock-discipline/#citation)

## Overview

The completed 660-second ESP32-S3 experiment measured 166.590 ns relative-PPS RMS across 657 eligible records, with three invalid and zero nominal missing. A fresh N30 second-board transfer measured 150.954 ns RMS across 48 eligible of 64 records.

## What this paper covers

- Separate internal prediction RMS from delivered relative-PPS error.
- Keep calibration-selected data distinct from fresh transfer validation.
- Retain output tails and every unavailable record when assessing a timing target.

## Research scope

The first window retains a 1,591 ns maximum. The later transfer retains 16 invalid records and a 362 ns maximum. An observed 49 ns internal display RMS is a different metric. The sub-100 ns downstream target, RF endpoint delay, physical output and absolute UTC remain unqualified.

## Read it in context

This is the dated 22 October follow-up. The 24 October W12 baseline is a separate later population with different source versions and calibration; it does not overwrite this paper’s measurements.

[Selected experiment and reproduction](https://github.com/yantisj2/PToB/tree/main/evidence/s3/2026-10-22-fine)[Later W12 baseline](https://ptob.dev/research/#w12-utc-basis)

## Cite this edition

Jonathan Yantis. Precision Bluetooth Timing on ESP32-S3: Causal Clock Discipline and Hardware Event Capture. 22 October 2026. Research draft. [Original PDF](https://ptob.dev/papers/preview/?file=%2Fpapers%2Fptob-esp32s3-timing-preprint.pdf).

Summary permalink: [https://ptob.dev/research/esp32-s3-causal-clock-discipline/](https://ptob.dev/research/esp32-s3-causal-clock-discipline/)

Jonathan Yantis leads protocol design, hardware development and research. GPT 6.1 contributes implementation, analysis and documentation. This page summarizes the linked edition; retain its original evidence dates and measurement references.

## The full paper

The original document includes the technical detail and references behind this summary.

[Read PDF](https://ptob.dev/papers/preview/?file=%2Fpapers%2Fptob-esp32s3-timing-preprint.pdf)
[Cite this edition](https://ptob.dev/research/esp32-s3-causal-clock-discipline/#citation)

[Paper sources on GitHub](https://github.com/yantisj2/PToB/blob/main/papers/README.md)

## Continue exploring

[Affordable timing from Starlink over WiFi](https://ptob.dev/research/starlink-wifi-timing/)[Trustworthy timing in Zephyr](https://ptob.dev/research/zephyr-hardware-timestamps/)[Low-level timing on ESP32-S3](https://ptob.dev/research/esp32-s3-event-capture/)[BLE timing tails and multipath](https://ptob.dev/research/ble-timing-tails-multipath/)[From BLE to a Pi NTP/PTP gateway](https://ptob.dev/research/pi5-mhat-time-gateway/)[From USB frames to a macOS clock](https://ptob.dev/research/usb-macos-time-transfer/)[Empirical BLE-trained holdover](https://ptob.dev/research/empirical-ble-holdover/)[Timing information and power scheduling](https://ptob.dev/research/awake-timing-power-scheduling/)[All research & evidence](https://ptob.dev/research/)

## Structured data

```json
{
  "@context": "https://schema.org",
  "@graph": [
    {
      "@type": "WebSite",
      "@id": "https://ptob.dev/#website",
      "url": "https://ptob.dev/",
      "name": "PToB",
      "alternateName": [
        "Precision Time over BLE",
        "Precision Time over Bluetooth"
      ],
      "description": "Bluetooth and USB software clocks: W12 60.3 ns relative-PPS RMS over 522/600 observations, separate 64 s sampled holdover, and CoreSE diagnostics.",
      "inLanguage": [
        "en",
        "de"
      ],
      "publisher": {
        "@id": "https://ptob.dev/#jonathan-yantis"
      }
    },
    {
      "@type": "Person",
      "@id": "https://ptob.dev/#jonathan-yantis",
      "name": "Jonathan Yantis",
      "url": "https://github.com/yantisj2/PToB/blob/main/CREDITS.md"
    },
    {
      "@type": "Project",
      "@id": "https://ptob.dev/#project",
      "name": "PToB",
      "alternateName": "Precision Time over BLE",
      "url": "https://ptob.dev/",
      "description": "An independent protocol project researching precision time transfer across Bluetooth-enabled microcontrollers and USB clients.",
      "sameAs": "https://github.com/yantisj2/PToB",
      "member": {
        "@id": "https://ptob.dev/#jonathan-yantis"
      },
      "knowsAbout": {
        "@id": "https://ptob.dev/#protocol"
      }
    },
    {
      "@type": "Thing",
      "@id": "https://ptob.dev/#protocol",
      "name": "Precision Time over BLE",
      "alternateName": "PToB",
      "description": "An experimental PTP-inspired protocol proposal for wireless clock synchronization over Bluetooth Low Energy."
    },
    {
      "@type": "WebPage",
      "@id": "https://ptob.dev/research/esp32-s3-causal-clock-discipline/#webpage",
      "url": "https://ptob.dev/research/esp32-s3-causal-clock-discipline/",
      "name": "ESP32-S3 causal clock discipline — PToB research",
      "description": "The 22 October ESP32-S3 follow-up: 166.590 ns relative-PPS RMS across 657/660 records, with a separate second-board transfer and retained tails.",
      "inLanguage": "en",
      "keywords": [
        "Bluetooth clock synchronization",
        "Precision Time over BLE",
        "Implementation & time transfer"
      ],
      "isPartOf": {
        "@id": "https://ptob.dev/#website"
      },
      "author": {
        "@id": "https://ptob.dev/#jonathan-yantis"
      },
      "about": {
        "@id": "https://ptob.dev/#protocol"
      },
      "dateModified": "2026-10-30",
      "image": "https://ptob.dev/social/ptob-timing-v3.jpg",
      "breadcrumb": {
        "@id": "https://ptob.dev/research/esp32-s3-causal-clock-discipline/#breadcrumbs"
      },
      "mainEntity": {
        "@id": "https://ptob.dev/papers/ptob-esp32s3-timing-preprint.pdf#article"
      }
    },
    {
      "@type": "BreadcrumbList",
      "@id": "https://ptob.dev/research/esp32-s3-causal-clock-discipline/#breadcrumbs",
      "itemListElement": [
        {
          "@type": "ListItem",
          "position": 1,
          "name": "PToB",
          "item": "https://ptob.dev/"
        },
        {
          "@type": "ListItem",
          "position": 2,
          "name": "Bluetooth and Starlink timing research and results",
          "item": "https://ptob.dev/research/"
        },
        {
          "@type": "ListItem",
          "position": 3,
          "name": "ESP32-S3 causal clock discipline",
          "item": "https://ptob.dev/research/esp32-s3-causal-clock-discipline/"
        }
      ]
    },
    {
      "@type": "ScholarlyArticle",
      "@id": "https://ptob.dev/papers/ptob-esp32s3-timing-preprint.pdf#article",
      "url": "https://ptob.dev/research/esp32-s3-causal-clock-discipline/",
      "headline": "Precision Bluetooth Timing on ESP32-S3: Causal Clock Discipline and Hardware Event Capture",
      "name": "Precision Bluetooth Timing on ESP32-S3: Causal Clock Discipline and Hardware Event Capture",
      "description": "The 22 October ESP32-S3 follow-up: 166.590 ns relative-PPS RMS across 657/660 records, with a separate second-board transfer and retained tails.",
      "author": {
        "@id": "https://ptob.dev/#jonathan-yantis"
      },
      "datePublished": "2026-10-22",
      "dateModified": "2026-10-22",
      "inLanguage": "en",
      "creativeWorkStatus": "Research draft",
      "about": {
        "@id": "https://ptob.dev/#protocol"
      },
      "mainEntityOfPage": {
        "@id": "https://ptob.dev/research/esp32-s3-causal-clock-discipline/#webpage"
      },
      "image": "https://ptob.dev/social/ptob-timing-v3.jpg",
      "encoding": {
        "@type": "MediaObject",
        "contentUrl": "https://ptob.dev/papers/ptob-esp32s3-timing-preprint.pdf",
        "encodingFormat": "application/pdf"
      },
      "isPartOf": {
        "@id": "https://ptob.dev/research/#webpage"
      }
    }
  ]
}
```
