GRBL $$ settings checker for laser engravers
Paste the reply to $$ and every line is explained in plain words. The settings that ruin laser jobs are flagged: laser mode ($32), the power scale ($30 against LightBurn), work area, steps/mm and speed limits. Below, your own speed and acceleration drive an animation of how M3 and M4 burn a corner.
1Paste your $$
2Compare with
$32=1 (GRBL 1.1f or later).| Setting | Value | What it does | Check |
|---|---|---|---|
$0 | 10 | Step pulseLength of each step pulse sent to the stepper drivers. | — |
$1 | 255 | Step idle delayHow long the motors stay powered after a move. 255 keeps them on. | — |
$2 | 0 | Step port invertInverts the step signal for the chosen axes. | — |
$3 | 0 | Direction port invertReverses the direction of the chosen axes, for an axis that moves the wrong way. | — |
$4 | 0 | Step enable invertInverts the motor-enable signal. | — |
$5 | 0 | Limit pins invertInverts the limit switch inputs. | — |
$6 | 0 | Probe pin invertInverts the probe input. | — |
$10 | 1 | Status reportWhat the position reports show (machine or work position, buffer data). | — LightBurn’s GRBL guide says $10=0 is needed if you use a work offset or G92 instead of homing. |
$11 | 0.010 | Junction deviationHow fast the planner lets the head go through corners. Smaller = slower corners. | — A 90° corner is taken at about 4.9 mm/s with $120/$121 = 1,000 mm/s² (our estimate, on the low side: GRBL’s planner can allow a little more). |
$12 | 0.002 | Arc toleranceHow finely arcs are split into short lines. | — |
$13 | 0 | Report inchesReports positions in inches instead of mm. | — |
$20 | 1 | Soft limitsStops a move that would go past the travel in $130–$132. Needs homing. | ✕ FixSoft limits ($20=1) without homing ($22=0). The Grbl wiki says soft limits need homing to know where the head is. Turn on homing or set $20=0. |
$21 | 0 | Hard limitsStops everything when a limit switch is hit. | — |
$22 | 0 | Homing cycleTurns on homing ($H) to find a known position with the switches. | — |
$23 | 0 | Homing direction invertWhich way each axis looks for its switch. | — |
$24 | 25.000 | Homing feedSlow speed for the final touch on the switches. | — |
$25 | 500.000 | Homing seekFast speed while looking for the switches. | — |
$26 | 250 | Homing debounceWait for a switch signal to settle. | — |
$27 | 1.000 | Homing pull-offDistance to back off the switches after homing. | — |
$30 | 255 | Max spindle speed (laser full power)The S value that gives full output (5 V PWM). Higher S values are clipped to full power. | ✕ Fix$30=255 but LightBurn’s S-value max is 1000. GRBL clips any S above $30 to full power, so everything from about 25.5 % up in LightBurn burns at 100 %, and lower settings are 3.92× stronger than they look. Make the two numbers the same. |
$31 | 0 | Min spindle speedThe S value mapped to the lowest output; S0 is still off. | ✓ OK |
$32 | 0 | Laser modeKeeps moving through G1/G2/G3 moves when S changes, instead of stopping, and makes M4 scale power with speed. The laser is always off on G0 moves. | ✕ Fix$32=0: laser mode is off. GRBL stops at every power change, which LightBurn says leaves burn spots in images, and M4 does not scale power with speed. Send $32=1 (GRBL 1.1f or later). |
$100 | 80.000 | X steps/mmMotor steps per mm of X travel. | — Enter the drive (steps, microsteps, mm per motor turn) to compare. |
$101 | 80.000 | Y steps/mmMotor steps per mm of Y travel. | — Enter the drive (steps, microsteps, mm per motor turn) to compare. |
$102 | 80.000 | Z steps/mmMotor steps per mm of Z travel. | — |
$110 | 6000.000 | X max rateFastest X speed, also used for G0 moves. | ✓ OK6,000 mm/min = 100 mm/s. |
$111 | 6000.000 | Y max rateFastest Y speed, also used for G0 moves. | ✓ OK6,000 mm/min = 100 mm/s. |
$112 | 1000.000 | Z max rateFastest Z speed. | — |
$120 | 1000.000 | X accelerationHow quickly X speeds up and slows down. | — At 6,000 mm/min the head needs 5 mm to get up to speed (and the same to stop). |
$121 | 1000.000 | Y accelerationHow quickly Y speeds up and slows down. | — At 6,000 mm/min the head needs 5 mm to get up to speed (and the same to stop). |
$122 | 100.000 | Z accelerationHow quickly Z speeds up and slows down. | — |
$130 | 420.000 | X max travelLength of X travel; used by soft limits. | — Choose a machine or enter its work area to compare. |
$131 | 400.000 | Y max travelLength of Y travel; used by soft limits. | — Choose a machine or enter its work area to compare. |
$132 | 50.000 | Z max travelLength of Z travel; used by soft limits. | — |
The formulas
The first two follow from how GRBL scales power: S between 0 and $30 maps to 0–100 % output, and the Grbl wiki says that a higher S simply gives the maximum. The steps/mm formula is the Grbl wiki’s. The ramp distance is plain physics with GRBL’s acceleration, and the corner speed is our estimate from Grbl’s junction-deviation idea ($11) for a 90° turn. It uses the lower of $120 and $121 as it is, so it is on the low side: GRBL’s planner can take a corner a little faster. The animation uses them too; it is sped up, and real lasers add their own lag.
The settings that matter for a laser
| Setting | What to check |
|---|---|
$32 laser mode | 1 for a laser. 0 makes GRBL stop at each power change and turns off M4’s speed scaling. grblHAL uses 0, 1 and 2 (lathe). |
$30 max S | Must equal LightBurn’s S-value max. A mismatch either caps your power or makes full power arrive early. |
$31 min S | Grbl’s example has 0. Above 0, the low end of the power range moves and LightBurn’s percentages stop matching the output. |
$110/$111 max rate | The fastest the axis will go, in mm/min. A LightBurn speed above it is never reached. LightBurn’s “GRBL low or no power output” page says to stay within these: with variable power (M4) the power follows the speed, so an unreachable speed also means less power. |
$120/$121 acceleration | Sets how long the head takes to reach speed, and how much overscan an engraving needs (see the line interval calculator, which takes $120 too). |
$130/$131 max travel | Used only by soft limits ($20=1), which also need homing ($22=1). |
$100/$101 steps/mm | A wrong value scales every size on that axis. Measure a long test cut before changing it. |
$13 report inches | LightBurn’s GRBL guide uses 0 (mm). |
$10 status report | LightBurn’s GRBL guide says $10=0 is needed if you use a work offset or G92 instead of homing. |
M3, M4 and the dark corners
GRBL drives a laser through its spindle output. M3 holds the power you set whether the head is moving, slowing or stopped; the Grbl wiki suggests lead-in and lead-out moves to avoid scorching. M4 sets power “based on the current speed relative to the programmed rate”, so the energy per millimetre stays the same through a corner, and it turns the laser off when the head stops. Both only fire on G1, G2 and G3: in laser mode a G0 move turns the laser off. LightBurn’s GRBL device uses M4; its GRBL-M3 device is for GRBL 1.1e and older. To check the result on wood, run a small grid with our material test generator, which writes M4 G-code.
3018 and other CNC machines with a laser
Small GRBL CNC routers, such as 3018-type machines, can also carry a laser module. The checks above still apply, with one more: laser mode is for the laser only. The Grbl wiki warns to turn it off ($32=0) before going back to a milling spindle, because a spindle needs the pauses laser mode removes. Your steps/mm and max rates come from the machine’s lead screws or belts, so compare them with your own drive, not with a laser engraver’s.
Other firmware
- grblHAL keeps the Grbl 1.1 numbers but adds many settings, which this page lists without checking. Its
$32is a mode number: 0 normal, 1 laser, 2 lathe. - FluidNC is configured mainly through its own configuration file. A LaserGRBL issue reports that its reply to
$$carries few or none of the numbered settings, so check laser mode and the power range in its configuration instead.
FAQ
- What does $32 laser mode do in GRBL?
- With $32=1, GRBL keeps moving through G1, G2 and G3 moves when the S value (power) changes, instead of stopping at every change, and M4 scales the power with the actual speed. With $32=0, it pauses at each power change, which LightBurn says leaves burn spots when engraving images. Turn it off again before running a milling spindle, as the Grbl wiki advises.
- What should $30 be for LightBurn?
- The same number as LightBurn’s S-value max (Edit → Device Settings). LightBurn’s default is 1000 and current GRBL also defaults to 1000; some machines ship with 255. Which one you use does not matter as long as the two match. If $30=1000 and LightBurn sends a maximum of 255, LightBurn notes you get roughly a quarter of the power.
- Why does my laser burn darker in the corners?
- The head has to slow down to turn a corner. With M3 (constant power) the power stays the same while the speed drops, so each millimetre at the corner gets more energy. M4 (dynamic power) lowers the power with the speed and keeps the energy per millimetre even; in LightBurn that is the default for the GRBL device, while the GRBL-M3 device uses M3. M4 needs $32=1 and GRBL 1.1f or later.
- How do I change a GRBL setting?
- Type the setting and its new value in the console of your sender, for example $32=1, and press Enter; GRBL replies ok. Send $$ again to confirm. Write down the old $$ first, so you can go back, and change one setting at a time.
Sources
- Grbl wiki, Grbl v1.1 Configuration (every setting, the example $$, $30 and $31, steps/mm, soft limits need homing) and Grbl v1.1 Laser Mode ($32, M3 and M4, G0).
- LightBurn, GRBL configuration ($32=1, M4 on 1.1f or later, GRBL-M3 device, $13 and $10) and GRBL low or no power output ($30 and S-value max, 255 vs 1000, $110/$111).
- SainSmart, Grbl v1.1 quick reference (settings, error and alarm codes; written by a customer).
- grblHAL core wiki, Additional or extended settings ($32 modes); LaserGRBL, issue #1885 (FluidNC and $$, user reports).
Last checked 2026-11-01 · The checks follow the sources above; no machine was used to make this page. Work-area figures come from our machine table.