Semi-auto table router - needs a better name

Inspired by a Uni project called ‘Matchsticks’, this is a small CNC router table, targeted at creating joinery for small woodwork projects.
‘Semi Auto’ is my first aim - the computer accurately sets up the router bit, fence and/or stop block for a part of the process of creating joinery. A human ‘pulls the trigger’ by starting the spindle, and making the cut. The user is directed by the software.

With this functionality, a novice user could be stepped through creating all the joinery to make a project box, for example…
‘You want a box how big?’
‘OK - here’s a cut list - cut these on the table saw/drop saw’
‘Got all the pieces done? Great - let’s start by cutting a dado for the lid…’…

Interface is an Arduino Uno + CNC shield.
Control and UI will be written in python, to run on a laptop or pi.

[](http://Matchsticks project thome)
[](http://hackaday article)

As a proof of concept I grabbed some 3d printer parts and designed some mounts for a detail router I had to hand. Printed in PLA.

Downloaded Grbl 1.1 source for the Arduino IDE. Tested Z axis, z axis homing (microswitch) - all good.

Went to the 'space and created a box to put it in…

The fence (on the right - not fully assembled) will be mounted on drawer slides (left and right at top of box). The stepper motor and lead screw on top of the box will sit behind the fence face, which has a slot along it’s length. This stepper will control the left stop-block. The router bit is offset to the right to give the stop-block maximum travel.

That gives Z (tool height) and X (stop block distance) axis.

I need to think how to implement Y axis… For cutting through board ends (for finger joints and dovetails), I envision a manual movement. For dado/rabbit cutting (where you need to fix the distance between the fence and the bit) I could use a driven stop or directly drive the fence… or both.


I now have a fence and stop block most-of-the-way there - 'photos to follow.

I’ve also been working on some software. This is written in python (of course) with the ‘bottle’ web framework, which seems very easy.

So far I have direct control of the three axis (with live updates of position) and guided workflows for some common joints.
Each type of construction (Rabbet, tongue’n’groove, groove/dado, finger joints) has a unique ‘planner’ that returns a set of steps required, complete with instructions.

Main page

Manual Control

Let’s make a rabbet!

More next time!

1 Like