$ rotatocam --load part.stl --axis 4 --gen

SPIN THE STOCK.READ THE SIGNAL.

4- & 3-axis CAM built for DIY CNC. Real roughing & finishing toolpaths from an STL or STEP — simultaneous rotary, adaptive clearing, conversational (no-STL) programs, wrapped & flat engraving, and a material-removal sim. Speaks grblHAL, GRBL and LinuxCNC.

Download for Windows PORTABLE ZIP · ~285 MB
v0.69.0.223 · 64-BIT WIN 10/11
rotatocam — backplot.nc
; rough + finish queued   G21 G93   tool: ⌀6 carbide
RotatoCAM continuous 4-axis rotary spiral-finish toolpath on a turned column, held between the chuck and tailstock
G1 X12.480 C90.0 F900   feed-check OK   est 04:12
grblHAL · GRBL · LinuxCNC
Controllers
STL · STEP · OBJ · 3MF · DXF · SVG
Input formats
3-axis + 4-axis
Toolpaths
GPLv3 · free beta
License
// the signal chain

Toolpaths, compiled.

[01]

Simultaneous 4-axis rotary

Lay the part in a wireframe 3-jaw chuck along the C axis. Flip / 90° reorient carries into the G-code, and a spin-part playback view turns the stock while the cutter holds.

[02]

Rough, finish, drill

Queue rough → finish with different tools into one program with tool-change pauses. Fine .001″ Z stepdown, a surface-following finish pass and spring passes on every op — plus drill patterns (peck) and helical boring for holes bigger than the bit.

[03]

Wrapped & flat engraving

Engrave system-font text flat or wrapped around a bar with a real V-bit profile — the exported rapids and cutter shape come straight from the actual .nc.

// in the app

Pick your look. Read the cut.

// recorded on a phone

Early beta, caught on camera.

A rough early-beta walkthrough, recorded handheld — expect rough edges.

// material-removal simulator

See the cut before iron does.

Run the sim from the real G-code, then read quality at a glance — the cut surface is colored by deviation. A timeline scrubber, live position/feed readout and a machining-time estimate complete the picture.

On-surface Leftover Gouge
RotatoCAM 4-axis rotary deviation-colored cut surface — green on-surface, yellow leftover, red gouge — held between chuck and tailstock
v0.69.0.223

CHANGELOG

.223 — for Eugene Stoner (1922–1997). A self-taught engineer who designed under impossible constraints and got the details ruthlessly right. The number's a nod to the cartridge that carries his name; the respect is for the engineering. Aim your tools well.
Faster generation & high-poly Simplify

Toolpath gen is dramatically faster — the Embree raycaster plus a rewritten drop-cutter (a heavy 490k-tri scan dropped from minutes to seconds). New Simplify control decimates dense scans to a target triangle count; a 3 mm tool can't resolve that detail anyway. Also: 3+1 no longer cuts past the centerline, mm/inch persists, and crashes now write a log.

Indexed 3+1 & pencil finishing

Indexed 3+1 surfaces a model one face at a time — the part clocks to N positions and a 3-axis pass runs on each, for prismatic / multi-faced parts a single wrap can't reach. Pencil-trace runs a small tool down the concave valley floors a wide finish leaves behind (straight, ring or helical grooves).

Conversational — no STL

Fill in the numbers: drill patterns (incl. rotary-indexed), turn-to-round, facing, pockets, flute / spiral grooves, thread milling, index slots (gear / spline / knurl) and non-round / oval turning — plus rotary finishes (raster, axial). No model required.

Wrapped engraving, dialed in

Set the bar by diameter with a wireframe chuck; text reads right out of the box (Mirror / Flip / Center). Around-the-bar strokes now arc on the surface and carve, and the spin-view bit tracks the cut. Distance-from-chuck + bar-length controls.

Multi-line engraving text

A 4-line text box (no wrap); newlines render as stacked rows at a uniform size — flat, V-carve and wrapped.

All formats import

STL · STEP · OBJ · PLY · OFF · GLB · 3MF meshes and DXF / SVG drawings — the import libraries are now bundled in the portable build, with clear errors on unsupported geometry.

Reopens where you left off

