IndyMill – DIY Open Source Metal CNC Machine | Build Your Own CNC Router

DIY metal CNC machine/router IndyMill

IndyMill is an open-source CNC machine project developed by Nikodem Bartnik as an upgrade to the Dremel CNC. The goal is to create a DIY CNC machine that is easy to build and replicate worldwide. By using widely available components and providing comprehensive documentation, IndyMill ensures accessibility for makers of all skill levels. High-quality design and detailed instructions go hand in hand to make this project truly outstanding. Below, you’ll find an up-to-date list of videos, images, files, and a complete parts list. Don’t forget to subscribe to the newsletter to stay informed about the latest updates!

Parts list for a DIY CNC Machine – IndyMill

Below you can find tables with all the parts that I used to build IndyMill. The table is divided into mechanics and electronics if you prefer an excel sheet that you can easily print, export, and open on your computer you can find it here:
Excel sheet – IndyMill Parts

IndyMill build based on this parts list has a working area of about 520x400x115mm. The outside dimensions are 760x660x360mm. Of course by using longer profiles, linear rails and ballscrews you can build it bigger.

Some of the parts required to build IndyMill can be purchased in my store. It turned out to be a great way to simplify building the machine for everyone and support the development of future projects. Thanks to ordering in bigger batches I am able to offer parts at a lower price than it would cost for you to order a laser-cutting service.

Mechanics you need to build a DIY CNC machine/router

NameQuantityAliexpressAmazon
Profile 20×40 600 mm2https://s.click.aliexpress.com/e/_olY85vFhttps://amzn.to/3JE7W74
Profile 20×40 666 mm 2https://s.click.aliexpress.com/e/_olY85vFhttps://amzn.to/3JE7W74
Profile 20×80 600 mm 2https://s.click.aliexpress.com/e/_olY85vFhttps://amzn.to/3JE7W74
Trapezoidal Lead Screw 220 mm1https://s.click.aliexpress.com/e/_oEZ9p8thttps://amzn.to/3zpXgS4
Ball Screw SFU1605 650mm1https://s.click.aliexpress.com/e/_olegeHPhttps://amzn.to/3mBfTyM
Ball Screw SFU1605 600mm2https://s.click.aliexpress.com/e/_olegeHPhttps://amzn.to/3yeHyrH
Linear Rail MGN12 600mm2https://s.click.aliexpress.com/e/_olvjxrXhttps://amzn.to/2UQD0dp
Linear Rail MGN12 650mm2https://s.click.aliexpress.com/e/_olvjxrXhttps://amzn.to/3yjJ7o4
Linear Rail MGN12 200mm2https://s.click.aliexpress.com/e/_olvjxrXhttps://amzn.to/3zmz3Mj
Linear Rail Block MGN12H12https://s.click.aliexpress.com/e/_oC1d4FFhttps://amzn.to/3zmosBh
6000RS Bearing3https://s.click.aliexpress.com/e/_omllMhBhttps://amzn.to/3BtqgsX
6201RS Bearing6https://s.click.aliexpress.com/e/_oF5Y6TFhttps://amzn.to/2Y0GRWv
608RS Bearing1https://s.click.aliexpress.com/e/_oDuV8I1https://amzn.to/3kvRVCz
8 to 10 mm Coupler3https://s.click.aliexpress.com/e/_oEKF0Gzhttps://amzn.to/3gAvYB5
200mm Closed GT2 Belt1https://s.click.aliexpress.com/e/_oo81JDxhttps://amzn.to/3DgIe3z
GT2 8mm Pulleys2https://s.click.aliexpress.com/e/_omKg3zFhttps://amzn.to/3BfyXXv
Trapezoidal Lead Screw Lock Collar3https://s.click.aliexpress.com/e/_opzykClhttps://amzn.to/3koSoX7
Corner Connectors2https://s.click.aliexpress.com/e/_oEPIjBPhttps://amzn.to/3mEnug2
M3x16 mm screws 14https://s.click.aliexpress.com/e/_oCTj87Fhttps://amzn.to/3DhWYyZ
M3x10 mm screws 60https://s.click.aliexpress.com/e/_oCTj87Fhttps://amzn.to/3Bf5rRQ
M3x8 mm screws 26https://s.click.aliexpress.com/e/_oCTj87Fhttps://amzn.to/3krYgyL
M3 nut4https://s.click.aliexpress.com/e/_oB8wnKHhttps://amzn.to/3mCoMIu
M3 T nut 22https://s.click.aliexpress.com/e/_onZpjpLhttps://amzn.to/3DkI6jr
M5x20 mm screws 24https://s.click.aliexpress.com/e/_okZFw61https://amzn.to/3mxdEg0
M5x16 mm screws 6https://s.click.aliexpress.com/e/_okZFw61https://amzn.to/3mBVaLs
M5x12 mm screws 28https://s.click.aliexpress.com/e/_okZFw61https://amzn.to/3mx2RT7
M5x10 mm screws 4https://s.click.aliexpress.com/e/_okZFw61https://amzn.to/3jluM6y
M5 T nut 20https://s.click.aliexpress.com/e/_onZpjpLhttps://amzn.to/3mBuNW2
M5 nut 24https://s.click.aliexpress.com/e/_oB8wnKHhttps://amzn.to/3sN7hGB
M6x12 mm screws 20https://s.click.aliexpress.com/e/_oFmi0L3https://amzn.to/3yoLbLr
M12x1 fine thread nut 3https://s.click.aliexpress.com/e/_oD3X1JPhttps://amzn.to/3mAdhRL

