Introduction: How to Build the Sienci Mill One Desktop CNC

About: We aim to innovate on small-scale automated manufacturing, and this journey has begun with our first machine: the Sienci Mill One. This machine is simple in its design yet complex in its abilities. Able to mak…


A desktop CNC machine is the perfect tool to make small to medium sized parts and projects from a nearly infinite number of materials. The Sienci Mill One is specifically designed to be simple, easy to use, require a minimal number of components, and provide the highest degree of performance and rigidity compared to other machines in its price range and class. While the Mill One will benefit by being made using the industrial manufacturing methods used in the construction of ready to buy kits, the Mill One can be built with tools which are accessible for most folks.

Most of the components used in the Mill One can be sourced online or at your nearest hardware store. Parts like couplers, leadscrews, stepper motors, and drivers can all be found as 3D printer components, which in the past few years have increased in popularity and gone down in price. You may even have some of these parts on hand! Fasteners, aluminum or steel stock are based off standardized sizes and can be found at a hardware store. If you are having difficulty finding the right parts and materials, this instructable will offer some suggestions on how you can find suitable substitutes.

The design of the Mill One is openly available to everyone. You can find the latest designs here on Onshape, and older design files can be found on Github. See examples of mods on our Facebook user group. You can modify the design to fit the materials you have on hand, or modify it to fit your needs. Some files may have become out of date, and some designs may have changed over time, so if you find any issues, feel free to let us know.

Tools Required

Some of the holes in the Mill One rely on being drilled accurately. A milling machine or CNC is recommended for this task, and you may be able to find one at your local makerspace, but you should be able to build this machine with a drill, a ruler, and a careful and steady hand.

A saw suitable for cutting 1/4" aluminum or steel is needed. A hacksaw will work fine.

A router for making cutting some of the holes in the frame. You should be getting a router in any case to act as the spindle on the Mill One. Here is a short guide on which routers to use with the Mill One.

A 3D printer is needed to make some of the parts as well. This machine uses about 500 grams of filament, and takes between 18 to 20 hours to print (depending on your settings).

A set of metric allen keys are needed for assembly.

Bill of Materials

Parts and full kits can be found on our shop at:

Bill of Materials can be found here:

Please check the BOM for the latest parts list.

  • 2pcs 2" x 2" x 1/4" Angle Aluminum Rail (400mm)
  • 1pcs 2" x 2" x 1/4" Angle Aluminum Rail (200mm)
  • 1pcs Acrylic Shield
  • 1pcs X/Z Gantry
  • 1pcs Y Gantry
  • 3pcs NEMA 17
  • 12pcs Delrin V Wheels
  • 6pcs M5 Eccentric Nuts
  • 3pcs 5mm to 8mm solid coupler
  • 1pcs 24V Power Supply (Brick)
  • 1pcs AC Power Cable
  • 3pcs ACME Leadscrew Nuts
  • 2pcs 400mm ACME Lead Screw
  • 1pcs 200mm ACME Lead Screw
  • 3pcs Stepper driver chips (A4988 or DRV8825)
  • 1pcs CNC V3 Shield
  • 1pcs Arduino Uno
  • 1pcs USB Cable
  • 1pcs DC Power Plug
  • 1pcs DC Power Cable
  • 6pcs Header Jumpers
  • 26pcs M8 - 25mm Socket Head
  • 26pcs M8 Hex Nuts
  • 12pcs M8 - 15mm Socket Head
  • 16pcs M5 - 25mm Socket Head
  • 12pcs M5 Washer
  • 10pcs M5 Hex Nuts
  • 12pcs M3 - 8mm Socket Head
  • 6pcs M3 - 15mm Socket Head
  • 6pcs M3 Hex Nuts
  • 3pcs ACME nut holder
  • 5pcs Angle mount
  • 1pcs Electronics case
  • 1pcs Router mount
  • 4pcs Frame brackets

Step 1: Before You Begin...

About Us

Sienci Labs is a company founded with the vision of bringing simple, low cost automated manufacturing tools and rapid prototyping technologies to everyone. The Mill One was developed out our design and development of different low cost linear motion systems in our second year of mechanical engineering at the University of Waterloo. Find out more at

If you want to support us or prefer to have us make a Mill One for you, you can order a full Mill One kit on our website at for $399USD.

Like us on Facebook

Follow us on Twitter


