PTP status: 2-min average offset, details split; uptime as d/h/m/s
- Firmware: status.ptp.offset_avg_ns = mean |offset| over the last 2 min (one bucket per second, cleared on a clock step). - Main panel: Time Offset (2 min avg) shows only the Bolero bracket of the average. Details: the current offset (coloured by the same brackets), hops, time/frequency traceable, version and own clock class. - Uptime shown as "1d 2h 3m 4s". - Preset buttons renamed: "Riedel PTP defaults", "AES67 Media PTP defaults". Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -15,7 +15,7 @@ Reference devices for UI and defaults: Riedel Bolero (PTP status), Riedel Direct
|
||||
- Save bumps `aes67.session_ver` (SDP o= version). Save is blocked while any field is invalid (e.g. multicast out of range).
|
||||
- UI uses IEEE 1588-2019 terms (TimeTransmitter / TimeReceiver), like Riedel. Config/API values stay slave/auto.
|
||||
- AES67 fields carry Riedel Director-style "Default / Range" hints.
|
||||
- PTP preset buttons: "Riedel SIC defaults" and "AES67 media profile defaults" fill the form (Save to apply).
|
||||
- PTP preset buttons: "Riedel PTP defaults" and "AES67 Media PTP defaults" fill the form (Save to apply).
|
||||
|
||||
## Config schema (core groups)
|
||||
- ptp: {mode: multicast|hybrid, role: slave|auto, domain, priority1, priority2, log_sync, log_announce, announce_timeout, log_delay_req, dscp} (hardware timestamps always; not configurable)
|
||||
@@ -76,15 +76,11 @@ Reference devices for UI and defaults: Riedel Bolero (PTP status), Riedel Direct
|
||||
| PTP State | state | INITIALIZING/LISTENING/UNCALIBRATED/SLAVE/MASTER/PASSIVE/FAULTY/DISABLED, shown as TimeReceiver/TimeTransmitter/… |
|
||||
| Lock State | locked | servo converged (e.g. \|offset\| < 1 µs for N consecutive syncs) |
|
||||
| TimeTransmitter | gm_id | shown as MAC + "(FFFE)" when EUI-64 from MAC |
|
||||
| Time Offset | offset_ns | Bolero brackets in ns: <100 (green), 100-500 (green), 500-1000 (amber), 1000-10000 (red), >10000 (red); exact value in brackets |
|
||||
| Time Offset (2 min avg) | offset_avg_ns | mean \|offset\| over the last 2 min (reset on a clock step); Bolero brackets in ns: <100 (green), 100-500 (green), 500-1000 (amber), 1000-10000 (red), >10000 (red). The current offset_ns is in Details |
|
||||
| Frequency Deviation | freq_ppb | servo frequency correction; buckets <100 ppb, 100-500 ppb, 500 ppb-1 ppm, 1-10 ppm, 10-50 ppm, >50 ppm |
|
||||
| Network Delay | path_delay_ns ± path_delay_sd_ns | mean path delay ± std dev over the rolling window |
|
||||
| Hops | steps_removed | |
|
||||
| Time/Frequency Traceable | gm_time_traceable, gm_freq_traceable | Announce flagField bits |
|
||||
| Version | version | 2 |
|
||||
| Own Clock Class | own_class | 255 / 248 per role |
|
||||
|
||||
Details (collapsed): clock_id, gm_class, gm_accuracy, gm_p1, gm_p2, sync_avg_ms/min/max + sync_jitter_us (measured Sync interval over the last `window` = 64 messages; RX as receiver, TX as transmitter), announce_avg_ms, delay_req/delay_resp counters, hw_ts.
|
||||
Details (collapsed): clock_id, current offset_ns, gm_class, gm_accuracy, gm_p1, gm_p2, hops (steps_removed), time/frequency traceable (gm_time_traceable, gm_freq_traceable: Announce flagField bits), version (2), own clock class (own_class: 255 / 248 per role), sync_avg_ms/min/max + sync_jitter_us (measured Sync interval over the last `window` = 64 messages; RX as receiver, TX as transmitter), announce_avg_ms, delay_req/delay_resp counters, hw_ts.
|
||||
When this device is the GM, offset/frequency/delay show "–".
|
||||
|
||||
## AES67 TX
|
||||
|
||||
+3
-3
@@ -29,7 +29,7 @@ The page is split into sections, from top to bottom:
|
||||
| Section | What it's for |
|
||||
|---|---|
|
||||
| **Status** | Firmware version, IP / MAC, link speed, active source, Spotify state, buffer, packets sent, underruns, uptime, memory, chip temperature. |
|
||||
| **PTP status** | Whether the clock is locked, which grandmaster it follows, offset and path delay. *Details* shows more. |
|
||||
| **PTP status** | Whether the clock is locked, which grandmaster it follows, the time offset (bracket of the 2-minute average) and path delay. *Details* shows the current offset, hops and more. |
|
||||
| **Player** | What's playing now, transport buttons, progress bar (drag to seek), volume. |
|
||||
| **Source**, **PTP**, **AES67 output**, **Network**, **Logging** | Settings. They take effect only when you click **Save**. |
|
||||
| **SDP** | The stream description, to copy or download for receivers. |
|
||||
@@ -129,8 +129,8 @@ The board locks its media clock to the PTP grandmaster on the network (IEEE 1588
|
||||
| Intervals, timeout, DSCP (46) | | Presets below set them. |
|
||||
|
||||
**Presets:**
|
||||
- **Riedel SIC defaults:** TimeReceiver only, priorities 128/126, Riedel's intervals. Use this when a Riedel system provides the clock.
|
||||
- **AES67 media profile defaults:** the faster intervals of the AES67 profile.
|
||||
- **Riedel PTP defaults:** TimeReceiver only, priorities 128/126, Riedel's intervals. Use this when a Riedel system provides the clock.
|
||||
- **AES67 Media PTP defaults:** the faster intervals of the AES67 profile.
|
||||
|
||||
A preset only fills in the fields; click **Save** to apply them.
|
||||
|
||||
|
||||
Reference in New Issue
Block a user