freeCAD : An Introduction

freeCAD is a basic 3D CAD with advanced Motion Simulation capabilities. It is suitable for anyone interested in learning 3D CAD and Motion Simulation for free before using more sophisticated packages. Its motion simulation capabilities are comparable to the best and can provide accurate answers to engineers and scientists in diverse fields. Educators, students and new engineers will find it ideal for the teaching and learning of geometry, kinematics, dynamics, vibrations, mechanisms, linkages, cams, machine design and physics. The program runs on Windows, Linux PC, Macintosh PPC and other Unix's. Assembly data are unchanged across platforms.




Robot developed by freeCAD
freeCAD : What it does?

freeCAD allows users to create and manipulate assemblies of parts. The parts are simple 3D solids, which can be connected by joints, constraints, contacts, motors, actuators, springs, dampers, forces, torques or gravity. DXF files can be imported for use as parts. The parts and connections define the structure, mechanism or machine of interest. Both open and closed 3D loops are permitted. freeCAD performs full Multibody Dynamics Analysis on the assembly to predict the motion according to Newton's Laws. Animation using the simulated data produces realistic dynamic behavior of the system.




freeCAD : What can users do?

Users can study the mechanical dynamics in the form of plots and tabular output. XY plots can be zoomed and set to equal scales. Data series available include linear and angular displacements, velocities, accelerations, forces, torques, momenta and kinetic energies. Acceleration data include transverse, centripetal and Coriollis accelerations. Users can view forces and torques from joints, constraints, actuators, springs, dampers, applied forces and inertia. Data can be exported to spreadsheets or POVRay, a ray-tracing program.




freeCAD Graphs & Environment
freeCAD : Features in Detail

freeCAD is capable of full 3D pan, zoom, tilt and rotate on an assembly of parts in wireframe or rendered graphics. Parts can be solids or DXF file imports. Available solids are extrusions of rectangles, circles, ellipses and polygons. The parts can be positioned and oriented exactly in space, as are markers on the parts. Exact specification of linear and angular velocities of parts in space are also possible. Mass and inertia properties can be user specified or automatically computed based on uniform density. Available joints are spherical (ball), revolute (pin), translational (slider), cylindrical, planar, fixed, universal, point in line, point in plane, parallel, perpendicular, no rotation, constant velocity, rack pinion, screw. Both open and closed 3D loops are permitted. The curve-curve contact allows liftoffs and collisions based on coefficient of restitution. Available actuators are rotational, translational and full six DOF. Their motions are user prescribed functions of time. Forces and torques are user prescribed functions of time, displacements and velocities in all three components or along connecting markers. Example formulas for spring, damper, bushing, beam, aerodynamic, inverse square law and other forces and torques are given. Available functions are sqrt, exp, ln, lg, sin, cos, tan, arctan, arctan2, spline, spectral density. Users can specify constant gravity of arbitrary magnitude and direction.

freeCAD can compute kinematic, quasi-static or dynamic solutions for any interval of time going forward or backward based on the assembly and user requests. It does redundant constraint removal automatically and nondimensionalizes the equations for improved accuracy and stability of models that are microscopic or gigantic. Simulation progress is animated and the simulation can be stopped any time. After simulation, the computed solution can be used for animation or frame by frame analysis. Full 3D pan, zoom, tilt and rotate is available during simulation and animation.

Users can obtain engineering data in the form of plots and tabular output. XY plots can be zoomed and set to equal scales. Data series available include linear and angular displacements, velocities, accelerations, forces, torques, momenta and kinetic energies. Acceleration data include transverse, centripetal and Coriollis accelerations. Users can view forces and torques from joints, constraints, actuators, springs, dampers, applied forces and inertia. Fourier tranforms of all times series are available. Individual parts can be save into files and reinserted into any assembly repeatedly. Assemblies can be saved in binary or human readable, tab delimited, text format with notes and simulation data for later reload. The text format allows pre and post processing of assemblies by other programs, especially spreadsheet programs. Other specific text formats are for MOSES, PDMS Review and POV-Ray. freeCAD runs on Windows, Linux PC and Mac OS/X. Assembly data are unchanged across platforms.

freeCAD : Reviews

Search freeCAD in the following sites.

freeCAD : Open Source

    freeCAD is created with the open source StCAD: 3D CAD Framework for Smalltalk and a private motion simulation program. All the source code is in Smalltalk which is a pure object oriented programming language. The development environment used is VisualWorks which is also open source. To learn more about Smalltalk, please visit

freeCAD : Download & Install
freeCAD : Download & Install in Windows

