Getting started
MechPilot is in development (milestone M1 of M8). Today you build it from source; installers for macOS, Windows and Linux come with M8.
Build and run
git clone https://github.com/mojeee/mechpilot
cd mechpilot
npm install
npm run dev
Node 24 is required. The first npm install downloads Electron (about 100 MB).
First ten minutes
- File > Open sample > Mounting bracket loads a 120 × 80 mm plate with holes and centre lines.
- Pan with the middle or right mouse button, zoom with the wheel, double-click the canvas to zoom to extents (or type
ZE;ZWzooms to the selection). - Draw a line: type
L, then click two points, or type them:0,100then@50,0(relative to the last point). Enter or Esc finishes;Ccloses the shape;Uundoes the last segment. - Draw a circle:
C, click the centre, then a point on the circle or type a radius:12.5(D 25for a diameter). - Object snaps light up as you move near end points, midpoints, centres, quadrants, intersections, and (from the previous point) perpendicular and tangent points. Polar tracking locks the cursor every 15°.
OSNAPtoggles the object snaps,SNAPsnaps to the grid. - Select by clicking an entity; drag a window left to right to select what is fully inside, right to left to select what it crosses. Shift adds. Delete removes. Edit values in the Properties panel on the right.
- Edit:
Mmove,COcopy,ROrotate,SCscale,MImirror,Ooffset,TRtrim,EXextend,Ffillet (R=3sets the radius),CHAchamfer (D=2,3),ARarray. Every tool tells you what it needs in the command line. - Undo with
Uor Ctrl+Z, redo withREDOor Ctrl+Y. Everything is undoable, including opening a file and importing a DXF. - Layers: the Layers tab shows each layer's colour, ISO 128-2 line type and width, visibility and lock. The dot on the left marks the active layer.
- Save with Ctrl+S as
name.mechpilot.json: plain JSON, documented in file-format.md. File > Export DXF writes a DXF 2000 or R12 for other CAD tools; File > Import DXF reads one (see dxf.md).
Dimensions, symbols and sheets
- Dimensions:
DLIlinear (two points, then where the dimension line goes;HorVforces the direction),DALaligned,DANangular (click two lines, then the arc position),DRAradius andDDIdiameter (click the arc or circle, then the text position),DORordinate (origin, then feature points). The value is measured from the geometry; select a dimension to add a tolerance (deviations, ±, limits or an ISO 286 class such as H7) or an override text (<>stands for the measured value) in the Properties panel. - Symbols:
LEnote with leader (|in the text starts a new line),BALballoon,SURFsurface texture (A / R / P for any process, removal required or prohibited, thenRa 3.2),TOLgeometrical tolerance frame (FLAT 0.05 Astyle prompts),DATdatum. - Dimension style: with nothing selected, the Properties panel shows the lettering height, arrowheads, decimals and the annotation scale (set it to the scale of your main view so the lettering prints at 3.5 mm).
- Sheets: the tab strip under the top bar switches between Model and the sheets; "+ Sheet" adds an A3 with a 1:1 view. The Sheets tab edits the size, orientation, the ISO 7200 title block fields and the views (scale, model centre, position and size on the paper).
- File > Export PDF prints every sheet as a vector PDF at true scale; without a sheet the model is printed at 1:1 on an A3.
Sketch constraints
- Constraints:
CCcoincident (click near two points),CPLpoint on line,CHhorizontal,CVvertical,CPAparallel,CPEperpendicular,CTtangent,CEequal,CSsymmetric,CFfix,CDdistance,CAangle,CRradius. The solver (FreeCAD's planegcs) moves the geometry at once; the result undoes together with the edit. - Inferred while drawing: a line whose end snaps to another end point becomes coincident with it; a segment drawn along polar tracking at 0° or 90° becomes horizontal or vertical.
- Driving dimensions: select a dimension and tick "Driving" in Properties; change its value and the sketch follows.
- Reading the sketch: green entities are fully constrained, amber ones can still move; the status bar shows the degrees of freedom left; the Checks tab explains conflicting or redundant constraints in plain words and removes them with one click.
View menu: dark or light interface, dark or white canvas, English or Italian.
If MechPilot ever closes unexpectedly, the next start offers to recover the autosaved drawing.
3D parts
- From outline to body: draw a closed outline in Model (lines, arcs, circles; polylines too), select it and type
SKETCH(optionallySKETCH XZ 20for another plane and an offset). ThenEXTRUDE 10(orEXTRUDE 5 CUT,EXTRUDE 8 BOTH), orREVOLVE(360° around the sketch's X axis by default; edit the axis in the Features tab). A 3D tab opens with the part. - More features:
HOLE M6drills ISO 273 clearance holes at the circle centres of the last sketch (HOLE M8 TAPa tapped hole with its tap drill,HOLE 6.6 12a plain hole 12 deep),FILLET 2,CHAMFER 1,SHELL 1.5,MIRROR3D YZ,PATTERN 3 2 20 15(3 × 2 grid) orPATTERN C 6(6 around Z). Every value can be changed later in the Features tab; the part rebuilds in the background and never freezes the window. - Reading the tree: a red feature could not be built and says why; the body continues without it. Suppress a feature with ● / ◌, reorder with the arrows,
Uundoes any change. - Looking at it: drag to orbit, wheel to zoom, right-drag to pan; the view cube snaps to the standard views. Section (Features tab) cuts the body with a plane; Measure takes the distance between two clicked points. Volume, surface, size and centre of mass are listed under the tree.
- Exchange:
EXPORT STEP,EXPORT STL,EXPORT 3MF;STEPimports a STEP file as a new part.
Keyboard
| Key | Action |
|---|---|
L, PL, REC, C, A, EL, SPL, T | line, polyline, rectangle, circle, arc, ellipse, spline, text |
M, CO, RO, SC, MI, O, TR, EX, F, CHA, AR | move, copy, rotate, scale, mirror, offset, trim, extend, fillet, chamfer, array |
SKETCH, EXTRUDE, REVOLVE, HOLE, FILLET, CHAMFER, SHELL, MIRROR3D, PATTERN | 3D features from the selected outline (see above) |
PART, STEP, EXPORT STEP / STL / 3MF, MEASURE | new part, import STEP, export the part, measure in 3D |
U, REDO | undo, redo |
E or Delete | erase the selection |
ZE, ZW | zoom extents, zoom to the selection |
GRID, SNAP, OSNAP | toggle the grid, grid snap, object snaps |
| Esc | finish the tool, clear the selection |
| Ctrl+N / O / S / Shift+S | new, open, save, save as |
| Ctrl+A | select all |
Typing a letter anywhere on the canvas goes to the command line.