GRBL Settings Guide: Complete CNC $ Parameters, Setup & Troubleshooting

Complete GRBL Settings Guide: Essential $ Parameters, Configuration and Troubleshooting for Desktop CNC Routers

Introduction

For desktop CNC router users, GRBL firmware is the core system that controls machine movement and machining operations.

By adjusting GRBL settings and $ parameters, users can optimize CNC performance, including:

  • Motor movement accuracy
  • Homing direction
  • Maximum travel speed
  • Acceleration settings
  • Spindle speed control
  • Laser engraving mode

During daily CNC operation, users may encounter common issues such as:

  • Engraving dimensions not matching the design file
  • Incorrect CNC homing direction
  • GRBL Alarm errors
  • Spindle speed not reaching the expected value
  • Laser mode not working properly

Most of these problems can be solved by correctly configuring GRBL parameters.

This guide explains the most commonly used GRBL settings for desktop CNC routers, including how to check and modify parameters, calibrate machine accuracy, configure homing settings, and troubleshoot common CNC problems.

1. What Are GRBL Parameters?

GRBL is an open-source CNC firmware widely used in desktop CNC routers, CNC engraving machines, and laser engraving systems.

The official GRBL source code and development information can be found in the GRBL open-source CNC firmware repository.

GRBL uses $ parameters to control different machine functions, including:

  • Motor movement accuracy
  • Maximum travel speed
  • Acceleration
  • Homing function
  • Software limits
  • Spindle control
  • Laser mode

Users can connect their CNC machines through control software such as:

  • Candle
  • Universal G-code Sender (UGS)
  • OpenBuilds CONTROL

Then, GRBL settings can be viewed and modified through command inputs.

2. How to View and Modify GRBL Settings

2.1 Check Current GRBL Parameters

After connecting your CNC router to control software, enter:$$

The system will display all current GRBL settings.

Example:

$0=10

$1=25

$20=0

$22=1

$100=80

$110=500

These values represent the current configuration of your CNC machine.

Before modifying any parameters, it is recommended to save the current settings by using:$$

This allows you to restore the previous configuration if needed.

2.2 Modify GRBL Parameters

The GRBL parameter format is:

$Parameter number=value

Example:

Modify X-axis Steps/mm:

$100=80

After entering the command, the setting will be saved automatically and take effect immediately.

For a complete list of GRBL commands and configuration options, refer to the official GRBL parameter reference documentation.

3. Common GRBL Settings Explained

3.1 Steps per Millimeter Settings

$100: X-axis Steps/mm

$101: Y-axis Steps/mm

$102: Z-axis Steps/mm

These parameters determine CNC movement accuracy.

For example:$100=80

means the controller uses the configured number of step pulses to move the X-axis by 1mm.

How to Fix Incorrect CNC Engraving Dimensions?

One of the most common CNC router problems is incorrect engraving size.

For example:

Designed size:100mm

Actual machining size:98mm

This usually indicates that the Steps/mm value needs calibration.

The calculation formula is:New Steps/mm =Current Steps/mm × Design Size ÷ Actual Size

Example:

Current setting:$100=80

Calculation:80 × 100 ÷ 98 = 81.63

New setting:$100=81.63

After modification, run another test cut and verify the result.

3.2 Maximum Travel Speed Settings

$110: X-axis Maximum Rate

$111: Y-axis Maximum Rate

$112: Z-axis Maximum Rate

Unit:mm/min

Example:

$110=5000

means the maximum X-axis travel speed is 5000mm/min.

If the speed is set too high, it may cause:

  • Stepper motor skipping
  • Reduced machining accuracy
  • Excessive vibration

The recommended values depend on:

  • Machine structure
  • Linear guide system
  • Drive mechanism
  • Motor performance

3.3 Acceleration Settings

$120: X-axis Acceleration

$121: Y-axis Acceleration

$122: Z-axis Acceleration

Acceleration determines how quickly a CNC router reaches the target speed during movement.

If acceleration is set too high:

  • Stepper motors may lose steps
  • Machine vibration may increase
  • Machining accuracy may decrease

If acceleration is set too low:

  • Machining efficiency decreases
  • Cutting time increases

For desktop CNC routers, acceleration should be adjusted according to:

  • Machine frame rigidity
  • Linear motion system
  • Motor torque
  • Cutting tool requirements

4. GRBL Homing Settings and Configuration

Homing is an essential function that allows a CNC machine to establish its machine coordinate system.

A correctly configured homing cycle ensures that the CNC router can accurately locate its mechanical origin before machining.

Common GRBL homing parameters include:

Parameter

Function

$22

Enable/disable homing

$23

Homing direction

$24

Homing feed rate

$25

Homing seek rate

$27

Homing pull-off distance

 

4.1 Enable GRBL Homing Function ($22)

Parameter:$22

Enable homing:$22=1

Disable homing:$22=0

When enabled, the CNC machine will automatically move toward the limit switches during the homing cycle and establish the machine origin.

4.2 Change Homing Direction ($23)

The $23 parameter controls the homing direction of each axis.

If your CNC router moves in the wrong direction during homing, check this parameter.

Common symptoms:

  • X-axis moves away from the limit switch
  • Y-axis moves in the opposite direction
  • Z-axis moves upward/downward incorrectly

Check the current value:$23

Modify the setting:$23=1

