Skip to content

Making · Engineering · 2025–2026 · Working prototype

Three people who couldn't leave a clock alone

NT-4000 nixie clock

The NT-4000: a USB-C-powered Nixie clock with custom boards, a hand-built enclosure, firmware, a desktop twin, and a table at Open Sauce 2026.

A green printed-circuit panel on a red mat: the main board above with an RP2350, microSD slot, inductors and connectors, and the display board below with four circular tube footprints and rows of driver transistors
Fig. 1 — The NT-4000 board panel as delivered: main board above, ZM1000 display board below. Project photograph.
Role
Industrial design and features; enclosure; UX and digital-twin design
Years
2025–2026
Project status
Working prototype
Organisation
The Overengineering Department
Collaborators
Two collaborators (project lead and electrical engineering; thyratron)
Categories
Making · Engineering
Clock — main board, tube cards, enclosure, firmware
Working prototype
Digital twin and firmware updater (desktop app)
Working, open issues
Shown publicly
Open Sauce 2026, confirmed
Production
None planned · interest list only

04Situation

The NT-4000 is a clock built by three people who kept finding one more thing to add. A friend leads the project and electrical engineering; I own the industrial design, enclosure, features, and interaction design; a third collaborator completes the team. [S35] This is the workbench side of my practice: drawing a form, printing it, fitting it around a board, and finding out what needs to change. [I01]

The clock became a teaching case along the way: the worked example in an April 2026 talk to design students at Colorado School of Mines, and again in the June 2026 faculty workshop there, as a concrete case of what an AI visual-design tool does and does not take over in an industrial-design process. [I01][I17][I19]

A dark green desk clock in a rounded retro-radio form: four orange Nixie tubes behind a window, a brass plate engraved AM, ALARM, PM, a brass speaker grille with a USB-C port, and a brass knob
Fig. 2 — The design as it stands, Forest Green with brass. Render, not a photograph: the finished units have not had a proper studio shoot yet. From the project's site.
Close-up render of four ZM1000 Nixie tubes glowing orange behind a mesh anode, with a two-dot colon between the pairs
Fig. 3 — ZM1000 tubes, as rendered. The numeral is the electrode: ten stacked metal cathodes behind a mesh anode, one glowing. Render. From the project's site.

05The object

A desk clock in a rounded tabletop-radio form: four ZM1000 Nixie tubes behind a window, a brass AM / ALARM / PM indicator plate, a brass speaker grille carrying the USB-C port, a brass encoder knob, and a five-position mode selector on the side. Six finishes were designed: Forest Green, Cream, Matte Black, Midnight Navy and Sage Green, each with brass, and Gunmetal with stainless. [S35]

Inside, a six-layer main board around an RP2350 carries a battery-backed real-time clock, an FM/AM receiver, an audio amplifier with its own clock generator, two USB Power Delivery controllers (one sinks power from the USB-C input, one sources it to a downstream charging port), an I²C rotary-switch expander, an accelerometer for tap-to-snooze, and a microSD slot for alarm and radio audio. The display is a separate tube card with its own RP2350, driven over a serial link; the same card firmware builds for the four-tube ZM1000 card and a six-tube IV-6 vacuum-fluorescent card, the main board detects which is fitted, and both have been built into finished enclosures. [I18]

The firmware, in MicroPython, keeps time on the tubes with a selectable appearance (count-up, antique flicker, steady, war-torn), runs a daily alarm armed by the knob, a timer and stopwatch, the radio, a night sleep window with optional sun-tracking brightness, timezone and daylight-saving rules, USB-PD negotiation, and a serial command interface. A desktop app, Nixie Twin, mirrors the hardware in real time from the clock's log stream, edits its configuration, manages the SD card's audio, and flashes signed firmware pulled from a server feed. It began as a development aid and became the software the clock ships with; section 06 tells that part. [I18]

Four bare green circuit boards on black: a large main board with labelled headers, a display board with four tube footprints, a small oval encoder board, a square board with a USB-C connector, and a slim interconnect
Fig. 4 — Development hardware: main board, display board, encoder, USB-C and interconnect boards. Project photograph.

06Process

I used Vizcom to explore variations from my sketches and reference images, steering the results against the board dimensions and the form I wanted. Then I printed enclosures. The prints exposed problems the renders did not, and each round gave me something specific to change. [I01][I19]

