Circular Interpolation help


I’m new to Shapeoko and Carbide Create but not new to CNC programming and machining.

My first project is to create a waste board and I’m circular interpolating the holes. I use GibbsCam for programming and the post processor I have generates circles with I’s and J’s G2 and G3 and NOT line segments.

When I do a sample circle in Carbide Create I notice it does not generate G2, G3 I’s and J’s but line segments.

Is there a way to use true circular interpolation on the Shapeoko without me having to learn Carbide Create.


You would need to use a CAM tool which generates G2/G3 arcs — the ones from GibbsCAM ought to work — don’t they?

A free graphical CAD/CAM alternativ which generats G2/G3 arcs is MakerCAM, Vectric VCarve can do this as well if enabled in the post-processor.

Yeah Gibbs allows you to create line segments with a tolerance which you can adjust eg: .001 It still does an arc in and out of the cut but I think 90 degrees or less so I will give that a shot

You don’t need to use carbide create to generate code - you can keep using gibbs if you like.

1 Like

Grbl will calculate the arcs on the fly and essentially move the machine in tiny segments when you send G2s and G3s. The tolerance is based on your $12 setting.

1 Like

So, the $12 is for the GRBL tolerance. How can I change the tolerance for CC? I’m finding CC generates too crude of a path with segments. I would like to tighten that up. Thank you.

1 Like

I don’t think you can, this is hardcoded in CC (at least until customizable post-processors are introduced)

I’m curious, can you share a usecase where CC’s segment resolution limit for curves actually shows on the final piece? (honest question, I remember wondering about this when I was trying to get perfect wall finish in acrylic, and after a long long investigation ended up realizing it was the stepper motor resolution limiting the smoothness)


FWIW, GCodeClean, by md8n, on github will convert short line segments to G2/G3 arcs. The author calls it linear to arc deduplication, and it looks like he just released an improved version a couple weeks ago. I’ve used it with Carbide Create output a number of times, although not since last spring, and it worked well after the author fixed a few minor bugs that showed up using it with grbl and CC gcode. Interestingly radiused rectangle corners turn into two arcs rather than one, no idea why that happens.

Grbl can bog down processing short line segments, between serial transfer time and command decoding, you can see a performance improvement using arcs instead of lots and lots of teeny tiny short lines. Plus gcode files with line segment arcs will become a lot smaller. Of course now that I want to find grbl’s commands/second limit the search engine won’t cooperate, but it was lower than I expected, especially given it’s 30K/sec max step rate (which fails in an interesting way, first stuttering as approached, and then crashing to a reset prompt, when exceeded). Gcodeclean was developed by a Maslow CNC user since the not quite grbl Maslow firmware also has an issue with too many short lines.


Thanks so much for the GcodeClean tip. I will definitely check it out.