Several years ago I was pouring over a webpage created by Michal Zalewski called “Guerrilla guide to CNC machining, mold making, and resin casting”. It inspired me to purchase a CNC mill and spend many hours learning the best way utilise it, generally through a series of mistakes.

This guide is not intended to be compared to the original guerrilla guide which I still consider to be the bible. I simply don’t have time to provide the same level of detail but I hope that people find this content useful and that my mistakes and lessons learned have utility to others.



For a period of 2 years I operated a workshop which specialised in the cutting of carbon fibre plate. It started after taking to a RC helicopter specialist taking about how he couldn’t find supplier who would do small runs of parts (especially not single parts). It’s practically impossible to get a good result without a CNC machine, cutting it by hand is out of the question. I felt like there was a segment of the market which knew how to mock up a design in autocad or at least illustrator but didn’t have the time or skills to fabricate the parts themselves. From experience, the RC hobby customer also has a lot of disposable income and hop-up parts have traditionally had significant markups as they allow people to get incremental gains over fellow RC enthusiasts.

Over the 2 year period I ran the workshop in my free time, occasionally taking days off to fill large orders. Generally I had at least one order each week with some weeks having several orders to fill. Orders were generally valued around the $80 mark but were sometimes as small as $5 but occasionally as large as $1,500 (all values in AUD).



The equipment described in this section is a very typical example of the machine that a small home workshop will use. It’s all based on commonly available, cheap parts which is desirable for a system which needs to be flexible, cabable and maintainable.

The CNC Mill platform

The mill platform/gantry is the base to which everything else is attached so it needs to be rigid and reliable.

Lesson Learned: The first machine that I owned was homemade, roughly based around the blacktoe CNC plans, made from plywood & MDF. I used a chain drive for the X and Y axis and a threaded rod with a leadscrew for the Z. It was controlled with a cheap 3-axis stepper motor driver board, via the parallel port.

I cut a few corners to save on cost, I machined my own couplers to join the z screw to the motor and to join the two X sides together. My inexperience lead me to not provide sufficient play in these joins and had an unreliable system which would often start slipping and become loose after about 30 minutes of running.

Lesson Learned: The second big lesson learned from my first CNC machine was that it’s difficult to make a large machine accurate for small movements. I wanted to have a machine which would do everything- carve blocks of foam with a high Z but also accurately cut thin sheets of ply with a high feed rate. By having a long Z axis, the uprights which joined the Y to the X axis rails *** was very long and required a large amount of stiffening to stop paralellagram style flexing. The second effect was with the Z axis rails, when the machine had the cutter close to 0, the Z axis was fully extended at around 35cm. Any play in the Z axis is amplified by the distance that the cutter is from the rails. A tiny 0.0028mm play at the Z axis rail bearing is a 1mm deflection at the cutting tool. If I had made the Z axis only 5cm, the deflection at the cutting tool would have been a much more acceptable 0.14mm (though this is still less than ideal). 5cm Z height doesn’t seem like much but if all I was doing is cutting sheet ply and carbon, it would have been better suited to the tasks.


The CNC 6040 Review

The 6040 CNC machine is a very common frame manufactured in China and sold under many names. You can also find several other combinations of numbers which correspond to varying combinations of attachments or levels of cable and hose routing.

I have been running my CNC 6040 for about 5 years now so this can be considered a sort of review, although I have also upgraded several of the sub par components.

I have successfully cut wood, machinable wax, acrylic, polyurethenes, aluminium, copper and obviously carbon but had less success cutting profiles from stainless steel. The ease of cutting various materials boils down to the rigidity of the machine, the tooling and the feedrate/depth.