Mode, machine, strategy + fields, tool, feeds, stock and chucking — even the loaded model and any flip/rotate — are restored on the next launch.

Rotary-sim bar controls

Bar length + distance from chuck for rotary jobs; the sim carves the whole blank with the held stub + chuck end visible, coverage measured over the cut zone.

EARLIER: helical hole boring · render quality (Plain/Nice/Max) · default tool library · rotary chuck workflow + "Spin part" · multi-op programs · deviation-colored sim · STL/PNG export · full history ships as CHANGELOG.md.
// beta program

Safe-testing: crawl, walk, run.

⚠ Hobby / experimental · AS-IS · no warranty

CNC machines are dangerous. RotatoCAM only writes a G-code file — it cannot see your machine. You are solely responsible for inspecting every program and operating your machine safely. The wraparound-engraving case on a real bar is exactly what beta testers are helping prove.

01
On the PC first — no machine

Open a model (or the bundled examples\), pick a tool + strategy, click Generate. Review the 3D backplot, run the feed check and the material-removal sim. Check rapids vs feeds, depths and units (G21 mm / G20 inch).

02
On the machine, dry — no material

Set work offset (G54) and tool length; confirm the correct controller. Air-cut — raise Z well above the stock and run the whole program, watching motion match the backplot. Hand on feed-hold / E-stop.

03
First real cut

Use soft material first (machine wax, foam, MDF, soft aluminum), shallow and slow. Start with 3-axis or wraparound engraving before any 4-axis surfacing. Light pass, stop and measure, then go deeper.

4-axis / rotary — extra care

In Machine setup, set your machine's max swing radius (spindle-to-table clearance); 4-axis jobs whose part radius exceeds it are blocked on purpose. Rotary moves use G93 inverse-time feed — a wrong rotary feed can snap an endmill, so make sure the feed check passes, air-cut the rotary motion first and start shallow.

📌 Update before you test

RotatoCAM updates often and tells you on launch when a newer build exists. Please make sure you're on the latest version (currently v0.69.0.223, shown in Help → About) before reporting — an issue you hit may already be fixed.

Pre-cut checklist — every job

🐞 Found a bug? Tell me

Serious issues (crashes, wrong G-code, anything unsafe) get priority. Include what you did, what happened, your controller (grblHAL / GRBL / LinuxCNC), and attach the STL/job + the generated .nc if you can. Report a bug / send feedback →  (or in the app: Help → Report a bug)

// now & after the beta

Free to test. Fair after.

During the beta
Free

No license needed during the beta. Open-source under GPLv3 — complete source available on request. Building closed-source/commercial? A separate commercial license is available. therealrevjmoney@gmail.com

Planned — after the beta
$49

ONE-TIME · UP TO 3 MACHINES

Not charging during the beta. A one-time license keeps the app unlocked and funds development — and you'll always be able to build from source under the GPL. Details posted here when the beta concludes.

☕ Did it earn its keep?

Maybe RotatoCAM saved you a CAM subscription. Maybe it cut something your old software couldn't — a wrapped nameplate, a clean 4-axis finish, or the roman columns for the miniature gladiator stadium you built in the garage over winter. If it made your machine do something worth doing, a coffee helps fund the next feature, fix, and the exact-kernel work. RotatoCAM stays open-source no matter what — support is optional, and every bit goes straight back into the tool.

Buy me a coffee →

UNZIP. RUN. CUT.

A portable Windows build — Python and every dependency bundled. No install, no admin rights. Not code-signed, so SmartScreen may say "Windows protected your PC" on first run — click More info → Run anyway.

Download RotatoCAM ↓
v0.69.0.223 · PORTABLE ZIP · ~285 MB · WIN 10/11
System requirements

Minimum: 64-bit Windows 10/11 · 4-core CPU · 8 GB RAM · GPU with OpenGL 3.2+ (integrated is fine) · ~2 GB disk.
Recommended: 6–8 core CPU · 16 GB RAM · SSD · a basic discrete GPU (e.g. GTX 1650) — for big models, fine sim detail, and the "Max" render look. RotatoCAM is CPU-bound, so CPU clock matters most; the GPU mainly drives the 3D view.