MPCNC Build Complete (until my next good idea)

I completed the main build of my MPCNC over the weekend. Just need amazon to deliver my Dewalt router and then I can cut wood instead of just drawing.

This is a long post with some details you may/may not be interested in. Pictures are at the bottom. Specs are here:

  • 12in X 18in (325x457mm) cutting area
  • Height: 3 in
  • Customized firmware for 32bit SKR 1.3 w/ TFT35 V2.0
These were my going in requirements:
  • Use a 32-bit board. While I know this works on 8 bit, the 32-bit are reasonably priced and gave me experience to upgrade my 3d printer later
  • Bigger surface for laser usage (had a laser on my ender 3 but that is a tiny area)
  • Dual end stop. Even though I understand it isn't needed I think long term it'll allow me to gain repeat-ability. That and it is pretty cool to dial in the "square" to 0.1mm.
  • Must fit on my work bench
  • Must be somewhat portable (I can't build the red/black one Ryan built because I move too often)
Resources I used:
  • Obviously Ryan's directions and the cut calculator
  • Discussion between kd2018, Ryan, and Jeffeb3 IRT the dual end stops (the pictures helped)
  • Teaching Tech's videos on the LowRider, SKR 1.3, and TMC 2208s. While I didn't build a LowRider his videos were very helpful in tweaking Ryan's MPCNC firmware for the SKR 1.3.
The process/parts:
  • Printed all the parts in PLA on my Creality Ender 2. I mostly used 3d Solutech filament except for the purple which was left overs from MakersGeek (glad its gone)
  • Used US hardware
  • For the board I used the BigTreeTech SKR 1.3 + TFT35 V2.0 with TMC 2208 UART stepper drivers. It was $53 when I ordered it. AliExpress link.
  • I didn't like the cases available or they didn't work for the TFT35 V2.0 so I created my own:
  • I had to take Ryan's firmware, knowledge on changes from TeachingTech and BigTreeTech's firmware, and some trial and error to build SKR 1.3 firmware and TFT35 V2.0 firmware. I just wish I had documented better what I changed so I could fork off Ryan's for easier updating. SKR1.3 with TMC2208 UART firmware on GitHub
  • TFT35 V2.0 customized firmware with a focus on CNC and laser operations. GitHub firmware link.
Lessons learned:
  • I ordered the wrong size pulley and they had 20 teeth rather than my expected 16; took a little while to figure out why the CNC was going so far
  • If (or when) I redo the wiring I think i'll bring all the wires to the front left corner and then put an Ethernet patch panel and then run cords further to the controller.
  • I had a bunch of N/O 3 wire end stops laying around from 3d printer projects; in hindsight it would have been better to just use cheap switches and use the N/C function
  • I wish I had gone with a 4 inch cutting height; mainly because when I picked 3 in (which I meant to be 3.5) I forgot about the spoil board.
Bottom line: Although I haven't gotten "dirty" yet I have drawn many things with the pen starting with the crown, then transitioning to kids drawings and calibration rectangles, and ending up with drawing some stencil templates on wood so I could cut them on my scroll saw (oh Amazon why did you let me down). I also have my laser connected via the fan port (this isn't a super high powered laser).


Oh yes. I found a picture. Here you can see the first and second crown test. That nice arc in the lower part of the paper that leaves the paper is the lower decoration on the crown. The size difference is from misconfigured steps in the firmware.

Great build. I went with the Archim 2 to get the TMC drivers. I hadn’t really thought about it much until I watched someone’s video. The steppers were singing in that video and then I realized that I was missing something.

I do want to work on mine a bit. It has a slight resonance hum when moving the Y axis fast. Not sure if it is bearing related or not. Doesn’t show up in any results.

Look forward to seeing what you make with this machine!

1 Like

It is amazing how much quieter the drivers are. When my wife heard the CNC and then I started up the 3d printer she told me to order a new board and steppers for the 3d printer since that is inside. She also questioned why I would use quiet drivers for a CNC in the garage :slight_smile:

I just added links to my SKR1.3 2208 firmware and the TFT35 V2.0 firmware.

1 Like

I have an skr 1.3 and 2209s waiting to into my ender 3. I don’t need them there and am tempted to try and put it on a MPCNC. I would rather use hardware I have than order a new board. I would also rather use a stock setup that I can get peer support from. Oh well. I will order a build kit from Ryan soon.


Changing from 2208 to 2209 should be as easy as one tweak to the steppers in configuration.h of what I posted and installing them in the SKR1.3 correctly (which is easy based on Teaching Tech’s videos).

