CAM Drilling

From FreeCAD Documentation

CAM Drilling

Menu location
CAM → Drilling
Default shortcut
Introduced in version
See also


The Drilling tool generates a drilling Operation in the Job.

Above: CAM Drilling operation sample


  1. There are several ways to invoke the command:
    • Press the CAM Drilling button.
    • Select the CAM → Drilling option from the menu.
  2. In the Operation section:
    • Select a ToolController.
    • Select a Coolant Mode.
    • Optionally enable and adjust the following:
      • Peck set the Depth.
      • Dwell set the Time in seconds.
      • Extended Depth.
  3. In the Base Geometry section confirm that the list matches the holes that are intended for processing, and adjust add, enable, or disable, as necessary. Holes can be added by selecting the wall faces of the Holes.
  4. In the Depths section check, and if required adjust, the Start Depth and Final Depth.
  5. In the Heights section check, and if required adjust, the Safe Height and the Clearance Height.
  6. Press the OK button to generate the drilling path(s).


  • When using edges for Base Geometry, always select the bottom edge of the hole.
  • Always verify the tool chosen is the correct diameter for the hole(s) selected.
  • Peck disabled generates (G81 canned drill cycles). Peck enabled generates (G83 canned drill cycles).
  • Dwell enabled is currently unsupported, but is intended to generate (G82 canned drill cycles).


Note : Not all of these Properties are available in the Task Window Editor. Some are only accessible in the Data tab of the Properties View panel for this Operation.


Note: It is suggested that you do not edit the Placement property of path operations. Rather, move or rotate the CAM Job model as needed.

  • DataPlacement: Overall placement[position and rotation] of the object - with respect to the origin (or origin of parent object container)
    • DataAngle: Angle in degrees applied to rotation of the object around Axis property value
    • DataAxis: Axis (one or multiple) around which to rotate the object, set in sub-properties: X, Y, Z
      • DataX: X axis value
      • DataY: Y axis value
      • DataZ: Z axis value
    • DataPosition: Position of the object, set in sub-properties: X, Y, Z - with respect to the origin (or origin of parent object container)
      • DataX: X distance value
      • DataY: Y distance value
      • DataZ: Z distance value
  • DataLabel: User-provided name of the object (UTF-8)
  • DataDisabled: List of disabled features


  • DataClearance Height: The height needed to clear clamps and obstructions
  • DataFinal Depth: Final Depth of Tool- lowest value in Z
  • DataSafe Height: The height above which Rapid motions are allowed. (Rapid safety height between locations)
  • DataStart Depth: Starting depth of Tool - first cut depth in Z


  • DataAdd Tip Length: Calculate the tip length and subtract from final depth
  • DataDwell Enabled: Enable dwell
  • DataDwell Time: The time to dwell between peck cycles
  • DataPeck Depth: Incremental Drill depth before retracting to clear chips
  • DataPeck Enabled: Enable pecking
  • DataRetract Height: The height where feed starts and height during retract tool when path is finished
  • DataReturn Level: Controls how tool retracts Default=G98


  • DataActive: Make False, to prevent operation from generating code
  • DataComment: An optional comment for this Operation
  • DataUser Label: User assigned label
  • DataTool Controller: Defines the Tool controller used in the Operation

Rotation (when available)

  • DataAttempt Inverse Angle: Automatically attempt Inverse Angle if initial rotation is incorrect.
  • DataB_Axis Error Override: Visually orient B(y) rotations to model (error in FreeCAD rendering).
  • DataEnable Rotation: Enable rotation to gain access to holes not normal to Z axis.
  • DataInverse Angle: Inverse the angle of the rotation. Example: change a rotation from -22.5 to 22.5 degrees.
  • DataReverse Direction: Reverse orientation of Operation by 180 degrees.

Tasks Window Editor Layout

Descriptions for the settings are provided in the Properties list above.

This section is simply a layout map of the settings in the window editor for the Operation.

Base Geometry

  • Add: Adds selected element(s) which should be the base(s) for the path(s).
  • Delete: Delete the selected item(s) in the Base Geometry list.
  • Clear: Clear all items in the Base Geometry list.

Base Location

  • Add: Add an (X,Y) coordinate location to the current drilling operation.
  • Remove: Remove the selected location item(s) from the Base Location list.
  • Edit: Edit the selected location item.


  • Start Depth:
  • Final Depth:


  • Safe Height:
  • Clearance Height:


  • Tool Controller:
  • Retract Height:
  • Peck:
  • Peck Depth:
  • Dwell:
  • Dwell Time:
  • Use Tip Length:


See also: FreeCAD Scripting Basics.


#Place code example here.