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 named Attributes. 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 .fctb file (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:

  • CAM ToolTable Add Toolbit… (CAM  Add Toolbit…, window title Toolbit Selector): pick Tool Bits from a library and add them to a Job as Tool Controllers.

  • CAM ToolTable Toolbit Library Manager (CAM  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 Edit  Preferences  CAM  Assets (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

  1. Select CAM  Toolbit Library Manager.

  2. 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.

  3. Press the Adds a toolbit button. The Toolbit Shape Selection dialog lists the shipped and user Tool Shapes.

  4. 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.

Add a Tool Controller to a Job

  1. Select CAM  Add Toolbit… (or press P then T).

  2. Select a library in the drop-down, select one or more Tool Bits and press Add to Job, or double-click a Tool Bit.

  3. If the document contains several Jobs you are asked which Job to use.

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 Edit  Preferences  CAM  Assets.

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 Edit  Preferences  CAM  Assets. See CAM Machine.