Three pieces, distinct jobs

The project synchronizes to the WWVB time broadcast, keeps time on a PCF8523 real-time clock, and displays it on an RGB matrix driven by an Adafruit Matrix Portal S3. Its startup visualizer exposes the incoming signal while the clock waits for enough information to synchronize.

Configuration contains the local time-zone rules. The README describes a short acquisition period before the display shows the configured time. It also explicitly limits the implementation to WWVB; other radio time services need their own decoding considerations.

Hardware constraints shape software

The documentation calls out interference from the display and potentially USB serial activity. Moving the receiver away from the display is a practical part of making the system usable. That observation is a reminder that a correct decoder still depends on a usable physical signal.

The signal visualizer serves as an operational aid: it gives the builder something to inspect when the clock has not synchronized. It turns an invisible dependency into observable behavior rather than reducing failure to an incorrect time display.

Observe the whole system

The parts list and configuration instructions make the clock repeatable, but reception remains a property of the physical setup. Signal quality, antenna placement, and display interference belong in the same debugging process as decoder logic. The startup visualizer helps connect those electrical conditions to the software's waiting state.