Understanding firmware: how does CNC "work"? (relative it to FDM printing, sorry for the maybe stupid question)

I know FDM is additive (build from the bottom up) and CNC is a subtractive (taking material away presumably top to bottom, which is where I start coming up with questions). That’s the source of my initial confusion. I know this is an expansive question, so please feel free just to drop a link to a youtube video or online resource that sort of walks through it, if available.

More to the software/firmware side: I’m coming to CNC from 3D printing. I’ve used a few different kinds of firmware, mainly marlin and klipper. The “concepts” of additive printing seem evident in the firmware, and same for the slicing software as it pertains to planning a print (supports, etc). When I start thinking about CNC firmware and software, I try to relate that to 3D printing and get confused on some things.

Consider a topographical map of a mountain. If I were to print that it would print the base, outlining the contours, and just continue up from there. But CNC…does is take away top layer first, bottom layer first, or does it work 3 dimensionally, using X, Y, and Z simultaneously, like its just clearing a path?

After about a year of 3D printing, I realized I could have made it much farther much faster if I’d understood the firmware and software better before I even started. Also saved a bunch of money and just started with the right upgrades first, the ones I didn’t know I needed or how to use until I understood how it all actually worked. Now, getting started in CNC, I am trying to do it right and start where I should - firmware and software, and then bring the hardware along. Just starting printing parts for the lowrider so I am excited to get started. Thanks for any advice.

2 Likes

Here’s a time lapse video of a multiple step carving of a stormtrooper helmet on an MPCNC (not my content).

In FDM printing, at the risk of seriously over simplifying the situation, there are 2 interacting sets of “limits” that control how fast you can get an object printed:

  • How much material can the extruder push through
  • How fast can the machine move the print head around

When building an item “from the bottom up” it is generally safe to move the print head rapidly on the same level, because there shouldn’t be anything for it to run into.

With subtractive manufacturing, there’s a similar but slightly different pair of limits:

  • How much material can the tool remove with acceptable finish quality (and without damaging the “cutter”)
  • How fast can the machine move the tool through the material while maintaining positional accuracy (rigidity is a prime new factor to consider here when coming from 3D printing)

With milling, it is often necessary to move the tool “up” to a safe level when moving around the job. On many machines the Z is more precise (e.g. lead screw rather than belt driven), and often times slower, than X and Y.

Different tooling can remove material at different rates, and with different final finish. Some tools cut with an edge (think “router bit”), some with a point (think "drill bit), some with a combination (some, but not all, endmills), some through what appears to be black magic (lasers and plasma cutters). Some roughing cutters can plow out huge amounts of material, but leave a coarse finish. Some cutters leave a mirror finish, but only when taking a very “thin” cut or engaging only part of the tool’s cutting edge. It is often best to use a blend of cutters to complete a particular job with acceptable accuracy and finish.

Your given example of a topographical map would probably be accomplished in the same way as the stormtrooper vide. A roughing cutter (1/4" end mill) could be used to remove large amounts of material, then a detail cutter (1/4’ ball-end end mill) with a rounded tip would refine much closer to the final shape. A “finishing pass” with fine tool (1/8" ball-end end mill) then gets to the final item shape. Notice how much more closely spaced the passes are as the tool gets smaller.

1 Like

The V1 firmware is based on Marlin, so it should be fairly familiar. You can use the same 3D design software to generate models for carving/milling as you would for 3D printing. The bigger software change is in the Computer Assisted Machining (CAM) software. This is roughly analogous to the “slicer” in 3D printing. It analyzes the model and sets up the tool moves needed to achieve the desired end product, but because of the variety of tooling to choose from, it tends to be less “fire and forget” than the slicer can often be.

Take a look at the Software Workflow page in the Docs section. It covers this in good detail.

3 Likes

The firmware for CNC is much simpler. A lot more of the decisions and algorithms go into the CAM software (sort of like a slicer, but much less automatic).

The cam decides what moves and speeds to move the bit. The firmware has no idea what bit is in there, or even why it is moving. It just moves. The CAM decides where to move everything.

2 Likes

This is EXACTLY what I was looking for! Thank you. My lowrider parts are on the way, printer is churning stuff out, this is a project I’m getting excited about.

Here is a good video show a process for relief carving some terrain. CAD/CAM starts about 2:00 in the video. I learned a lot from Winston’s older videos (starting about 5 years ago).

1 Like