Laser Engraver Not Homing or Showing Homing Error — 6 Fixes
A homing error means the machine tried to find its limit switches but couldn't — or homing is enabled in firmware but your machine doesn't have limit switches installed. The fix is usually one GRBL setting change or a loose wire. Here's how to diagnose exactly which situation you're in and resolve it in under ten minutes.
What Homing Does and Why It Fails
Homing is the process of moving the laser head to a known reference corner (usually front-left or rear-left) and triggering physical limit switches at that corner. Once the machine has homed, it knows its absolute coordinate system — so if you tell it to go to position X100, Y200, it knows exactly where that is in the physical work area.
Homing fails for one of four fundamental reasons:
- Homing is enabled in GRBL firmware but the machine has no physical limit switches (very common on budget machines).
- The limit switches exist but one is disconnected, broken, or triggered incorrectly.
- The homing direction in firmware points the machine away from the switches rather than toward them.
- The homing speed is set too high and the machine overshoots the switch before stopping.
The first thing to determine is whether your machine actually has limit switches. Open-frame diode laser machines under $300 often ship without limit switches to cut cost. Check your machine's end stops — there should be small microswitch-type sensors at the corner where the machine homes. If you don't see any, the fix is simply to disable homing in GRBL ($22=0).
Fix 1: Check Whether Homing Is Enabled in GRBL
In LightBurn, open the console (Edit → Console, or the Console button). Type $$ and press Enter. This returns all current GRBL settings. Look for:
- $22 — Homing cycle enable. 0 = disabled, 1 = enabled.
- $23 — Homing direction mask. Controls which corner the machine homes to.
- $24 — Homing feed rate (the slow approach speed in mm/min).
- $25 — Homing seek rate (the fast initial search speed in mm/min).
- $27 — Homing pull-off distance (how far it backs off the switch after triggering).
If $22=0 and you want homing, send $22=1 in the console. If $22=1 and you keep getting homing errors and your machine has no switches, send $22=0 to disable homing. This is the most common fix for GRBL Alarm 9 "Homing fail" errors on budget diode machines.
Fix 2: Test Each Limit Switch Manually
If your machine has limit switches and homing is enabled but still fails, test each switch individually before assuming anything about firmware.
Test procedure: In LightBurn's console, type ? and press Enter. The response shows current machine status including active switch inputs in the Pn: field. Now manually press the X-axis limit switch (the switch at the home corner, not the far end). Type ? again — the response should now show Pn:X. Press the Y-axis switch and verify Pn:Y appears.
If pressing a switch does not change the Pn: field, that switch is not registering. Possible causes: the switch is disconnected, the wire has come loose at either the switch or the controller board, or the switch is physically damaged (microswitch contacts worn out).
Both switches must be tested independently. If X works but Y doesn't, homing will fail on the Y axis. You need both active for a successful home cycle.
Fix 3: Check Limit Switch Wiring
Limit switch wiring is the second most common physical cause of homing failure after absent switches. The switches are connected via small JST 2.0 or JST 2.54 connectors that vibrate loose during shipping and operation.
What to check:
- Trace the wire from each limit switch to the controller board. Confirm both ends of the connection are fully seated. JST connectors should click in — if they can be pulled loose without releasing a latch, they're not seated.
- Check for pinched or severed wires at points where the cable routing passes through tight gaps or over sharp edges. The Y-axis switch cable is routed along the gantry arm and is particularly susceptible to pinching.
- On some machines, limit switch wires run through the cable chain. Open the cable chain and verify the wire isn't kinked or broken inside.
Normally-closed vs. normally-open: GRBL supports both normally-open (NO) and normally-closed (NC) limit switches, controlled by setting $5. Most consumer laser machines ship with NC switches. If $5 is wrong for your switch type, the switch will appear permanently triggered or permanently untriggered. If swapping $5 between 0 and 1 changes behavior, you've found the issue.
Fix 4: Correct the Homing Direction
The $23 setting is a bitmask that controls which direction the machine moves on each axis when homing. If the machine moves away from the limit switches rather than toward them, $23 is set for the wrong corner.
The four standard values and their corresponding home corners:
| $23 Value | Home Corner | X direction | Y direction |
|---|---|---|---|
| 0 | Lower-left (front-left) | Move left (negative) | Move down (negative) |
| 1 | Lower-right (front-right) | Move right (positive) | Move down (negative) |
| 2 | Upper-left (rear-left) | Move left (negative) | Move up (positive) |
| 3 | Upper-right (rear-right) | Move right (positive) | Move up (positive) |
To find the correct value for your machine: look at which corner the limit switches are physically located. That corner is the home position. Match it to the table and send $23=X with the correct value.
If you're unsure, try all four values systematically. After changing $23, re-home and observe which direction the machine moves. The goal is for it to move toward the corner where the switches are located.
Fix 5: Reduce Homing Speed
If the machine starts homing, moves toward the correct corner, but then overshoots the switch or triggers a homing alarm partway through the cycle, the homing seek speed ($25) is too fast for the motor and load.
The homing cycle works in two phases: a fast seek phase to find the switch approximately, then a slower feed phase to locate it precisely. If the fast seek phase moves faster than the motor can reliably produce, the motor misses steps and never reaches the switch.
How to fix: In the console, send $25=300 to reduce homing seek speed to 300mm/min (from the typical default of 500mm/min). Also reduce $24 (feed rate) proportionally: $24=50 is typical. Test homing. If it succeeds, you can cautiously increase the values to reduce homing time, but keep the seek rate conservative — it runs once at startup and doesn't need to be fast.
Fix 6: Disable Homing and Use User Origin Instead
If your machine has no limit switches, or if you simply don't need repeatable absolute coordinates across sessions, disabling homing and using LightBurn's User Origin system is a practical workflow that most hobby users adopt.
Disable homing: Send $22=0 in the console. The machine will no longer attempt to home on reset or connection.
Set up LightBurn for no-home workflow: In LightBurn's laser window, set "Start From" to "Current Position" or "User Origin." Before each job, manually jog the laser head to where you want the job origin to be. If using User Origin, press "Set User Origin" in LightBurn to save that point, then start the job.
This approach is position-accurate within a session — you can repeat jobs on the same material as long as you don't move the material or reset the machine without re-establishing origin. If you need to resume a job after a machine restart, place a registration mark on the material edge and use that to re-establish position.
Frequently Asked Questions
Why does my laser engraver show a homing error?
Either homing is enabled ($22=1) but no limit switches are installed — send $22=0 to fix — or a limit switch is disconnected or broken. Test each switch manually in LightBurn's console using the ? command while pressing each switch. If pressing a switch doesn't change the Pn: field, that switch is the problem.
What is GRBL Alarm 9 'Homing fail'?
GRBL Alarm 9 means homing started but the limit switch was never triggered within the search distance. Causes: switch is disconnected or broken, machine is moving in the wrong direction ($23 is wrong), or homing speed is too fast and motor misses steps. Check the switch physically first, then verify $23 matches where your switches are located.
My laser homes to the wrong corner — how do I fix it?
Change the $23 setting: 0 = lower-left, 1 = lower-right, 2 = upper-left, 3 = upper-right. Send $23=X in the console with the value matching the corner where your limit switches are physically located. Re-home after changing.
Can I use a laser engraver without homing?
Yes — most hobby users do. Send $22=0 to disable homing. In LightBurn, set "Start From" to "Current Position" or "User Origin" and manually position the laser head before each job. This works perfectly well for creative and craft use where you're setting up each job individually anyway.
Failed homing is usually a dead or misaligned limit switch — cheap part, easy swap. Commission earned on any purchase.
Shop Limit Switches →