Skip to the content
PCBKitNew board
2 layers110 × 40 mmNumitronTop, the printed circuit board in 3D

Four-tube RCA DR2000 Numitron desk clock: KiCad top board, docs and datasheets

Size
110 × 40 mm
Copper layers
2
Thickness
1.6 mm
Parts
59
Nets
69
Pads
245
Tracks, vias
1,176, 184
Pours
2
Routed
Yes
KiCad
KiCad 10.0 (file 20260206)
Created
23 Oct 2026
Updated
23 Oct 2026

Overview

NumitronTop is an open-source printed circuit board by spott, from the spott/NumitronClock repository on GitHub. It is a 2-layer board of 110 × 40 mm with 59 parts on 69 nets, routed with 1,176 tracks and 184 vias.

It is built around the BH1750FVI-TR, RC0603FR-07100KL and RC0603FR-071KL, with the RC0603FR-0710KL among its other parts. Its parts include 21 resistors, 15 capacitors, 8 ICs, 1 transistor and 1 connector. It belongs with the lEDs and displays boards of this library.

Main components

4

README

README.md

Numitron Clock

Top-board schematic and PCB layout for the four-tube clock described in the Obsidian note electronics/Numitron Clock/Numitron Clock.md, read on 2026-09-18. The detailed top-board decisions in that note supersede its older, general power and interconnect descriptions.

Open NumitronTop.kicad_pro in KiCad. The design was captured and checked with KiCad 10.0.5. All schematic symbols are included in the project-local library and embedded in the sheets.

Review this revision

The top board is placed and routed on a 110 × 40 mm working outline with all 55 schematic parts, four M2.5 mounting positions, local power distribution and ground copper on both faces. The extra depth provides a separate underside strip for the wide SOIC drivers. The layout notes explain component placement, the perpendicular underside connector orientation and review process.

The GZC9-A socket footprint remains provisional, as explicitly authorized on 2026-09-25: 18 mm assumed tail circle, 0.5 mm estimated terminal thickness, 2.5 mm plated holes and 3.8 mm copper lands. Verify physical fit before ordering. Enclosure/cable fit, exact capacitor order codes and hardware measurements also remain assembly/release checks. WWVB versus GPS belongs to the bottom board.

The owner confirms the actual tubes are marked DR2000 and have prefix decimal points. The archived RCA table assigns that feature to DR2010 instead. The design preserves the requested HH.MM display and routes the eighth channel to pin 1; verify that decimal connection on the actual tubes before enabling it.

Development

ES100 time-source test firmware

The reusable async ES100 driver and Pico 2 breadboard program live in firmware/. Build and check them with the pinned firmware toolchain (Rust/Cargo, Pico 2 target, flip-link and picotool are supplied by Nix):

sh
nix develop .#firmware --command bash scripts/check_firmware.sh

The generated UF2 is firmware/target/pico2-es100.uf2. See the firmware guide for wiring, BOOTSEL flashing, USB logs and the hardware test handoff. Physical reception has not been validated; this does not decide WWVB versus GPS.

Hardware tooling

Use the pinned Nix flake; no global package installation is required. KiCad is supplied by the existing local application installation on macOS. The flake pins the supporting Python, Poppler, SVG-rendering and local Freerouting tools, not that external KiCad application.

sh
nix develop
bash scripts/review.sh

The review command runs KiCad ERC, audits the saved schematic's netlist and provisional socket footprint, exports schematic and footprint SVGs, and renders inspection PNGs under ignored tmp/render/. It does not regenerate or overwrite the schematic or footprint. Source PDFs and the socket drawing are archived in Git with their provenance and hashes.

scripts/build_schematic.py --write records the initial schematic capture and is deliberately opt-in: it overwrites the native KiCad files. After editing in KiCad, preserve those edits; reconcile the generator before using it again.

hardware/top-board/socket-footprint.json records the socket assumptions. scripts/build_socket_footprint.py --write captures them into the project-local Numitron.pretty library; reconcile manual footprint edits before regenerating. The schematic assigns Numitron:GZC9-A_B9A_Provisional to V1-V4.

nix develop --command bash scripts/review_placement.sh checks the saved PCB against the netlist, runs DRC with schematic parity and generates the top/bottom review drawings. It does not regenerate placement or routing. board-drc.json and placement-checks.txt retain the results.

build_placement.py --write is a one-time placement capture using KiCad's bundled Python; it refuses to discard routing without an explicit override. placement.json is the initial coordinate record, while the saved native board is authoritative. The power routing, local-router exchange and ground-fill helpers likewise require care around later CAD edits; do not run capture scripts just to review the design.

The repository covers the future whole clock. Its hardware design currently contains only the top board; the Pico 2 firmware is a separate time-receiver experiment. The bottom board will supply protected 5 V, regulated 3.3 V, the control interface and I2C pull-ups. Its schematic and layout remain future work.

Parts