I rebuilt the chosen design by hand in Fusion 360. Working through the geometry made me resolve how the object would fit together. That is the part I now use in teaching: a rendering tool can make exploration faster, but choosing a direction and making it buildable still take judgment. [I17]

Before any of the interaction reached firmware it ran in a browser simulator I wrote in February 2026: the five rotary positions, the encoder, the appearance personalities and the event codes the firmware would later use. [I18]

The digital twin did the rest of the development. The firmware logs every display frame and every input as text over USB, which turned out to be a complete description of the user interface. In May 2026 we built a digital twin on exactly that. I designed it: the layout, what each screen does, the feature set and specifications, how every control maps to a function on the clock, and the outline the whole app follows; the project's lead engineer wrote the code. The result is a desktop app that reads the log stream and redraws the clock face, the three indicator lamps, the rotary switch and the encoder as the hardware changes, with the face drawn to scale from the enclosure's own DXF so the twin looks like the object on the bench. It also replays a recorded session with no clock attached, and later ran the real firmware itself under a host build of MicroPython, so interaction changes could be tried, logged and reviewed before anyone flashed a board. [I18]

Having a window into the running clock changed how the work went. Bugs reproduced from a log file instead of a description; the alarm, timer and radio state machines were walked against the twin while the boards were still being revised; the tube card's flicker and corruption effects were tuned by watching the twin and the tubes side by side. A month later he rebuilt the twin in Rust and TypeScript to my design, and it grew the rest of what a clock needs around it: the configuration editor for the firmware's fifty-odd keys, an engineering console for raw commands, the SD-card audio manager, and a firmware updater that pulls signed builds from the project server and verifies them before flashing, with a signed self-updater for the app itself. That is the software the clock ships with. The development tool became the product's companion, and the browser simulator that preceded it has been realigned to the shipped behaviour and drives the model below. [I18]

Drag to orbit. The buttons are the clock's controls: five selector positions, the encoder (↓ turn ↑, PRESS, LONG), and TAP on the case. Open full-screen · 2D simulator with event log

Fig. 5 — The clock, playable. The browser simulator runs the firmware 0.5 behaviour (selector positions, alarm, timer, radio, appearance modes) and paints it onto the enclosure's own Fusion 360 model, converted from the STEP export. Interactive render, not a photograph; the model is the CAD, not a scan of a built unit.
Four ZM1000 Nixie tubes lit on a bare display board on a bench, ribbon cables and a development board behind them
Fig. 6 — Tubes lit on the bench board, the view the twin was built to match. Project photograph.
Slide titled Fallout Clock Example, Vizcom tutorial, with a rendered retro clock reading 12:34 in orange digits
Fig. 7 — Where the form started: the first Vizcom render I was happy with, as shown in the April 2026 Mines talk. Render, not a photograph. Frame from the talk deck.
Slide showing a Vizcom Modify panel with a long written prompt beside two renders: a gold-and-black clock reading 12:34 and a red speaker-like variant
Fig. 8 — Steering by prompt: a Vizcom modify pass and two of the directions it produced. Renders. Frame from the talk deck.
Slide with a rendered black knob, a Vizcom Modify dialog, and two dark-green clock renders reading 10:47
Fig. 9 — Working a detail: the side knob, and the green direction that stuck. Renders. Frame from the talk deck.
Slide with a front render of the clock reading 12:34 beside two views of a dark-green shell from behind and the side
Fig. 10 — Converged form, front and back. Renders. Frame from the talk deck.
Photographs of a clear acrylic enclosure prototype holding the circuit boards and tubes, one held in a hand
Fig. 11 — The first physical check: boards and tubes in a clear acrylic case. Photographs. Frame from the talk deck.
A Fusion 360 view of the green clock body with four tubes, brass indicator plate, grille and a side knob surrounded by engraved mode labels
Fig. 12 — The Fusion 360 model, modelled by hand after the Vizcom renders. Screenshot.
A black 3D-printed test jig on a stone counter holding the main board, display board with four tubes lit, two small speakers, a USB-C module and a brass indicator plate, connected by ribbon cables
Fig. 13 — Form-factor test jig: the real boards, tubes and speakers in the enclosure's footprint before the enclosure existed. Project photograph.
Six renders of the same clock in Forest Green, Cream, Matte Black, Midnight Navy, Sage Green and Gunmetal
Fig. 14 — The six finishes. Renders, not photographs.