Not that it matters too much but I run it from a R61 thinkpad which is solely used for interfacing with the CNC machine. I run Mach 3 as the controller.


  • The machine was relatively cheap although it has taken the cost of the machine again in modifications for it to become reliable.
  • The machine is fairly well suited to coarse work in plastic and wood. I don’t think it’s rigid enough to do really pretty work for delicate tooling foam work for casting
  • The linear bearings are smooth and have no developed any play after a fair bit of use. I wouldn’t consider these to be a limiting factor of the machine.
  • I purchased mine with a 1.3kv spindle and motor controller. This has performed very well and after 5 years of running shows no play in the spindle (despite some heavy crashes). The threaded end has also held up fine with repeated tool changes though the collet has been replaced a few times. I have seen these sold with the air cooled motor and can’t comment on those but I feel like the cost is so small to upgrade to the watercooled version with a proper motor controller that it’s definitely worth it.


  • The X axis leadscrew bearing assembly is poorly designed. Tightening the nuts on each end will put pressure on the inners of the ball bearings pulling them together. I recommend putting some sort of preload spring in to allow minimum play without damaging the bearings.
  • The cables connecting the motor drivers to the steppers is not of high quality. It was probably only about 50 hours of operation before mine degraded enough to intermittently break some of the connections. I ended up replacing all of the cables with a high quality microphone line cable which is a cost effective type of cable designed to be repeatedly bent while carrying up to 400W.
  • The Y axis linear rails run on two rods which are supported at each end. This is a major source of deflection when dealing with more rigid materials and higher feed rates. When facing off the bed with a large fly cutter, I can visibly see that this where most of the deflection occurs. Having said that, the choice of two rods was probably made as it saves a lot of space and there is little axis lost at each limit.



  • The first thing I did was upgrade from the parallel port interface to an ethernet SmoothStepper. Firstly I found that the parallel port was slightly unreliable on mach 3 with the computer that I was using and I liked the idea of isolating the CNC machine a bit better from the PC and running the interface through a router. The PC runs an early Core2Duo and I still occasionally get halts due to running out of steps in the middle of some runs so I could still probably do with a more powerful PC but I haven’t bothered since it only happens very infrequently and there is lots of fuss in moving everything over to a new system.
  • I also upgraded the motor drivers to a Geckodrive G540. This is a very popular motor driver which a lot of people use. It has the ability to tune the frequency of the motors which makes them a lot quieter while running. I didn’t see any increased performance of the G540 over the stock drivers, I purely upgraded to the G540 to add an additional axis to the system which I used for a 3d printer filament extruder.
  • I thought it would be nice to try 3d printing with the system. I purchased a wades extruder and a 3d print head. I attached it to the motor using a removable bracket. After fussing with the trials of 3d printer calibration I had pretty good results extruding 1.5mm PVL through a 0.8mm nozzle. The CNC makes a pretty good base for a 3d printer but it’s much heavier, slower and more expensive than it needs to be if you’re only going to 3d print. It was a good learning experience though.

177-IMG_20150609_081141 179-IMG_20150609_081209 187-IMG_20150620_155903 183-IMG_20150609_081258 162-IMG_20150521_172615 202-IMG_20150713_144134 211-IMG_20150713_144756


CNC 6040 Standard

The CNC 6040 has a t-slot base which is pretty flat. It’s a good base to attach things too

MDF scrapboard

