Two designs, neither built. The original four-Spark rack remains below. The new direction is a repeatable two-Spark module with its power supplies underneath, shown here as an eight-Spark tower. This is a packaging study, not a fabrication release or a tested cluster.

New concept: two-Spark modules, eight-Spark tower

The module is the useful unit: two front-facing Sparks above a shared underfloor PSU compartment, an open frame, and rear tie points for cable management. The cassette arrangement keeps the bricks inside the module footprint rather than hanging them outside the frame. Removal, guides, and retention still need mechanical detailing.

OpenSCAD isometric concept of eight gold DGX Sparks in four paired tiers, with a central silver switch envelope, dark full-depth frame and power accessories at the base.
Full-stack isometric: four two-Spark tiers, with two tiers above and two below the central switch bay. Equipment fronts are approximately aligned; the deeper carrier leaves room behind the short Spark chassis. Switch and power accessories are provisional envelopes, not a verified eight-node bill of materials.

The two-Spark building block

Close isometric view of two gold DGX Sparks on a dark slotted module with a PSU cassette below, orange handle and rear cable tie loops.
The compact module: two Sparks, their PSU compartment below, and corner frame members. This view shows the short module; the full tower adds deeper carrier rails to accommodate the switch.
Rear isometric of the two-Spark module showing simplified rear port faces, PSU envelopes below and orange cable tie loops.
Rear isometric: accessible port faces and tie points. Port shapes are illustrative; cables, connector bend radii and service loops are not yet modeled.

What changes from the original

Original four-Spark designNew modular study
Two paired Spark rows; a separate shared PSU trayA PSU compartment underneath each paired row
Switch below the compute rowsSwitch between upper and lower row groups, intended to reduce vertical cable runs
Compact extrusion rack around a CRS504Repeatable module with a deeper full-tower carrier; switch selection and networking remain open
Four nodes in the illustrationEight nodes in the illustration, not a statement of installed hardware

What the CAD does—and does not—prove

The images are orthographic isometric renders of solid OpenSCAD geometry, not generated concept art. Spark bodies use the published 150 × 150 × 50.5 mm envelope. The 40 mm gap is a conservative layout choice; it should not be read as an explicit NVIDIA requirement for adjacent devices. PSU sizes are estimates, and switch, smart-plug and power-strip geometry must be checked against selected hardware.

The original CRS504 specification below does not describe the deeper switch shown above. The new switch is a provisional envelope. An eight-node network needs its own verified port count, topology, optics or DAC choices and cable routing. The drawing does not establish those.

Before printing or buying frame parts: measure the actual accessories; design device retainers, cassette guides and stack joints; verify print orientation, bed fit, load paths and tip resistance; check airflow and heat soak; and size the complete AC distribution for simultaneous load. The base power accessories are illustrative, not an electrical design. A clean render is not proof of fit, cooling or structural safety.

Download the editable OpenSCAD concept (default: paired underfloor module; set assembly=true for the tower). The source also retains the overhead-PSU and independent-pod alternatives; the underfloor arrangement is the direction shown here.


Original four-Spark design — August 22, 2026

Preserved original study. The text, specifications, renders and next steps below describe the August 22 design, not current ownership or build status. Its absolute fit and cooling statements remain unvalidated design assumptions. The newer concept above does not replace this design.

Design outline — nothing is built yet. We run two DGX Sparks today and want a home for four, plus the switch that clusters them, plus the power monitoring we already use, in something that sits on a desk instead of hiding in a closet. This post is the design study: NVIDIA's actual clearance specs, a dimensionally-true CAD model, and the decisions we've locked so far.

Dimensionally accurate CAD three-quarter view of the inference box: four gold DGX Sparks in a 2x2 grid on vented shelves with corner retainers, PSU tray, MikroTik switch, and smart plugs in a power strip.
The design, true to the millimeter — every box is its published dimension. Four Sparks in a 2x2 grid on slotted shelves, corner retainers at each chassis, fronts out, everything else behind and below.

The constraints

Everything follows from a handful of published numbers. The DGX Spark Quick Start Guide specifies clear space around each unit: 10 cm front, 2 cm per side, 40 cm rear. Front is intake, rear is exhaust — all I/O (power, QSFP, RJ45, USB-C, HDMI) exits the rear; the front face is nothing but the sparkly intake mesh. Two adjacent Sparks therefore need 4 cm between them — each unit's 2 cm zone is its own, not shared with a neighbor's exhaust wall.