freeCAD 9 in Windows 95, 98, ME, NT, 2000, XP with 64MB or more RAM

  • Create a directory, say, C:\freecad9a for the downloads.
  • Download freecad9a.zip (12,552,829 bytes).
  • Unzip freecad9a.zip, preserving subdirectories, into the same directory.
  • Double click on freecad9a.exe to launch the application.
  • If double clicking doesn't work, create a shortcut containing the full command below:
    C:\freecad9a\freecad9a.exe C:\freecad9a\freecad9a.im
  • The working directory should be C:\freecad9a
  • Then double click the shortcut.
  • Please read the Known Problems

After Downloading..

freeCAD : Download & Install in Linux

freeCAD 8.4 in Linux

  • Create a directory, say, /home/username/freecad8 for the downloads.
  • Download freecad8.zip (6,506,732 bytes).
  • Download patch84.zip (11,465 bytes).
  • In a terminal window, execute:
    cd /home/username/freecad8
    unzip freecad8.zip
    unzip patch8*.zip       Let it overwrite other files.
    ./visual freecad8.im       This launches 'freeCAD'.
  • Alternatively, create a script containing the full command below:
    /home/username/freecad8/visual /home/username/freecad8/freecad8.im
  • The working directory should be /home/username/freecad8
  • Then double click the script.
  • Please read the Known Problems

After Downloading..

freeCAD : Download & Install in Mac OS9

freeCAD 8.4 in Mac OS9

  • Create a folder, say, freecad8 for the downloads.
  • Download freecad8.zip (6,506,732 bytes).
  • Download patch84.zip (11,465 bytes).
  • Locate and download PowerMac virtual machine
  • Open Stuffit Expander 5.5 preferences dialog to Cross Platform options, and select
  • "Never" for "Convert Text Files to Macintosh text format".
  • Then for the Destination options, select
  • "Same as original" for "Destination"
  • "Never" for "Create Surrounding Folder".
  • Decompress freecad8.zip, preserving subdirectories, into the same folder.
  • Decompress patch8*.zip, preserving subdirectories, into the same folder. Let it overwrite other files.
  • Decompress virtual machine file into the same folder.
  • From subfolder freecad8:bin:powermac, move the application visual, StdLibC and Netmanage into folder freecad8
  • In folder freecad8, drag freecad8.im and drop onto visual to launch the application.
  • Alternatively, create a alias containing the full command below:
    visual freecad8.im
  • The working folder should be freecad8
  • Then double click the alias.
  • You may delete subfolder freecad8:bin:powermac and its remaining contents.
  • Please read the Known Problems

After Downloading..

freeCAD : Download & Install in Mac OSX

freeCAD 8.4 in Mac OSX

  • Create a folder, say, freecad8 for the downloads.
  • Download freecad8.zip (6,506,732 bytes).
  • Download patch84.zip (11,465 bytes).
  • Locate and download OSX virtual machine
  • Unzip freecad8.zip, preserving subdirectories, into the same folder.
  • Unzip patch8*.zip, preserving subdirectories, into the same folder. Let it overwrite other files.
  • Decompress virtual machine file into the same folder.
  • From subfolder freecad8:bin:macx, move the application visual.app into folder freecad8
  • In folder freecad8, drag freecad8.im and drop onto visual.app to launch the application.
  • Alternatively, create a alias containing the full command below:
    visual.app freecad8.im
  • The working folder should be freecad8
  • Then double click the alias.
  • You may delete subfolder freecad8:bin:macx, and its remaining contents.
  • Please read the Known Problems

After Downloading..

freeCAD : Download & Install in Other Unix

freeCAD 8.4 in Other Unix

  • Create a directory, say, /home/username/freecad8 for the downloads.
  • Download freecad8.zip (6,506,732 bytes).
  • Download patch84.zip (11,465 bytes).
  • Locate and download Unix virtual machine
  • Unzip freecad8.zip, preserving subdirectories, into the same directory.
  • Unzip patch8*.zip, preserving subdirectories, into the same directory. Let it overwrite other files.
  • Decompress virtual machine file into the same directory.
  • From subdirectory /home/username/freecad8/bin/unix, move the executable visual into directory /home/username/freecad8
  • Repeat for file herald.so.
  • Change directory to /home/username/freecad8
  • In a terminal window, execute: ./visual freecad8.im
  • Alternatively, create a script containing the full command below:
    /home/username/freecad8/visual /home/username/freecad8/freecad8.im
  • The working directory should be /home/username/freecad8
  • Then double click the script.
  • You may delete subdirectory /home/username/freecad8/bin/unix and its remaining contents.
  • Please read the Known Problems

After Downloading..

freeCAD : Version Check

