This page presents a selection of high quality written tutorials. A complete, unsorted list of tutorials can be found in Category:Tutorials, a complete and sortable one can be found in the table below.
Please notice the version of FreeCAD used in the tutorial as some tutorials may use an old version of the program. Although the general modelling process may still work, some tools may have changed.
Architecture and BIM
Arch tutorial (v0.14)
This is the essential introduction to the Arch Workbench. It is extensive and showcases a typical workflow, from importing plans in DXF format to building the 3D model.
How to model a small house, produce a blueprint with TechDraw, and export to IFC.
Open windows and doors (v0.18)
How to display windows and doors as open, with elevation and plan symbols, and produce a basic floor plan with TechDraw.
Design custom windows (v0.18)
How to draw custom doors and windows using the Sketcher, and adjust their normals to correctly place them in walls.
Arch panel tutorial (v0.15)
Modeling a microhouse roof panel by using the Sketcher, the Window tool, and the Panel tool.
Re-modeling the WikiHouse project using sketches and panels, starting from importing a mesh model created in SketchUp.
FreeCAD provides two main workflows to modeling parts:
- combining objects, a method called Constructive solid geometry (CSG) using the Part workbench, and
- using parametric modelling and feature editing with the PartDesign Workbench.
Please note that the PartDesign Workbench workflow was considerably changed from FreeCAD 0.17 onward; some of the tutorials haven't been updated and may refer to the 0.16 version.
Creating a simple part with PartDesign (v0.17)
An introduction to the PartDesign workflow: tracing a sketch, using pad, pocket, and moving the object.
Basic Part Design Tutorial (v0.17)
Model a simple part using a feature editing methodology: creating a sketch, using pad, external references, pocket, and mirror.
Model an electric toothbrush head stand (v0.16)
Multiple features used: sketch, distance and coincident constraints, pad, external references, fillet, chamfer, linear pattern, and draft.
Modeling for product design (v0.16)
Modeling a Lego block: sketches, vertical and horizontal distance constraints, pad, pocket, external reference, linear pattern, and assembly.
Traditional modeling, the CSG way
Modeling a table by using simple solids like cubes and cylinders, and performing boolean operations (fusions and cuts) with them.
Draft ShapeString tutorial (v0.19)
Create engraved text on a solid: extrude a shapestring to make it solid, then use a boolean cut to carve it from another solid.
Create a wiffle ball (v0.19)
Use solid primitives, like cubes and cylinders, and boolean operations, like union and cut, to create a hollowed ball.
Basic modeling tutorial
Create an iron angle by two methods: using solid primitives, and boolean operations (CSG); and by extruding a planar profile.
Understand placements in FreeCAD by creating a simple aeroplane model. Then learn about rotation angles, yaw (Z), pitch (Y), and roll (X).
The Raspberry Pi project has made simple tutorials that are easy to follow, particularly for those new to CAD systems:
- freecad-dice, model a die with six faces, and optionally 3D print it.
- freecad-headphone-tidy, model a spool to organize and store earphones, and optionally 3D print it.
- freecad-chess-set, model and entire chess set in Bauhaus modernist style.
- raspberrypilearning repository (CC-BY 4.0) with other examples.
Drafting and Sketching
Traditional 2D drafting
Draw a floor plan with lines, wires, rectangles, circular arcs, and add hatch patterns, annotations, and dimensions. Export the result to DXF.
Basic Sketcher Tutorial (v0.19)
This is a basic introduction to the tools of the Sketcher Workbench: construction mode, line, circle, arc, constraints (equality, vertical, horizontal, tangential, distance, angle, radius).
Sketcher constraints practices (v0.19)
Learn to efficiently constrain a sketch. Prefer geometric constraints over datum constraints.
Basic TechDraw Tutorial (v0.17)
This is the essential introduction to the tools of the TechDraw Workbench: page, view, scale, vertical and horizontal dimensions, annotations, projection groups, linking dimensions to the 3D view.
Creating a new background template (v0.17)
Instructions to create a page template in Inkscape for using it with the TechDraw Workbench. Determine the size of the sheet, draw a frame for the page, define fixed text, and editable text fields.
Measurement Of Angles On Holes (v0.19)
Instructions for adding center lines and subsequent angle representations on holes.
CalculiX cantilever FEM analysis (v0.17)
This in an example included in every installation of FreeCAD; it demonstrates a basic analysis with the CalculiX FE solver. Purge the current result, re-run the solver, and view the displacements and stresses in the deformed mesh in the viewport.
Simple FEM introduction (v0.17)
This is a short introduction to the steps required to perform an analysis in the FEM Workbench: model your object, create a mesh, add constraints and forces, add a material, run the solver, and visualize the results.
FEM shear analysis of a composite block (v0.17)
Study the deformation of a block made of a hard nucleus surrounded by a softer material: create mesh regions, add materials, set up sliding constraints, add shear loads, run the solver, and visualize the results with a clip plane.
Analysis of reinforced concrete with FEM (v0.19)
Estimate the level of reinforcement required in a concrete structure to prevent brittle failure under tension or shear.
Post-Processing of FEM results with Paraview (v0.19)
This tutorial explains the basics of transferring data from the FEM Workbench to Paraview and shows some of the options and settings for displaying data.
CNC & 3D Printing
Path Workbench for the impatient
This is a quick presentation of the workflow for the Path Workbench: create a job, define the output, define the milling tool, define the path operations, start the simulation, and generate a G-code output file.
Preparing models for 3D printing (v0.16)
Convert a solid object to a mesh object using the Mesh Workbench, export the mesh to STL format, and use Slic3r to prepare the G-code. Alternatively use the Cura Workbench or the Path Workbench to generate the G-code.
Import and Export
DXF importer installation
Install the DXF importer program in you system, so that you can open DXF and DWG files with FreeCAD.
Quickly produce a rendered image of your bodies with POV-Ray and LuxRender, if they are installed in your system.
Raytracing tutorial (v0.16)
Describes the basic workflow of the Raytracing Workbench using POV-Ray or LuxRender: set the path to the renderers, create a project, set the camera position, select the model, run the renderer.
Intermediate FreeCAD and POV-ray tutorial (v0.18)
Workflow to produce a better render with POV-Ray: create a project, add objects, set the camera, save the .pov file, manually edit the file to improve the textures, planes, lights, and then run the renderer.
Rendering a FreeCAD assembly with Blender (v0.18)
Export bodies from FreeCAD to Wavefront .obj, import the file into Blender, set up a simple Sun light, assign basic materials with the Principled BSDF shader, and produce a rendered image with EEVEE and Cycles.
Robot tutorial (v0.17)
Simulate the movement of an industrial robot: set up a trajectory, set up home position, change the robot position, insert various waypoints, and simulate the robot movement.
Draw simple mathematical functions in the Plot Workbench using the underlying Python plotting libraries: define the input list (X), two output lists (Y1, Y2), plot the functions (Y1 and Y2 against X), set the grid, line styles, legends, axes labels, plot title, and save the plot.
Draw a more complicated plot in the Plot Workbench with two different input lists (X, T), and three output lists (Y1, Y2, Y3), then create two sets of axes in the same plot, and plot the pairs of lists (Y1 against X, and Y2 and Y3 against T); set the axes labels and grid, and move the legends and title.
These are tutorials that are related to scripting or programming. They are geared towards more experienced users, who are already somewhat familiar with the program.
Drawing tutorial (v0.16)
This is the essential introduction to the tools of the Drawing Workbench to create blueprints.
Generating 2D drawings (v0.16)
Generate 2D projections of your 3D models, and add dimensions.
Tutorials - Comprehensive list
Here are listed all the tutorials that are not in the manual regardless of their quality. If a tutorial is listed in the Category:Tutorials and not in this table please insert it.
|Tutorial||Topic||Level||Time to complete hh:mm||Authors||FreeCAD version||Example files||UnfinishedDocu
|Add FEM Constraint Tutorial||M42kus||No|
|Add FEM Equation Tutorial||M42kus||No|
|Analysis of reinforced concrete with FEM||Reinforced concrete with FEM||Intermediate||1:00||HarryvL||0.19 or above||No|
|Arch panel tutorial||Modeling an architectural panel||Beginner||1:00||Yorik||No|
|Basic modeling tutorial||Introduction to modelling||Beginner||0:15||NormandC||Any||None||No|
|Basic Part Design Tutorial (0.16 and below)||Modeling||Beginner||Mark Stephen (Quick61)||0.14.3700 to 0.16||None||No|
|Basic Part Design Tutorial (0.17 and above)||Modeling||Beginner||HarryGeier||0.17 or above||Basic Part Design for v0.17||No|
|Basic Sketcher Tutorial||Sketcher||Beginner||1:00||Drei and Vocx||0.19||Basic Sketcher tutorial||No|
|Basic TechDraw Tutorial||Modeling||Beginner||WandererFan||0.17 and above||Basic Part Design for v0.17 Sample Basic TechDraw Tutorial Sample||No|
|Creating a simple part with PartDesign||Modeling||Beginner||1:00||GlouGlou||0.17 or above||Creating a simple PartDesign Body.FCStd||No|
|Draft ShapeString tutorial||Product Design||Beginner||0:30||r-frank and vocx||0.17 and above||Draft_Shapestring_Text||No|
|Draft tutorial||Drafting||Beginner||0:30||Drei and vocx||0.19||Draft tutorial updated||No|
|Draft tutorial Outdated||Drafting||Beginner|
|Drawing Template HowTo||2D Drafting||Intermediate||1:00||Mark Stephen (Quick61)||0.14.3700 or greater or above||None||No|
|Drawing tutorial (obsolete)||Blueprints / Drawings||Beginner||0:15||Drei||0.16 or above||No|
|Dxf Importer Install||Intermediate||0:05||Mario52||Any||None||No|
|Engine Block Tutorial||Part Workbench||Beginner||1:00||Andrewbuck40||0.14.3700||Yes|
|Export to STL or OBJ||Export to STL or OBJ||Beginner||0:20||r-frank||0.16.6703||No|
|Extend FEM Module||M42kus||No|
|FEM Beginner tutorial||FEM Beginner tutorial||Beginner||thschrader||0.17.11622+||Whiffle Ball||Yes|
|FEM CalculiX Cantilever 3D||Finite Element Analysis||Beginner||0:10||Bernd||0.16.6377 or above||No|
|FEM Shear of a Composite Block||Finite Element Analysis||Beginner/Intermediate||0:300||HarryvL||0.17.12960 or above||No|
|FEM tutorial||Finite Element Analysis||Beginner||0:10||Drei||0.16.6700 or above||No|
|FEM Tutorial Python||Finite Element Analysis||Intermediate||0:30||Bernd||0.18.15985 or above||No|
|FreeCAD-Ship s60 tutorial||Ship Workbench||Beginner||No|
|FreeCAD-Ship s60 tutorial (II)||Ship Workbench||Beginner||No|
|How to install additional workbenches||Programming||Medium programmer||0:15||r-frank||Any||None||No|
|How to install macros||Programming||Medium programmer||0:15||Mario52||Any||None||No|
|Import from STL or OBJ||Import from STL or OBJ||Beginner||0:30||r-frank||1.0||0.16.6703||No|
|Import OpenSCAD code||Import OpenSCAD code||Beginner||0:30||r-frank||0.16.6704||None||No|
|Import text and geometry from Inkscape||Import text and geometry from Inkscape||Beginner||0:30||r-frank||0.16.6704||No|
|Import/Export IFC - compiling IfcOpenShell||Arch Workbench||Advanced||2:00||Pablo Gil||No|
|PartDesign tutorial||Sketcher||Beginner||0:15||Drei||0.16 or above||No|
|Path Core Concepts||Path Workbench||Yes|
|Path Customization||Path Workbench||Yes|
|Path Postprocessor Customization||Path Workbench||chrisb||No|
|Path scripting||Path Workbench||Intermediate||No|
|Path Walkthrough for the Impatient||Path Workbench||Chrisb||Yes|
|Plot Basic tutorial||Plot Workbench Basic Tutorial||Beginner||No|
|Plot MultiAxes tutorial||Plot workbench||Intermediate||No|
|Post-Processing of FEM Results with Paraview||Post-Processing of FEM Results with ParaView||Intermediate||2:00||HarryvL||0.19||[https://forum.freecadweb.org/download/file.php?id=103557 Beam] and wall||No|
|Python scripting tutorial||Programming||Intermediate||No|
|Raytracing tutorial||Raytracing||Beginner||0:010||Drei||0.16 or above||No|
|Robot 6-Axis||Robot Workbench||Intermediate||No|
|Robot tutorial||Robot Workbench||Beginner||r-frank||No|
|Scripted Parts: Ball Bearing - Part 1||Part Scripting - Ball Bearing #1||Beginner||0:30||r-frank||0.16.6706||No|
|Scripted Parts: Ball Bearing - Part 2||Part Scripting - Ball Bearing #2||Beginner||0:30||r-frank||0.16.6706||No
|PartDesign Bearingholder Tutorial I||Product design - Bearingholder #1||Beginner||60 minutes||NormandC||No
|PartDesign Bearingholder Tutorial II||Product design - Bearingholder #1||Beginner||60 minutes||NormandC||No
|Simple Box Cover||Modeling||Beginner||0:20||Normand C||0.14.3700||Yes|
|Sketcher Micro Tutorial - Constraint Practices||Sketcher||Beginner||0:30||Mark Stephen (Quick61) and vocx||0.19||Sketcher Constraints practices||No|
|Sketcher requirement for a sketch||Sketcher||Beginner||Maker||None||No|
|Thread for Screw Tutorial||Product design||Advanced||1:00||DeepSOIC, Murdic, vocx||0.19||Updated: Thread for screw tutorial||No|
|Toothbrush Head Stand||Modeling||Beginner||1:00||EmmanuelG||0.16 or greater||Thingiverse 2403310||No|
|Topological data scripting||Programming||Intermediate||No|
|Transient FEM analysis||Transient FEM analysis||Yes|
|Tutorial custom placing of windows and doors||Architecture||Intermediate||1:00||Vocx||0.18 or above||None||No|
|Tutorial for open windows||Architecture||Beginner||1:00||Vocx||0.18 or above||None||No|
|Tutorial FreeCAD POV ray||Rendering||Intermediate||2:00||Vocx||0.18 or above||None||No|
|Tutorial Render with Blender||Rendering||Intermediate||1:00||Vocx||0.18 or above||None||No|
|VRML Preparation for Robot Simulation||Robot Workbench||Intermediate||0.11.4252ppa1||No|
|Whiffle Ball tutorial||Product design||Beginner||0:30||r-frank and vocx||0.17 and above||WhiffleBall_Tutorial_FCWiki.FCStd||No|
|Wikihouse porting tutorial||Wikihouse porting tutorial||Intermediate/Advanced||1:00||No|