ComponentDimensions (W×D×H)Notes
DGX Spark ×4150 × 150 × 50.5 mm, 1.2 kgFront intake, rear exhaust, rear I/O only
240W PSU brick ×4~175 × 75 × 30 mmExternal; runs warm; keep out of intake path
MikroTik CRS504-4XQ-IN320 × 185 × 44 mm4× QSFP28 100G, 41W max — the proven 4-node Spark cluster switch
ThirdReality Smart Plug Gen3 ×4~38 × 62 × 60 mm standingPer-node power telemetry — same plugs from MHR 001
5-outlet power strip~300 × 60 × 40 mm, outlets up4 monitored nodes + 1 spare outlet
Corner retainers ×1625 × 25 × 12 mm, printedL-shaped tabs at each Spark corner — 1.2 kg units + stiff DACs need them
380 mm
frame width
260 mm
frame depth
~480 mm
frame height
~1,000 W
worst-case draw
40 mm
Spark-to-Spark gap

The layout

Open-frame 2020 aluminum extrusion, five levels, bottom to top:

  1. Power level — a 5-outlet strip lying flat, outlets up, with four Gen3 smart plugs standing in it. LEDs and buttons face forward. The fifth outlet feeds the switch (or the fan). Per-node watts flow into the same Home Assistant → Prometheus → Grafana path we built for MHR 001.
  2. Switch level — the CRS504. Its 320 mm width slots neatly into the 340 mm bay.
  3. PSU tray — all four 240W bricks side-by-side, narrow face forward, cords exiting rear. Their heat never enters a Spark intake.
  4. Spark rows 1 and 2 — 2×2 grid, 40 mm side gaps, 25 mm vertical gaps, clean gold fronts facing the operator. Each Spark sits inside four printed L-shaped corner retainers (12 mm tall, 0.8 mm clearance) so a tug on a stiff DAC can't walk a 1.2 kg unit off its shelf.
Dimensionally accurate CAD front view: 2x2 Spark grid on vented shelves, PSU tray, switch, and smart plugs in a power strip below.
CAD front view. Slotted shelf plates let warm air rise instead of pooling under each level; four smart plugs stand in the power strip at the bottom.
CAD rear view showing Spark rear port strips, DAC cable drops to the switch, PSU cord stubs, and QSFP cages.
Rear view — the working side. All I/O exits here: four DAC drops to the switch, power cords to the bricks, nothing on the fronts.

Airflow

The Sparks pull front-to-rear. The frame is open on both faces, so NVIDIA's 10 cm front / 40 cm rear clearances are satisfied by rack placement, not rack design — the one siting rule is don't back it against a wall closer than 40 cm. The shelf plates are slotted (12 mm slots on a 24 mm pitch, running front-to-back) so warm air rises through the stack instead of pooling under each level — the PSU bricks in particular benefit from a vented plate above and below.

We considered and dropped a front-mounted 200 mm fan. Four Sparks at 140W TDP each are self-cooled and within spec in any reasonable room; passive convection through the vented shelves does the rest. Fewer moving parts, no fan controller to build, nothing to hum.

What's decided, what's open

DecidedOpen
2×2 Spark grid, fronts out, all cables rearExtrusion vs. 3D-printed frame members
40 mm inter-Spark gap (2 cm per unit, per spec)Retainer print material (PETG likely) and exact clearances
PSU bricks on their own tray, out of the intake pathSlot pattern tuning if shelves are printed vs. cut
CRS504 + four QSFP28 DACs at 100GExact power strip (need ≥45 mm outlet pitch for the Gen3s)
Vented shelf plates; corner retainers on both Spark rowsExtrusion cut list and hardware BOM
Per-node Gen3 smart plug monitoringNo fan — decided against (see airflow note)

Next steps

  • Print the corner retainers and PSU tray on the Bambu H2C (arriving this week); retainers are a perfect first functional print — small, tolerance-driven, PETG.
  • Extrusion cut list and hardware BOM.
  • Two more Sparks.

The parametric OpenSCAD model lives in the lab repo — every dimension in this post is a variable, and the renders above are the model, not an artist's impression.