Skip to content

GCode Sender

Marius Stanciu edited this page Oct 29, 2026 · 1 revision

WARNING: This feature is in development. It is not ready for production. Test it with the spindle off and the tool away from the work.

Not available in this version: the plugin does not open. Its menu entry shows the message Cancelled. This tool is not ready yet. The sections below describe the tool as it works when it is enabled.

The GCode Sender connects to a GRBL 1.1 controller over a serial port. It streams a CNCJob G-code to the controller. It also jogs the axes, sets the work zero, controls the spindle and the feed, probes the surface, and can level the G-code with a height map. A virtual controller runs a job on screen, and the Plot 3D tab shows the toolpath. The same tool also controls an E-Cut USB motion board. See E-Cut.

Where to find it

  • Menu: Plugins menu, entry GCode sender. There is no keyboard shortcut.
  • The tool opens in the Plugin tab. The tab has three sub-tabs: Connect, Control and Sender. The Control and Sender sub-tabs are enabled only when a controller is connected.
  • The GRBL console is a dock. Show it with the Show console check box.

Screenshot placeholder: images/GCode-Sender-1.png - the GCode Sender tab with the three sub-tabs, the Source Object and the Job group.

Quick start

  1. Create a CNCJob object. Select it in Source Object.
  2. Open the Connect sub-tab. Select the port in COM list. Select the baud rate in Baud rates. The default is 115200.
  3. Click Disconnected. The button turns green and shows Connected when GRBL answers.
  4. Open the Control sub-tab. Click Zero Axes for the position where the work starts.
  5. Use the jog arrows to check the movement. Start with a small Step.
  6. Open the Sender sub-tab. Check the status with Get Report if needed.
  7. Click Check mode in the Job group if you want GRBL to read the program without motion.
  8. Click Start. The tool streams the CNCJob. Use Hold, Resume or Stop when needed.

Screenshot placeholder: images/GCode-Sender-2.png - the Connect sub-tab with the COM list, the baud rate list and the connect button.

Screenshot placeholder: images/GCode-Sender-3.png - the Control sub-tab with the jog arrows, the Zero Axes group and the Pause/Resume button.

Parameters

Header

Parameter Description Default
Source Object The CNCJob object to send. Active CNCJob, if any
Fit View Fits the bounds of the G-code in the isometric view after the source object is loaded. Checked
Show console Shows or hides the GCode Console dock. Unchecked
Beginner / Advanced button Beginner hides many parameters. Advanced shows all parameters. From global_app_level (Beginner)
Reset Tool Resets the parameters of the tool. -

Connect sub-tab

Parameter Description Default
COM list The serial ports found. The E-Cut board appears as SH-9001 E-Cut USB when it is connected. First port found
Search Searches again for serial ports. -
Baud rates The baud rates in the list. The list has 9600 to 2000000. 115200
New A custom baud rate. Range 40 to 9999999. -
Add Adds the custom baud rate to the list. -
Delete selected baudrate Removes the selected baud rate from the list. -
Reset Software reset of the controller. Enabled only when connected. Disabled
Disconnected / Connected Connects to the selected port, or disconnects when the port is open. Disconnected

Control sub-tab

Parameter Description Default
Jog arrows (X+, X-, Y+, Y-, Z+, Z-) Moves the axis by Step in the arrow direction, at the Feedrate. A press and hold moves continuously when Continuous is checked. -
Origin (jog) Raises Z to the safe Z (tools_grbl_travelz), then moves to X0 Y0. 15.0
Step The distance of one jog move. 5
Feedrate The feedrate of a jog move. 1500
Continuous Hold a jog arrow to move. Release the arrow to stop. Shown only when the controller supports it. Unchecked, hidden
Pause/Resume Toggles feed hold (!) and cycle start (~). Blocked while a recovery is needed. Off
Zero Axes: X, Y, Z, All Sets the current position as zero of the active work coordinate system (G10 L20). All sets X, Y and Z. -
Homing button Sends $H (home cycle). If a reset is pending, the tool asks for a reset first. -
E-Cut settings Opens the E-Cut machine settings. Shown only with the E-Cut board. Hidden

Sender sub-tab

Parameter Description Default
Send Command and Send Sends one line to GRBL, for example $$. The answer goes to the console. Press Enter in the field to send. -
Get Config parameter and Get Reads one GRBL setting ($n) and shows the value. -
Get Report Prints the GRBL status report in the console. -
Probe Probes the points in the Probe Points Table and builds the height map. -
Stop (probing) Stops the running operation. GRBL goes into feed hold. Recovery is needed (see Advanced). -
Save icon Saves the GRBL height map to a file. -

Job group