You can definitely order a build kit but if you want to use the SKR 1.3 there are plenty of people running it in the forums from what I can see to make it work


1 Like

Darn you, I had almost convinced myself to just order the rambo. I am just skilled enough to get marlin 2 running on the SKR with teaching techs videos. Running that board on my first build of an mpcnc is both exciting and terrifying. You may have pushed me over the edge to try it.


FIXED - I deleted and downloaded again - then deleted the PIOLIBS file and built - All worked well - if anyone else has this problem.

ps I also had to install python 3.8



Many thanks Dan,

I have ran into a problem with building the firmware -

It is saying macros.h is missing ?

This is the error:

Marlin\src\lcd\extensible_ui\lib\lulzbot\ftdi_eve_lib\extended\unicode…/…/…/…/…/…/…/inc/…/HAL/./HAL_LPC1768/…/shared/math_32bit.h:24:10: fatal error: …/…/core/macros.h: No such file or directory
#include “…/…/core/macros.h”

can you help please.

thanks again


Cool build, looks like you enjoy the building and experimenting part as much as I do!

1 Like

Excellent job on working with the SKR1.3. Hoping to learn how to set up my 32bit/TFT mpcnc from what you’ve put together.

I’m finally getting the rest of my build together. I printed everything about this time last year and have recently been catching up on the new 32bit boards and tmc drivers that are available now at much more affordable prices. I was leaning towards the 32bit MKS sGen L, mainly because i have one of their 8bit boards on my printer and it has been trouble-free.

Now i see these SKR boards seem very popular. I feel they’re functionally identical to the 32bit MKS and similarly priced, but I didn’t do a ton of research so i’m probably wrong about that. Someone please correct me if i’m wrong. However, the MKS board does have matching color coded stepper and endstop connectors, which my old half blind eyes would find very helpful. :slight_smile:

I saw teching techs video also, a great service he has done for us. I have a TFT32 display that came with my printer, but I don’t use it and i’m wanting to know it the TFT35 firmware would work on my TFT32, or if it could be made to work? I’m not marlin savy, but i’ve managed through it with my printer with a bit of help from others.

The display always seemed a bit laggy on my printer so i’ve always ran my printer from my pc with repetier. I haven’t had the display attached to the printer for over a year. Maybe the display would seem more responsive in conjunction with a 32bit board? Either way, i’d like to try it with my mpcnc.

Once again, great job.


Hello there, I was trying to build the firmware for my skr 1.3 and DRV8825 so, being very newbie in coding, I thought it could work simply changing stepper driver to DRV8825 in config.h, but it does not.
So, thinking there was some error in what I was doing I tried to build the firmware as it is and I still get same errors…

I also tried the Teaching Tech firmware and still errors…

I’d like to have the “auto squaring” feature, but it seems hard…


I’d like to have the “auto squaring” feature, but it seems hard…

There is a working firmware for SKR 1.3 with dual endstops in this thread:

Yes! I finally managed to build the firmware, adapting to my lowrider… I will test it as soon as I get last hardware to complete the mpcnc. Thanks a lot

1 Like

Make sure you install Git (was a lesson learned from TeachingTech). I think that is why it just downloaded all the dependencies on first run for me and then I didn’t run into these issues.

Yea, the experimenting and building is a lot of fun.

I finally actually cut some stuff so that was pretty cool. Then sadly real-life intervened so a delay. Now I’m working on designing something real to cut.

I hooked up the laser and drew a few logos and then added a grid to help with alignment.

Then I finally hooked up the dewalt 660 and started cutting. Using Fusion 360 I was able to cut out the letter “B” in a piece of plywood :slight_smile:


I finally designed and cut something real. Did the first test on MDF but here is the cut on oak.

I used a 90 degree v cut bit for the edges with a 1/8" spiral bit for the flat parts in the middle. Used Adobe Illustrator for the design then ESTLCAM for the CAM since I couldn’t get fusion 360 to do what I wanted.

Used the end stops and a z touch plate to allow me to kill the motors; move the router to a convenient spot; switch tools; then just rehome everything and let it go to town.

After this I switched to the laser and etched my logo in the back.

Doing the finishing work now and I’ll post a final.

To say the least the machine is very very dirty and I need to up my dust collection game.


Love it that way! Well loved.

1 Like

Hi How did you solve the LPC176X problem?
Thanks in advance

Make sure you have git installed.

Then it should download the dependencies it needs automatically. I haven’t run into that error on my recent compiles.


That is so nice. Great job! I am a few weeks from that! woot