59
QtyValueFootprintReferences
8100n 50V X7RCapacitor_SMD:C_0603_1608MetricC4, C5, C6, C7, C8, C10, C12, C14
74.7kResistor_SMD:R_0603_1608MetricR11, R12, R13, R14, R17, R20, R21
41u 25V X7RCapacitor_SMD:C_0805_2012MetricC9, C11, C13, C15
433RResistor_SMD:R_0603_1608MetricR3, R4, R5, R6
4DR2000 / GZC9-ANumitron:GZC9-A_B9A_ProvisionalV1, V2, V3, V4
4M2.5 / NPTH 2.7Numitron:MountingHole_2.7mm_M2.5_BothSidesH1, H2, H3, H4
4TPIC6B595DWRPackage_SO:SOIC-20W_7.5x12.8mm_P1.27mmU5, U6, U7, U8
3100kResistor_SMD:R_0603_1608MetricR7, R8, R9
310u 25V X7RCapacitor_SMD:C_1206_3216MetricC1, C2, C3
21kResistor_SMD:R_0603_1608MetricR15, R18
22.2kResistor_SMD:R_0603_1608MetricR10, R16
1+3V3TestPoint:TestPoint_Pad_D1.5mmTP2
1+5VTestPoint:TestPoint_Pad_D1.5mmTP1
110kResistor_SMD:R_0603_1608MetricR19
110k 1%Resistor_SMD:R_0603_1608MetricR2
146.4k 1%Resistor_SMD:R_0603_1608MetricR1
161201621621Numitron:Wurth_61201621621_2x08_P2.54mmJ1
1AP7361C-Y5-13Numitron:Diodes_SOT89-5_AP7361CU1
1BH1750FVI-TRNumitron:ROHM_WSOF6I_BH1750_NoCenterPadU3
1GNDTestPoint:TestPoint_Pad_D1.5mmTP4
1MMBT3904-7-FPackage_TO_SOT_SMD:SOT-23Q1
1SER_OUT 5VTestPoint:TestPoint_Pad_D1.5mmTP5
1SN74AHCT125DRPackage_SO:SOIC-14_3.9x8.7mm_P1.27mmU2
1TLV809EA29DBZRPackage_TO_SOT_SMD:SOT-23U4
1V_TUBETestPoint:TestPoint_Pad_D1.5mmTP3

Questions

How big is the NumitronTop PCB?

It measures 110 × 40 mm and has 2 copper layers, 1.6 mm thick.

What parts does the NumitronTop use?

59 parts, built around the BH1750FVI-TR, RC0603FR-07100KL, RC0603FR-071KL and RC0603FR-0710KL. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.

Where can I download the NumitronTop KiCad files?

From the spott/NumitronClock repository on GitHub, at the commit this page was made from: the board is hardware/top-board/NumitronTop.kicad_pcb and its schematic hardware/top-board/ControlAndSensor.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the NumitronTop design in my own project?

Its repository states no licence, so its author keeps all rights: ask spott before reusing the design.

Similar boards

  • 2 layers60 × 111.3 mmSilkscreen pcb, the printed circuit board in 3D

    Silkscreen pcb

    iandchasse/silkscreen-pcb

    Silkscreen: open-hardware ESP32-S3 e-paper reader mainboard (KiCad 9). Formerly the de-link hub.

    189 parts589CERN-OHL-S-2.0
  • 4 layers85 × 56 mmAnthC, the printed circuit board in 3D

    AnthC

    Anthilla/AnthC

    Anthilla AnthC Board

    211 parts40
  • 8 layers358 × 185 mmMonolith ducktop2, the printed circuit board in 3D

    Monolith ducktop2

    EwoudVV/ducktop2

    An open-source 16-inch laptop designed from scratch.

    1,225 parts26MIT
  • 2 layers63.5 × 99.1 mmBlugasm, the printed circuit board in 3D

    Blugasm

    saawsm/Blugasm

    A battery powered nogasm with support for bluetooth toys.

    74 parts19GPL-3.0
  • 4 layers46.4 × 99.8 mmTrimix Analyzer, the printed circuit board in 3D

    Trimix Analyzer

    magnus188/aegir

    Open-source ESP32-P4 trimix analyzer prototype for technical diving,

    171 parts14
  • 2 layers119.9 × 57 mm1v2boost, the printed circuit board in 3D

    1v2boost

    benkrasnow/1v2-boost-converter

    Schematics and PCB layout for a boost converter 0.9V minimum input, 30A maximum input current

    77 parts7MIT
  • 8 layers64 × 56 mmPS GAN-60W, the printed circuit board in 3D

    PS GAN-60W

    jonahsaunders/planar-studio

    KiCad extension for the copper you can't buy as a part — design planar inductors, transformers, PCB motor stators, filters, and antennas, with electrical modeling and direct write-back to your board.

    89 parts4MIT
  • 6 layers36 × 124 mmOpenDual Reader, the printed circuit board in 3D

    OpenDual Reader

    nuerolynx/embedded-systems-lab

    Arduino UNO R4 WiFi and ESP32 prototypes for access control, automation, displays, monitoring, and Bluetooth audio.

    74 parts4