Skip to content

Operation Parameters

In one sentence: Every CAM operation shares a common set of depth, height, and tool controller parameters that control how far the cutter cuts and how it moves between cuts — understanding these is the foundation of safe, efficient toolpath generation.


The parameter hierarchy

Parameters flow from broad to specific:

Job → Setup Sheet (defaults for the whole job)
       └── Operation (can override any Setup Sheet value)
                └── Dress-up (post-processing modifier applied on top)

When you change a value in the Setup Sheet, all operations that have not been individually overridden update automatically. Operations with a manual override keep their own value.


Depth parameters

Depth parameters control the Z range of the cut. All operations share these.

Parameter Meaning Typical source
Start Depth Z level where the tool first contacts the stock Top face of the stock, or a step above a previous pass
Final Depth Z level at the bottom of the cut Bottom of the pocket, or bottom of the stock for through-cuts
Step Down Maximum depth removed per Z-level pass 25–50 % of tool diameter (soft); 10–25 % (hard)

The operation generates passes at Start Depth, Start Depth − StepDown, Start Depth − 2×StepDown, … down to Final Depth. The last pass always lands exactly at Final Depth even if the final step is smaller than StepDown.

Choosing Step Down

Material Recommended Step Down
Softwood, MDF, foam 50–100 % of diameter
Hardwood, aluminium (large tool) 25–50 % of diameter
Aluminium (small tool < 6 mm) 10–25 % of diameter
Mild steel 5–15 % of diameter
Stainless / hard alloys 3–10 % of diameter

A smaller Step Down means more passes but less cutting force per pass. Underpowered machines or long-reach tools require smaller Step Down to avoid deflection and breakage.


Height parameters

Height parameters control rapid (non-cutting) Z positions.

Parameter Meaning Typical value
Safe Height Z level for rapid repositioning over the stock surface 5–10 mm above top of stock
Clearance Height Z level for rapid moves between separate cut regions Above all clamps and fixtures

The tool moves to Clearance Height between separate cut regions (e.g. between two pockets on the same face). It moves to Safe Height for shorter repositions within a region where no obstacle exists between the current and next position.

Clearance Height must clear all clamps

Measure your tallest clamp and set Clearance Height above it. A rapid move at Safe Height can crash into a clamp if only Safe Height is used and it is too low.

Both heights are absolute Z, not relative to stock

If the stock is at Z = 50 mm (mounted on a riser), a Clearance Height of 10 mm would drive the tool into the stock. Heights are in the model's coordinate system — add the stock elevation.


Tool controller

Every operation has a Tool Controller property that assigns:

  • Which tool bit (geometry — diameter, shape, flute count) to use.
  • The feed rates and spindle speed for that tool.
Property Description
Tool Reference to a .fctb tool bit definition
HorizFeed Cutting feed rate for XY motion (mm/min)
VertFeed Plunge feed rate for Z motion (mm/min)
SpindleSpeed Spindle speed (RPM)
SpindleDir Clockwise or counter-clockwise

See Tool Controller for detailed setup. See Feeds and Speeds for how to calculate correct values.

Default Tool Controller selection

When you add an operation, it defaults to the first Tool Controller in the Job. Always verify the correct tool is assigned before generating the toolpath.


Operation-specific parameters

Beyond the common parameters, each operation type has its own settings. Examples:

Operation Key specific parameters
Profile Side of cut (inside/outside), offset distance
Pocket Pattern (zigzag, offset, spiral), step-over
Drilling Drill cycle type (G81/G82/G83), peck depth, dwell
Adaptive Clearing Step-over, lift height
Engraving Start depth only (engraving is always shallow)
Face Milling Step-over, boundary extension

Setup Sheet inheritance

The Job's Setup Sheet stores default values for all the shared parameters. When you create an operation, it inherits Setup Sheet values. You can override any parameter per-operation.

To reset an overridden parameter back to the Setup Sheet default: right-click the parameter in the operation's Properties panel and choose Reset to default (or delete the per-operation value).

Setup Sheet: Final Depth = −10 mm, Step Down = 2 mm, Safe Height = 15 mm
Operation 1:  (uses all Setup Sheet defaults)
Operation 2:  Final Depth overridden to −5 mm  (other params still inherited)

Python API

import FreeCAD as App
import Path

doc = App.ActiveDocument
job = doc.getObject("Job")

# Access an operation's properties
op = doc.getObject("Profile")
print(op.StartDepth)      # App.Units.Quantity
print(op.FinalDepth)
print(op.StepDown)
print(op.SafeHeight)
print(op.ClearanceHeight)

# Change a parameter
op.FinalDepth = App.Units.Quantity("-15 mm")
op.StepDown   = App.Units.Quantity("1.5 mm")

doc.recompute()

See also