Not able to Set and Clear user Origin

Hello Lightburn community,

First of all apologies for the long message, but I thought it best to try and give you a clear description of the steps relating to my issue.

I’m a new user seeking guidance on setting and clearing user origins. I’m using a Foxalien WM3020 with GRBL 1.1f, along with a Genmitsu CFL55P 5.5W diode laser. Lightburn is installed on a HP laptop running Windows 10 and connected to the Foxalien WM3020.

After reviewing various forums, it seems like others have encountered a similar issue, but I haven’t yet come across a solution.

Here’s the sequence of events I’m going through:

  1. Power up the Foxalien WM3020 and perform a HOME command, which positions the laser at the front left of my bed.
  2. Launch Lightburn, which initiates an auto-HOME cycle upon connecting to my Foxalien. Although the laser head moves slightly, it homes to the same position, front left of bed.
  3. In Lightburn, I navigate to the laser panel and set my starting point for the job to “Current Position,” with the “Job Origin” set to bottom left.
  4. I manually jog the laser to the desired starting position on my bed.
  5. Subsequently, I press both the “Clear Origin” and “Set Origin” buttons on the Move panel to store the new X0, Y0 origin position.
  6. To test the new origin has been set, I relocate the laser to a new position and click “Go to Origin” on the laser panel. Surprisingly, the laser ends up at a different position than the one I had just set.

I’ve repeated this process multiple times and encountered the same issue - it seems unable to accept the new coordinates I type in.

For a troubleshooting step, I positioned the laser where I wanted it to start, opened the Console panel, and executed the following G-Code commands:

G92.1 ; Clear Origin

G92 X0 Y0 Z0 ; Set Origin

Success! The laser reliably returns to my newly set origin. I’ve repeated this test several times with consistent results.

Upon running my Lightburn file, the laser correctly navigates to the starting position and executes the cut. Upon completion, the laser goes back to the start position as expected. I then jog the laser out of the way to load a new sheet of material. I run the command G0 X0 Y0, and the laser returns to the original origin that I had previously cleared. I tried this several time, setting a new origin, doing the cut and each time I jog the laser away from the start position to load new material it goes back to some sort of default X0,Y0 coordinates that thought had been cleared when I execute the G0 X0 Y0 command

Suspecting a controller issue, I switched back to CNC mode and using UG Sender controls successfully set a new origin without any problems.

I’m reaching out for any insights into what might be going wrong or any additional tests I should conduct to help pinpoint the issue.

Thank you for your time and assistance!

Kind regards - Frank

I will check if I can reproduce this.

One thing I suspect: If you use the “set origin” function, you should use “user origin” as start from position. The “current position” will interfere with the user origin, since current position ignores all other coordinate systems.

The idea of “current position” is that you don’t have any fixed positions, like user origins. You jog / move the laser somewhere and then start. Nothing else to do. So, using “current position”, you should omit step 5 and 6 in your procedure.

wow, that’s what I call a fast response. Thanks for clearing that up. I’ll give it a go and get back with the out come.

Many thanks Melvin

I think part of the confusion is based on preconception of how User Origin works. User origin is not directly equivalent to what you’ve done with G92. LightBurn stores a virtual User Origin position that’s not tied to controller functionality like is done with G92. That virtual origin position is used as the relative starting point for job placement and is only relevant in “User Origin” Start from mode as indicated by Melvin.

Further, you needn’t be in “Current Position” mode when setting user origin. It can be done from any mode as long as you’ve never lost steps.

However, your test case of trying to “Go to origin” indicates something is wrong with your position tracking on the controller. I suspect either you’re in negative workspace or the controller is reporting Machine Position when Working Position may be required.

Can you run these commands in Console and return the full output:

$H
$I
$$
$#
?

Thanks for getting back PY.

I’ll run the commands and get right back

Regards - Frank

Hi PY,

I’ve run the $ commands as requested;
$H Homes my laser to the front left of the bed. The Get Position indicated that
X - 297, Y -197, Z -3

The other commands gave readings of
H
ok
$I
[VER:1.1h.20201218:]
[OPT:V,35,254]
Target buffer size found
ok
$$
$0=10
$1=25
$2=0
$3=0
$4=0
$5=0
$6=0
$10=3
$11=0.010
$12=0.002
$13=0
$20=0
$21=1
$22=1
$23=3
$24=25.000
$25=500.000
$26=250
$27=3.000
$30=10000
$31=0
$32=1
$100=800.000
$101=800.000
$102=800.000
$110=2000.000
$111=2000.000
$112=1200.000
$120=30.000
$121=30.000
$122=30.000
$130=300.000
$131=200.000
$132=60.000
ok

$H
ok
$I
[VER:1.1h.20201218:]
[OPT:V,35,254]
Target buffer size found
ok
$$
$0=10
$1=25
$2=0
$3=0
$4=0
$5=0
$6=0
$10=3
$11=0.010
$12=0.002
$13=0
$20=0
$21=1
$22=1
$23=3
$24=25.000
$25=500.000
$26=250
$27=3.000
$30=10000
$31=0
$32=1
$100=800.000
$101=800.000
$102=800.000
$110=2000.000
$111=2000.000
$112=1200.000
$120=30.000
$121=30.000
$122=30.000
$130=300.000
$131=200.000
$132=60.000
ok
$#
[G54:-217.000,-197.000,-3.000]
[G55:0.000,0.000,0.000]
[G56:0.000,0.000,0.000]
[G57:0.000,0.000,0.000]
[G58:0.000,0.000,0.000]
[G59:0.000,0.000,0.000]
[G28:0.000,0.000,0.000]
[G30:0.000,0.000,0.000]
[G92:0.000,0.000,0.000]
[TLO:0.000]
[PRB:0.000,0.000,0.000:0]
ok

?
<Idle|MPos:-297.000,-197.000,-3.000|Bf:35,253|FS:0,0|Ov:100,100,100>
ok

Hope that helps.

Kind regards - Frank

@berainlb was right - you are in negative coordinates after homing. So, the position is not reset to 0,0 after the cycle. You already set the according offset in G54, so the problem is only the reported position. Setting $10=0 should do the trick. Actually, your $10 value is 3, which should not exist according to grbl specifications. It might be a custom firmware setting or just an error.

The offset looks slightly off for X-axis as well. In addition to the $10 setting that Melvin mentioned I suggest you make the offset adjustment:

G10 L2 P1 X-297Y-197

This should leave you with position at 0,0 after homing. With that, you should be able to use the User Origin as has been described.

Thanks @misken and @berainlb for taking the time to assist me with the issue and the speedy response. I’ve made the changes and that looks to have sorted the problem. I think were the confusing for me was expecting the setting and going to a user defined origin works the same as when I use my machine as a cnc to carve.

Once again, many thanks - Frank

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.