CNC-Router
diaxxu·CNC-Router·kicad/cnc router.kicad_pcb
About the CNC-Router PCB
CNC-Router is an open source ESP32 PCB design by diaxxu, published on GitHub under the MIT license. It is a 2-layer board measuring 115.4 × 66.6 mm, with 28 components from 11 distinct parts.
Its main chip is the ESP32-C3-DevKitM-1, from the ESP32 family. Other key parts include the Pololu_Breakout_DRV8825. By type, the board carries 15 connectors, 5 capacitors, 3 modules, 1 IC, 1 transistor and 1 diode.
It belongs with the robotics & motion designs in this gallery.
From the project
a challenge i gave myself to make something great ! yes its a cnc milling / laser / plotter machine
This is my homemade modular CNC machine, built from simple available parts. I designed everything in Fusion 360, researched every component, and chose them carefully. It’s not perfect, but it’s beautiful, and I genuinely enjoyed building it.
To get more hands on experience ? this is a very cool project. A CNC that can carve wood and maybe on a good day cut aluminum, isn't that great ?

Main components on the CNC-Router
CNC-Router bill of materials (BOM)
28 components, 11 distinct parts — part numbers from the project's BOM.
| Qty | Part | Footprint | Refs |
|---|---|---|---|
| 1 | ESP32-C3-DevKitM-1 | ESP32-C3-DevKitM-1 | U1 |
| 3 | Pololu_Breakout_DRV8825 | Pololu_Breakout-16_15.2x20.3mm | A1, A2, A3 |
| 1 | IRLZ44N | TO-220-3_Vertical | Q1 |
| 3 | Screw_Terminal_01x04 | TerminalBlock_Phoenix_MKDS-1,5-4-5.08_1x04_P5.08mm_Horizontal | J1, J2, J3 |
| 1 | Screw_Terminal_01x02 | TerminalBlock_Phoenix_MKDS-1,5-2_1x02_P5.00mm_Horizontal | J4 |
| 2 | Conn_01x02_Socket | PinSocket_1x02_P2.00mm_Vertical | J5, J6 |
| 9 | Conn_01x02_Pin | PinHeader_1x02_P2.54mm_Vertical | J7, J8, J9, J10, J11, J12, J13, J14 +1 |
| 1 | Screw_Terminal_01x02 | TerminalBlock_Phoenix_MKDS-1,5-2_1x02_P5.00mm_Horizontal | MOTOR1 |
| 1 | 1N5819 | D_DO-41_SOD81_P10.16mm_Horizontal | D1 |
| 5 | 100uF | R_Axial_DIN0516_L15.5mm_D5.0mm_P30.48mm_Horizontal | C1, C2, C3, C4, C5 |
| 1 | 330 | R_Axial_Power_L20.0mm_W6.4mm_P22.40mm | R1 |
CNC-Router design files
The KiCad project lives in the diaxxu/CNC-Router repository on GitHub; these links point at the commit this page was built from.
- Layoutkicad/cnc router.kicad_pcb
- Schematickicad/cnc router.kicad_sch
- BOMBOM.csv
CNC-Router: common questions
What microcontroller does the CNC-Router use?
The CNC-Router is built around the ESP32-C3-DevKitM-1, from the ESP32 family.
How big is the CNC-Router PCB?
The CNC-Router measures 115.4 × 66.6 mm, has 2 copper layers and is 1.6 mm thick.
How many components are on the CNC-Router?
28 components, from 11 distinct parts, with part numbers taken from the project's own BOM. The full bill of materials is listed on this page.
Where can I download the CNC-Router design files?
From the diaxxu/CNC-Router repository on GitHub, which has the KiCad layout, the schematic and the BOM; the links under Design files point to each one.
Can I use the CNC-Router design in my own project?
Yes, under the terms of its MIT license, which diaxxu chose for the repository.
Can I test firmware for the CNC-Router without the hardware?
Yes. HardLabs builds a simulation of the board from its netlist and BOM, so you can run and debug ESP32 firmware against it before you order a PCB.
Similar boards
ESP32
Open Book Abridged Edition
joeycastillo
85 × 115 mm65 parts2LCC-BY-SA-4.08.1kESP32
Badge
atopile
56.3 × 39 mm239 parts4LMIT4.0kESP32
Esp32 minimal
atopile
36.2 × 26.8 mm20 parts2LMIT4.0kESP32
Racer
StuckAtPrototype
36 × 50.2 mm70 parts4LApache-2.03.8kESP32
Controller
StuckAtPrototype
29 × 74 mm58 parts4LApache-2.03.8kESP32
Bitaxe
skot
56.5 × 99.8 mm86 parts4LCERN-OHL-S-2.01.4k