Grbl Homing problems

Hello,
I recently became interested in Diode Lasers. I’ve used a CO2 for several years along with Lightburn. I’m having trouble with my machine not homing. I have Windows 10 and Lightburn grbl.
I have working limit switches in the lower left corner. I’m using an AnnoyTools Laser board.
I sometimes get the following error message: “Homing fail. Could not find limit switch within search distance. Defined as 1.5 * max_travel on search and 5 * pulloff on locate phases.”
Here are some screenshots of the Machine Settings:


Also, when I check “Auto home on startup” under the Device Settings, the machine hangs up on startup with a green “busy” bar. Thanks, Mark

I assume the machine starts moving toward the home switches when you start it up or initiate a homing cycle. If not, flip the X and Y Homing direction invert switches as needed.

Assuming the X and Y Max travel values are correct, then the Homing Pulloff is excessive. Reduce it to about 3 mm and verify the switch levers completely relax after homing.

An initial homing seek speed of 3500 mm/min seems far too high for comfort. Reduce that to 600 mm/min; you can increase by factors of 2 after everything works correctly.

Those tweaks should get you closer to the goal …

Thank you Ed for taking the time and responding to my issue.
This morning I implemented your suggestions without any difference in how the machine responds.
I’ve included below some screen shots and the following error message in the Console window:
ALARM:9

Homing fail. Could not find limit switch within search distance. Defined as 1.5 * max_travel on search and 5 * pulloff on locate phases.

ALARM:9

Homing fail. Could not find limit switch within search distance. Defined as 1.5 * max_travel on search and 5 * pulloff on locate phases.

ok

Grbl 1.1f [‘$’ for help]

[MSG:‘$H’|‘$X’ to unlock]

sys.aborts

Grbl 1.1f [‘$’ for help]

And here are the screenshots:

Some behavior notes:
If I activate “Auto home on Startup” from the Device settings menu, the machine doesn’t boot up and find the controller.
If I start the machine without the Auto-home activated, the machine will connect up to Lightburn and take wherever the Laser head is to be the 00 coordinate and if I move the laser head and then press “Go to Origin” the laser head moves to that starting position.
If I press the home button, the machine hangs up and doesn’t move at all with the green progress bar as seen in the first screenshot above.
So the machine does not seek the limit switches. I have tried inverting the homing direction with no change.
In general, the machine accurately cuts complex shapes.
Thank you in advance, Mark

@ednisley laid out a good route…

How about we start at the beginning …?

It must home on it’s own… when it powers up the head should move toward the home switches… does it? The only acceptable answer here is either yes or no…

If it doesn’t, then we need to look into how the controller is configured or wired…

If it does then we need to check that the home switches are being read by the controller…

Make sense?

:smile_cat:

Hi Jack,
Yes, that makes sense. I could have been clearer above, but the machine does not move when started.

It should home when powered up… You need to check that out with your controller information to see if this needs to be enabled or something.


Are you sure Lightburn is properly configured for that controller? That would be the first thing to ensure.


Baud rate?

Sounds like communication errors are also occurring or at least it’s not getting them acknowledged.

Running out of suggestions… let me know what you find.

:smile_cat:

Jack,
I deleted Lightburn and reinstalled everything. Switched the Home to the rear left and incorporated the suggestions from above. Still no luck. I can use the machine as is, but it’s nice to have the Homing feature. I will let this topic sit for awhile in case anyone has brainstorm. Thank you for your help. Mark

Have you used this type of controller before? It’s easy to miss minor configuration things that turn out to be more major pretty easily.

If it isn’t homing then it almost has to be a bad configuration or broken hardware…

We can get to the switches when you get the head going towards home+.

:smile_cat:

Our story so far:

  • working limit switches in the lower left corner
  • sometimes get the following error message
  • check “Auto home on startup” under the Device Settings, the machine hangs up
  • without the Auto-home activated, the machine will connect up to Lightburn
  • press the home button, the machine hangs up and doesn’t move at all
  • without any difference in how the machine responds

Let’s start from the beginning again. :grin:

How do you know the limit switches are working? Specifically, have you verified the controller’s input pin goes low when you poke the switch with a finger?

You have Hard Limits turned on, which requires switches on both ends of all the axes:

If that’s not the setup, then turn Hard Limits off.

Turn off LightBurn’s Auto Home, but leave GRBL’s Homing Cycle enabled.

Turn off the laser, drag the laser head to the middle of the platform, and turn the laser on. The laser should then connect to LightBurn, but should not home or move or do anything else.

In LightBurn’s Console window, type $H and whack Enter. The machine should trundle toward the home switches at a reasonable pace, bump them, back off, bump again, back off, and stop moving.

Now, what really happens? :grin:

Jack, This board is new to me. Yes, I’m probably missing something obvious.

