| peter | Posted: 13 Apr 2026, 02:22 PM |
|---|---|
|
Member Posts: 10 Joined: 10-September 22 |
PCC: Precision Clock Companion A macOS menu-bar app for the Precision Clock Mk IV. Connects over USB serial to drive the display, track satellites, and serve GPS-disciplined NTP. Signed + notarised, macOS 26+. ↓ Download v0.8.0-alpha · GitHub · Screenshots · Web (WIP) Clock & display - Brightness curve editor — draggable graph, 3D surface plot, presets - Display modes, colon animation, diagnostics, timezone override, most serial settings - Send text or countdowns, marquee-scrolled for long strings - Read/write config.txt with local backups - Check and install firmware + timezone updates to USB GPS & satellites - Three sky views: polar plot, world map with sub-satellite points, interactive 3D globe (globe.gl) - Signal bars, sun/moon projections, per-constellation colour coding - Persistent trail recording — logs to disk, renders as heatmap overlays across all three views - Signal analysis, GPS info: coordinates, Maidenhead grid, HDOP, sun/moon times, equation of time Extras - Weather on the clock via WeatherKit - Basic Stratum 1 NTP server on localhost, GPS-disciplined - Data sources — poll REST endpoints or shell commands and rotate results onto the display - Raw NMEA serial monitor PCC Web — proof of concept Chromium-only browser build using Web Serial. Carries display control, the polar sky view (heatmap, horizon mask, trails), the offline 3D globe, IndexedDB pass history, and auto light/dark. Drops NTP, firmware updates, native map, WeatherKit, and AI insights. Open PCC Web → --- Still alpha — things will break. Feedback welcome on GitHub or in this thread. Built with Claude Code. Independent project, not affiliated with mitxela. Last edit by peter at 18 Apr 2026, 08:21 PM ------------- |
| [top] | |
| peter | Posted: 13 Apr 2026, 02:22 PM |
|
Member Posts: 10 Joined: 10-September 22 |
Changelog: v0.8.0 - Polar SNR sector heatmap, on-device AI GPS Insights, offline 3D globe bundle, auto-eject on firmware install v0.7.0 - Per-pass satellite trails with age-fading tiers, live comet-heads, time scrub (Live → 30d) v0.6.1 - Weather ghost fix, trail rendering capped at 600pts, recording no longer auto-resumes, record button moved into Satellites panel v0.6.0 - 3D globe view with ground tracks and sun/moon projections, trail overlay on map, persistent trail recording, Polar · Map · Globe tabs, sidebar reorganised, macOS 26 / Swift 6.2 v0.5.4 - Marquee scroll fix (underscore separator), window reopen fix, dynamic map legend v0.5.3 - Weather display fix, WeatherKit auth, instant format refresh, display-in-use warnings v0.5.2 - Sky View resize crash fix, auto-resizing window, compact GPS info panel v0.5.1 - Satellite tracking reconnect fix, NTP status in menu bar, Time Server indicator v0.5.0 - Basic Stratum 1 NTP server, sun/moon on polar plot, horizon mask, GPS info panel, WeatherKit v0.4.1 - Custom HTTP headers, rate limiting for data sources v0.4.0 - Satellite sky view with polar plot and signal bars v0.3.0 - Config.txt management, serial monitor, brightness presets, menu bar controls v0.2.0 - Firmware and timezone update checker v0.1.0 - Initial release Full changelog on GitHub Releases. Last edit by peter at 18 Apr 2026, 04:32 PM ------------- |
| [top] | |
| mit | Posted: 13 Apr 2026, 03:58 PM |
|
yeah whatever Admin Posts: 670 Joined: 4-May 16 |
Interesting! I probably won't have a chance to test it personally for a while but I've idly thought about something like this before. One note, the hyperlink to the clock user manual in the repo is wrong (it should point to /projects/precision_clock_mk_iv/docs ) Here are some feature suggestions if you'd like to try them: - It would be nice to have a dropdown list for zone_override, so you can just click on a zone to switch to it. The list of zones is in the repo as timezone_names.json, but note that it usually has some changes when the timezone database is updated, so it can't be hard coded. - It could periodically check for firmware releases, and download and install them automatically - Probably a lot of work, but maybe not using Claude, you could recreate the functionality of ublox's u-centre sky view. This is a polar plot of the satellite signal strengths, and if you leave it running for 24 hours it gives you an interesting analysis of the antenna performance. ------------- |
| [top] | |
| peter | Posted: 13 Apr 2026, 04:48 PM |
|
Member Posts: 10 Joined: 10-September 22 |
Thanks for the feedback! :) Both of these are in the latest alpha, and have fixed the link! :) Last edit by peter at 17 Apr 2026, 04:23 PM ------------- |
| [top] | |
| peter | Posted: 13 Apr 2026, 10:40 PM |
|
Member Posts: 10 Joined: 10-September 22 |
Implemented the sky view in the latest alpha. Thank you for the suggestion. Last edit by peter at 17 Apr 2026, 04:24 PM ------------- |
| [top] | |
| peter | Posted: 17 Apr 2026, 04:22 PM |
|
Member Posts: 10 Joined: 10-September 22 |
Oops! Didn't mean to make this message. Last edit by peter at 17 Apr 2026, 04:23 PM ------------- |
| [top] | |
| mit | Posted: 18 Apr 2026, 10:48 AM |
|
yeah whatever Admin Posts: 670 Joined: 4-May 16 |
It's pretty cool how quickly that came together! I would be interested to know how the NTP server behaves without a hardware PPS connection. The USB jitter is often pretty bad. There's a stale branch of the clock firmware here where I did some experiments with it. I don't think it's impossible to get a good timestamp over USB. The source of the jitter is that it's host-driven, and there's a variable delay between putting the packet in memory and it being read out by the USB interrupt. If we fiddled with the USB stack we could inject an accurate timestamp into the packet at the last microsecond. Sky view - the globe looks nice, it's not clear from the screenshots whether the polar plot colours in the sectors as I was expecting. E.g. here's a stackoverflow post with a filled sky view. Hmm... another point, when applying a firmware update it is slightly safer to send the SCSI Eject command, rather than reboot over serial, as the OS will hopefully finish any writes before it ejects it. I can think of plenty of other features for PCC if you want them, though please only add them if you are having fun, again I can't actually test it myself as I don't normally use macOS. There's a thought: maybe with the power of AI, you could port PCC to the browser using WebSerial...... ------------- |
| [top] | |
| peter | Posted: 18 Apr 2026, 05:47 PM |
|
Member Posts: 10 Joined: 10-September 22 |
Great shout on the WebSerial! As a Flipper Zero-er, I should have thought of that! There's an initial release now, up on GitHub Pages :) PCC Web It's very much MVP / proof-of-concept though, it doesn't all yet function, and currently has reduced feature set. Re: USB jitter - thank you for enlightening me further and since reading your considerations re NTP, I've tried to temper my description of the NTP server as a convenience tool rather than anything production-grade, and tried to quell my use of the word "stratum"! :) Will have a look at that stale firmware branch though. Re: filled sky view - already in v0.8.0 :) 5°×5° cells coloured by peak SNR. Re: SCSI Eject vs serial reboot - thank you, have switched over. Last edit by peter at 20 Apr 2026, 06:35 PM ------------- |
| [top] | |
Sign in to post a reply.