Large arc replaced by straight line


i am using qcad/cambam for creating the drawings and gcode. In Cambam i always use “replace arcs” on the object before generating gcode. I also dont see any arcs in CambMan. Still i get constantly the controler message “large arc replaced by straight line”. This is likely a problem with CamBam generating arc gcode out of polylines?

Could this be a source of studdering/jerky movement because the raspberry PI (4B) takes too long to convert arcs to straight lines?



I got it. I dont understand why the grbl postprocessor of CamBam is using arc gcode commands but it is. This can be disabled under the postprocessor option. I will report back after verifying that its really removed.

unlikely, the ‘large arcs’ that get converted to straight lines are things with
a radius of 5000mm or so

but it is very possible that you have a lot of small movements generated by the
gcode in that location.

is the ‘stuttering’ always in the same place? do you have a curve or a tab at
that location?

David Lang

the reason for this is that the arduino only does single precision math, so it
has trouble handling both very small numbers and very large numbers without
getting some things confused (it’s something around 5 significant digits)

can you post the problematic gcode and tell us about where the problem happens?

David Lang

1 Like

The stuttering always happens at the same locations within one cut, yes. It does not happen on straight lines. See red lines

Interestingly the cutting direction on the left, long red line is down, so there shouldnt be a lot of load on the motors. I suggest to not invest too much time on this topic until i did test with the new gbrl postprocessor setting where no arcs will be generated in gcode.

Someone from the FB maslow group told me his “stutter” problem had been due to “bad gcode containing arcs”. So there is high chance completely removing arcs will solve the problem.

Gcode (44.7 KB)

The gocde looks pretty good to me, I don’t see anything obviously wrong in it.

This is my go-to site fore checking things like that:

You can step through the gcode by clicking the >| button and that will usually give you a sense if there is something weird about one part of it.

1 Like