From FreeCAD Documentation
Jump to: navigation, search


Assembly workbench for FreeCAD v0.15 with support for importing parts from external files. Please note that the Assembly 2 workbench is a work under progress and still contains bugs.

Intended work-flow:

  • each part in the assembly is designed in its own FreeCAD file
  • a separate assembly FreeCAD file is created
  • parts are imported to this assembly file using the Assembly 2 workbench
  • spacial constraints are then added to assemble the imported parts


  • circular edge constraint
  • axial constraint
  • plane constraint
  • part importing
  • updating of parts already imported


  • Poor constraint solver which may fail or take excessively long for complicated assemblies
  • undo and other similar features not supported





Drop down menu


  • Assembly2 ImportPart.png Import a part from another FreeCAD document
  • Assembly2 UpdatePart.png Update parts imported into the assembly
  • Assembly2 Move.png Move
  • Assembly2 CircularEdgeConstraint.png Add circular edge constraint
  • Assembly2 PlaneConstraint.png Add plane constraint
  • Assembly2 AxialConstraint.png Add axial constraint
  • Assembly2 AngularConstraint.png Create an angular constraint between two planes
  • Assembly2 SphericalSurfaceConstraint.png Add Spherical surface constraint
  • Assembly2 DOFAnimation.png Animate degrees of freedom
  • Assembly2 Assembly2Constraint.png Solve Assembly2 constraint
  • Assembly2 Mux.png Combine assembly into a single object (use to create a drawing of the assembly, and so on...)
  • Assembly2 ListParts.png Create a parts list from the objects imported using the assembly2 workbench
  • Assembly2 Ceck.png Ceck assembly for part overlap/interferance


  • Assembly2 BoltMultipleCircularEdges.png Bolt multiple circular edges
  • Assembly2 FlipConstraint.png Flip constraint
  • Assembly2 LockRotation.png Lock rotation
  • Assembly2 Preferences.png Preferences
  • Assembly2 Assembly2.png Assembly2 WB icon


Automatic installation

See Installing

From GitHub


Linux Installation Instructions (From GitHub)

To use this workbench clone this git repository under your FreeCAD MyScripts directory, and install the pyside and numpy python libraries. On a Linux Debian based system such as Ubuntu, installation can be done through BASH as follows

$ sudo apt-get install git python-numpy python-pyside $ mkdir ~/.FreeCAD/Mod $ cd ~/.FreeCAD/Mod $ git clone

FreeCAD you will now have a new workbench-entry called "Assembly 2". Once installed, use git to upgrade to the latest version through BASH as follows

$ cd ~/.FreeCAD/Mod/FreeCAD_assembly2 $ git pull $ rm *.pyc

Alternatilvely, on an Ubuntu system the freecad-community PPA can be used:

   Add ppa:freecad-community/ppa to your software sources
   sudo apt-get update
   sudo apt-get install freecad-extras-assembly2

Windows Installation Instructions (From GitHub)

   download the git repository as ZIP
   assuming FreeCAD is installed in "C:\PortableApps\FreeCAD 0_15", go to "C:\PortableApps\FreeCAD 0_15\Mod" within Windows Explorer
   create new directory named "assembly2"
   unzip downloaded repository in "C:\PortableApps\FreeCAD 0_15\Mod\assembly2"

FreeCAD will now have a new workbench-entry called "Assembly 2".

Pyside and Numpy are integrated in the FreeCAD 0.15 dev-Snapshots, so these Python packages do not need to be installed individually

To update to the latest version, delete the assembly2 folder and redownload the git repository.

Links to Assembly2 WB

Other useful links

  • Animation: This Workbench can be used to create sequences of pictures.
  • ExplodedAnimation: FreeCAD workbench to create exploded views and animations of assemblies.
  • DevWorkbenches: List of workbenches in development.