The whole "feeds & speeds" topic is arguably the most daunting part of learning CNC.
"Feeds" is feedrate, on some CNCs with a fixed tool and moving plate this is the speed at which the material is fed into the cutter, on a Shapeoko this is the speed of the gantry pushing the cutter into the material.
"Speeds" is the rotation speed of the endmill, i.e. RPM value.
"Feeds" and "Speeds" go hand in hand, what really matters is the combination of feedrate and RPM values for a given situation. Actually, they are also somewhat coupled with a number of other parameters (e.g. depth and width of cut), so "feeds and speeds" is often short for "all the cutting parameters".
When first starting CNC, selecting adequate cutting parameters feels a little bit like this:
Using proper feeds and speeds and depth/width of cut values is important to :
get a good quality of the cut (e.g. surface finish, dimensional accuracy)
increase tool life (i.e. keep tool wear to a minimum), or at least avoid tool breakage.
avoid/minimize chatter (the horrendous sound heard when the endmill/machine vibrates while cutting through the material)
optimize material removal rate (e.g. how long it takes to complete the cut)
While there is definitely a good amount of experience (and experimentation) involved in finding the perfect feeds and speeds for any given situation, there are a few underlying principles that are worth understanding for two reasons:
to figure out reasonable values to start from, when a new situation shows up for which you cannot find any predefined recommended values.
to be in a position to understand how to tune the cutting parameters to achieve the desired result.
Before diving into the relation between feedrate, RPM, and the other parameters, let's check how the tool cuts into the material.
In so-called "conventional" milling, the direction of the endmill movement is such that the cutting edges bite from the inside to the outside of the material. In the sketch below, imagine the blue triangle represents one cutting edge of the endmill. If the blue cross is the position of the center of the endmill when this cutting edge starts biting into the material, and if the endmill is moving into the material at feedrate F, then a little bit later the endmill center is at the position of the purple cross, and the cutting tooth has rotated and gone out of the material. The resulting chip of material that was cut during that time is the green part.
It starts out very thin, and gradually increases in thickness. The maximum thickness (noted "C" below) happens when the cutting edge exits the material. It is typically called the "feed per tooth" or "chipload per tooth", or usually just "chipload", and this is the cornerstone of feeds and speeds.
"Climb" milling is when the direction of the endmill movement is such that the cutting edges bite from the outside to the inside of the material. In that situation, a cutting edge first bites a large chunk of material (blue position), and as the endmill rotates and moves to the right at feedrate F, the cut gets thinner, until the tooth has nothing left to cut (purple position). The resulting chip (in green) has a similar shape than in conventional milling, and again the max thickness of the chip is the chipload.
So why does chipload matter so much ?
A large chipload requires a lot of router torque and machine rigidity, and each endmill has recommended chipload limits from the manufacturer anyway (i.e. there's always a limit to the size of the bite you can take, whether you're a squirrel or a white shark).
A too small chipload is actually worse: since the cutting edges are not infinitely sharp, at some point instead of slicing into the material, the cutting edges will mostly rub against the surface, and then "heat happens" and this is very bad for the quality of the cut and for tool life. In CNC, rubbing is the enemy.
So this is a Goldilocks situation: the chipload must be high enough to avoid rubbing and overheating of the endmill, and small enough to be within the torque/rigidity limits of the machine and the endmill's rated maximums.
Each flute contributes in turn to removing material during one revolution of an endmill. If we sketched N successive bites that the endmill takes into the material, it would look something like this:
If the endmill has N flutes, one revolution will cut N chips, i.e. a length of N x chipload of material. Since the endmill revolves at RPM turns per minute, in one minute a length of N x chipload x RPM will have been cut. And the distance being cut per minute is exactly the definition of feedrate, therefore Feedrate = N x RPM x Chipload, which also means:
This relation is quite intuitive:
for a given endmill and RPM, the faster the feedrate the larger the chipload.
for a given feedrate and RPM, an endmill with more flutes will cut thinner chips.
for a given feedrate and endmill, the faster the endmill rotates the thinner each chip will be.
The important takeway here, is that there are many possible combinations of feedrate, endmill type, and RPM to reach a given chipload. Say you are using a feedrate of 1000mm/min (39ipm), and a 3-flute endmill at 10.000RPM. Given the formula, you may just as well use a 2-flute endmill at 15.000RPM, or keep the 3-flute endmill but spin it at 20.000RPM while increasing feedrate to 2000mm/min (79ipm), the chipload thickness would be the same:
For a given chipload, some combinations are still better than other mathematically-equivalent ones though (more on this below). Since the feedrate/RPM combination is derived from the desired chipload value, let's first have a look at what the range of acceptable chipload values is for the Shapeoko.
For the minimum chipload value to avoid rubbing, there is a large consensus in the CNC community that a value of 0.001" (0.0254mm) is a good absolute lower limit guideline, at least for 1/4" endmills and larger. It may need to be lowered to 0.0005" for 1/8" and smaller endmills.
The maximum reachable chipload depends on a lot of things, but mostly:
the hardness of the material being cut
the type and diameter of the endmill (smaller teeth need to take smaller bites: the maximum chipload for a given endmill scales linearly with its diameter)
the toolpath used (how wide/deep the cutter is engaged) and the rigidity of the machine: it is quite easy to forget that the Shapeoko is not as rigid as industrial CNCs, so endmill manufacturers recommendations may not be directly suitable for the Shapeoko. Any mechanical mod of the machine also impacts the max chipload capability.
The Shapeoko's limits must also be accounted for: the absolute maximum theoretical chipload on a stock Shapeoko would be reached when using a single-flute endmill at the lowest RPM (10.000RPM on the Makita router) and at the fastest feedrate of 200 inch per minute, and that would be 200/(1x10.000) = 0.02" = 0.5mm
So all chiploads should be somewhere between 0.001" and 0.02".
The following is an (arguable) table I am using as a personal reference, which I derived from analysis of a large number of feeds and speeds settings shared in the Shapeoko community, as well as my own experimentations. Do not take it for granted, start above 0.001" and increase it incrementally (by keeping RPM constant and increasing feedrate) to find the limits for your machine and for a given material. Higher chiploads are definitely possible (but may not be desirable)
Soft wood & hard plastics
Hard wood & metals
Now we have to take a little detour and talk about stepover, because it impacts the effective chipload.
"Stepover" refers to the offset distance of the endmill axis between one cutting pass and the next one, which also translates into how much new material is being removed by the endmill, or how much radial engagement is put on the endmill. It's also called Width of Cut (WOC) or Radial Depth of Cut (RDOC)
In the example below, the stepover S if 50% of the endmill diameter:
The larger the stepover, the larger the force on the endmill. Cutting passes with a small stepover are better for surface finish quality, while passes with large stepover obviously reduce overall cutting time since fewer passes are required to cut a given amount of material. And then depth of cut will also come in the picture (more on this later).
As a side note, for ball endmills, stepover value influences surface finish quite a lot. Consider the following sketch of a side view showing multiple passes:
Due to the geometry of the endmill tip, scallops of residual material will be left at regular intervals on the bottom surface. These will be more or less visible depending on how well the material can hold small details (a 20% to 33% stepover should be small enough for wood, while it could need to be lowered down to 10% stepover for metal)
The chipload values discussed earlier assumed that the stepover is at least 50% of the endmill diameter:
Now consider what happens if the stepover is lower than 50% of the diameter, say 20% only:
For the same RPM and feedrate, the actual chip is smaller, its maximum thickness is smaller than targeted, so there is again a risk of rubbing, or at least of sub-optimal heat removal.
The solution is to artificially target a higher chipload value (all other parameters staying the same), such that the actual size of the chip is increased to approximately what it would have been if the cutter were engaged at 50%:
The formula to determine this higher, adjusted target chipload is:
At this stage, the material is known, the endmill geometry is known, chip thinning is accounted for, which gave us an adjusted target minimal chipload. The remaining part is to chose a specific combination of RPM and feedrate values that together will produce this chipload, following the formula described earlier.
In theory, there are two options: selecting a feedrate value and solving for the associated required RPM value, or selecting an RPM value and solving for the associated feedrate.
In practice, the latter is done. The main reason is that the traditional way to determine feeds and speeds (especially when cutting metal) is to start from the required SFM (Surface Feet Per Minute): this is the linear speed of the edge of the cutter, and it should within a certain range depending on the material and the endmill. And to achieve a given SFM for a given endmill diameter, only the RPM needs to be determined:
In practice, for most of the materials cut on a Shapeoko, there is a wide range of acceptable SFMs, so RPM could initially be chosen pretty much anywhere within the router's RPM limits (10k to 30k for the Makita/Carbide router, 16k to 27k for the Dewalt router, and typically a few hundred to several tens of kRPM for spindles)
Low RPMs are quieter (significantly so with a router), but induce higher forces on the cutter (more on this later)
High RPMs induce lower cutting forces and generally provide better finish quality, but will also require higher associated feedrates to maintain a correct chipload: feeding faster can be a little scary at first, and leaves less time to react should anything go wrong.
A rule of thumb is therefore to set RPM to "the maximum value you can tolerate and feel comfortable using", and then determine the associated feedrate to get the right chipload.
Material is hard wood and endmill is a 3-flute 1/4" => the chipload table recommends up to 0.002"
Say we use a 25% radial depth of cut / stepover, i.e. 25% of 50% of 1/4" = 0.03125'', so adjusted chipload is:
The ideal setting would be to max out the RPM, say 24.000 (to take an example that is reachable on the Makita, DeWalt, and common spindles). The required feedrate would then be :
That is above the capability of the Shapeoko (200ipm), it would be scaringly fast for cutting hard wood, and 24.000 RPM may sound too loud to your taste anyway. Let's say we decided to go for 16.000 RPM instead, the required feedrate would become:
If going 144ipm still feels a little fast, it possible to obtain the same chipload at lower RPM and lower feedrate, e.g. 12.000RPM and 108ipm, at the expense of higher cutting forces (which or may not be a problem, see power analysis section later below)
Alternatively it is also possible to lower the feedrate by targetting a smaller chipload while ensuring it is still at least at the minimum recommended value of 0.001", and assuming you are using a sharp enough cutter:
To get a 0.001" effective target chipload, the adjusted target chipload would become 0.0015"
the feedrate would then be 0.0015 * 3 * 16.000 = 72ipm
Depth of Cut (DOC) a.k.a. Axial Depth of Cut (ADOC) a.k.a. Depth Per Pass, is how deep into the material the endmill will cut, along the Z axis. For a given feedrate and RPM, the deeper it is the larger the forces on the endmill.
Multiple cutting passes at depth of cut d will be required to cut down to a total pocket depth of D:
DOC is just as important as feeds & speeds to achieve a good cut, yet surprisingly there is much less information about how to determine its value, compared to the abundance of feeds and speeds charts.
The reason is probably that while there are mathematical recipes to choose feedrate and RPM for a given endmill geometry, the achievable DOC is much more tightly linked to the specific machine you are using, and specifically its rigidity and power.
The Shapeoko is not as rigid nor as powerful as pro CNC machines, so DOC recommendations for these machines need to be dialed back, even when using perfect feeds and speeds.
There is a strong dependency between DOC and WOC: since cutting forces increase with both DOC and WOC, you cannot cut very deep while using a very large stepover, that would put too much effort on the endmill. So the two choices are:
large WOC but small DOC
small WOC but high DOC
These two situations are illustrated below:
The "small WOC, high DOC" approach is much preferable, as it spreads the heat and tool wear much more evenly along the length of the endmill. However, it requires specific toolpath strategies (e.g. to initially clear material down to the required depth, to allow small WOC to be used for the rest of the cut), this is covered in the Toolpaths section. This is a very popular approach when cutting metals on the Shapeoko, but its benefits apply to other materials too.
The "large WOC, small DOC" approach only ever uses the tip of the endmill, so that part will wear out quickly while the rest of the endmill length of cut remains unused. But it is still a very common approach for pocketing and profile cuts on the Shapeoko, and it has simplicity for it.
Unlike chiploads that NEED to be in a specific range to get good cuts, the situation is easier for DOC and WOC: you can just start with small, conservative values and then increase them to find the limit for your machine/endmill/material combination.
For the "wide and shallow" cut scenario (large WOC, small DOC), I like to start in this ballpark:
5% to 10% of the endmill diameter for metals e.g. aluminium
10% to 50% of the endmill diameter for softer materials
40% to 100% of the diameter of the endmill for roughing
5% to 10% for finishing passes
For the "narrow and deep" cut scenario (small WOC, large DOC), I like to use these guidelines:
100% to 300% of the endmill diameter
10% to 25% stepover for roughing
5% to 10% for finishing passes
possibly even less for the hardest materials (e.g., 4% for steel)
The figures above provide a ballpark for DOC and WOC, taking into account two specific cases: slotting, and corners.
Depending on the stepover, the portion of the endmill that will be engaged in the material, a.k.a. the Tool Engagement Angle (TEA), will be different:
For a 50% stepover, the TEA will be 90°:
For a smaller stepover, say 25%, the TEA will be reduced (in this case to 60°):
Slotting is a different story: half of the endmill is engaged at all times, so the TEA is 180°:
The force on the endmill will be much higher than when cutting at 90° TEA, so the max achievable chipload/DOC combination for a given machine/endmill/material is lower. The recommended chipload/DOC values mentioned above include some margin to take this effect into account to some extent.
The other side effect of slotting is that chip evacuation is not as good: the flutes are in the air only 50% of the time, so the chips that form inside them have less time/fewer opportunities to fly away. Deep slotting is notorious for causing issues when chips cannot be evacuated quickly enough.
Bottomline: slotting is hard on the machine, so you may have to:
limit DOC to the low end of the range of values
limit feedrate (chipload...)
optimize chip evacuation by using endmill with a lower number of flutes, and/or a good dust shoe or blast of air
Not that you will ever need to use it, but for the math-inclined among you, here's the equation to compute TEA from stepover value:
While we are talking about TEA, let's take a look at what happens when cutting a square pocket at 50% tool engagement (90° TEA) and reaching a corner:
Just before moving into the corner, the tool engagement angle is 90°:
But while cutting the corner, the TEA momentarily goes up to 180°:
before going down to 90° again. So the machine sees a "spike" in the cutting resistance at each corner. Just like for slotting, this means that the feedrate and DOC cannot be as high as one would like, since they need to be dialed back a bit to manage corners.
All of the info above only focused on the feeds and speeds for the radial part of the cut, but when the endmill is plunging (straight down/vertically), things are quite different:
(obviously) the cutting edges on the circumference of the endmill are not cutting anything anymore, the cutting happens at the tip of the endmill only, like a drillbit.
BUT endmills are really not optimized for drilling, so their ability to plunge efficiently through material is quite limited.
One could compute specific plunge rate and RPM based on the specific geometry of the tip of the endmill, but in practice it's easier to just:
use the same RPM as for radial cuts. This is a given when using a router where there is no dynamic control on the RPM anyway, so the same value is used throughout the cut.
use a plungerate that is experimentally chosen, following the rule of thumb
10% to 30% of the feedrate for metals
30% to 40% of the feedrate for woods
40% to 50% of the feedrate for plastics (plunging fast is required to avoid melting)
Endmills are not infinitely rigid, they tend to bend (deflect) when submitted to the cutting forces, and that deflection needs to be taken into account in the feeds and speeds. Here is a grossly exaggerated sketch of an endmill being subject to the cutting force:
The amount of deflection depends on the endmill material (carbide is more rigid than HSS), diameter (larger is stiffer), stickout length, and of course the cutting forces that the endmill is subjected to, that depend on the chipload, DOC, WOC, and material.
When using conventional milling, the force tends to be parallel to the stock:
When using climb milling, the force tends to be perpendicular, i.e. push the endmill away from the material:
Either way, too much deflection is bad:
moderate deflection will affect accuracy (pieces will cut slightly larger or smaller than expected)
excessive deflection will cause tool wear or even tool breakage
So this is yet another parameter to watch out for when selecting feeds and speeds and DOC/WOC values, especially when using small diameter endmills.
The direction of the cut (climb versus conventional milling) pertains to the toolpath's generation options and not directly to the feeds and speeds, but while we are on this topic: since tool deflection is mainly perpendicular to the cut when using climb milling, it would seem like it is better to use conventional milling, to keep deflection parallel the cut and therefore minimize dimensional errors on the final piece. However there are other factors at play:
in conventional milling, the chip is cut from thin-to-thick, so by definition when the flute first comes in contact with the material, it is rubbing the surface a little before it starts actually cutting into the material. This temporary rubbing amounts to heat, so on the long run a conventional cut produces more heat, leading to faster tool wear. Climb milling, since it cuts chips from thick-to-thin, does not have this problem.
for the same "thick-to-thin" reason, climb milling is a little more tolerant of less-than-perfectly-sharp endmills.
in conventional milling, the cutter flutes move against the direction of the feedrate, so chips are more likely to be pushed to the front of the cut, leading to chip recutting which is bad for finish quality. In climb milling, the chips tend to be pushed to the back of the endmill / behind the cut, so they are much less prone to recutting.
in climb milling, the router torque pushes in the same direction as the feedrate, while in conventional it fights again the feedrate, so the forces on the stepper motors are higher.
climb milling used to have a bad rep for being dangerous to use on machines with a lot of backlash. While this was perfectly true on older manual mills, the point is moot on CNCs in general and the Shapeoko in particular.
So when all is said and done, climb milling wins on almost every aspect except deflection. The Toolpaths section will cover the notion of "roughing" versus "finishing" toolpaths, and that will then open the way for the best approach: using climb for roughing, then conventional for finishing.
This way, climb and its many advantages is used for most of the cut, and the possible deflections happening during this roughing pass will be taken care of by the light conventional finishing pass (where the drawbacks of conventional will be irrelevant, since this finishing pass puts such low efforts on the machine anyway, and chip evacuation is not a problem either)
If you need to optimize cutting time for a given piece, you will also need to take a look at the material removal rate (MRR):
This yields a value in cubic inches (or cubic millimeters) of material removed per minute, and therefore relates to how fast you can complete a job. There is always a compromise to be found between going faster but with a lower tool engagement (low DOC and/or low WOC), or going slower but with a higher tool engagement (higher DOC or high WOC), while staying within the bounds of what the machine can do. The interesting thing about the MRR figure is that it allows one to compare different combinations, and figure out which one is the most efficient (time-wise).
Now if you want to figure out how close you are to the absolute/physical limits of the Shapeoko, (yet) another formula comes in the picture, to characterize the required power at the endmill level to achieve this MRR:
the "K" factor (or its inverse value the Unit Power) is a constant that depends on the material's hardness, and corresponds to how many cubic inches per minute (or cubic millimeters per minute) of material can be removed using 1 horsepower.
6061 T6 aluminium has a K of 3.34 cubic inches per minute
it's about 10 in³/min for hard woods ahd hard plastics
and up to 30 in³/min for soft woods, MDF, ...
Once you get this power value, you can compare it to your router's maximum output power. The Makita and DeWalt routers are rated at a max of 1.25HP (932Watts), but that is input power, and the power efficiency of a router is not very good (~50%), so the max actual power at the cutter is more likely around 450W.
And finally, even if the cutting power is within the range of your router, there is still the matter of the cutting force that the Shapeoko has to put on the endmill to move it through the material:
In metric units, the torque is the force (in Newton) times the distance in meters (in this case the radius of the endmill), and power in Watts is torque times the angular velocity w, in radians per second. Since the cutter does RPM revolutions per minute and each of them is 2*pi radians:
or in the Imperial units converting N.m to lbf-in (x8.85 factor) , since (60 * 8.85) / (2 * 3.14159) = 84.5:
and finally cutting force is:
So all of this can be derived from the feedrate, WOC, DOC, endmill size, and material. And this cutting force can then be compared with the Shapeoko's limit estimated (experimentally) to be around 20 lbf (9Kg)
A proposed workflow to determine a reasonable starting point for feeds and speeds and DOCs on the Shapeoko for a given project that uses a specific material and endmill, is:
select a target chipload in the recommended chipload range for this material+endmill combination
refer to my proposed guideline table, or roll your own. Aim for the low end of the range, to reduce cutting force.
determine depth of cut and width of cut (stepover) based on the machining style you want (large WOC and small DOC, or large DOC and small WOC).
if stepover is less than 50%, adjust target chipload for chip thinning.
select target RPM as the maximum value you can tolerate and feel comfortable using.
determine the required feedrate for this RPM to achieve the adjusted target chipload
if computed feedrate exceeds the Shapeoko limit, choose a lower RPM value and recompute feedrate.
determine plungerate depending on the material.
check deflection value to make sure there is no risk of breaking the tool, and to optimize dimensional accuracy and finish quality.
check that cutting power is within the router's limits.
check that cutting force is within the machine's limits.
check MRR to compare the efficiency of various cutting parameters.
Then...experiment. The realtime feedrate override available in most G-code senders is a great way to tune the chipload value and find the sweet spot for a particular job.
This section should have highlighted that MANY factors influence the selection of adequate feeds & speeds & DOC & WOC settings.
While predefined recommendations for common endmills and materials are very useful, at some point it becomes impossible to produce feeds & speeds charts for every possible combination of factors, and also very tedious to compute everything manually. A number of calculators have been implemented to address this, ranging from free Excel spreadsheets that basically implement the equations mentioned above, to full-fledged commercial software that embed material/tool databases, the most famous one probably being G-Wizard.
Whether or not you need a feeds & speeds calculator is debatable: most people use a limited number of combinations of material/endmill sizes anyway, in which case relying on a few good recipes for your machine is enough. The real value of calculators is in optimizing the feeds & speeds for a particular situation, and to see the effects of any parameter change on the rest of them.
A pretty neat feeds and speeds worksheet has been put together by @gmack on the Shapeoko forum (which he derived from an original worksheet from NYCCNC website). I have attached a version here for convenience, but you may want to check if a more recent version is available on the forum.
fill-in the specs of your router or spindle (once).
fill-in the specs of the selected endmill, and the target chipload value you chose (chip thinning will be taken into account automatically depending on WOC value)
if you care about power/force analysis, look-up the K-factor for the material being cut (there's a list in a separate tab of the worksheet) and update it here.
select target RPM value (or alternatively SFM, then RPM will be derived from it).
select WOC and DOC (depending on your machining style)
The required feedrate to reach the target chipload will be computed. You can alternatively choose to override it with a given feedrate value (and see what this does to chipload displayed below), OR to forget about chipload and use a given cutting force as the ultimate target. Either way, the feedrate to be used will be displayed at the right end of this line.
You can then check the analysis of deflection, cutting force, and power in the lower part of the worksheet.
Then play with the input values to compare various cutting scenarios while staying within the machine's hard limits (max RPM, max feedrate, max power, and max cutting force)
If you still feel overwhelmed or don't care about optimizing power, force and deflection, I derived a more basic version:
fill-in the number of flutes and diameter of your endmill
pick a target chipload value from the guideline table on the right
select an RPM value
select WOC and DOC based on the recommanded values on the right (derived from the selected endmill diameter)
This basic worksheet will just compute the required feedrate to get the desired chipload (taking chip thinning into account). If the computed feedrate turns red, it is beyond the limit of the Shapeoko, and you should select a lower RPM and/or use an endmill with a lower flute count.
The most common signs of inadequate feeds and speeds are:
sound, and specifically chatter: when feeds and speeds are not right for a given material/endmill/DOC/WOC, the tool tends to vibrate, and this vibration can get worse if there is resonance with another source of periodic variation elsewhere in the system (most often: the router and its RPM). This results in an ugly sound, a poor finish with marks/dents/ripples on the surface, and a reduced tool life.
finish quality: even without chatter, a poor surface finish can indicate that the final cutting pass was too agressive (too much chipload or too much deflection). Increasing RPMs may help, but the best approach is to use a finish pass with very low WOC.
melted material: especially in plastics and soft metals like aluminium, if the feedrate is too low for the selected RPM, the friction will cause the material to melt rather than shear, the tool flutes will start filling with melting material, and this usually ends up with tool breakage. You will need to feed faster, and/or use an endmill with a lower flute count.
endmill temperature: the endmill should not be more than slightly warm at the end of a cut: if it gets hot to the touch (careful!), the feeds and speeds are likely incorrect (too low or too high chipload), or the tool is dull and is rubbing rather than cutting. In extreme cases, the endmill color itself may change to a dark shade.
making dust, instead of clearly formed chips is an indication that chipload is probably too low (MDF is an exception, you just cannot get chips anyway with this material)