1 The project
I want a small, self-contained AI workstation on my desk: a screen, a computer and a webcam that act as one unit. I already had most of the hardware, so the job is to join it with printed parts.
The parts
| Part | What it is | Why this one |
|---|---|---|
| Screen | JEEJIA 15.6" portable monitor, 1920 × 1080 IPS, USB-C or mini HDMI, 5 V 3 A | Thin, light and powered from one cable. It has VESA 75 inserts on the back |
| Computer | Beelink Mini S12 Pro, Intel N100, 16 GB RAM, 500 GB SSD, 115 × 102 × 39 mm, 280 g | A spare unit from my home lab. Small, quiet and low power |
| Webcam | Not chosen yet | Later |
| Printer | Bambu Lab A1, 0.4 mm nozzle, Bambu PLA Basic, textured PEI plate | What I have |
The constraints
Every printed part has to print on the A1. That sets hard limits before any design starts:
- Build volume 256 × 256 × 256 mm. Anything bigger is split.
- Bed up to 100 °C, hot end up to 300 °C.
- PLA, PETG, TPU and PVA only. The A1 is an open-frame printer, so ABS, ASA, PC and PA are out.
PLA is the default material. It is stiff and easy to print, but it creeps under a constant load and softens near 60 °C. Both facts come back later.
The method
This is also a test of AI-assisted mechanical design. I drive the work in plain language. Claude Code builds the parts in FreeCAD through an MCP server, checks them with scripts, slices them and sends them to the printer. I measure the real parts, make the decisions and say what is wrong.
The rules I set for the repo:
- Every part is built by a
build.pyand verified by acheck.py, so the repo holds exactly what ran. - Every model is parametric: a
Paramsspreadsheet drives the features, so a measured correction changes one value. - Print a cheap gauge before any real part.
- Record every measurement, decision and lesson as it happens.
The next two posts set up the toolchain: 1.1 FreeCAD over MCP and 1.2 Printing over the LAN.