Bump Stop, Homing, G28, and Triquetra Workflow and Speed

I am adding a bump stop to my machine, but I want to make sure I understand the workflow and purpose of all these actions.

  1. Bump Stop ensures a reference point for the X and Y axises of my particular machine.
  2. Homing give a stable reference point for the machine and not really intended be be the spot you to act as your 0 for X and Y for cutting
  3. G28 a where you want to X-carve to go after homing. Should this be the X and Y coordinates for of the start spot for the Triquetra block?
  4. Triquetra 3-axis block of (awesome) - to perfectly align the X, Y, and Z axis’s to the material for the job start.

It seems like 1-3 should really speed up the basic set up (not that the Triquetra takes much time). Is there anything else that should be added to the process that could speed up the time to get started carving or any weaknesses to this workflow?


I was thinking of making this a separate post, but probably better here. I just got my bump stop set up and within a week it has already saved me time and wasted material.

My workflow with the bump stop is:

  • Turn on the machine, fire up Easel.
  • Press Ctrl-Shift-D to open the Machine Inspector window.
  • Enter “$H” to run homing cycle.
  • Enter “G28” to position spindle over the corner of the bump stop.
  • Enter “G92 X0 Y0” to zero X & Y.
  • Enter “G30” to move the spindle out of the way to mount material.
  • Hit Carve on job, position spindle, use z-probe (not Triquetra) to zero Z.
  • Press “Use last X Y” then start job.

I planed a stack of lumber to the same thickness to run. All I had to do between runs was Enter G30 to move spindle out of the way, then carve using “last home”.

At one time I snapped a bit, hit the e-stop, and had to power cycle the controller. With the bumpstop all I had to do is the above and run the job again.


A “G10 L20 P1 X0 Y0” will eliminate this step for you if you always, or frequently, use the same work zero. Set it once, and it will persist across resets and power downs. All you’ll have to do is probe or jog for Z0.


I did some resarch and found this (Shapeoko.com – G-Code):

What about G92?
G92 changes the current coordinate system to the current tool position (plus any offset you enter.) This offset remains in effect until you use G92 to change it again, or use G92.1 to remove all offsets.
G92 is useful to set a quick zero position for running parts, but I don’t use it as a general rule. The main reason is that G92 is not persistent across resets and power cycles so if you have to E-Stop, or your run is interrupted for some reason, you have to re-pickup your zero.

Good to know! Thanks for prodding me @NeilFerreri1.

@DamnitJim No problem! It all gets really useful when you start using different ccordinate systems (G54 - G59.3). You can have different jigs for different workpieces, all with different work zeros. As long as your jigs/fixtures are always in the same machine position (relative to home), you’re set.

Can you explain how to set up these additional pre set coordinates?
I have managed to set up G28 and G30 by jogging to position desired and entering G28.1 or G30.1. But that did not seem to work for G54-59.

@MarkA.Bachman Basically, you have your machine coordinate system (G53), and nine available work coordinate systems, or WCS, that are a known offset from the machine coordinate system. You can set your origins for each of those WCS easily by jogging to the location you want and sending “G10 L20 P*** X0 Y0”. The *** in this case would be the number for the WCS you are setting the XY origin for. P1 for G54, P2 for G55, and so on. All of this requires homing first, so the machine knows where it is.
Let’s say I make a lot of bottle openers and I mill a lot of PCBs. I have a square mounted to my machine to set my 1x6 for the bottle opener and somewhere away from that, I have a small pocket to set in my PCB blank. I could set my G54 origin to my desired work zero for my bottle opener by jogging there and sending “G10 L20 P1 X0 Y0” (you could add a Z0 if you know you won’t need to probe). i can jog to my PCB pocket and send “G10 L20 P2 X0 Y0 Z0” to set my G55 work origin. From now on, after I home and when I’m in the G54 (usually default) WCS, I can send G0 X0 Y0, and my machine will go to the same spot. You could actually just start your carve from wherever your home is and it will still use the correct work origin. Just home your machine and carve. When I’m ready to mill the PCB, I’ll make sure my gCode is is set up for the correct WCS (G55), home, and carve.
Be cautious when using the different coordinate systems. You may have everything set up for your G55 origin, but if your gcode has a G54 in the header (again, default), you’re machine will carve in that WCS. You may think Z3 is 3mm above your workpiece, but if you’re in the wrong WCS it may be closer to the bottom of your workpiece. You can change from working in one WCS to another by sending G55 or G57 or G54 or whatever.

I’m sure there are videos and diagrams out there that will help illustrate. When I’m working with my CNC at home it tends to be quick and dirty…I have a 3yr old and 1yr old, and I can only do so much during a nap time. After they’re in bed, I’m in no condition to operate machinery.


Great info Neil, thanks.

^Story of my life as well.

I would like to throw out for those of you in the audience, this is a dark rabbit hole of advanced features not covered or really supported in Easel.


Are you saying that g54 thru g59 will not work with grbl?

G54 - G59 do work with grbl.

1 Like

I too have got my bump stop set up and set both G28 and G30. And I understand that you can reset both by repositioning the spindle at the desired location and entering G28.1 and G30.1 respectively. My question is how do you disable or turn-off G28 and G30 once they have been set???

You don’t. They’re always available. Maybe you could explain why you want to do that.

I’m trying to “fine-tune” my TriQuetra touch plate, and have failed miserably through 5 attempts following Charlie’s instructions. Regardless of how I adjust the settings, it always returns to the same position…close to but not at the exact location I have set for G28.
I’m not sure if by my setting up a bump stop with G28 implemented is what’s causing the problem, but before I bother Charlie, I thought I would go through a process of elimination and eliminate the G28 and G30 settings and try a fine-tuning sequence without them.

I don’t have Charley’s probe plate, so I’m not sure of his instructions. A probe, in general, is for setting your work zero, not G28. There’s no reason for G28 in what you’re doing.
Again, I don’t have the instructions you’re referring to, so he might have a reason for using G28.

I’m not using the touch plate to set my G28 (G30) position(s)…that’s already done. It’s just that when I clamp a workpiece in place using the G28/bump stop position, and use the touch plate to to set/confirm work zero it’s out a bit.
Since I have performed the various calibration steps (square, parallel, steps/mm, etc) since the initiaI touch plate setup that Charlie helped me with when I first got it, I wanted to “fine tune” those original settings.
But thanks for your help and confirmation that “you don’t” disable or turn-off G28 and G30.

I assume you home your machine.
Clamp work piece down, then use the Triquerta to set Z/Y zero, then reset the G28 position by sending G28.1

Next time you power up your machine, first home it ($H) then send G28 which will place the bit at your intended work zero. The precision here is determined by the precision of your homing switches.

When you click “Confirm Home position” in Easel you basically send the command G92 x0y0z0 which now is your work zero

Do you mean that X0 Y0 is off from your G28?

I’m sorry, I’m still not clear what you mean by fine tuning out what the problem is with G28.

I’m pretty sure Easel sends G10 L20 X0Y0 when you set zero. That will be work zero until you explicitly change it.
This is one reason why I think it’s unnecessary to use G28 for the purpose of using a bump stop. If work zero it’s always the same, set it once. G92 is a temporary offset.

1 Like

Is the G10 a permanently stored position? G92 is as you say an offset one can change/call at will.

G92 will clear at a reset or loss of power.
G10 will persist.