Parameter Description Default
Start Streams the G-code of the selected CNCJob to GRBL. A dialog asks to start from the Beginning or from a Line. If the Level the G-code check box is on and a height map exists, a dialog asks: Generate New, Use Existing or Cancel. -
Hold Feed hold (!). Resume continues the job. -
Resume Cycle start (~). Blocked while a recovery is needed or a previous job was abandoned. -
Stop Stops the job: feed hold, then a soft reset. Recovery is needed. -
Unlock Sends $X to clear the alarm lock. -
Sim Opens the simulation dialog with a virtual controller. No serial port is used. -
Check mode GRBL reads the G-code of the next Start without motion. It is valid for one job. Unchecked
Spindle Toggle. ON sends M3 S<RPM>. OFF sends M5. The button shows the state that the controller reports. Off
RPM The spindle speed for Spindle. Range 0 to 100000. 10000
Progress bar Shows the progress of the job, in percent. 0
Status label Shows the state, for example Idle. Idle
Overrides: Feed Feed override: -10, -1, 100 %, +1, +10. 100 %
Overrides: Rapid Rapid override: 25 %, 50 %, 100 %. 100 %
Overrides: Spindle Spindle override: -10, -1, 100 %, +1, +10. 100 %
Override values label Shows the current values, for example F: 100% R: 100% S: 100%. -
Save levelled G-code Saves the G-code that the sender streams, after the levelling. -
Show in Plot 3D Shows the toolpath, the tool and the height map in the Plot 3D tab. -

Autolevelling group

Parameter Description Default
Level the G-code Applies the height map to the G-code before streaming. Unchecked
Probe Points Table, Show Shows or hides the probe points table. Same as in Levelling. Checked
Plot probing points Draws the probe points on the canvas. From the Preferences
Plot height map Shows or hides the height map surface in Plot 3D. Hiding the surface does not change the levelling. Checked
Avoid Excellon holes When checked, the probe points avoid the holes of the selected Excellon object. From the Preferences
Excellon Object The Excellon object whose holes the probe points avoid. Shown when Avoid Excellon holes is checked. First Excellon object
Avoid Step Same as in Levelling. 0.5
Probe Tip Dia, Probe Z travel, Probe Z depth, Probe Feedrate Same as in Levelling. 0.3, 2.0, -1.0, 120
Mode and Method Same as in Levelling. Method is disabled in Manual mode. Grid, Voronoi
Columns, Rows Same as in Levelling. 4, 4
Add Probe Points Creates the probe points in the current mode. -
Import Height Map Reads a height map file. -
Precision probing (two touches) GRBL only. Retracts after the coarse touch, then probes again at the fine feed. Only the second measurement is used. Unchecked
Fine probe feedrate The feedrate of the second touch, in units per minute. Shown and enabled only with Precision probing. 10.0
Precision retract The distance above the coarse contact. It must release the probe without going over Probe Z travel. Enabled only with Precision probing. 0.5

Plot 3D and simulation

Parameter Description Default
Simulation: Start, Pause, Resume, Stop, Reset Runs the program on the virtual controller. Pause and Resume toggle. Stop ends the run. Reset returns the speed to 1x. -
Simulation: Speed slider Sets the speed multiplier. The slider range is 0 to 100. At 0 the multiplier is 0.5x. Values 0 to 25 give 0.5x to 1x. Values 26 to 34 give 2x to 10x. Values 35 to 100 give up to 100x. 1x
Simulation: Close Closes the simulation dialog. -

Advanced

Console

  • The Program tab shows the lines of the job. The highlighted line is the line that GRBL reads. Follow scrolls with the job.
  • The Console tab shows the replies and sends commands.
  • The status line shows Acknowledged line and the number of Errors on the lines.

Stop, reset and recovery

  • Stop (job or probing) sends a feed hold (!). The machine then needs a reset and a home cycle before more motion.
  • After Stop, Resume and the Pause/Resume toggle are blocked. A resume would continue the held motion.
  • Reset sends the soft reset byte (0x18). The tool waits for the startup banner. Home is blocked until the banner is read.
  • A soft reset stops the spindle. The tool shows Spindle as off.
  • The tool does not trust the position after an uncertain motion. Press Reset, then Homing button.

Check mode

  • Check mode uses $C. GRBL reads the next program without motion. The tool exits check mode after one job.
  • Start refuses to build a levelled job in check mode when no height map exists.

Simulation

  • The simulation uses a virtual GRBL. It does not open a serial port.
  • With Level the G-code checked, the simulation also runs the probe moves of the height map.

Plot 3D

  • The Plot 3D view shows the accepted lines of the job, the selected line and the tool position.
  • It shows the height map surface when Plot height map is checked.
  • The view starts in isometric view. Show in Plot 3D opens the Plot 3D tab.

Settings stored by the application

The tool stores these options in the application settings. The factory values are in defaults.py.

Option Use Default
tools_grbl_baudrate Baud rate 115200
tools_grbl_jog_step Jog step 5
tools_grbl_jog_fr Jog feedrate 1500
tools_grbl_travelz Safe Z for the origin jog and the probe travel 15.0
tools_grbl_console_visible Console dock shown False
tools_grbl_status_ms Status poll interval, in ms 200
tools_grbl_arc_mode How arcs are sent split
tools_grbl_arc_segment Arc segment size 0.5
tools_grbl_seg_len Segment length 1.0
tools_gcode_fit_view Fit View True

GRBL details

  • At connect, the tool reads $13 to learn the report units. Jog commands use G20 (inch) or G21 (mm) for the application units.
  • Each probe move is G38.2. The probe result line [PRB:x,y,z:1] is read. A result with flag 0 means that the probe did not touch.
  • Overrides use the GRBL real-time bytes (0x90 to 0x9D).

Tcl

No Tcl command was found for this tool. See Tcl Command Reference.

See also

Clone this wiki locally