G code program size limit

I am wondering if there is a limit to program size. My programs are tens of thousands of blocks, short G1 Xxx Yyy Zzz moves, one after another, to create a surface. In the job workflow, I am invited to load a new program, implying that the whole program will be loaded. Is there a limit to how many blocks can be held in memory by the controller board, waiting to be executed? What if the program is longer than that limit? How does Carbide Motion and/or the control board handle this issue? Thanks.
-SouthBayGuy

The Arduino has a very small memory space, and Grbl is packed into it incredibly efficiently leaving only a little space left over as a buffer which allows for motion planning.

Further commands are sent by the computer to the Arduino as commands are executed, keeping the buffer full and allowing Grbl to continue to plan acceleration/deceleration and so forth.

Quite large programs can be handled by Carbide Motion — if you encounter a program which bogs down, let us know at support@carbide3d.com and we will look into it with you.

1 Like

Hi -
I ran a 76,000-line surfacing program on my Shapeoko 4. I didn’t hear or see any hesitation, bumping, hanging, etc. Ran smooth. So the buffering scheme, however it works, over USB between Carbide motion and GRBL, is working. Thank you.
-SouthBayGuy

1 Like

This topic was automatically closed after 30 days. New replies are no longer allowed.