Skip to content
Warning

This documentation is in active development. Content is being updated as feedback is reviewed. Your patience is appreciated.

Submit documentation feedback with the widget at the bottom-left of this window or by emailing [email protected].

Open a support ticket with the widget at the bottom-right or by emailing [email protected].

GRBL Errors

GRBL devices have a number of different alarms and error codes you may encounter. These will be visible in the Console Window.

This page contains information about the errors and alarms MillMage users are most likely to encounter, as well as some other frequently encountered problems with GRBL devices. For additional information, we've found the following resources helpful:

GRBL Alarm Codes

Alarms are emergency messages, and are used when something has gone very wrong. These are shown in the Console Window as ALARM:#, with a number to tell you what caused the alarm.

ALARM:1

Hard Limit

A limit switch was triggered while the machine was moving. The machine position is probably lost, which causes the machine to hit the edges of its workspace.

Fix this alarm by rehoming the machine. If this continues to happen:

  • Check your project setup, your workpiece origin, and the coordinate space you're using, and make sure you are not commanding the machine to move outside of its physical bounds. See Coordinates and Job Origin for more information.
  • Make sure your machine is homing correctly by comparing the position shown in the Move window in MillMage to the machine's actual position within its work area.
  • Some limit switches are triggered by reading resistance to stepper motors. Make sure the wires aren't snagging and causing a false trigger, and check your machine for mechanical problems.
  • Move or jog the tool over to the machine origin (0,0,0), unplug the USB/serial cable if connected, and power cycle the machine.

ALARM:2

Soft Limit

LightBurn Video

This video features our sister software, LightBurn. While there may be slight differences in appearance and layout, the demonstrated processes are similar in MillMage.

You're trying to send the machine outside of its known working area, and GRBL has prevented this to prevent damage to the machine. This can happen for several reasons:

  • You're trying to run a job that exceeds the size of the machine work area.
  • Your workpiece origin may not be set correctly.
  • Move or jog the tool over to the machine origin (0,0,0), unplug the USB/serial cable if connected, and power cycle the machine.

ALARM:3

Abort During Cycle

LightBurn Video

This video features our sister software, LightBurn. While there may be slight differences in appearance and layout, the demonstrated processes are similar in MillMage.

The CNC machine halted abruptly, sometimes due to another Alarm or Error, or, often, the computer losing connection to the machine. Rehome the machine to ensure the machine reports its coordinates correctly. See Connection Troubleshooting for help if this happens repeatedly.

ALARM:4

Probe Fail

Console Message:

Probe is not in the expected initial state before starting probe cycle when G38.2 and G38.3 is not triggered and G38.4 and G38.5 is triggered.

Hit [Stop] button to clear

MillMage Message:

Probe sequence cannot continue as device is in error or alarm state.
Please exit this window and clear the alarm or error first.
Probe is not in the expected initial state before starting probe cycle when G38.2 and G38.3 is not triggered and G38.4 and G38.5 is triggered.

G38 Commands
GCode Function
G38.2 Probe towards the target and stops on contact, signal an error if it reaches the target position without triggering the probe
G38.3 Probe towards the target and stops on contact, but do not signal an error if it fails to trigger the probe
G38.4 Probe away from the target and stops on contact break, signal an error if it reaches the target position without triggering the probe
G38.5 Probe away the target and stops on contact break, but do not signal an error if it fails to trigger the probe

Troubleshooting:

Tool is Contacting Probe Plate: Jog Tool Off of Plate
  1. Press the Stop button in the Job Control Window or send the $X command in the Console to clear the alarm.
  2. Stop your spindle if running or power off your router.
  3. Jog the tool closer to the top surface and sides of the probe, to within 30 mm (1.8 in) of each probe contact area.
  4. Open the Probe Wizard, select your probe type, and complete the probing process.
Reseat Probe Connection
  1. Press the Stop button in the Job Control Window or send the $X command in the Console to clear the alarm.
  2. Stop your spindle if running or power off your router.
  3. Unplug the probe and plug back in. Examine the wires for potential damage like a short or a lose connection.
  4. Remove and reattach the probe wire lead to the bit.
  5. Jog the tool close to the top surface and sides of the probe, to within 30 mm (1.8 in) of each probe contact area.
  6. Open the Probe Wizard, select your probe type, and complete the probing process.

ALARM:5

Probe Fail

Typically encountered when the tool is farther away from the probing plate than commanded, or when the probe is not connected to the controller.

Console Message:

Probe fail. Probe did not contact the workpiece within the programmed travel for G38.2 and G38.4.

Hit [Stop] button to clear

MillMage Message:

Probe sequence cannot continue as device is in error or alarm state.
Please exit this window and clear the alarm or error first.
Probe fail. Probe did not contact the workpiece within the programed travel for G38.2 and G38.4.

G38 Commands
GCode Function
G38.2 Probe towards the target and stops on contact, signal an error if it reaches the target position without triggering the probe
G38.3 Probe towards the target and stops on contact, but do not signal an error if it fails to trigger the probe
G38.4 Probe away from the target and stops on contact break, signal an error if it reaches the target position without triggering the probe
G38.5 Probe away the target and stops on contact break, but do not signal an error if it fails to trigger the probe

Troubleshooting:

Too Far Away: Jog Tool Closer
  1. Press the Stop button in the Job Control Window or send the $X command in the Console to clear the alarm.
  2. Stop your spindle if running or power off your router.
  3. Jog the tool closer to the top surface and sides of the probe, to within 30 mm (1.8 in) of each probe contact area.
  4. Open the Probe Wizard, select your probe type, and complete the probing process.
Probe Disconnected: Verify Probe Connection
  1. Press the Stop button in the Job Control Window or send the $X command in the Console to clear the alarm.
  2. Stop your spindle if running or power off your router.
  3. Unplug the probe and plug back in. Examine the wires for potential damage like a cut/break or a lose connection.
  4. Remove and reattach the probe wire lead to the bit.
  5. Jog the tool close to the top surface and sides of the probe, to within 30 mm (1.8 in) of each probe contact area.
  6. Open the Probe Wizard, select your probe type, and complete the probing process.
Tool Too Short: Reseat Tool in Collet
  1. Press the Stop button in the Job Control Window or send the $X command in the Console to clear the alarm.
  2. Stop your spindle if running or power off your router.
  3. Loosen and remove the collet from the spindle or router. Extend the tool out towards the bottom of the collet to increase the tool length. Reinstall the collet following your device manufacturer recommendations.
  4. Jog the tool closer to the top surface and sides of the probe, to within 30 mm (1.8 in) of each probe contact area.
  5. Open the Probe Wizard, select your probe type, and complete the probing process.

ALARM:6

Homing Fail

Alarm 6 can occur when the controller is reset during the homing process.

Console Message:

The active homing cycle was reset.

Hit [Stop] button to clear

Troubleshooting:

Homing Interrupted: Restart Homing Cycle
  1. Press the Stop button in the Job Control Window or send the $X command in the Console to clear the alarm.
  2. Unplug the CNC from your computer if connected for direct control.
  3. Power cycle the CNC machine and connect your computer back to the CNC machine.
  4. Attempt homing again.

ALARM:7

Homing Fail

CNC machines equipped with safety enclosures and interlocks may display this error if homing is attempted when the enclosure is opened during a homing cycle.

Console Message:

Safety door was opened during homing cycle.

Hit [Stop] button to clear

Troubleshooting:

Homing Interrupted: Close Door
  1. Press the Stop button in the Job Control Window or send the $X command in the Console to clear the alarm.
  2. Close any open doors and attempt homing again.

ALARM:8

Homing Fail

LightBurn Video

This video features our sister software, LightBurn. While there may be slight differences in appearance and layout, the demonstrated processes are similar in MillMage.

The machine failed to pull off one or both limit switches after homing.

Console Message:

Pull off travel failed to clear limit switch.

Hit [Stop] button to clear

Troubleshooting:

Endstops Triggered: Check Endstops
  1. Press the Stop button in the Job Control Window or send the $X command in the Console to clear the alarm.
  2. Inspect your CNC machine's limit switches to make sure they are not stuck in the closed position.
  3. Check your machine's mechanical setup to make sure it is capable of moving, homing properly, and clearing the limit switches. See Troubleshooting: Mechanical Issues for more information.
  4. Attempt homing again.
Verify Power for Both Controller And Motors
  1. Make sure your power supply is securely plugged in and functional. A USB connection can sometimes be enough to power a device's control board, but it will not provide enough power for the stepper motors to move off the limit switches.
  2. Press the Stop button in the Job Control Window or send the $X command in the Console to clear the alarm.
  3. Attempt homing again.
Check Motor Connections: Reconnect and Reseat
  1. Unplug the CNC from your computer if connected for direct control.
  2. Power off the CNC machine.
  3. Inspect each motor connection and confirm that each motor connector is fully seated. Refer to your CNC manufacturer documentation for details.
  4. Power on your CNC machine and plug your computer back into the CNC machine if disconnected.
  5. Attempt homing again.

ALARM:9

Homing Fail

The machine's attempt to home failed because it didn't locate a limit switch. GRBL will stop homing to prevent potential damage to the machine if it doesn't encounter a limit switch within 1.5x the maximum travel distance.

Console Message:

Could not find limit switch within search distances.

Hit [Stop] button to clear

Troubleshooting:

Machine Moves: Check End stop Engagement
  1. Make sure your machine has limit switches. If you installed them yourself, make sure they're wired correctly and the connectors are snug.
  2. Press the Stop button in the Job Control Window or send the $X command in the Console to clear the alarm.
  3. Attempt homing again.
Intermittent Movement: Check Mechanical Setup

Check your machine's belt tension and overall mechanical setup to make sure it is capable of moving and homing properly. See Troubleshooting: Mechanical Issues for more information. Attempt homing again after confirming sound mechanical movement.

Verify Power for Both Controller And Motors

Make sure your power supply is securely plugged in and functional. A USB connection can sometimes be enough to power a device's control board, but it will not provide enough power for the stepper motors to respond to the homing command. Attempt homing again once the controller is powered, switched on, and can move each axis.

Check Motor Connections: Power Down, Reconnect, and Reseat
  1. Unplug the CNC from your computer if connected for direct control.
  2. Power off the CNC machine.
  3. Inspect each motor connection and confirm that each motor connector is fully seated. Refer to your CNC manufacturer documentation for details.
  4. Power on your CNC machine and plug your computer back into the CNC machine if disconnected.
  5. Attempt homing again.

ALARM: 10

EStop Asserted

Check and reset your Emergency Stop and clear the error.

Console Message (grblHAL only):

EStop asserted. Clear and reset.

Hit [Stop] button to clear

Troubleshooting:

Reset Emergency Stop

Typically, twist and pull up on your hardware Emergency Stop button. Check you CNC manufacturer documentation for device specific instructions.

ALARM: 14

Spindle at Speed Timeout

The controller is reporting that the spindle did not reach the specified speed within the set timeout.

Console Message (grblHAL only):

Spindle at speed timeout. Clear before continuing.

Hit [Stop] button to clear

Troubleshooting:

Spindle Not Up To Speed
  1. Check your spindle speed and timeout settings to ensure they are set to reasonable values. Refer to your CNC or spindle manufacturer documentation for recommended settings.

ALARM: 15

Homing Fail

CNC machines equipped with a second end stop on one axis — used for automatic squaring of the axis — may show this error if the second end stop is not activated during the homing process because the controller didn't locate a limit switch.

Console Message (grblHAL only):

Homing fail. Bad configuration.

Hit [Stop] button to clear

Troubleshooting:

Check Second End Stop for Activation and Function
  1. Jog or move the tool towards the second end stop and check for end stop engagement. The machine's attempt to home failed because it didn't locate a limit switch.
  2. Press the Stop button in the Job Control Window or send the $X command in the Console to clear the alarm.
  3. Attempt homing again.
Machine Moves: Check End stop Engagement

Make sure your end stops wired correctly and the connectors are snug. Attempt homing again.

Intermittent Movement: Check Mechanical Setup
  1. Check your machine's belt tension and overall mechanical setup to make sure it is capable of moving and homing properly. See Troubleshooting: Mechanical Issues for more information.
  2. Press the Stop button in the Job Control Window or send the $X command in the Console to clear the alarm.
  3. Attempt homing again after confirming sound mechanical movement.
Check Motor Connections: Reconnect and Reseat
  1. Unplug the CNC from your computer if connected for direct control.
  2. Power off the CNC machine.
  3. Inspect each motor connection and confirm that each motor connector is fully seated. Refer to your CNC manufacturer documentation for details.
  4. Power on your CNC machine and plug your computer back into the CNC machine if disconnected.
  5. Attempt homing again.

ALARM:17

Motor Fault

The controller has detected an issue with closed-loop motor tracking.

Console Message (grblHAL only):

Motor fault.

Hit [Stop] button to clear

Troubleshooting:

Intermittent Movement: Check Mechanical Setup

Check your machine's belt tension and overall mechanical setup to make sure it is capable of moving and homing properly. See Troubleshooting: Mechanical Issues for more information. Attempt homing again after confirming sound mechanical movement.

Verify Power for Both Controller And Motors

Make sure your power supply is securely plugged in and functional. A USB connection can sometimes be enough to power a device's control board, but it will not provide enough power for the stepper motors to respond to the homing command. Attempt homing again once the controller is powered, switched on, and can move each axis.

Check Motor Connections: Reconnect and Reseat
  1. Unplug the CNC from your computer if connected for direct control.
  2. Power off the CNC machine.
  3. Inspect each motor connection and confirm that each motor connector is fully seated. Refer to your CNC manufacturer documentation for details.
  4. Power on your CNC machine and plug your computer back into the CNC machine if disconnected.
  5. Attempt homing again.

GRBL Error Codes

These error codes are less severe than alarm codes, and are used when your machine receives a command it can't act on. Like alarms, these are shown in the Console window as error:#, with a number to tell you what caused the error.

G54 Offset Values Not 0

A G54 Offset Values Not 0 message displayed in the Console on initial connection can be normal or expected when a workpiece coordinate offset is currently stored in the CNC machine controller. This is helpful for running jobs after power losses or when working with fixturing and will be reset when a new project origin has been established.

Error:1

The machine received an invalid GCode command.

Review the GCode file being sent to your machine for malformed commands, incomplete lines, or multiple commands combined onto one line. Users of hardware accessories should review the Custom GCode entries found in the Device Settings window.

Using a VFD (Variable Frequency Drive)?

Users with VFD spindle speed controls should ensure proper grounding as recommended by the device manufacturer.

Error:3

The machine received the $ system command but does not recognize or support it.

Error:5

LightBurn Video

This video features our sister software, LightBurn. While there may be slight differences in appearance and layout, the demonstrated processes are similar in MillMage.

MillMage sent the command to the controller to home it, but the controller does not have homing enabled or configured. Typically, this occurs when Auto-Home On Startup is enabled in Device Settings for a machine without homing switches.

Error:8

A command was sent to your machine while it was still processing another command. If your machine is homing, wait and try again.

This error can also be caused by communications corruptions or electrical interference.

  • In the Device Settings window, try changing Transfer Mode to Synchronous.
  • Try a new, shielded USB cable.

Error:9

MillMage tried to send a command to your device, but the machine is locked. GRBL locks devices while jogging (moving the gantry) or when the machine has an active GRBL alarm.

  • If the machine is moving, wait for it to finish moving.
  • Enter $X in the Console window to unlock the machine.
  • If there is an active alarm, identify the alarm and address the cause.

Error:20

The machine received an unsupported or invalid GCode command. This is usually the result of the wrong device type being selected or devices with firmware using non-standard GCode.

Tip

To check what version of GRBL your CNC machine is running, enter $I into the Console window and press Enter. The messages shown in response should include the GRBL version in a message starting with VER.

  • Make sure your device type is set correctly.
  • Some machines — including Shapeoko devices — may not support homing individual axes. If you get this error while trying to home an individual axis, try homing all axes at the same time.

Error:24

The machine received an invalid GCode command, combining two GCode commands that both require X/Y/Z Axis parameters. This is usually the result of communications corruption.

  • Try a new, shielded USB cable.

Other Common Problems for GRBL Machines

Busy

The Busy bar in the Job Control window is not necessarily an error - it shows that the machine is busy doing something. However, if you are seeing Busy but the machine is not moving, it may not be connected to the computer.

CNC Machine Not Connecting

If you see Disconnected in the Job Control window, your computer is unable to communicate with the CNC machine. Make sure it's plugged in and turned on. If it still does not connect:


For more help using MillMage, please visit our forum to talk with MillMage staff and users, or email support.