↖️ Blog Archive

Messing With My CNC

Bradley Gannon

2026-06-14

TL;DR: I learned how to use Kiri:Moto in CAM mode to run basic jobs on my CNC router. I tried to cut a spoon and a stamp in pine, but failed several times. This was a disappointing outcome, but at least now I have a minimal CNC workflow for non-planar parts.

3018 CNC router with a 3 mm end mill making a rough pass over a small piece of 1×4 pine

Kiri:Moto

It appears that Kiri:Moto is the best open source solution for computer-aided manufacturing (CAM). I admit I didn’t look that hard for alternatives, but this software met my needs, so I didn’t have much reason to keep searching. I used the version served at the link above, but eventually I plan to host a copy on my home network.

CAM is mostly new to me. It’s kind of like a puzzle where the goal is to create a sequence of operations and settings that will cut away everything in the stock material except the desired part. This usually means starting with a big tool to remove most of the material around the part (a “rough” pass), followed by more passes with smaller tools to get more detail. Some parts require multiple “setups” with the stock in different orientations relative to the machine. The most common of these is a “flip” along either of the horizontal axes, which allows milling on both sides of the stock. A problem with having multiple setups for a part is that the action of moving the stock destroys the relative orientation between it and the machine, so it’s necessary to re-index the part to recover the alignment between the machine’s expectations and reality. This is a challenging problem (for me) that I haven’t been able to solve yet in my workflow.

My first goal was to mill a spoon out of some scrap 1×4 pine. I thought this would be a good level of difficulty because it requires a flip operation and exercises my CAM knowledge somewhat. On my first attempt, I made it through the first rough pass but found that the spoon was too small, so I tried again after scaling it up. The second rough pass also worked, so I continued with the contour pass.

Spoon-shaped cutout in a piece of 1×4 pine with distinct contour lines along the spoon’s long axis
After the first rough and contour passes
Spoon-shaped cutout with a big chunk of the head part missing, viewed from above Same as previous image, but viewed from below
After the flip and second rough pass

Then I attempted the flip, and I realized I’d messed up. Kiri:Moto had dutifully placed my part in the center of the stock material, whose dimensions I’d estimated from the nominal size of the lumber scrap. It turned out that the actual stock was a bit narrower, and since I’d zeroed the machine on a corner of the stock, the part was off center. I tried to compensate for this with some arithmetic, but it didn’t work, and the second rough pass tore the spoon apart. I also learned that my goal was probably not reasonable anyway because the spoon handle was too thin to remain rigid when made from pine. Even applying light pressure to the handle, which was partially freed from the surrounding stock, caused it to bend quite a bit. I guess there’s a reason that silverware is typically made from metal, and wooden spoons are generally chunkier and made for stirring stuff in pots instead of eating.

I experimented a little with using registration holes to index across the flip. This means taking a separate bit of material, putting it under the stock, and drilling two holes through the whole stack. The holes need to be symmetrical across the axis of the flip. Then, when making the first setup, put pegs into the holes to register the parts and clamp them down separately. Make all passes on the first setup, then remove the stock but leave the other part in place. Flip, align holes, insert pegs, and re-clamp. The stock is now flipped but has retained its position relative to the machine. I didn’t explore this as much as I want to, but I think it’s the most reasonable approach to the problem in my case. Another option might be to 3D print some kind of fixture, but I’m not sure.

I decided to try something that I thought would be simpler. Even though we’ve lived at our house for almost five years now, we still get a fair amount of mail for people who no longer live here. It’s annoying to have to write “RETURN TO SENDER / NOT AT ADDRESS” on all these bits of mail, so I thought I’d try milling a stamp in pine. I created the design in Inkscape, then converted the text to paths and mirrored them so the stamp would show correctly on the paper. Then I imported the SVG into Blender, extruded it by two millimeters, and added a block underneath to act as a crude handle.

After importing the model into Kiri:Moto, I couldn’t figure out how to get the software to produce a tracing path around the letters in a way that I wanted. I think this is almost certainly a knowledge issue, although I did notice some weird selection behavior with some of the letter edges. I settled for making two perpendicular contour passes, which didn’t achieve the same level of smoothness in the curves, but I figured it was probably fine.

Wooden stamp with unfinished letters. The very bottom of the last row of text has more detail.

As usual, the rough pass went fine, but I quickly realized that I’d made the stamp a few millimeters thinner than the stock, so I spent a lot of extra time milling stock for no reason. Then came the first contour pass, for which I planned to use my smallest end mill (0.8 mm). It started out fine and seemed to be working, but when I came back later to see how it turned out, I found that the end mill had broken off in a knot in the wood. I suspect that this knot was visible from the start, but I just didn’t consider that it would have this effect. My next smallest end mill is 1 mm, which would probably be acceptable but not as good as 0.8 for this task, so I gave up on the stamp for now.

So that’s how I spent a bunch of time and energy turning pine into sawdust, one cubic millimeter at a time. I wish I’d actually made something useful, and I considered just not posting anything this week, but I decided I wanted to follow through on my principle of using projects for learning first and making stuff second. It’s fun to succeed in making something, and it feels bad to fail. Learning doesn’t make me feel as good, so it’s harder for me to assign high value to it. But the fact is that I did learn a lot about the basics of CNC with these failures, and I want to take more pride in that. Maybe in the future I’ll come back around to these projects with more knowledge and better tools and wonder why I ever struggled with them.