3D printable enclosure generator

An enclosure generator that starts from your board, not from a box

Most enclosure generators give you a rectangle with sliders. SpeakCAD starts from the board: its outline, its mounting holes, where the USB, the barrel jack and the headers come out, and how tall the tallest part is. The AI builds the case, the lid, the screw bosses, the cutouts and the vents to those numbers, you check the render, and you download an STL, a 3MF or G-code sliced for your printer. On a phone or a computer, nothing to install.

Free, no card: the live demo (3 AI edits) and 650+ ready-made models. Your own part: 2 credits per AI request, 50 credits for $5 once.

How it works

From the board's numbers to a case that closes

An enclosure is only as good as the measurements behind it. Give the board, the ports and the lid; anything you leave out is chosen from FDM design rules and reported back.
1

Describe the board and what comes out of it

Name the board (ESP32 DevKitC, Raspberry Pi 5, Arduino Uno, Wemos D1 mini) or give its outline and hole pattern, then each port: which side, how far from a corner, how big. Add the tallest component and how the lid closes.
2

Check the render

The first render usually appears within a minute or two: a new part gets deeper reasoning through the geometry, and small edits land in seconds. Turn the case, tap a face to read its size, and check that the bosses line up with the holes and the cutouts with the ports.
3

Move a cutout, change a wall

“Move the USB cutout 3 mm to the left”, “add a DIN rail clip on the back”: one request each (2 credits), and the rest of the case stays as it was. Typing a new number in the dimensions panel is free.
4

Download the shell and the lid

A watertight STL or 3MF in millimetres (10 credits), or G-code sliced with the official OrcaSlicer profile of one of 380+ printers. Ask for the shell and lid side by side and they come in the same file.

What one enclosure costs

StepCost
Live demo: 3 AI edits of a real part, no accountFree
Describing the enclosure (one AI request)2 credits
Each change by chat2 credits
Typing a new number in the dimensions panel, undoFree
STL or 3MF download10 credits; small fixes after it re-download free
G-code sliced for your printer+5 credits per slice without Pro or Unlimited
Starter credits$5 once = 50 credits, about 3 parts with a couple of edits each; no subscription
Pro$14.99 a month: 200 credits a month, sliced G-code included
Unlimited$39.99 a month: unlimited requests and downloads

Enclosure descriptions that render right the first time

Board outline, holes, ports, height, lid. Each opens in the editor with the text already typed; measure your own board revision before printing.

“A case for an ESP32 DevKitC V4 (55 x 28 x 1.6 mm, no mounting holes): edge rails with 0.4 mm clearance, 18 mm internal height, 1.8 mm walls, a 12 x 7 mm micro USB cutout 3 mm above the floor on one short side, slot vents on both long sides, snap-fit lid.”

Open this prompt in the editor

“A Raspberry Pi 5 case: 85 x 56 mm board with 0.5 mm clearance, four M2.5 standoffs 3 mm tall on the 58 x 49 mm hole pattern 3.5 mm from the edges, 24 mm internal height, a 60 x 40 mm vent grille in the lid above the cooler, cutouts for USB-C, both micro HDMI and the USB and Ethernet end, two keyholes on the back for wall mounting.”

Open this prompt in the editor

“A DIN rail enclosure for a 70 x 45 mm relay board with 3.2 mm holes 4 mm from each corner: M3 screw bosses 5 mm tall, 25 mm internal height, 2 mm walls, a clip for a 35 mm DIN rail on the back, a 50 x 10 mm slot for the screw terminals on one long side, lid on four M3 screws.”

Open this prompt in the editor

“A wall case for a Wemos D1 mini (34.2 x 25.6 mm) and a DHT22 sensor: 0.5 mm clearance around the board, 3 mm standoffs, the DHT22 in its own vented chamber separated by a 2 mm wall, a micro USB cutout on one short side, two 4 mm screw holes for wall mounting.”

Open this prompt in the editor

What the generator builds

  • The shell and the lid: snap-fit lid with clips, a lid on M2.5 or M3 screws into corner pillars or heat-set inserts, a sliding lid in side grooves, or a friction lid with a clearance lip.
  • Screw bosses and standoffs at your hole coordinates, sized for the screw you name; edge rails or locating pegs for boards without holes.
  • Cutouts for USB-C, micro USB, barrel jacks, headers, SD cards, buttons, LEDs, displays and cable glands, placed from a named corner.
  • Vents: slots, a honeycomb grille or a fan grille over the hot part.
  • Mounts: wall keyholes, screw tabs, a clip for a 35 mm DIN rail, strap slots.
  • Print rules: walls thick enough to be rigid, the shell and lid flat on the bed, overhangs checked.