A sacrificial MDF board is a great fixture to have. You can screw parts directly to it and it doesn’t matter if you cut into it. I cut carbon fibre (dry) for a while using just the MDF base and screwing the carbon down onto it (sometimes by drilling several mounting holes in the carbon but usually just using short pieces of ply to restrain the material.


Carbon wet cutting fixture

It’s a bad idea to cut carbon fibre without either good vacuum or water to draw away the dust. I don’t like running vacuum all the time as I fear that it’s a source of fire if it gets clogged and overheats (this is probably just me) so I quickly moved to a wet cutting setup once I started getting a few orders. Before describing the setup it should be noted that I saw vastly better tool life once I started flowing water over the cut. I presume that this is purely due to cooling the cutting tool but may also be due to evacuating the dust more effectively.

This setup uses a base of acrylic with a skirt of plastic around the edge. A hose at the front acts as a drain, this hose has many holes drilled in it to prevent any one entry from clogging the return. A sacrificial piece of 10mm acrylic is glued to the base (using an adhesive silicone). 6 threaded nutserts are drilled and glued into place along the left and right edges.

The drain flows down to a square bucket with a series of baffles which separate out the heavier particles before a small brushless pump pushes a small flow up to the cutting tool. I started with larger pumps but they only used more power and caused more problems with the higher pressure.

Occasionally I let the system dry and vacuum out the edges. Occasionally I will re face the surface using a 17mm fly cutter.

Sheets of 500x400mm carbon sit squarely against the edges of the base. The sheets are held down by 4-6 brackets that fit into the glued in nutserts. They’re just hardwood cut on the bandsaw and drilled through.

This fixture allows me to change between sheets of carbon in about a minute.

Endmills & Tooling

On the 6040 I tend to stick to 1mm, 2mm or 3mm endmills. When roughing out a large area I’ll use a 6mm bullnose. If facing off a large area I’ll use a 17mm fly cutter.

The 2mm an 3mm sizes are most widely used because they’re a good tradeoff between deflection and the width of the cut. If I’m cutting something soft like wood I’ll generally go for something a bit larger since I can push through it quickly without having to worry about deflection.

I rarely use anything thinner than a 1mm and avoid creating features requiring such a small cutter since it’s pretty frustrating to work with thin tooling unless you have a very rigid machine, have a very soft material or have a part that will see great benefit.

Carbon Sheet

This is a carbon cutting guide so I’ll spend the most time talking about tooling for cutting carbon sheet.

I started off cutting dry and using 2mm 2 flute HRC45 endmills. I also tried some 2mm 4 flute endmills as well as a set of 2mm 2 flute HRC65 endmills. However, given that carbon does not really cut chips, the flutes are a bit of a waste of time.

My recommendation is 2mm burr cutter endmills, they have a 3mm shaft. The burr is the most effective shape to grind away at the edge, it’s not great for plunging but when cutting 2.5d profiles, it’s quite good.

I generally buy from aliexpress and get ones with TiN coatings (which make them last a little longer). 


You want to clear chips (so it needs to be fluted), the chips should be big (so it needs to have 2 flutes).

I always use a 2 flute downcut with wood projects regardless of whether I’m carving a 3d shape or just cutting out a 2d part. Downcut endmills have the flute spiral going the other way (down). Regular upcut endmills will pull the wood fibres up and away from the surface resulting in very furry or rough edges and a lot of chipping.

Don’t bother with anything other than HSS (uncoated), it’s not worth the extra cost.



Aluminium requires a very large chip so you want something with 1 flute. Feeds and speeds are very important when cutting aluminium so make sure you use a good calculator.


Step 1: AutoCAD

The part is typically received as a .DXF file.

The part is opened in AutoCAD.

Boundary tool creates a seamless boundary (this is not always necessary but many customers submit parts with construction lines and all kinds of funky features. If there are issues in creating the boundary or the part has severe issues it will be sent back to the customer to resubmit. If it’s a small fix it will be made at this stage.

I copy the boundary and other features.

And delete the original paths so I know only the clean shape is left.

The part is then copied as many times as required. It might also be merged with other parts that are on order with the same thickness of carbon plate.

I save the part into a folder synced with dropbox (this provides traceability and redundancy for my files and orders). It also allows me to manipulate files from other computers so I don’t necessarily have to be out in the workshop.

Step 2: MeshCam

I open the file in MeshCam from the dropbox synced folder.

Specify the thickness

Expand the boundaries a tiny bit.

Set the origin to the bottom corner. 0Z at the top of part.

Set the safe Z height (typically 5mm).

Calculate the waterline & pencil operations. For carbon <1.0mm I will do only a pencil operation.

Step 3: Mach 3

Dropbox is installed on the CNC controller PC so the .nc file is generally synced immediately after creation.

I then open the file

Move the CNC machine to when I want to cut.

Set X,Y 0.

Start the spindle, touch the top of the carbon.

Set Z 0.

Move up to 5.00Z.

Start the cutting fluid.

Start the sequence.


The CNC has a high speed, high power spindle which usually holds a very sharp endmill. Care needs to be taken when working in the envelope of the machine while the spindle is running.

The carbon dust is dangerous to breathe and a strong irritant if it gets on skin. Use gloves when handling carbon stock and taking parts out of the machine. I prefer tattoo gloves as they’re a bit more durable than cleaning/medical gloves and have a bit more feel to them.

When using spindle coolant or cutting fluid, care needs to be taken to ensure that the fluid does not come in contact with high voltages.