Ed,
I followed your suggestions(also read the github articles) without success.
Here’s the error messages:
With soft limits enabled. Hard Limits off

"error:15

Jog target exceeds machine travel. Command ignored."

After entering $H

"ALARM:9

Homing fail. Could not find limit switch within search distance. Defined as 1.5 * max_travel on search and 5 * pulloff on locate phases."

Thank you for your help. Mark

Gotta start at the beginning: when you poke the home switches with your finger, do they pull the corresponding controller pins low?

If the switches don’t do what they must, then nothing else will work.

Don’t do anything with LightBurn until you verify the switches.

Ed,
Yes. The limit switches work. Definitely stops travel when tripped.

OK, next step.

Turn off LightBurn’s Auto Home, but leave GRBL’s Homing Cycle enabled.

Turn off the laser, drag the laser head to the middle of the platform, and turn the laser on. The laser should then connect to LightBurn, but should not home or move or do anything else.

Don’t try doing anything with LightBurn.

Does the laser just sit there after you turn it on?

Copy the output in the Console window and paste it here, so we can get a look at the initial startup status.

Ed,
I did as you requested. Both Hard and Soft Limits are set to Off. Started up the machine and no movement.
Here’s the output in the Console window:
Waiting for connection…

Grbl 1.1f [‘$’ for help]

Grbl 1.1f [‘$’ for help]

Grbl 1.1f [‘$’ for help]

Grbl 1.1f [‘$’ for help]

ok

Monport

[VER:1.1f.20221206:]

[OPT:VMZHL,35,254]

Target buffer size found

ok

This is progress!

Assuming:

  • Home cycle is enabled: $22=1
  • Home speeds are knocked back as described earlier
  • Home pulloff distance is 3 mm: $27=3
  • X and Y max travel set correctly

Don’t do anything in LightBurn other than, in the Console window, type $H and whack Enter to send it to the controller.

The laser should:

  • Start moving toward the home switches
  • Tap them
  • Back off 3 mm
  • Tap them again slowly
  • Back off 3 mm again
  • Stop moving

That’s a complete homing sequence that leaves the laser head at the home position.

What does it really do?

Ed,
I just did as you suggest. There was no movement of the laser head. The machine hung up for about 3 minutes and then the following appeared in the console window below the $H (I’ve included the preceding console info, too) :
Waiting for connection…

Waiting for connection…

Grbl 1.1f [‘$’ for help]

Grbl 1.1f [‘$’ for help]

Grbl 1.1f [‘$’ for help]

Grbl 1.1f [‘$’ for help]

Grbl 1.1f [‘$’ for help]

ok

Monport

[VER:1.1f.20221206:]

[OPT:VMZHL,35,254]

Target buffer size found

ok

$H

ALARM:9

Homing fail. Could not find limit switch within search distance. Defined as 1.5 * max_travel on search and 5 * pulloff on locate phases.

ok

Grbl 1.1f [‘$’ for help]

[MSG:‘$H’|‘$X’ to unlock]

sys.aborts

Grbl 1.1f [‘$’ for help]

ok

OK, now we have a reproducible failure that doesn’t involve anything other than the laser.

The usual search terms produce no documentation for this thing, but an Amazon comment is suggestive:

Question:

Can the firmware be upgraded on this? I only need x and y homing?

Answer:

No, the firmware of the control board has already been set. You
can connect the Z-axis limit and simulate Z-axis homing before
you want both axes to go home, shorting it twice. After that X.Y
will return to home.
By ANNOYTOOLS-us Seller on October 11, 2022

Although you said it was “an AnnoyTools Laser board”, it’s apparently hardcoded as a three-axis (or four-axis) CNC controller, like all the others in the Annoy Tools Amazon storefront.

So it’s trying to home the Z axis you don’t have installed, failing, and that’s the end of the story.

It may be possible to modify the firmware to disable the Z axis homing, but that’s challenging without the original source. Even though all the desktop lasers use GRBL, the manufacturers seem remarkably reluctant to comply with the license terms requiring them to make the source code available.

I’d be sorely tempted to install a tiny stepper motor with a cam on the Z axis. The Z-axis homing cycle would rotate the cam, trip a homing switch, and the firmware would be none the wiser.

Ed,
That was a genius solution. Working on it today. I’ll let you know how it goes. Mark

I went through the same issue about 2 weeks ago when I switched to the Annoy board to drive a 10W diode I recently upgraded to. I ended up using a spare micro switch as the Z limit switch. I guess Annoy lives up to their name as they are very annoying selling a 3 axis board for laser use when most low cost diode lasers do not have a driven z axis. The firmware can be upgraded only by using a dongle that is almost as expensive as the board. It requires familiarity with arduino programming as well. I will probably end up using a spare motor to “rig” a fake Z axis so I do not have to manually use the switch every time I home the machine.