Electronics required to build your own CNC machine

NameQuantityAliexpressAmazon
Nema23 Stepper Motor4https://s.click.aliexpress.com/e/_oFyBKqZhttps://amzn.to/4iwPUCx
IndyShield1
DM542 Stepper Drivers4https://s.click.aliexpress.com/e/_oBITBD7https://amzn.to/4hd1G3T
Arduino UNO1https://s.click.aliexpress.com/e/_olCso1Phttps://amzn.to/4hkQVwA
Power Supply 36V 16.6A1https://s.click.aliexpress.com/e/_oBxYo73https://amzn.to/4kTmKzc
AC Socket1https://s.click.aliexpress.com/e/_okxEky5https://amzn.to/3mveo5k
Cableshttps://s.click.aliexpress.com/e/_omJy9a9https://amzn.to/3Jzmz97
4 pin Connectors4https://s.click.aliexpress.com/e/_ooYDLJJhttps://amzn.to/3zm0OVw
500W Spindle1https://s.click.aliexpress.com/e/_ophLtqNhttps://amzn.to/4bUk408
1.5kW Spindle1https://s.click.aliexpress.com/e/_okCecnFhttps://amzn.to/4bUk408
Inverter for 1.5kW Spindle1https://s.click.aliexpress.com/e/_okCecnFhttps://amzn.to/4bUk408

Build instructions for IndyMill CNC Machine

IndyMill DIY CNC Machine Build Instructions

The above parts list and files down below are everything that you need to build the IndyMill. It’s open-source so you don’t have to pay anything for the files or design. But I thought that I will make detailed instructions so that it would be easier for some of you to assemble this project and at the same time support my work. It’s 40 pages long, there are over 60 drawings and a lot of useful information on the assembly process. It’s a PDF file so you can put it on your computer, smartphone, tablet, or even print. And it’s only $10. Let me say it again, you don’t need it to build this project, but if you want to simplify the assembly process and support my work at the same time, you can get the instructions here:

Buy on

DXF and STL Files for a DIY CNC Machine – IndyMill

Below you can download the DXF files needed to build IndyMill – DIY CNC Machine, you can use those files to order laser cutting of the parts. Those should be cut out of 6 mm steel or aluminum (and just two small parts cut out of 8mm steel or aluminum, see the table below).
If you are going to order or manufacture that on your own just simply send those files to a company with a laser cutter that is able to cut steel. Make sure that they can cut all of the holes. You need every file cut only once. All DXF files are in mm.

I am also selling a kit of steel plates for IndyMill. The kit is powder coated with RAL5019 and I manually tap all the holes so the kit is ready for assembly out of the box. Also unpainted and untapped bare steel kit is available. If you have any questions regarding the kits please let me know!

NameQuantityMaterial Thickness
500W Spindle Plate.dxf16 mm
Motor Support Left.dxf1 6 mm
Motor Support Right.dxf1 6 mm
Screw Support Left.dxf1 6 mm
Screw Support Right.dxf1 6 mm
X Axis.dxf1 6 mm
Y Axis Left.dxf1 6 mm
Y Axis Right.dxf1 6 mm
Z Axis Motor Support.dxf16 mm
Z Axis Rail Support1.dxf18 mm
Z Axis Rail Support2.dxf18 mm

You will also need some 3D printed parts to build this DIY CNC project, you can find all STL files in the ZIP archive below. Settings I use to print them: 40% infill, 3 perimeters, 0.3 mm layer height (with 0.6 mm nozzle).

Part NameQuantity
6000 holder.stl3
Ball screw block X axis flap.stl1
Ball screw block X axis.stl1
Ball screw block Y axis flap.stl2
Ball screw block Y axis.stl2
X axis nut holder.stl1
Y axis nut holder left.stl1
Y axis nut holder right.stl1
Z axis bearing holder.stl1
Z axis nut holder.stl1

If you don’t have a 3D printer and there is no way for you to print the parts you can order those from my store as well:

Videos about DIY CNC Machine project – IndyMill

Here are all the videos that I made about my DIY CNC IndyMill (plus updates below). I highly advise watching all of them before starting to build one. There is a lot of useful information in each one of them and the step-by-step assembly process is shown. Also, you can take a closer look at fails, design process, and some problem-solving 🙂 If you are curious how to properly use your DIY CNC machine after building it it is shown in some IndyMill videos but also my projects videos where I use it to build cool stuff! I even made some projects/videos showing how to organize your CNC Machine, how to build a table and a clean storage solution for all the CNC bits and accessories.

IndyShield – Arduino UNO shield compatible with GRBL

IndyShield is an Arduino UNO based GRBL shield with screw terminals to simplify electronics connection in your CNC router. It’s designed to work with GRBL so you can easily use it not only for IndyMill but actually for any other DIY CNC machine that you want to build. You can download the PCB design below and if you want to buy it check out my store:

Of course, because my project is open source below you can find a ZIP archive with all the design files of IndyShield (designed in Eagle). Feel free to modify it and share it with others just remember to put a link to my project 🙂

If you want to support my projects (It would be highly appreciated!) You can do it through Patreon (link below). You can also support me through PayPal!

Become a Patron!

Upgrades I made to a DIY CNC Machine – IndyMill

I decided to add limit switches, z probe, an emergency button, an LED light, and a threaded waste board as I thought those updates were the most useful for me. I am working on a clamping system for that waste board and dust shoe (I want to create a very universal and easy-to-make dust shoe for a 500W spindle). The limit switches holder STL file can be found in the ZIP archive with all STL files in the files section above. Here you have links to some of the things I used for upgrades:

NameQuantityBanggoodAliexpressAmazon
Limit switches3https://bit.ly/368SJHrhttps://bit.ly/3fEjhDuhttps://amzn.to/3oODmgl
Emergency Button1https://bit.ly/39fvbmihttps://bit.ly/2VeLozHhttps://amzn.to/3oORy8S
LED Strip0.5 mhttps://bit.ly/3mdu620https://bit.ly/3lapRTChttps://amzn.to/3pbzNBd
M8 Knock In nuts30-50https://bit.ly/368rL2Khttps://bit.ly/2JnrIqEhttps://amzn.to/3rNrZqW

DIY ball screw covers for a CNC

I made very simple DIY telescopic ball screw covers out of PVC to protect the screws and keep everything working fine for a long time. Below you can see my video where I explained how I made that and you can also find right the ZIP archive with all STL files needed to add this update to your IndyMill! It was an interesting concept but after a few months, I had to remove the covers as they introduced a lot of friction and reduced the working area of my CNC machine. There is some potential in this approach but a different material would have to be used instead of PVC.

500W CNC Spindle Dust Shoe

I designed and made my own universal version of a dust shoe for a 500W spindle (a really popular Chinese spindle). It is very simple to make and work really well. You can find more info about my dust shoe in the video below. You can also download free files that you can use to make it on your own (those files are also on my GitHub).

1.5kW CNC Spindle, new dust shoe, computer table, spindle light, and more

I added plenty of upgrades to IndyMill including a new huge and powerful spindle a 1.5kW beast that makes it just soooo easy to machine aluminum. Because I changed the spindle I also had to redesign the dust shoe, the concept is basically the same but I made it a bit bigger. I also added some upgrades to the 500W CNC spindle, spindle light – simple PCB with LEDs that you can directly attach to the spindle and have even more light while machining, and the other upgrade was a simple circuit to control the 500W spindle with GRBL. This one has to go through some more tests but should already work properly.

Maybe not so visible but an incredibly important upgrade was replacing the 12V power supply with 36V and right after that replacing TB6600 drivers with DM556. This is very important as TB6600 can’t handle 36V. If you are building your CNC from scratch I advise you to start the build with 24V or 36V power supply and DM556. It’s not that expensive to build and the performance improvement is definitely worth it!

I also added some smaller (but still cool!) upgrades like a computer table, and a coolant system, and finally redesigned 3D printed files (new files are updated in the files section and on GitHub as well). You can see all of the upgrades and some other info in the following video on my YoutTube channel:

Here you can find some more pictures of my machine and the current setup.

DIY CNC IndyMill Built by the community

Below you can find pictures of IndyMills built by an awesome community of DIY enthusiasts, machinists, and makers! There are a lot of great examples of modified dimensions – both smaller and bigger than my original design. There are great updates to the machine frame, dust collection systems, and some very good electronics setups. Some people even build the enclosure! If you would like your machine to be featured right here send me some pictures of your CNC: nikodem@indystry.cc

IndyMill Created by Nikodem Bartnik in 2019/2020
Updated in 2025