Since freeCAD can be downloaded from many locations, it is good to check that you have the latest version.

  • Inside freeCAD, click Explain/About/freeCAD/ to locate the creation date:
    freeCADx was created on yyyy/mm/dd.
  • Verify that you have the latest copy by comparing with the creation date published at:http://www.ar-cad.com
  • Also check that your have the latest patch for the version.

freeCAD : Quick Start

Quick Test

  • Click File/Open/Assembly/ to get a list of example assemblies.
  • Choose one, say, fourbar.asm
  • Click View/Tilt Rotate/ to center the model. Drag the handles to tilt and rotate the 3D assembly.
  • If necessary, Click Edit/Marker Size/ to set marker sizes suitable for the drawing.
  • Click Simulation/Animation/ to get the animation dialog. Click Play to start animation.
  • You can click any View menu item and drag the tilt and rotate handles, even during animation.
  • Close animation window when done.

Quick Start

  • Click Explain/Quick Start/ to learn how to build a model from scratch. Together, the tutorials demonstrate the available features in 'freeCAD'.

Please Report Problems to

Aik-Siong Koh

freeCAD : Known Problems

Please report any problems. Let us know if you can make the installation process easier.

All Platforms

  • If a dialog asks you to select an assembly or a part or a sketch that is not visible in the Graphics view, do so in the Tree view.
  • If an error message comes up, click on "Continue" to let Smalltalk recover. You can usually continue if you avoid the offending steps. Every error is logged in a file called error.log. Email that file to the author for debugging. Patches and workarounds will be posted as soon as possible. Thank you in advance.
  • 'Invalid zip file'.
    Check that the download files have the exact number of bytes as shown in our website www.ar-cad.com
  • 'freecad8.im cannot be opened'.
    Use Winzip to unzip freecad8.zip and patch8*.zip.
  • 'ERROR_PATH_NOT_FOUND'.
    Unzip did not preserve subdirectories. Reunzip, preserving subdirectories.Otherwise move all *.sdoc files into a subdirectory /resource/explain
  • 'ERROR_ACCESS_DENIED'.
    'freeCAD' cannot run from CD-ROM or write protected media. Copy the freecad8 directory and its contents to a writable hard disk.

On Windows

  • Sticky submenus:
    On some machines the submenus may not open reliably. Move the cursor out of the menu item through the side and reenter from the side. This may make the problem go away.
  • Right clicking on some mice does not bring up the correct menu. Try right clicking while holding the ctrl key down.
  • On Windows 98, the help dialog for motion and force-torque dialogs will not close when the X button is clicked. Close with ESC key.
  • On machines with low memory, desktop icons may become white when freeCAD exits. Reboot to recover. Internet Explorer 5.5 seems to be the cause. Upgrade to Internet Explorer 6.
  • If resizing the window is very slow to repaint, disable 'Show window contents while dragging' found in Start/Settings/Control Panel/Display/Effects.
  • File dialog always opens to A: drive. freeCAD does not recognize networks. Run it from a local harddrive.

On Macintosh

  • None as of Now

On Linux

  • 'Out of Memory' error at startup. The probable cause is having too many fonts. Execute with the following command to start freeCAD
    ./visual -h10M freecad8.im
  • Animation is jerky when the graphics window is very large. Reduce the window size.

Please Report Problems to

Aik-Siong Koh

freeCAD : Documentation

Documentation are inside the program. They are collected in a series of menu items labeled 'Explain'. Click on them anytime. But you MUST run the tutorials to learn freeCAD.

Inside freeCAD, click Explain/Quick Start/ for a list of tutorials on projectiles, circular motion, relative motion, pendulums, spring-masses, four-bar linkage, piston-crank, gyro, cam-follower.

You can also get help from

The motion simulation theory is in the journal paper: Koh, A-S., and Park, J-P. "Object Oriented Dynamics Simulator," Computational Mechanics, Jun 1994, 14(3) 277–287.

freeCAD : Uninstall

To uninstall, just delete the freecad* directory and its contents. freeCAD does not change any settings on the computer.

freeCAD : Users can help us by

Your bug reports and suggestions are most valuable for improvements in freeCAD. If you have example assemblies to share so that others can benefit from your work, please let us and others know about them. We can include them on this site if you want. If you like programming, we welcome you to look at the open source StCAD and discover the wonders of pure object oriented programming and the productivity gains that can be had. Finally, but not least, please tell your friends and colleagues about freeCAD. Thank you very much for your contributions.

freeCAD : Disclaimer

freeCAD is provided 'AS-IS' with no warranty as to its use or performance. By using it, you agree to indemnify the author from any liabilities that you may incur from the use of the software.