Keep your tool libraries synchronized across FreeCAD, CNC controllers, and tool management systems
You maintain tool data in multiple places:
- FreeCAD for CAM programming
- CNC Controller for actual machining (LinuxCNC, etc.)
- Spreadsheets for inventory tracking
- Shop Floor paper lists
- Camotics simulation
When a tool changes (new tool, new insert, wear offset, replacement), you update each system manually.
❌ Errors happen
❌ Parts get scrapped
❌ Time is wasted
❌ Tool data diverges
Smooth is a tool synchronization system that keeps your tool libraries in sync - automatically.
┌─────────────┐ ┌──────────────┐ ┌─────────────┐
│ FreeCAD │◄────────┤ Smooth │────────►│ LinuxCNC │
│ CAM Tools │ │ Central Hub │ │ Tool Table │
└─────────────┘ └──────────────┘ └─────────────┘
▲
│
┌─────┴──────┐
│ Web UI │
│ Management │
└────────────┘
This addon connects FreeCAD's CAM workbench to Smooth, giving you one-click sync in both directions.
- One-click upload of your FreeCAD tool library
- Share tools across multiple machines and workstations
- Automatic backup of your tool data
- Custom shape files uploaded automatically
- Download standardized tool libraries to FreeCAD
- Get updates when tools are modified elsewhere
- Keep multiple FreeCAD installations in sync
- Pull changes from CNC controllers or other sources
- Track changes to your tool libraries over time
- Restore previous versions if something goes wrong
- See who changed what and when
- Complete audit trail for quality control
- Warns before overwriting newer tool data
- Choose which version to keep
- Never lose work due to simultaneous edits
- Smart merge options (coming soon)
Via Addon Manager (Recommended)
- Open FreeCAD
- Go to Tools → Addon Manager
- Search for "Smooth"
- Click Install
- Restart FreeCAD
Manual Installation
mkdir -p ~/.local/share/FreeCAD/Mod
git clone https://github.com/loobric/smooth-freecad.git Step 1: Find a Smooth Server You can self host a smooth server of get a free account at Loobric
Get the server url and an API key from the server.
Step 2: Configure FreeCAD
- Go to Edit → Preferences → CAM → Smooth
- Enter server URL
- Enter the API key
- Click Test Connection ✓
- Click Apply to save
Step 3: Start Syncing!
- Switch to CAM Workbench
- Click the "Sync with Smooth" button in toolbar
- Choose Export or Import
- Done! ✅
- Click "Sync with Smooth" button
- Select "Export new tools to Smooth"
- The addon reads your
.fctb(tool bits) and.fctl(library) files - Converts them to Smooth's universal format
- Uploads to the server
- Custom shape files are uploaded automatically
Result: Your tools are now in the central database, accessible from anywhere!
- Click "Sync with Smooth" button
- Select "Import new tools from Smooth"
- The addon downloads tool data from Smooth
- Converts back to FreeCAD format
- Writes
.fctband.fctlfiles - Downloads custom shape files
- Reloads FreeCAD library
Result: Your FreeCAD installation has the latest tools from the central database!
If someone else updated a tool library while you were working:
- Conflict Warning dialog appears
- Choose:
- Force Push - Overwrite server with your version
- Choose Version - View history and pick which to keep
- Cancel - Stop and resolve manually
- If you choose version, see full history with timestamps
- Select version to restore
- Sync completes successfully
- Technical Documentation - Developer guide, file formats, architecture
- Smooth Homepage - Learn about the complete Smooth ecosystem
- smooth-core - REST API server installation
- smooth-linuxcnc - LinuxCNC integration
- Issue Tracker - Report bugs or request features
Contributions welcome! This addon is open source (MIT License).
Ways to contribute:
- Report bugs or request features via Issues
- Improve documentation
- Submit pull requests
- Test with your tool libraries and report compatibility
See DEVELOPMENT.md for developer documentation.
MIT License - see LICENSE file
Smooth is developed by the Loobric project team.
- Homepage: https://loobric.com
- GitHub Organization: https://github.com/loobric
- Documentation: https://loobric.com/docs
Special Thanks:
- FreeCAD community for the amazing CAM workbench
- ISO 13399 standard for tool data modeling inspiration
- All contributors and testers
⭐ If you find Smooth useful, please star the project on GitHub! ⭐
Made with ❤️ for the FreeCAD community