The correct value depends on:

  • CNC machine structure
  • Limit switch installation position
  • Coordinate system direction

After changing $23, always test the homing cycle to confirm that each axis moves toward the correct limit switch.

4.3 Adjust Homing Pull-Off Distance ($27)

After completing the homing cycle, the CNC machine moves away from the limit switch by a defined distance.

Parameter:$27

Example:$27=5

This means the machine will move 5mm away from the limit switch after homing.

If the pull-off distance is too small:

  • Limit switches may remain triggered
  • Homing errors may occur

If the distance is too large:

  • Available machining area may be reduced

5. GRBL Spindle Speed Settings

GRBL controls CNC spindle speed through spindle-related parameters.

The two most important parameters are:$30,$31 

5.1 Maximum Spindle Speed ($30)

Parameter:$30

This defines the maximum spindle speed output by GRBL.

Example:

For a 2.2kW CNC spindle:$30=24000

Maximum spindle speed:24000 RPM

The $30 value should match the actual maximum RPM of your spindle.

5.2 Minimum Spindle Speed ($31)

Parameter:$31

Example:$31=0

This means the minimum spindle speed is 0 RPM.

Important:

The spindle speed command generated by CAM software cannot exceed the $30 value.

Example:

GRBL setting:$30=12000

CAM output:S18000

The spindle will not reach 18000 RPM because the maximum output is limited by $30.

For users creating CNC toolpaths, Autodesk provides official Fusion 360 CAM tutorials covering CAD/CAM workflows, toolpath generation, and CNC machining processes.

6. GRBL Laser Mode Settings

GRBL also supports laser engraving applications.

Laser mode is controlled by:$32

Disable Laser Mode

$32=0

Suitable for:

  • CNC milling
  • Wood cutting
  • Plastic machining
  • Standard spindle operations

Enable Laser Mode

$32=1

When laser mode is enabled:

  • Laser power dynamically adjusts according to movement speed
  • Reduces burning caused by stopping or slowing down
  • Improves engraving quality

For normal CNC machining, it is recommended to keep laser mode disabled:$32=0

7. Common GRBL Alarms and Troubleshooting

GRBL alarms protect the CNC machine from abnormal operation.

Below are common GRBL errors and solutions.

Alarm 1: Soft Limit Triggered

Possible causes:

  • Toolpath exceeds machine working area
  • Incorrect work coordinates
  • Incorrect machine position

Check:$20

Disable software limits:$20=0

Enable software limits:$20=1

Before enabling soft limits, make sure homing and machine coordinates are configured correctly.

Alarm 8: Homing Failed

Possible causes:

  • Incorrect homing direction
  • Limit switch problem
  • Homing speed too high

Check:

  • $22
  • $23
  • $25
  • $27

Also check:

  • Limit switch wiring
  • Mechanical movement
  • Axis travel smoothness

Incorrect Engraving Dimensions

If the finished size does not match the design file, check:

  • $100
  • $101
  • $102

These parameters control X, Y, and Z-axis Steps/mm.

Recalibrate the values based on actual machine movement.

Spindle Cannot Start Correctly

Check:

  • $30
  • $31
  • $32

Also confirm:

  • CNC software outputs the correct spindle speed command (S value)
  • Spindle driver or VFD settings are correct
  • Wiring connections are properly installed

8. How to Restore GRBL Factory Settings

If incorrect parameter changes cause abnormal CNC operation, GRBL settings can be restored to default values.

Enter:$RST=*

After resetting: All GRBL parameters will be restored to factory defaults.

9. Important Notes When Modifying GRBL Settings

9.1. Always back up your settings

Before changing GRBL parameters, use:$$

to save the current configuration.

9.2 Avoid changing low-level parameters unnecessarily

Parameters such as:

  • $0
  • $1
  • $12

may affect:

  • Stepper motor operation
  • Signal stability
  • CNC interpolation accuracy

Incorrect values may cause unexpected machine behavior.

9.3 Test the machine after modifications

After changing GRBL settings, perform basic tests:

  • Manually move each axis
  • Run the homing cycle
  • Perform a dry run with G-code
  • Verify machining accuracy

10. Conclusion

GRBL settings are essential for achieving accurate and stable performance on desktop CNC routers.

With proper configuration:

  • $100-$102 calibrate machining dimensions
  • $22-$27 adjust CNC homing functions
  • $30-$31 control spindle speed range
  • $32 enables or disables laser mode

Understanding GRBL parameters helps CNC users optimize machine performance, reduce setup time, and solve common CNC troubleshooting problems.

For CNC beginners, learning how to configure GRBL settings is an important step toward achieving more accurate, reliable, and efficient machining results.

Frequently Asked Questions (FAQ)

Q1: How do I view GRBL settings?

Connect your CNC router to control software and enter:$$

The system will display all current GRBL parameters.

Q2: Why is my CNC engraving size incorrect?

Incorrect engraving dimensions are usually caused by incorrect Steps/mm settings.

Check:

  • $100
  • $101
  • $102

and recalibrate according to actual machine movement.

Q3: How do I change GRBL homing direction?

Adjust the $23 homing direction parameter.

Example:

$23=1

The correct value depends on CNC machine structure and limit switch position.

Q4: How do I restore GRBL default settings?

Enter:$RST=*

This restores GRBL parameters to factory defaults.

Remember to configure your machine settings again after resetting.