07At the table

In July 2026 the clock went public as a table under a banner reading The Overengineering Department, at Open Sauce in San Mateo. [S34][I16] The table was laid out as a process: resin prints of the enclosure, bare and populated boards, the steel stencils, a board with its tubes lit on a bench fixture, and a one-page explainer on what a Nixie tube is. Both display variants were there as finished units: the Forest Green clock on four ZM1000 nixies, and a charcoal clock on the six-tube IV-6 vacuum-fluorescent card. A QR code led to a landing page where visitors voted on a finish, guessed what the build had cost, submitted anonymous engineering confessions, and could leave an email if they wanted the plans, a kit or a finished clock. [S35]

A booth table under a cream banner reading The Overengineering Department: an olive-green clock showing 08 59, a bare board with four lit tubes, bare boards and steel stencils, a QR sign for an interest list, and a large acrylic-framed board of orange glowing dots behind
Fig. 15 — The table, 19 July 2026. Own photograph.

08Outcome

We built a working clock with a radio, alarm, and desktop twin, and showed it at Open Sauce. Nothing is for sale; the interest list asks whether people would want plans, a kit, or a finished clock if we decide to make more. [S35] I also use it in teaching because I can show the whole path from AI-assisted sketch exploration to the object on the table.

References & documentation

  1. 1. I01
    `03 Selected Work - Gelfuso_1.pdf`, Oct 2026, 24 pp. — Project narrative/role and existing media candidates: SecondThought pp.3-4, conversational diagnosis p.5, InstaGraph p.6, Mines p.7, Ford p.8, making p.9, UIF p.10, early work p.11, ASEE pp.12-24first-party

    No, portfolio prepared by owner

  2. 2. I16
    Own booth photographs, The Overengineering Department table, Open Sauce 2026, 19 July 2026 — Photographs of the table: finished clock units, a bare board with lit tubes, enclosure prints, process boards and stencils, the brand banner and the interest-list sign.first-party

    Only a photograph with no people in frame is shown.

  3. 3. I17
    Colorado School of Mines AI-assisted design workshop, session 1.6 “Fallout Clock” materials, June 2026 — Teaching materials that use this clock as the worked example of AI-assisted design, including the choice to keep the CAD manual.first-party

    A generalised teaching sequence, not a record of this clock’s own process; cited for its teaching use and the manual-CAD point.

  4. 4. I18
    NT-4000 project repositories: hardware, firmware, tube-card firmware, desktop twin, firmware server, landing site and browser simulator (private), read October 2026 — Hardware in KiCad (six-layer main board, ZM1000 and IV-6 tube cards); firmware features and the tube-card protocol; the desktop twin (PySide6, May 2026; rebuilt in Rust and TypeScript in June 2026 with log-stream mirroring, session replay, a simulated clock, configuration editor, engineering console, audio manager and signed firmware updater) and its signed firmware feed; the browser UX simulator (February 2026); the landing site.first-party

    Private, first-party repositories: supporting testimony, not independent verification. The twin was designed by Dominic and implemented by the project lead.

  5. 5. I19
    Dominic Gelfuso, “From Technical Operators to Systems Orchestrators”, talk to Colorado School of Mines EDS design students, 20 April 2026 (slide deck) — Slides 21–27 walk through the clock’s Vizcom sequence: first render, modify passes, knob detail, converged variants, acrylic prototype, and the Fusion 360 model beside lit tubes.first-party

    Unpublished deck; the figures are frames from it.

  6. 6. S34
    Open Sauce 2026 — official site; Raspberry Pi event listing — Event dates 17–19 July 2026; the Raspberry Pi listing (events.raspberrypi.com/official/open-sauce-2026) names the San Mateo County Event Center.

    Confirms the event, not the exhibitor; the table rests on the booth photographs (I16).

  7. 7. S35
    The Overengineering Department — NT-4000 site (overengineering.department.wtf): home, team, gallery — The project’s public site: product imagery, six colorways, team credits, interest registration with the statement that there are no plans to make more, and a build gallery (CAD, board layouts, renders, prototype photographs).

    First-party. The team and gallery pages are not indexed by search engines.