G-Code command length in Grbl

I have started working with F Engrave a bit and one of the problems I ran into is that the G-Code created by F Engrave contains command lines over 50 characters long. The documentation from F Engrave suggests that changing the #3 value in GRBL from 50 to 80 will fix the command length problem.

I have also run into other programs that generate long command lines (usually comments)

My question is will changing the #3 value to 80 have any negative impact on Easel?

Link for this? Searched http://www.scorchworks.com/Fengrave/fengrave.html#documentation and didn’t see the number 80.

AIUI, the only mods needed to support Grbl are: http://www.shapeoko.com/wiki/index.php/F-Engrave#Using_F-Engrave_with_GRBL

Select the “Disable Variables” check box in the F-Engrave Settings window
un-select the “Enable Arc Fitting” check box in the F-Engrave Settings window
Use F-Engrave version 1.34 or higher

Here is the link

The paragraph where discussed is:

“Error while starting file stream: Command #3 too long: (55 > 50) ‘(Settings used in f-engrave when this file was created)’ ”

GRBL Error

This error is generated because the #3 value set in GRBL is 50 and it need to be increased to allow longer g-code lines to be processed. Setting the #3 value in GRBL to 80 should be sufficient to accommodate the g-code generated by F-Engrave. (Thanks to Barry W. for this information)

I don’t think that you should change the grbl value. The recent versions of Grbl use a different settings map. Look at the most recent one here. https://github.com/grbl/grbl/wiki/Configuring-Grbl-v0.9#grbl-settings

You can configure the line length as a compile option in the Grbl source, but I don’t think it can really be increased because the Arduino memory is so limited.

There should be a setting in F-Engrave for controlling line length (or decimal precision).

There is no #3 option for Grbl. It has a hard limit of 50 or 70 (79) characters per line due to limitations of the Arduino’s memory capacity. Moreover, Grbl uses $ to indicate its settings options.

If F-Engrave can’t be set to send a reasonable decimal length, then you can either use a tool which will do this on the fly when sending, or you can pre-trim to 3 (for Imperial) or 4 (for metric) files. This can be done just by truncating w/ a regular expression in a text editor (regex: http://www.shapeoko.com/forum/viewtopic.php?f=33&t=1562&p=12345 ), or use a special tool for it (Javascript for this: http://www.shapeoko.com/forum/viewtopic.php?f=33&t=1562&p=12345 ).

This is an FAQ on the Shapeoko wiki:


Since this isn’t really an Easel issue I’m going to move it to the CNC category.

1 Like

I’m getting this error now with UGS nightly build (9/2017) , v1.1f of firmware on a 3d carve. I’ve seen this occasionally, and just retrying it a few times seems to “fix” it, but now I can’t get past it.

The error was a :NULL. I moved from the Platform (.exe) to the .bat script which calls the .java script and it’s working. Go figure… Platform vs. Classic. Classic works and Platform doesn’t.