Although we try our best to provide the most up to date and accurate information as possible, we do not take responsibility for your project and your safety. Specifications on our website and other documentation may not be reflected in your own build and we cannot guarantee the performance of your machine.

Some quick notes:

  • Drawings in this instructable are in mm unless otherwise stated.
  • Dimensions are made to fit our tolerances of the manufacturing processes we use. You may need to adjust your own dimensions and tolerances to fit.
  • Please check the latest designs in case there are new updates or improvements. Feel free to modify your design to fit parts that you have available.
  • It may help to look at assembly instructions for the Mill One before constructing your own. It will give you a sense of what each part is used for and what you should make first. Check out our resources page at

Step 2: Machine Specifications

Here are some specifications for the Mill One, as posted on our website.

Your specifications may vary depending on your configuration.

Model: Mill One

Working Area: approximately 235mm x 185mm x 100mm (9 ¼” x 7 ¼” x 4″)

Machine Volume: approximately 430mm x 430mm x 300mm (17” x 17” x 11 ⅞”)

Mechanical resolution: ±0.1mm

Max Travel Speed: 1200mm/min at ⅛ microstepping (arbitrary cap)

Commands to Controller: G-code

Driver system: CNC V3.0 HCARDU0086 Arduino Shield on Arduino Uno with Pololu A4988 stepper motor drivers and GRBL firmware

Software Compatibility: Universal GCode Sender, Kiri:Moto, Fusion 360 (with Universal GCode Sender plugin), and any other g-code sending software (some 3D printer senders work)

Interface: USBPower supply: External 120V/220V, 50/60Hz AC to 24VDC 5A

Power consumption: 110W (max)

Run Speed: Recommended speeds are dependent on cutter choice and material hardness. Listed are some of the typical feed rates and depths of cut we use for our machine with a 2 flute ⅛” end mill.


Feed rate: 800 to 1200mm/min

Depth of cut: 1.5 to 2 mm

6061 Aluminum:

Feed rate: 800 to 1200mm/min

Depth of cut: 0.08 to 0.1 mm

Coolant: water or rubbing alcohol


Feed rate: 500 to 1000mm/min

Depth of cut: 1 to 1.5 mm


Feed rate: 800 to 1200

Depth of cut: 1.5mm to 2mm

Material Diversity: metals softer than aluminum, woods, plastics, foams, printed circuit boards, leather, and more!

Step 3: XZ Gantry

XZ Gantry

The XZ gantry can be made from any stiff 1/4" to 3/8" sheet material. Aluminum or steel work great, plastics tend to be soft enough to limit the Mill One's performance. If you plan on only milling wood and other soft materials, you may be able to get away with using a plastic like acrylic, PVC or HDPE, but an upgrade to metal is highly recommended.

A tool like a manual mill is great for drilling out holes. For 7.12mm holes, a 9/32" drill will provide a perfect fit for the bore of the eccentric nuts. If you do not have access to a mill or a CNC milling machine, you should be able to make one with a drill and a steady hand.

