How to Make a USBtinyISP Programmer With a CNC Milling Machine
This guide shows how to make a CNC milling machine USBtinyISP programmer from a blank FR4 board: copper isolation routing, hole drilling, and hand reflow. It is written for engineers and makers who want a working AVR programmer without ordering a fabricated PCB. After reading, you can judge whether isolation milling suits your layout, what depth and feed to start from, and when the method stops being practical.

Key takeaways
What the CNC Milling Machine USBtinyISP Programmer Build Requires
A USBtinyISP is a small ATtiny2313-based AVR programmer with a USB Type-B connector, a 6-pin ICSP header, and two status LEDs. The reference design is open, so the board is short on nets: USB data pair, ISP lines, a crystal, and a handful of passives. That low net count is what makes it a reasonable candidate for isolation routing on a desktop CNC milling machine USBtinyISP programmer setup.
The first decision is whether to rout the copper or mill a carrier. Isolation routing cuts a 0.2–0.4 mm channel around each trace, leaving the copper you want and removing the rest. A carrier plate only holds a purchased board for edge trimming. If your goal is a working programmer, isolation routing is the shorter path, but it puts every fine-pitch pad inside the cutter diameter limit.
Check three numbers before you start. Minimum trace width and gap on the layout, the smallest pad pitch, and the drill count. If the layout uses 0.254 mm gaps and 0.6 mm pads on 2.54 mm pitch, a 0.4 mm cutter works. If it uses 0.15 mm gaps or 0.5 mm pitch SMD, the same cutter will short pads or snap.
A single-sided layout is the safe version. Put all SMD parts on the top copper and route the few unavoidable crossings as 0.3 mm wire links on the bottom. This removes the flip-and-realign step, which is where most first boards fail.
- 1Good fitSingle-sided layout, 0.254 mm gaps, through-hole or 1.27 mm pitch SMD
- 2Risky0.15 mm gaps, 0.5 mm pitch QFN, dense ground pours under parts
- 3Wrong toolA 3 mm flat cutter cannot resolve 2.54 mm ICSP header pads cleanly
Cutter, Spindle, and Material Choices
Use a two-flute carbide end mill with a 30° or 45° helix. A 0.4 mm cutter is the general-purpose choice for this board: it clears 0.254 mm gaps and survives a 0.15 mm depth of cut. Below 0.3 mm the tool becomes fragile, and any spindle runout over 0.01 mm shows up as a broken tip within a few hundred millimeters of travel.
Spindle speed matters more than feed on FR4. Run 18,000–24,000 rpm and a feed of 200–400 mm/min for isolation passes. FR4 is abrasive, so a slow feed rubs the edge and burns the resin, while a fast feed with a small cutter snaps the flutes. If the cut sounds like sanding, the feed is too low.
For the substrate, use a 1.5 mm or 1.6 mm FR4 copper-clad blank with 35 μm copper. Thicker copper needs a slower feed and a shallower depth. A 100 × 100 mm blank is enough for this board and gives you room for a second attempt on the same piece.
Hold the blank flat. Double-sided tape plus four M3 clamps at the corners is the usual setup. Do not rely on tape alone near the edges. Any lifting of 0.05 mm changes your effective cut depth and leaves copper slivers between traces.
- 1CutterTwo-flute carbide, 0.4 mm, 30–45° helix
- 2Spindle18,000–24,000 rpm, runout under 0.01 mm
- 3Feed200–400 mm/min isolation, 60–120 mm/min drilling
- 4Blank1.6 mm FR4, 35 μm copper, 100 × 100 mm
CAM Settings That Decide Whether the Board Works
Set the isolation pass count to two. One pass at 0.2 mm offset removes most copper, and a second pass at 0.5 mm offset clears the remainder. Cutting everything in a single pass with a large offset loads the cutter and lifts the copper foil instead of shearing it.
Use a 50 percent stepover on clearing passes and keep the tool inside the board outline. Leave a 2 mm border of copper around the edge; it stiffens the blank and gives the clamps something to bite. Remove it in the final profile pass.
Set trace clearance in CAM to match the layout gap, not the cutter diameter. If the layout gap is 0.254 mm and the cutter is 0.4 mm, the tool can only cut a 0.4 mm channel, so the copper pulls back from the trace edge. Enter the true gap and let CAM warn you.
Order the toolpaths: drill first, then isolation, then profile. Drilling into an unrouted board keeps the surface flat and the drill centered. Once the copper is cut away, the drill can wander into a channel and produce an oval hole. Add a 0.3 mm spot drill pass before 1.0 mm holes if the drill wanders.
- 1Isolation passesTwo passes, 0.2 mm and 0.5 mm offsets
- 2Stepover50 percent on clearing, 40 percent on outline
- 3Toolpath orderDrill, isolation, profile
- 4BorderKeep 2 mm copper around the board until the last pass
Step by Step: Cutting and Assembling the Board
Six steps from blank to programmed chip
- 1Level the blankFace the surface with a 6 mm flat cutter at 0.05 mm depth to remove oxide and level the top. Then probe or shim until the surface reads flat within 0.02 mm across 80 mm.
- 2Drill all holesUse 0.8–1.0 mm for component leads, 1.0 mm for the ICSP header, and 3.0 mm for the mounting corners. Spot drill 0.2 mm deep first. Run 60–120 mm/min and peck 0.4 mm per step.
- 3Rout the isolation channelsLoad the 0.4 mm cutter, zero on the copper surface, and set the first pass to 0.15 mm. Check with a loupe. Raise to 0.20 mm only if copper bridges remain. Deeper than 0.30 mm risks lifting the foil.
- 4Cut the outlineRun a 1.0 mm cutter at 0.5 mm depth per pass, four passes for 1.6 mm FR4. Leave two 2 mm tabs so the board does not shift on the last pass. Snap the tabs and file the edges.
- 5Check continuityBefore soldering, buzz every net with a multimeter. Test the 5 V rail, ground, and each ISP line. Clear any bridge with a 0.3 mm scraper and re-check. Fixing shorts now is faster than desoldering a socket.
- 6Solder and programTack the ATtiny2313 and the USB connector first, then the crystal and passives. Reflow with flux and a hot plate at 200–220 °C, or hand-solder at 320 °C with a fine tip. Plug into USB, check for the programmer in the device list, then run the first flash and verify read-back.
Isolation Routing vs Other Routes for This Board
Pick the row that matches your layout and quantity
| Method | Best for | Typical limit | Watch out for |
|---|---|---|---|
| CNC isolation routing | Single-sided, 0.254 mm gaps | 0.4 mm cutter, 0.3 mm trace | Copper slivers between pads |
| CNC profile only | Boards bought from a fab | Flatness of the fixture | Tool crash on clamps |
| Chemical etching | Dense 0.15 mm layouts | Etchant handling | Under-etch and pinholes |
| Fab order | More than 5 units | 3–5 day turnaround | Per-order setup cost |
Common Questions
Can a 0.4 mm cutter handle the 6-pin ICSP header?
Yes, if the pads are on 2.54 mm pitch. A 6-pin header at 2.54 mm pitch needs about 0.6 mm of copper per pad and a 0.4 mm channel between pads. Set the isolation offset to 0.2 mm, run two passes, and inspect with a loupe before drilling.
If the header pads sit closer than 2.0 mm, drop to a 0.3 mm cutter and reduce the depth to 0.10 mm. Expect a slower feed and a higher breakage rate.
How deep should the isolation cut be on 35 μm copper?
Start at 0.15 mm. That is enough to cut through 35 μm copper plus the resin under it, and it leaves the foil bonded. If copper bridges remain after the first pass, add a second pass at the same depth rather than going deeper.
Going past 0.30 mm lifts the copper near the edge of the cut. Once a trace lifts, the board is scrap. Check depth on a test square in the waste border before cutting the real board.
Do I need solder mask for the board to work?
No. Bare copper oxidizes slowly and reflows fine with flux. It is common on one-off boards. A solder mask adds a second alignment step that a small board does not need.
If you plan to use the programmer for years, clean the board after soldering and give it a thin conformal coating. That is cheaper than a misaligned mask.
Why does my board short between pads after routing?
Usually it is burrs, not a CAM error. The cutter pushes copper instead of shearing it, and a thin sliver stays attached to the trace edge. It looks like a clean cut until you buzz it.
Run a second isolation pass at a wider offset, or deburr with a 0.3 mm scraper and a fiberglass pen. Then re-check continuity on every net before soldering.
Can I cut this board on a 3-axis machine?
Yes. The board is single-sided and flat, so 3-axis motion is enough. Level the blank within 0.02 mm and you will not need a probe.
If you add a bottom copper layer, you need a flip fixture with two dowel pins. That is where a 4-axis setup with a rotary table helps, but it is not required for one board.
What if the drill wanders off the pad center?
Drill before routing, and spot drill 0.2 mm deep at 18,000 rpm first. A wandering drill usually means the surface is not flat or the drill is too long for the spindle speed.
Use a stub drill for 1.0 mm holes. Short flute length cuts wander on FR4, and you will keep the hole inside a 0.6 mm pad.
Need the Board Machined Instead?
Send your Gerber or STEP file and we will quote the routed board plus any carrier fixture. DFM feedback within 12 hours, uploads kept confidential.
12-hour quote±0.005 mm tolerance100% inspection