Repository navigation
v0.17.0
CamCraft 0.17.0 - a clean-room CAM system that turns 3D models into
NC programs for CNC milling and turning.
- Full history: CHANGELOG.md
- Roadmap: the open issues are the current roadmap
- Questions: ask on Discord
What's in this release
Not a breaking release: the project file format stays at v58, so files saved
by 0.16.0 open unchanged and 0.16.0 opens 0.17.0 files. Posted G-code does
change for existing machines, so check the first program you post on each
machine. Every mill dialect's Face and other clearance-seeded paths now open
with an approach rapid on the clearance plane (#690, #691). Probe sections
start no spindle and descend to the safe plane before searching (#523, #570).
Lathe posts write the tool's control point for its orientation, threads cut
right-hand toward the chuck by default, and grooving and parting blades post
their touched-off corner (#629, #630, #632). Per-operation smoothing (#616) is
opt-in and changes nothing until you switch it on.
A minor release headlined by plasma cutting (a plasma machine kind, the
Tormach 1300PL and a Plasma Profile operation), one picking rule for the
whole app, new ways to align the part (three points, an edge or two
points, turning about the WCS origin), a fixture library, pocket and slot
recognition, per-operation smoothing in every mill post, and many new
machines. Thanks to mkinney, austin62jake, tbrasselle, vilts and JSwetz for
their contributions.
New
- Plasma (#669, #670, #672): a
plasmamachine kind (X/Y cut, Z torch
lifter, no spindle) and the Tormach 1300PL machine file; a Plasma Profile
operation with a plasma torch tool (kerf = diameter): kerf offset computed
or by G41/G42, outer contours clockwise and holes counter-clockwise
(overridable), arc leads, the small-hole rule, and holes cut before their
outer contour. Milling and turning operations are refused by name on a
plasma setup. - One picking rule everywhere (#692): faces, edges and points are picked
from one feature graph - whole faces, real feature edges and corner points
only, the visible one under the cursor first, never a tessellation edge or
a hidden edge through the part. - Part alignment on the Setups page: lay the part on a plane through three
picked points (#555); set the in-plane axes by an edge or two points (#557, #554);
alignment turns about the WCS origin and lays the picked face down (#606).
The setup page previews the stock it takes over from the previous setup as a
translucent body (#406). - Fixtures: a fixture library to save, insert and delete your own fixtures
(#339); moving a part warns when it or its stock would sink into a fixture
(#582); a square stock stays square when the part is turned (#571). - Pocket and slot recognition (#35): recognised pockets and slots turn
into operations; an inside-out or open mesh is refused by name (#718). - Posting: opt-in per-operation smoothing in every mill dialect (G64 P,
G5.1, G187, CYCLE832, G62; #616); per-setup post options and a per-setup
tool-list export (#389); Tormach programs can end in the operator's units
(#596); probe programs report the measured deviation on the control (#575); Haas
probing on an inverted X/Y axis (#392); comment text is escaped per dialect (#594). - Machines: Tormach 8L, 15L and 15LX Slant-PRO lathes (#611, #619), 24R
and xsTECH Pro routers (#620), 770M+ and 1100M+ (#618), and the Makera
Carvera and Carvera Air with a Carvera post (#707). The Machines pane's
"Use for this setup" assigns the selected machine (#384), and the machine overview
is a readable two-column grid (#745). - MCP: the tool table is served live from inside the GUI (#183); idle
live-session clients are dropped after a timeout (#567); newmove_modeland
repair_modeltools (#716, #717). - UI: recent projects and models on Open and Model (#662); a refused generation
marks the spot it names, and drilling refusals mark their hole (#261, #677).
Fixed
- Safety and the post gate: mill paths seeded on the clearance plane always
open with an approach rapid (#690, #691, #697); a step too small to ladder is
refused by name instead of allocated (#695); MCPverifyno longer reports
a job as clean while an operation's own warnings hold the post (#722); the
program sim sweeps a tap at its thread's minor diameter, so a tap-drill-size
hole is no longer a false gouge (#266, partial); an edge-break record is
credited only within its operation's stated width (#529). - Probing: a touch probe starts no spindle on any mill post (#523), is not
judged against the machine's spindle range (#565), searches a short way past the
face and feeds below the safe plane (#570); a probe-only program's stock sim
judges the uncut stock (#592). - Turning: threads cut right-hand toward the chuck by default and state
their hand (#629); lathe posts write the tool's control point (#630);
grooving and parting blades post their touched-off corner (#632, #641); facing
approaches at rapid and lifts off the face before retracting; the lathe
stroke and thread travel checks judge the posted radius (#631, #633, #647). - Setup page: lay-on-plane controls stay on screen so a picked face is
turned flat (#330); another setup's WCS triad stays on its spot (#558);
setup picks disarm when their page is left and the pick sweep runs every
frame (#664, #667); a hidden Properties pane drops the locate draft (#673). - Units: status lines, refusals and the gate's gouge clause speak the
document's units (#578). - Views: orthographic depth maps into WebGPU's clip volume (#600), and
orthographic picking and stock tracing cast parallel rays (#609, #610); view-cube pole
clicks keep the roll (#622). - Machines: the tool-number clash is judged per machine (#438); a saved
machine file keeps its key order (#480).
Changed
- Smoothing, picking and alignment are described above; the stock engine
builds a block stock in closed form (faster, same result).
Process changes
Contributor and agent process only; no effect on the program.
- PROCESS_VERSION 1-4 (#682, #683, #685, #687): process files carry a
version and are announced on the pinned issue #681 so forks pick them up;
the/resolve-conflictsskill and the conflict rule. - 5 (#742): MCP issues carry
area:mcpand P1. - 6 (#747): every issue is weighted
effort:low|medium|high|maxand
worked by the matchingissue-workeragent. - 7-9 (#750, #751, #753):
cargo xtask gate|release|packagereplace the
PowerShell/bash scripts on every OS; the scripts are wrappers. - 10 (#726): the camcraft-mcp skill's tool signatures match the server.
Known issues
- #738: setup-page alignment re-applies from the import pose instead of
composing on the current one, and picks are hard to see (fix in review,
PR #746). - #757: the Carvera post ignores per-operation smoothing without a note.
- #74: GPU selection can fail on hybrid Intel/NVIDIA laptops.
Report a bug or ask for a feature
- Found a bug? Open a bug report: a
toolpath that looks wrong, a crash, or a refusal you think is mistaken. - Want a feature or an enhancement? Request it:
say what you are trying to machine and what is in the way. - Not sure? Ask on Discord first.
Thanks
Thank you to everyone who contributed to this release: