CAM Tools
Description
This page describes the tool management system of the CAM Workbench. Tool Shapes, Tool Bits and Tool Libraries are stored as files (assets) in a user-configurable asset directory and are managed through the Library Manager. introduced in 1.1: the tool management system was rewritten around a CAM asset store; the Toolbit Parameter Editor, Toolbit Selector and Library Manager described below replaced the earlier dialogs.
There are several concepts that the user needs to understand:
-
Tool Shapes: are templates for creating Tool Bits. Tool Shapes are FreeCAD documents (
.fcstd) containing a PartDesign Body driven by a PropertyBag namedAttributes. The label of the Body selects the shape type (for example Endmill or Drill), which defines the list of parameters a Tool Bit of that shape carries. An unknown label is treated as the Custom shape. The Tool Shape is an abstract template from which tool instances (called Tool Bits) are created; for example, all endmills share the same Tool Shape file. -
Tool Bits: are instances of a Tool Shape. A Tool Bit is a
.fctbfile (JSON) holding a reference to a Tool Shape, the values of the shape parameters and additional attributes (Units, Spindle Direction, Material, Chipload, Feeds & Speeds presets). A Tool Bit is identified by its file name (ID) and may be listed in any number of Tool Libraries. A Tool Bit is used in a Job through a Tool Controller. -
Tool Libraries: contain an arbitrary collection of Tool Bits. The specific Tool Bits in a library are entirely up to the user. Possible use cases for libraries:
-
A hobbyist user may have only one library for all of the tools they own.
-
A library may contain all the Tool Bits used for a specific material like aluminum or wood.
-
A library may hold Tool Bits from a specific supplier.
-
A library may correspond to an automatic tool changer layout.
-
A Tool Controller pairs a Tool Bit with a tool number, spindle speed and direction, horizontal and vertical feed rates, rapid rates and (by default derived from the horizontal feed) ramp, lead-in and lead-out feed rates.
Dialogs
The user interacts with the tool management system through two dialogs reached from the CAM menu:
-
Add Toolbit… (, window title Toolbit Selector): pick Tool Bits from a library and add them to a Job as Tool Controllers.
-
Toolbit Library Manager (, window title Library Manager): create, edit, import and export Tool Bits and Tool Libraries.
Organization
When FreeCAD is installed an example hierarchy of Tool Libraries and Tool Bits is created in the installation directory at:
-
On Linux it is usually
/usr/lib64/FreeCAD/Mod/CAM/Tools -
On Windows it is usually
C:\Program Files\FreeCAD\Mod\CAM\Tools -
On macOS it is usually
/Applications/FreeCAD.app/Contents/Resources/Mod/CAM/Tools
Tools + Bit + Library + Shape
introduced in 1.1: user Tool Bits, Tool Libraries and Tool Shapes are stored in the CAM asset directory, by default CamAssets inside the FreeCAD user application data directory. The location is set in (see CAM Preferences). The directory contains Tools/Bit, Tools/Library and Tools/Shape as well as Machines (machine templates) and Templates (Job Templates). On first use the shipped Tool Bits and the Default library are copied into this directory; the shipped Tool Shapes are resolved from the installation as a fallback.
Changes made in the Library Manager (new libraries, renamed libraries, new or edited Tool Bits, tool numbers) are written to the asset directory immediately; there is no separate save step.
Migration from earlier versions
introduced in 1.1: when the CAM Workbench is activated and a custom tool directory from an earlier version is found, a CAM Asset Migration dialog offers to copy the Tool Bits, Tool Libraries and Tool Shapes into the asset directory. Tool Bits embedded in older documents are upgraded when the document is opened (legacy property names such as ShapeName and BitShape are converted).
The legacy (pre-0.19) tool table is not supported; templates that reference legacy tools are rejected with the message that legacy tools are no longer supported. obsolete since 1.1
Getting started
Create a Tool Bit
-
Select .
-
Select the library that should receive the new Tool Bit, or All Toolbits to create a Tool Bit that is not yet in any library.
-
Press the Adds a toolbit button. The Toolbit Shape Selection dialog lists the shipped and user Tool Shapes.
-
Select a shape. The Toolbit Parameter Editor opens; enter a Label, the Tool Number and the shape parameters and attributes, then press OK. The Tool Bit is saved to the asset directory and added to the selected library immediately.
Feeds and speeds
introduced in 26.3: a Tool Bit can store Feeds & Speeds presets (surface speed and chipload per material and operation type). The Feeds and Speeds helper of the Tool Controller editor uses these presets, the Stock material and the Machine spindle limits to suggest spindle speed and feed rates. See CAM FeedsSpeeds.
Tool update from library
introduced in 26.3: Tool Bits embedded in a Job keep the ID of the library Tool Bit they were created from. When a document is opened, CAM compares the embedded Tool Bits with the library and offers to replace changed ones (Tool Updates Available dialog). The check can be run manually from the Job’s context menu (Update Tools from Library) and disabled in .
Tool Bit units
introduced in 26.3: every Tool Bit has a Units attribute (Metric or Imperial). The Toolbit Parameter Editor shows the parameters in that unit system; internally all values remain millimetres.
Import and export
Tool Bits can be imported from and exported to .fctb (FreeCAD Tool) and YAML (.yaml, .yml) files; Tool Libraries can be imported from and exported to .fctl (FreeCAD Tool Library) and Camotics (.json) files and exported as a LinuxCNC tool table (.tbl).
Machines
Machine templates (.fcm) are also stored in the asset directory (Machines folder) and are managed from . See CAM Machine.