`Depending on the dimensions of your angle aluminum, you may need to vary the "89.75mm" hole distance if you find that the v wheels are too loose or too tight even after adjusting the eccentric nuts for the v wheels.

Eccentric nuts

Eccentric nuts are nuts with a threaded hole offset from the center. This allows for the nut to be rotated to adjust the position of the v wheels. The v wheel must be correctly positioned to allow the right amount of preload between the rail and v wheel, and the eccentric nut allows that preload to be adjusted.

You can use standard M5 eccentric nuts or you can use our custom made eccentric nuts which have a longer bore, suitable for gantries thicker than 1/4". You can find them here:

Step 4: Y Axis Gantry

The Y axis gantry is made using 1/2" HDPE because of its durability, but it is soft enough that in the case the bit or endmill is accidentally plunged into the bed, it will not damage the machine. We have also used 1/2" PVC in the past as well, which works great.

If you have a CNC router or mill, you can easily make your own Y axis gantry fairly easily. Below is a video of the Mill One carving out a new bed from PVC.

If not, you can drill the appropriate holes and add countersinks to allow for enough room to tighten the nuts on the other size. You can also use one 1/4" sheet of material on the bottom with the 5mm and 7.12mm holes to hold the v wheels, and another 1/4" layer on top to ensure the work surface is flush. As mentioned with the XZ gantries, using a 9/32" or 7.14mm drill bit will provide a good fit for the eccentric nuts.

Step 5: Aluminum Angle Rail

The linear rail system of the Mill One uses extruded 2 inch wide 6061 or 6063 angle aluminum, which offers two "v" edges which allow the v wheels to run on. The X and Y axis uses 400mm rails, while the Z axis uses a 200mm rail.

For the v wheels to work properly, you will need to make sure you are using

The holes in the rails can also be drilled and tapped on a mill, but if you do not have a suitable M8 tap, an 8mm through hole can be used. When you assemble the Mill One, use a longer bolt and a nut to hold the bracket and angle aluminum together, but make sure there is enough space for the motor coupler.

Step 6: 3D Printed Parts

These parts are 3D printed, and can be printed on almost any 3D printer and can be printed with either ABS or PLA. Below are estimated printing times per part with a 0.5mm nozzle on a Wanhao i3 at 0.3mm layer height.

  • 3pcs ACME nut holder (2:30)
  • 5pcs Angle mount (8:00)
  • 1pcs Electronics case (1:30)
  • 1pcs Router mount (3:00)
  • 8pcs Frame brackets (6:00)

Each component is designed to be printable without supports. We regularly revise our designs so to find the latest 3D models, go to Onshape, and from the homefolder, navigate to Parts > 3D Printed Parts. Pick the design you need and right click on the model. Press "Export" and select the 3D model (typically a STL) you want to export as for your 3D printer slicer. Older designs can be found on Thingiverse:

Just a quick note, the frame brackets used on the Mill One are laser cut and formed steel, rather than a 3D printed part. The 3D printed frame bracket is thicker and will provide more rigidity, but can be modified if needed.

For the nut holder, angle mount, router mount, and the frame brackets, to use a high infill (80% and above) with a thick shell (1.5mm or more). The electronics case does not require much infill, and can be printed at 20% infill. Total amount of filament used is about 500 grams of PLA per set of 3D printed parts, but may vary depending on your 3D printing settings.

Step 7: Frame

The frame in the Mill One serves many purposes, a barrier for straying hands, a simple way to manage dust, and for structural support. We chose to use 1/2" MDF since it is inexpensive, dimensionally stable (in non-humid, stable temperature environments), and fairly easy to source. Just a quick note, we use a premium grade MDF which performs better than standard grade MDF typically used in construction, and you may need to go to a local supplier to find it.

That being said, there are lots of appropriate sheet material you can use besides MDF. You need something that is dimensionally stable, as in that it does not change shape significantly from changes in temperature, humidity, and other factors, and is reasonably still. Metals like aluminum or steel are excellent, but would be extremely heavy if used for the frame on the Mill One. HDPE and PVC are easy to use plastics that will work great. If you have access to a laser cutter, you can even make your frame out of acrylic. We actually built a few prototypes by layering two sheets of laser cut acrylic. It's really expensive, but it looks amazing, plus you can look straight through it.

To make the frame, a CNC router is super handy, but not everyone has one of these. We found a bunch of people in the local area who did have one who made the frames for us for a reasonable price. The attached DXF is the latest frame design you can use to make the frame, and you can use it to modify the frame dimensions if you want to make a larger or smaller Mill One.

If you don't have access to a CNC router, you can also drill and route the holes by hand. As long as the holes are in the right place and the frame is cut straight, you should get a machine that is square. If you aren't confident with your drilling skills, oversize the holes slightly so that you can loosen and readjust your machine until it is true.

The handles and holes for the motor can be done using a handheld router. They are not dimensionally critical, as long as the holes are large enough to fit the motor or your hands you should be fine.

Acrylic Shield

A clear, 3mm thick acrylic or polycarbonate shield is used on the front of the Mill One to provide additional safety protection and helps keep dust inside the machine. The dimensions you need for this panel is approximately 422.7mm x 200mm. You can saw cut it or laser cut these plates. Laser cutting does leave a nicer edge, and gives you the chance to engrave on the material, but using a saw works absolutely fine.

Step 8: Electronics

Control electronics

The Arduino Uno and CNC V3.0 shield are easy to source online and are very inexpensive. The A4988 stepper driver chips are also quite easy to source and are commonly used in 3D printers. DRV8825 can also be used, however, it is recommended that you use a fan to cool the drivers because they tend to run hotter that A4988 drivers.

You can also use most 3D printer control boards (we have used a RAMPS 1.4 and and MKS Base in the past for testing), or other CNC control boards like the gshield or grblshield if you have them on hand or prefer to buy a different control board.


You will need three NEMA 17 stepper motors. We use 1.5A motors with 40Ncm/ holding torque, which work well and provide enough torque to drive the axis, but not enough to damage the machine when it crashes. Anything smaller than that will likely have a chance of stalling out, so go with the largest NEMA 17 motors you can find/afford.

These NEMA 17 motors come with detachable 50cm cables, which are just long enough to reach all three axis from the control box. Make sure that when you buy your stepper motors that the cables are sufficiently long enough.

Power supplies

The standard Mill One kit comes with a 24V 5A enclosed power supply. Some folks call it a "brick". When choosing an appropriate power supply, you should add up the current rating for the three motors (in this case, 1.5A + 1.5A + 1.5 = 4.5A) and get a power supply that can output at least that current. Having some headroom is nice, especially if you plan on upgrading your motors or drivers.

Power supplies come in all sorts of voltages, such as 12V, 24V, 36V, or 48V. Each control board and driver comes with a operating voltage range, typically 8V to 35V for the A4988 drivers, and 8.2V to 48V with the DRV8825. We recommend going with the highest voltage since due to the design of the motor, higher voltages will allow the stepper motor to operate at higher speeds.

Power supplies come in all shapes and sizes, some are enclosed, some are metal boxes with lots of holes on them for ventilation. We like using the enclosed power supplies because they aren't exposed to mains voltages and are impervious to dust. However, you can use whatever proper spec power supply you want.

Step 9: Power Transmission

Leadscrews and nuts

You will need a set of ACME leadscrews, nuts, and couplers to transmit power from the motors to the gantries. These parts can be purchased online. Here are some details you should know about these items

You will need two 400mm and one 200mm leadscrews and their corresponding ACME nuts. We use 8mm diameter, 4 start, 2mm pitch stainless steel ACME leadscrews. This type of leadscrew is commonly used in 3D printing, typically on the Z axis.

There are a few types of ACME nuts, but the one which is compatible with the Mill One is the most common, and can be fitted in the 3D printed ACME nut mount. Something that recently became more popular are spring loaded anti backlash nuts which help remove some of the backlash, which can also act as a drop in part for the standard ACME nut.


You will need a coupler to attach the leadscrew to the motor shaft. NEMA 17 motors have a 5mm shaft, so make sure to find a coupler that fits both the leadscrew and the motor shaft. If you use the 8mm diameter leadscrew, use a 5mm to 8mm coupler. Aluminum couplers like the blue one in the photo are fairly inexpensive and used a lot in 3D printers, but you can find steel ones that are great as well.

A quick note, you cannot use a flex shaft coupler since the leadscrew is unsupported. Flex shaft couplers will stretch back and forth parallel to the shaft and leadscrew, which will translate to inaccuracies . If you do want to use flex shaft couplers, you will have to support the leadscrew on the opposite end with a bearing and set of collars.


If you don't want to use ACME leadscrews but prefer to use threaded rod, a drop in replacement would be to use M8 threaded rod and M8 nuts. You will need to create a modified nut holder to hold the M8 nuts.

You can even make your own coupler fairly easily by taking a piece of stock material, drilling a 5mm hole through the whole thing, drilling an 8mm second hole halfway through the material, and then drilling and tapping some set screws on the sides of the stock to keep the shaft and leadscrew in place. We have done this before, and have found that it is very easy to misalign things, causing the leadscrew and motor shaft to be off-centre, so do this at your own risk.

Step 10: Assembly

The Mill One is incredibly easy to assemble, and will typically take around 2 to 3 hours for an inexperienced builder to put it together. Folks with experience and a power drill can put one together in about an hour.

We have created assembly videos on Youtube which you can follow:

Or go to our resources page to find our PDF instruction manuals.

Step 11: Conclusion

We hope you found this instructable helpful and informative. It's exciting for us to see folks especially for the people who have never used a CNC machine before to turn their 3D designs into real physical items from materials like wood, plastic, foam, and metal using the Mill One.

Have questions? We have a Facebook user group here: with lots of amazing people who can help you out.

You can also reach us through email at!

Happy building!

Power Supply Contest

Participated in the
Power Supply Contest

Robotics Contest 2017

Participated in the
Robotics Contest 2017