Board numbers to start from

Measure your own board: clones and new revisions move holes and ports. The enclosures use case has the full table, and each board has its own guide.

BoardPCB (mm)MountingGuide
Raspberry Pi 4 / Pi 585 x 564 x 2.7 mm on 58 x 49 mm, M2.5Pi 4 and Pi 5 case
Raspberry Pi Zero 2 W65 x 304 x 2.75 mm on 58 x 23 mm, M2.5Pi Zero 2 W case
Arduino Uno R3 / R468.6 x 53.44 x 3.2 mm, M3Arduino Uno enclosure
ESP32 DevKitC V455 x 28 x 1.6No holes: edge railsESP32 enclosure
Wemos D1 mini34.2 x 25.62 x 3 mm on one short edgeESP8266 case

A board that is not listed works the same way: give the outline, the holes and the ports. PCB enclosure generator for any board walks through measuring one, and the DIN rail enclosure guide covers cases that clip onto a 35 mm rail.

Lids that fit on your printer

The lid is where printed enclosures usually fail: too tight to close, or loose enough to rattle. SpeakCAD is the only AI 3D editor that calibrates itself to your printer: Fit Check cuts a five-minute test slice from the part that must fit, you report too tight, perfect or too loose, and every model after that is built with the clearance your printer needs. For an enclosure, the test slice is the lid lip or the clip, printed in a few minutes before the whole case.

Already have a spec, a file or a ready-made case?

  • ChatGPT wrote the spec, or OpenSCAD for it: paste it as it is in the box above. See ChatGPT to STL and the AI OpenSCAD generator. With SpeakCAD added to ChatGPT or Claude, the assistant designs the enclosure in the chat itself; coding agents such as Claude Code and Cursor can use the MCP server for the case of the board you are programming.
  • An STL case that is almost right: edit it: add a cutout, a vent or a mount.
  • A common board: the library has ready-made enclosures for the Pi, Arduino, ESP32 and more; they open in a free account and resize in the viewer.

What it costs

Free, without a card: the live demo (3 AI edits of a real part, no account) and the 650+ ready-made library models. Your own enclosure uses credits. Starter credits: 50 credits for $5 once, no subscription. Turning the model around in 3D and changing its numbers in the viewer are free; each AI request (a new part or a chat edit) spends 2 credits, whichever model answers; a download spends 10 credits (+5 for G-code sliced for your printer without Pro or Unlimited); small fixes after a download re-download free.

Questions

For a box of a given size with a lid, a template generator with sliders is enough. For a case built around a real board, with bosses on its holes, cutouts at its ports and a lid that fits, use a tool that works from the board's measurements: SpeakCAD writes the enclosure as a parametric CAD program from your description, so every size is exact and a cutout moves with one sentence or one number. It downloads STL, 3MF or G-code sliced for 380+ printers.

Yes. Name the board and the AI uses its usual outline and hole pattern; give the ports you use, the internal height and the lid style. Clones and new revisions move holes and ports, so check the numbers against your own board before printing.

Yes: a watertight, manifold STL or 3MF in millimetres (10 credits), or G-code sliced for your printer. Ask for the shell and the lid side by side and they come in one file; or ask for one part at a time. G-code sliced for your printer is included in Pro and Unlimited and spends 5 extra credits per slice otherwise.

Yes. Ask for bosses or standoffs at your hole coordinates with the screw size (M2.5, M3, or heat-set inserts), slot or honeycomb vents, a fan grille, wall keyholes, screw tabs or a clip for a 35 mm DIN rail. Each is a set of numbers you can change afterwards.

It is built with FDM clearances (about 0.2 to 0.3 mm for a snug fit, 0.4 to 0.6 mm for a sliding one). Printers differ, so Fit Check prints a thin slice of the lid lip or clip first; you report too tight, perfect or too loose, and your printer's calibration goes into every model after that.

Yes. SpeakCAD runs in Safari on iPhone and iPad and in Chrome on Android: describe the case, watch it render in the same tab, and the STL, 3MF or G-code lands in Files or Downloads.

The first render usually appears within a minute or two: a new part gets deeper reasoning through the geometry, and small edits land in seconds. A typical functional part, with a couple of edits and a dimension check, is a downloaded file in about 10 to 15 minutes.

Describing it is one AI request (2 credits), each change by chat another, and a download 10 credits; typing a number in the dimensions panel spends nothing. A typical enclosure with a couple of changes spends about 16 credits. Starter credits: 50 credits for $5 once, no subscription.

Give it the board. Print the case.

Describe the board, ports and lid, check the render, download the STL, 3MF or G-code.