Beam Bench Docs

$ settings reference

Every GRBL $ setting with a one-line description and the laser-specific guidance for each.

The full list of GRBL $ settings. For each, a one-line summary and (where relevant) the laser-specific guidance.

For an interactive view that loads the current values from your machine, use Device Settings → GRBL Settings tab.

Step pulse and direction

SettingMeaningTypical
$0Step pulse, microseconds10
$1Step idle delay, ms (255 = always-on)25 or 255
$2Step port invert mask0 (most setups)
$3Direction port invert maskdepends on motor wiring
$4Step enable invert0
$5Limit pins invertdepends on switch type
$6Probe pin invert0

Reporting and behavior

SettingMeaningTypical
$10Status report mask1 or 2. Beam Bench parses both
$11Junction deviation (mm)0.010
$12Arc tolerance (mm)0.002
$13Report inches (1=yes, 0=mm)0

Safety and limits

SettingMeaningTypical
$20Soft limits enable0 or 1
$21Hard limits enable0 or 1
$22Homing cycle enable0 or 1
$23Homing direction maskdepends on home corner
$24Homing feed (mm/min)25
$25Homing seek (mm/min)500
$26Homing debounce, ms250
$27Homing pull-off (mm)1

Laser specifics

SettingMeaningTypical
$30Maximum spindle / laser S value1000 or 255
$31Minimum spindle / laser S value0
$32Laser mode (1=on, 0=off)1 for laser engraving

$32=1 is non-negotiable for laser engraving, it synchronizes power with motion.

Axis steps/mm

SettingMeaning
$100X steps/mm
$101Y steps/mm
$102Z steps/mm

Specific to your machine. See Steps per millimeter.

Max rates (mm/min)

SettingMeaning
$110X max rate
$111Y max rate
$112Z max rate

Set to your machine's safe maximum. Going beyond will stall motors.

Acceleration (mm/sec²)

SettingMeaning
$120X acceleration
$121Y acceleration
$122Z acceleration

Higher = tighter cornering. Diode laser: 1000-3000 is reasonable. CO2 gantry: 500-1500.

Maximum travel (mm)

SettingMeaning
$130X max travel
$131Y max travel
$132Z max travel

Used for soft limits ($20=1). Set to your physical bed dimensions.

Reading and writing

In the Console panel:

$$                  # dump all settings
$30                 # query a single setting
$30=1000            # set a setting (persists to EEPROM)

In Device Settings → GRBL Settings tab:

  • Click any value to edit inline.
  • Click Apply to Active Profile to copy live values into the machine profile.

Resetting

Send $RST=$ to reset all $ settings to firmware defaults. Send $RST=# to reset coordinate offsets. Send $RST=* to reset everything. Use with caution, your tuning vanishes.

Per-firmware variations

  • GRBL_ESP32 adds some settings around WiFi, BlueTooth, web UI.
  • FluidNC uses a YAML config file instead of $ settings for most things (but some $ settings still apply).
  • Older GRBL versions may be missing some of the above.

When in doubt: send $$, see what your controller actually reports.

On this page