{"$schema":"nativecad-dfm-pack/1","id":"maker-enclosures","title":"Maker enclosures — Raspberry Pi, Arduino, ESP32 cases and project boxes","sector":"maker-enclosures","version":"2026-09-04","summary":"Board outlines and mounting holes for the SBC/dev-board families electronics.json doesn't cover (Pi Zero, Nano, NodeMCU, Jetson Nano, CM4, HATs), plus maker-specific fit, vent, lid, fan-grill, DIN-rail and material choices for a 3D-printed or extruded project box.","aliases":["raspberry pi case","arduino case","arduino uno","esp32 case","pico","raspberry pi pico","dev board enclosure","hat","din rail enclosure","sbc case","pcb case","vent slots","project box enclosure","3d printed project box"],"crossSector":false,"size":"core","sources":[{"id":"rpi-zero-2w-mech","title":"Raspberry Pi Zero 2 W Mechanical Drawing","url":"https://datasheets.raspberrypi.com/rpizero/raspberry-pi-zero-2-w-mechanical-drawing.pdf","accessed":"2026-09-04"},{"id":"rpi-4-mech","title":"Raspberry Pi 4 Model B Mechanical Drawing","url":"https://datasheets.raspberrypi.com/rpi4/raspberry-pi-4-mechanical-drawing.pdf","accessed":"2026-09-04"},{"id":"arduino-nano-store","title":"Arduino Nano Product Page (docs.arduino.cc)","url":"https://docs.arduino.cc/hardware/nano","accessed":"2026-09-04"},{"id":"nodemcu-devkit-repo","title":"NodeMCU Devkit Hardware Repository (board outline)","url":"https://github.com/nodemcu/nodemcu-devkit-v1.0","accessed":"2026-09-04"},{"id":"nvidia-jetson-nano","title":"NVIDIA Jetson Nano Module Product Page (mechanical spec)","url":"https://www.nvidia.com/en-us/autonomous-machines/embedded-systems/jetson-nano/product-development/","accessed":"2026-09-04"},{"id":"rpi-cm4-datasheet","title":"Raspberry Pi Compute Module 4 Datasheet","url":"https://datasheets.raspberrypi.com/cm4/cm4-datasheet.pdf","accessed":"2026-09-04"},{"id":"rpi-hats-spec","title":"Raspberry Pi HATs Specification (raspberrypi/hats, mechanical requirements)","url":"https://github.com/raspberrypi/hats/blob/master/README.md","accessed":"2026-09-04"},{"id":"computer-fan-sizes","title":"Standard axial cooling-fan frame sizes and mounting-hole spacing","url":"https://noctua.at/en/products/fan","accessed":"2026-09-04"},{"id":"hubs-3dp-tolerance","title":"Hubs FDM 3D Printing Design and Tolerance Guide","url":"https://www.hubs.com/knowledge-base/fdm-3d-printing-tolerances/","accessed":"2026-09-04"},{"id":"rpi-thermal-docs","title":"Raspberry Pi Documentation — thermals and throttling","url":"https://www.raspberrypi.com/documentation/computers/raspberry-pi.html","accessed":"2026-09-04"},{"id":"en-60715","title":"EN 60715 Standardized mounting on rails (TH35 DIN rail)","url":"https://www.din.de/en","accessed":"2026-09-04"},{"id":"ipc-2221","title":"IPC-2221 Generic Standard on Printed Board Design","url":"https://www.ipc.org/toc/IPC-2221.pdf","accessed":"2026-09-04"}],"entries":[{"id":"pi-zero-mounting","kind":"dimension","tier":1,"title":"Raspberry Pi Zero / Zero 2 W board outline and mounting holes","summary":"Pi Zero and Zero 2 W share a 65 x 30 mm outline with four ~2.75 mm mounting holes on a 58 x 23 mm rectangle centred on the board — the Zero 2 W reuses the original Zero's case footprint and hole pattern.","applies":["raspberry pi zero","raspberry pi zero 2 w","pi zero","sbc"],"value":{"table":[{"param":"board","x":65,"y":30},{"param":"holes","x":58,"y":23},{"param":"hole-diameter","value":2.75}],"unit":"mm"},"basis":"Official Raspberry Pi Zero 2 W mechanical drawing","sources":["rpi-zero-2w-mech"],"tags":["raspberry-pi","pi-zero","mounting","pattern"]},{"id":"arduino-nano-outline","kind":"dimension","tier":1,"title":"Arduino Nano board outline (no standard mounting holes)","summary":"Arduino Nano is 45 x 18 mm with no standardised mounting-hole pattern across revisions; design the case around header-pin friction, a card-edge socket, or adhesive pads rather than a screwed-down board.","applies":["arduino nano"],"value":{"table":[{"param":"board","x":45,"y":18}],"unit":"mm"},"basis":"Arduino Nano official form factor; hole placement (where present) is not standardised across vendor clones","sources":["arduino-nano-store"],"tags":["arduino","nano","mounting"]},{"id":"nodemcu-devkit-outline","kind":"dimension","tier":1,"title":"NodeMCU / ESP8266-ESP32 devkit board outline","summary":"A NodeMCU-style ESP8266 or ESP32 devkit board runs about 48-58 mm long by 26-31 mm wide across dual 0.1 in pin-header rows, varying by vendor — confirm the exact board's own drawing before fixing a case width.","applies":["nodemcu","esp8266","esp32 devkit","esp32 case"],"value":{"table":[{"param":"length","min":48,"max":58},{"param":"width","min":26,"max":31}],"unit":"mm"},"basis":"NodeMCU/Amica devkit reference board layout; vendor clones vary the same way the ESP32 DevKitC does","sources":["nodemcu-devkit-repo"],"see":["electronics/esp32-devkit-width"],"tags":["esp8266","esp32","nodemcu","devkit"]},{"id":"jetson-nano-module-envelope","kind":"dimension","tier":1,"title":"Jetson Nano compute module envelope","summary":"The Jetson Nano production module is a 69.6 x 45 mm SO-DIMM-style board on a 260-pin edge connector; the Developer Kit's carrier board is closer to 100 x 80 mm — case to the carrier, not the bare module, unless building a custom carrier.","applies":["jetson nano","jetson nano developer kit"],"value":{"table":[{"param":"module","x":69.6,"y":45}],"unit":"mm"},"basis":"NVIDIA Jetson Nano product page mechanical specification","sources":["nvidia-jetson-nano"],"tags":["jetson","nano","sbc","module"]},{"id":"compute-module-4-envelope","kind":"dimension","tier":1,"title":"Raspberry Pi Compute Module 4 (CM4) envelope","summary":"CM4 is a 55 x 40 mm SO-DIMM-form module with no mounting holes of its own — it plugs into a carrier's edge connector; the official CM4 IO Board carrier is 105 x 70 mm with four corner mounting holes to case around instead.","applies":["compute module 4","cm4","compute module"],"value":{"table":[{"param":"module","x":55,"y":40},{"param":"io-board-carrier","x":105,"y":70}],"unit":"mm"},"basis":"Raspberry Pi Compute Module 4 datasheet","sources":["rpi-cm4-datasheet"],"tags":["compute-module","cm4","sbc"]},{"id":"raspberry-pi-hat-spec","kind":"dimension","tier":1,"title":"Raspberry Pi HAT board outline and stacking standoff","summary":"A HAT board outline is 65 x 56.5 mm (the Pi footprint plus a little extra length) and must be spaced at least 8 mm off the Pi by its standoffs/header; most HATs use an 11 mm standoff for solder-side clearance on both boards.","applies":["hat","raspberry pi hat","uhat"],"value":{"table":[{"param":"board","x":65,"y":56.5},{"param":"standoff-min","value":8},{"param":"standoff-typical","value":11}],"unit":"mm"},"basis":"Raspberry Pi HATs specification, mechanical requirement 5 (GPIO connector spacing)","sources":["rpi-hats-spec"],"tags":["hat","standoff","stacking"]},{"id":"fan-grill-40mm-hole-pattern","kind":"dimension","tier":1,"title":"40 mm cooling-fan mounting-hole pattern","summary":"A standard 40 x 40 x 10 mm cooling fan has four mounting holes on a 32 mm square pitch, sized for an M3 or 4-40 screw (~3.2-4.3 mm clearance hole) — the pattern a fan-grill plate or Pi enclosure fan boss should match.","applies":["fan","40mm fan","fan grill","vent slots"],"value":{"table":[{"param":"frame","value":40},{"param":"hole-pitch","value":32}],"unit":"mm"},"basis":"Industry-standard 40mm axial fan frame, consistent across vendors","sources":["computer-fan-sizes"],"tags":["fan","vent","grill","mounting"]},{"id":"fan-grill-30mm-hole-pattern","kind":"dimension","tier":1,"title":"30 mm cooling-fan mounting-hole pattern","summary":"A 30 x 30 x 7-10 mm cooling fan (common on Pi 4/5 top-hat coolers) has four mounting holes on a 24 mm square pitch, sized for an M3 screw — smaller than the 40 mm fan's 32 mm pitch, don't mix the two up in a fan boss.","applies":["fan","30mm fan","raspberry pi fan"],"value":{"table":[{"param":"frame","value":30},{"param":"hole-pitch","value":24}],"unit":"mm"},"basis":"Industry-standard 30mm axial fan frame, common on SBC cooling HATs","sources":["computer-fan-sizes"],"tags":["fan","vent","mounting"]},{"id":"maker-print-fit-clearance","kind":"tolerance","tier":1,"title":"Print clearance for a maker enclosure lid/boss fit","summary":"A press-fit or sliding joint on an FDM-printed maker case (lid rim into base, boss into a socket) wants 0.2-0.3 mm clearance per side on an unsanded, well-tuned printer; 0.3 mm is the safe default for a first print.","applies":["3d printed","fit test","lid","boss"],"value":{"min":0.2,"max":0.3,"typical":0.3,"unit":"mm"},"basis":"FDM dimensional-accuracy guidance for mating printed parts","sources":["hubs-3dp-tolerance"],"tags":["clearance","fit","fdm","tolerance"]},{"id":"vent-slot-width-printable","kind":"rule","tier":1,"title":"Minimum printable width for an FDM vent slot","summary":"A ventilation slot cut through an FDM wall should be at least 2 mm wide so the top perimeter bridges cleanly instead of sagging or fusing shut — narrower than the IP2X finger-safe 3 mm maximum, so 2-3 mm satisfies both at once.","applies":["vent slots","fdm","3d printed project box"],"value":{"min":2,"unit":"mm"},"basis":"Bridging/overhang limit for a short unsupported slot span on a common 0.4mm-nozzle FDM print","sources":["hubs-3dp-tolerance"],"see":["electronics/vent-slot-ip2x"],"tags":["vent","slot","fdm","printable"]},{"id":"maker-enclosure-default-wall","kind":"rule","tier":1,"title":"Default wall thickness for a first maker enclosure","summary":"Start a Pi/Arduino/ESP32 case at 2-2.5 mm wall if printing (about 5-6 perimeters at 0.4 mm) or 1.5-2 mm if injection moulding; check the electronics pack for the full process min/max before pushing thinner.","applies":["enclosure","project box enclosure","dev board enclosure"],"value":{"min":1.5,"max":2.5,"typical":2,"unit":"mm"},"basis":"Common maker-community starting wall before iterating against a specific printer or process","sources":["hubs-3dp-tolerance"],"see":["electronics/enclosure-wall-thickness-fdm","electronics/enclosure-wall-thickness-im"],"tags":["wall","enclosure","default"]},{"id":"port-cutout-height-rule","kind":"rule","tier":1,"title":"Placing a port cutout's height on an enclosure wall","summary":"A port cutout's Z-centre on the case wall = standoff height (board top above the floor) + half the connector's body height, e.g. a Pi4 on a 5 mm standoff with a 3.3 mm-tall USB-C body centres that cutout about 6.65 mm above the floor.","applies":["usb-c","hdmi","usb-a","raspberry pi case"],"value":{"typical":6.65,"unit":"mm","note":"worked example: 5mm standoff + 3.3mm USB-C body / 2"},"basis":"The connector body sits on top of the board, which itself sits on top of the standoff","sources":["rpi-4-mech","ipc-2221"],"see":["electronics/pcb-standoff-height","electronics/usb-c-cutout"],"tags":["port","cutout","height","standoff"]},{"id":"sbc-heat-throttle-clearance","kind":"rule","tier":1,"title":"Vent or fan a case around the Pi's thermal throttle points","summary":"Raspberry Pi 4/5 soft-throttles near 80 C and hard-throttles at 85 C; a sealed case with no venting can raise idle-to-load temperature 10-15 C over an open board, so give a sealed printed case at least 150 mm2 of vent-slot area or a 30/40 mm fan mount over the SoC.","applies":["raspberry pi case","sbc case","vent slots"],"value":{"table":[{"param":"soft-throttle","value":80},{"param":"hard-throttle","value":85}],"unit":"C"},"basis":"Raspberry Pi OS default thermal-governor thresholds","sources":["rpi-thermal-docs"],"see":["electronics/fin-spacing-natural-convection"],"tags":["thermal","throttle","vent","raspberry-pi"]},{"id":"din-rail-enclosure-depth-clearance","kind":"rule","tier":1,"title":"Rear clearance a DIN-rail maker enclosure needs behind its wall","summary":"A DIN-rail-mounted enclosure needs at least 20 mm clear behind its mounting wall — the TH35 rail's 15 mm-deep profile plus room for a clip's ~7.5 mm flex channel to seat — or the case body fouls the rail before the clip locks.","applies":["din rail enclosure"],"value":{"min":20,"unit":"mm"},"basis":"TH35 rail depth plus a standard plastic clip's channel depth","sources":["en-60715"],"see":["electronics/din-rail-profile","electronics/din-rail-clip-dimensions"],"tags":["din-rail","clearance","enclosure"]},{"id":"snap-lid-maker","kind":"feature","tier":1,"title":"Distributed snap bumps for a maker enclosure lid","summary":"A maker case lid that should close by hand without tooling uses 4-8 shallow snap bumps (0.5-0.8 mm overhang, 15-25 mm apart) round the rim rather than one or two deep cantilever hooks — more, lower-force catches close evenly and survive more cycles.","applies":["snap fit","lid","project box enclosure"],"value":{"min":0.5,"max":0.8,"unit":"mm"},"basis":"Distributing catch force keeps strain per bump low on PLA/PETG, which is more brittle than ABS/PC","sources":["hubs-3dp-tolerance"],"see":["electronics/snap-fit-cantilever-lid"],"tags":["snap-fit","lid","maker"]}]}