Design a custom 3D-printed housing for your noknok build — right in your browser. Pick your modules, arrange them on a grid, and the configurator generates a single snap-together box, ready to download as an STL and 3D print.
No account, no software to install, and nothing is uploaded — the whole tool runs on your computer, offline once loaded.
You’ll need: a desktop browser (Chrome, Edge, Firefox, or Safari) and access to a 3D printer — your own, a friend’s, or an online printing service. A mouse or trackpad makes placing modules easier.
The configurator lays out your modules on a 10 mm grid (every cell = 10 mm), then builds one box with a front cover and a back cover of the same height. Inside, each module is held by small columns that clamp its circuit board and line its payload (buzzer grille, knob shaft, button, LED window…) up with an opening in the front.
You do it in five quick steps.
In the left panel under Add a module, click each module you want. It drops onto the
grid. The number next to each name (e.g. 20×20) is its size in millimetres. Supported
modules today: buzzer, knob, LED button, USB LEDs, USB LEDs 16x, display, PicoHub, and
PicoHub OLD (the earlier passive Pico carrier).
Both LED modules also come as a +dome version. Its lid has a screw thread: you print a dome (clear/translucent, or the honeycomb one in any colour) and screw it in from the top. The round USB LEDs 16x uses a smaller dome (ø44, on a 50×50 tile) than the square USB LEDs (ø58, on a 70×70 tile). After generating, use ⬇ reference dome lid or ⬇ honeycomb dome lid to download the matching lid.
The noknok PicoHub (80×40) is the tall one: a Raspberry Pi Pico 2 W is always plugged into it, so its housing has to clear the Pico as well as the board. The Pico is shown as a dotted outline on the tile. Because a box has a single uniform height, adding a PicoHub raises the height of every module sharing that box — the tool will tell you when that happens, and you can always give the PicoHub its own box and join the two with a dovetail. Its lid gets a ventilation grille over the whole board.
The PicoHub has two USB-C ports that look the same, so the tile names them: POWER (the power input, bottom edge) and HOST (the USB host port, top edge). Click a power slot on the wall a USB-C arrow points at, and the tool cuts an opening at the port’s height that a USB-C plug fits through from outside. The PicoHub’s Qwiic sockets also sit on top of the board, and a plugged-in Qwiic cable needs about 1 cm in front of the board edge. If your design uses them, add an empty cell there with Reshape box. The Pico’s own micro-USB port gets no opening.
Each mounting post has a small peg with thin ribs. Press a module firmly onto its posts and it stays in place while you wire up the next one. Want the port names on the print too? Use Label the selected module.
Each module shows little markers you should keep an eye on:
| Marker | Meaning |
|---|---|
| ○ open circle | an M2.5 screw hole — a holding column will grow here |
| ▪ dark square | a JST-SH connector (the small I²C cable socket) |
| ▪ blue square | a USB-C connector |
Leave a bit of room next to the connector squares so cables can reach them, and try not to let modules sit right on top of each other.
Select a module, type a label (e.g. “Volume”), pick an edge, and set the size — the text is engraved into the top cover in the tiles next to that edge. Those tiles become part of the box and no module can be placed on them, so leave room for the label when you arrange things.
The noknok logo is embossed on the top cover so your build proudly shows it’s part of the ecosystem. It’s added automatically in a spare tile — switch Click an empty cell to… to ✳ noknok logo to move it to a tile you like, or click it again to remove it. Totally up to you.
The box starts as a rectangle hugging your modules (shaded green). To change its shape, click empty cells to add or remove them — round off a corner, notch out a gap, or bridge two separated modules into one enclosure. ↺ reset to rectangle starts over.
The status bar at the top warns you if a module is poking outside the box — just extend the box (or move the module) until everything is covered.
Your box needs two things on its walls, and the tool won’t let you generate until both are placed. Click directly on a wall of the box to add whichever is selected:
Keep power slots and latches on separate walls so they don’t clash.
Click Generate 3D box. The tool switches to a 3D preview you can spin around (drag to orbit, scroll to zoom). Use the toggle at the top to compare:
Happy with it? Click Download STL (both covers) for the whole box, or grab each cover on its own with top cover / bottom cover — handy for printing one at a time or in two colours. (In the combined file the two covers are separate bodies, so your slicer’s “Split to objects/parts” also splits them.)
Not finished, or want to reuse a layout? Up in the left panel under Design file, click 💾 save to
download your current 2D layout as a small .json file, and 📂 load to open it again later — it
restores everything (modules, box shape, power slots, latches, joins, labels, cable mushrooms) so you can
keep editing. It’s also an easy way to share a design with someone else. (Loading only accepts noknok
design files and quietly ignores anything it doesn’t recognise.)
Want to split a build across two separate enclosures — say a control box next to a lamp — and still run a cable between them? The Join to another box tools add a tool-free dovetail joint and a cable pass-through. You design and print each box on its own, then slide them together.
Like power slots and latches, you add these by clicking a wall:
| Tool | What it adds |
|---|---|
| ◤ Male | a dovetail rail on the outside of the wall |
| ◣ Female | a dovetail groove the rail slides into. It fills the tile just inside that wall, so no module can go there — add an empty cell with Reshape box if none is free |
| ▭ Cable | an opening in the wall for a cable to pass between the two boxes. It always ends 11 mm above the table, so a tall box and a low box get matching openings |
Because you design each box separately, you place the joint — and the two boxes have to match. The 10 mm grid makes this easy: put a male rail on one box, and a female groove at the mirror position on the wall of the other box that will face it. Do the same with a cable opening on each box if you want to route wiring across.
Tip: design both boxes at the same time and count grid cells from a shared corner, so the male on box A lands exactly opposite the female on box B.
Keep the joint tools on different walls from your power slots and latches.
Print both boxes, then lower the second box straight down so its rails slide into the first box’s grooves from the top. The dovetails lock the boxes together side-to-side; to take them apart again, just lift straight up — no tools, nothing to break.
The groove has two thin crush ribs inside. They squeeze the rail as it slides in, so the boxes hold together even if your printer runs slightly over- or undersized. The first push needs a little force. If your pair still prints too tight or too loose, tell us and we’ll fine-tune it.
Built something great, or hit a snag? Tell the noknok team — we want to see it.
📄 License, Safety & Liability · Made with ❤️ in Switzerland.