Ortur LM2 Pro S2 freezes in Busy state in LightBurn (works fine in LaserGRBL)

Hi everyone,

I recently had to replace the motherboard of my Ortur Laser Master 2 Pro S2 because the original one was damaged due to a USB overload. The new board is recognized and connects fine to both LightBurn and LaserGRBL.

So far:

  • The machine boots up correctly, LightBurn shows it as connected.
  • GRBL commands work: I can send jog commands like G91 + G0 X10/Y10 and it moves normally.
  • Homing $H also works after enabling $22=1.
  • The GRBL settings look correct (steps, speeds, travel limits, etc.).

The problem

  • In LightBurn, the machine often freezes when I try to jog using the arrow keys. It stays in Busy state and doesn’t recover.
  • If I try to frame a job → Busy.
  • If I send a job → Busy.
  • If I jog with the arrows → Busy.
  • Basically, almost any action in LightBurn leads to Busy.
  • Sometimes the console shows ALARM:8 (“Homing fail. Pull off failed to clear limit switch”).
  • If I run $RST=$ to reset defaults, then after that $X (unlock) makes the machine freeze permanently in Busy. It looks like $RST=$ loads defaults that don’t match Ortur’s parameters.

Important notes

  • This only happens in LightBurn.
  • In LaserGRBL, everything works fine — I can move with arrows, jog, frame, even reset with $RST=*, power cycle, reconnect, and it all works smoothly.
  • In LightBurn, I can sometimes frame once right after unlocking, but as soon as I try to run a job, it freezes in Busy.

Current GRBL settings (before reset):

$100=80.000
$101=80.000
$102=2124.000
$110=10200.000
$111=10200.000
$112=600.000
$120=2200.000
$121=800.000
$122=200.000
$130=400.000
$131=400.000
$132=100.000
...

###$$

$0=5.0
$1=100
$2=0
$3=6
$4=7
$5=7
$6=1
$10=2047
$11=0.050
$12=0.002
$13=0
$14=6
$15=0
$16=1
$17=4
$18=0
$19=0
$20=1
$21=1
$22=1
$23=7
$24=600.000
$25=3000.000
$26=100
$27=3.000
$28=0.100
$29=0.0
$30=1000.
$31=0.
$32=1
$33=1000.000
$34=0.000
$35=0.000
$36=100.000
$37=0
$39=1
$40=1
$41=0
$42=1
$43=1
$44=3
$45=0
$46=0
$56=1.000
$57=1800.000
$58=395.000
$59=6000.000
$60=0
$61=0
$62=0
$63=3
$64=1
$65=0
$100=80.000
$101=80.000
$102=2124.000
$110=10200.000
$111=10200.000
$112=600.000
$120=2200.000
$121=1800.000
$122=200.000
$130=400.000
$131=400.000
$132=100.000
$259=0
$260=70
$261=0
$262=400
$263=0
$264=0
$265=50
$266=100
$267=0
$268=0
$269=0
$270=5120

Questions

  1. With a replacement motherboard, is it normal that $RST=* breaks the machine?
  2. Should I avoid $RST=* completely and instead just reload Ortur’s values manually?
  3. Is there a config file or “factory defaults” specifically for the OLM2 Pro S2 that I should load?
  4. Why would everything work in LaserGRBL, but not in LightBurn (v1.7.08)?

I really want to use LightBurn, not LaserGRBL.

Thanks in advance — the machine itself works fine, but LightBurn constantly puts it into Busy state and I can’t jog, frame, or send jobs reliably.

This is how the lightburn freezes.

In order to unfreeze it, i need to change te COM, and then select again COM3.

Definitely the best choice if the board is not an Ortur replacement board. If it is, not all manufacturers burn their parameter settings to permanent memory, leaving default settings of the board maker.

This appears to be a communications issue, but…

  1. Boot up = ok
  2. Return to zero = ok
  3. $X (unlock) = ok

None of this indicates a problem.

But this might…

That Xaxis acceleration value seems to be quite aggressive. The X & Y accel values are usually the same value. Try changing $120=800 and see if that helps.

If not, it could be a corrupt copy of Lightburn. Download a fresh copy of your current version and install it.

Hi Mickey,

Thanks!

I changed the values you suggested, it will work fine until I typed “$x”

Here I reset the machine, reconnect trough usb, unlock and move with arrows, busy.

If I use ALT + L (Set laser position), the laser moves perfectly.
It just “busy” when using the “Move” window.

Heres I’m using this version insstead of 1.7.08 that’s the latests with my licence.

Why did you do the $RST=$ ? Please recheck the $120 parameter.

My mistake, now setting $120 and $121 to equally 800, then setting a 19x19mm square, then pressing “Frame”, “Busy” again:

I recently change the dafault USB B - USB A to a new one thinking it could be, but works fine in LaserGRBL, Lightburn is where can complete any action.



Well,

The program correctly recognizes the laser position, but it still gets stuck whenever I click on any of the buttons in the red square (jog controls / frame, etc.).

  • The console shows <Idle|MPos:...> but LightBurn status bar goes into Busy and stays there.
  • This only happens in LightBurn — in LaserGRBL everything works fine (jog, frame, homing, jobs).
  • GRBL reports correctly, homing works, and I can send manual G0 moves from the console without any issues.

Waiting for connection…
ok
[ORIGIN: China]
[PRODUCER: ORTUR]
[AUTHOR: ORTUR]
[MODEL: Ortur Laser Master 2 Pro S2]
[OLF: 191]
[OLH: OLM_ESP_PRO_V1.2]
[SN: 98B198962B60F4E47D23199626A821B5]
[OLM:GENERAL]
[DATE:15:05:32 - Mar 13 2023]
[VER:1.1f(ESP32).20210403:]
[OPT:VNMZHSL,35,7680,3]
Target buffer size found
ok
Homing
ok
Starting stream

Here the console freezes and shows “BUSY”
[MSG:Pgm End]
Stream completed in 0:00
<Idle|MPos:0.000,0.000,0.000|Bf:35,7679|FS:0,0|Pn:PXY|CL:0,100|PS:2,1|ER:0,0|WCO:0.000,0000,0.000|VA:24620,0|Ov:100,100,100|A:S|H:1,7>
Here the console freezes and shows “BUSY”

$x
Waiting for connection…
Waiting for connection…
ok
[ORIGIN: China]
[PRODUCER: ORTUR]
[AUTHOR: ORTUR]
[MODEL: Ortur Laser Master 2 Pro S2]
[OLF: 191]
[OLH: OLM_ESP_PRO_V1.2]
[SN: 98B198962B60F4E47D23199626A821B5]
[OLM:GENERAL]
[DATE:15:05:32 - Mar 13 2023]
[VER:1.1f(ESP32).20210403:]
[OPT:VNMZHSL,35,7680,3]
Target buffer size found
ok
Homing
ok
$x
ok
ok
Starting stream

Here the console freezes and shows “BUSY”
[MSG:Pgm End]
Stream completed in 0:03
<Idle|MPos:20.000,0.000,0.000|Bf:35,7680|FS:0,0|Pn:P|CL:0,100|PS:2,1|ER:0,0|WCO:0.000,0.000,0.000|VA:24609,0|A:S|H:1,7>
Here the console freezes and shows “BUSY”

$x
Waiting for connection…
ok
[ORIGIN: China]
[PRODUCER: ORTUR]
[AUTHOR: ORTUR]
[MODEL: Ortur Laser Master 2 Pro S2]
[OLF: 191]
[OLH: OLM_ESP_PRO_V1.2]
[SN: 98B198962B60F4E47D23199626A821B5]
[OLM:GENERAL]
[DATE:15:05:32 - Mar 13 2023]
[VER:1.1f(ESP32).20210403:]
[OPT:VNMZHSL,35,7680,3]
Target buffer size found
ok
Homing
ok

Here the console freezes and shows “BUSY”
<Idle|MPos:0.000,0.000,0.000|Bf:35,7680|FS:0,0|Pn:P|CL:0,100|PS:2,1|ER:0,0|VA:24661,0|A:S|H:1,7>
Here the console freezes and shows “BUSY”

Waiting for connection…
ok
[ORIGIN: China]
[PRODUCER: ORTUR]
[AUTHOR: ORTUR]
[MODEL: Ortur Laser Master 2 Pro S2]
[OLF: 191]
[OLH: OLM_ESP_PRO_V1.2]
[SN: 98B198962B60F4E47D23199626A821B5]
[OLM:GENERAL]
[DATE:15:05:32 - Mar 13 2023]
[VER:1.1f(ESP32).20210403:]
[OPT:VNMZHSL,35,7680,3]
Target buffer size found
ok
Homing
ok
Starting stream

Here the console freezes and shows “BUSY”
[MSG:Pgm End]
Stream completed in 0:13
<Idle|MPos:55.000,92.000,0.000|Bf:35,7680|FS:0,0|Pn:P|CL:0,100|PS:2,1|ER:0,0|WCO:0.000,0.000,0.000|VA:24620,0|A:S|H:1,7>
Here the console freezes and shows “BUSY”

Waiting for connection…
Waiting for connection…
ok
[ORIGIN: China]
[PRODUCER: ORTUR]
[AUTHOR: ORTUR]
[MODEL: Ortur Laser Master 2 Pro S2]
[OLF: 191]
[OLH: OLM_ESP_PRO_V1.2]
[SN: 98B198962B60F4E47D23199626A821B5]
[OLM:GENERAL]
[DATE:15:05:32 - Mar 13 2023]
[VER:1.1f(ESP32).20210403:]
[OPT:VNMZHSL,35,7680,3]
Target buffer size found
ok
Homing
ok
<Idle|MPos:0.000,0.000,0.000|Bf:35,7680|FS:0,0|Pn:P|CL:0,100|PS:2,1|ER:0,0|VA:24647,0|A:S|H:1,7>

Did it work for 10 days, or did you just not use it for that long?

It appears You are connecting, and short basic commands to the laser controller are working. But when you try to stream something, it does not cooperate. Try unchecking the Enable DTR signal in the Device Setings window.

I didn’t use the laser for about 10 days.

In LaserGRBL it works fine, but in LightBurn it constantly shows “Busy”.

I updated the firmware with the ESP .bin version and restored the defaults.

When I connect the laser, unlock ($X) and press one arrow, it moves correctly.
But on the second click on any arrow, the machine freezes and shows “Busy” immediately.

Console output when it gets stuck:

<Idle|MPos:0.000,0.000,0.000|Bf:35,7680|FS:0,0|Pn:P|CL:0,100|PS:2,1|ER:0,0|VA:24703,0|A:S|H:1,7>

In the Console window, enter $# and post what it lists here.

Hi Mike, here’s what it shows after $#
$#
[G54:0.000,0.000,0.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]
[G59.1:0.000,0.000,0.000]
[G59.2:0.000,0.000,0.000]
[G59.3:0.000,0.000,0.000]
[G28:0.000,0.000,0.000]
[G30:0.000,0.000,0.000]
[G59.6:0.000,0.000,0.000]
[G92:0.000,0.000,0.000]
[HOME:0.000,0.000,0.000:7]
[TLO:0.000]
[PRB:0.000,0.000,0.000:0]
ok

Ok, that eliminates the possibility of a G54 offset, which can impact positioning.

Before we can change GRBL settings, we need to figure out what is wrong.

  1. Turn off Auto-Home on Startup in the Device Settings window.
  2. Set $22=0 in the Console window.
  3. Turn off the laser and put it in the middle of the machine.
  4. Turn on the laser power.
  5. Enter $X in the Console window.
  6. Did you get Busy or Ok?

At this point, we are trying to determine if the PC is actually talking to the controller, and it is answering.

Update: Also set $20 and $21 to zero for now.

[ORIGIN: China]
[PRODUCER: ORTUR]
[AUTHOR: ORTUR]
[MODEL: Ortur Laser Master 2 Pro S2]
[OLF: 191]
[OLH: OLM_ESP_PRO_V1.2]
[SN: 98B198962B60F4E47D23199626A821B5]
[OLM:GENERAL]
[DATE:15:05:32 - Mar 13 2023]
[VER:1.1f(ESP32).20210403:]
[OPT:VNMZHSL,35,7680,3]
Target buffer size found
ok
$x
ok
$22=0
ok
[ORIGIN: China]
[PRODUCER: ORTUR]
[AUTHOR: ORTUR]
[MODEL: Ortur Laser Master 2 Pro S2]
[OLF: 191]
[OLH: OLM_ESP_PRO_V1.2]
[SN: 98B198962B60F4E47D23199626A821B5]
[OLM:GENERAL]
[DATE:15:05:32 - Mar 13 2023]
[VER:1.1f(ESP32).20210403:]
[OPT:VNMZHSL,35,7680,3]
Target buffer size found
ok
$x
[MSG:Caution: Unlocked]
ok
$20=0
ok
$21=0
ok

I clicked the right arrow, moved ok.

ok

I clicked the up arrow, busy

ok

<Idle|MPos:30.994,0.000,0.000|Bf:35,7679|FS:0,0|Pn:P|CL:0,100|PS:2,1|ER:0,0|VA:24564,0|Ov:100,100,100|A:S>

Device selection to unfreeze it

Waiting for connection…
ok
[ORIGIN: China]
[PRODUCER: ORTUR]
[AUTHOR: ORTUR]
[MODEL: Ortur Laser Master 2 Pro S2]
[OLF: 191]
[OLH: OLM_ESP_PRO_V1.2]
[SN: 98B198962B60F4E47D23199626A821B5]
[OLM:GENERAL]
[DATE:15:05:32 - Mar 13 2023]
[VER:1.1f(ESP32).20210403:]
[OPT:VNMZHSL,35,7680,3]
Target buffer size found
ok
ok

Clicked right arrow, freezed

ok
<Idle|MPos:30.994,0.000,0.000|Bf:35,7679|FS:0,0|Pn:P|CL:0,100|PS:2,1|ER:0,0>

Cycle the power and enter $X.
Now try the Down arrow.
Cycle the power and try the Up arrow.
Cycle the power and try the Left arrow.

We are trying to determine the result of each directional arrow without any previous command.

I did turn off, turn on and $X.
Moved up arrow, right arrow and down arrow. Moved ok, but when tried left arrow, frozen out.

turn off, turn on and $x
Only move up - Ok (but only keeping the arrow click, if let go the first click, and click again “busy”)

turn off, turn on and $x
Only move down - busy (freezes)

turn off, turn on and $x
Only move right - Ok (but only keeping the arrow click, if let go the first click, and click again “busy”)

turn off, turn on and $x
Only move left - busy (freezes)

So it will not move Left or Down.
But it will Home in that direction.

Set via Console window:
$20=0
$21=0
$22=1
Turn off Auto-Home on Startup in the Device Settings window.
Cycle the power to laser.
Turn on CNC Machine in the Device Settings window. If this makes it work, it is not the solution, but will tell us what is.

Did it.

After CNC it’s working, at least with the arrows.
BUT
The axis are inverted now.

ok!

Turn off the CNC switch and Home the machine.
Make sure the Origin radio button is correct in the Device Settings window. If it is, then report what is at the top of the Move window.

Also, while testing the arrow keys, I noticed something strange with the working area:

  • If I move the laser with ALT+L (set laser position), it works.
  • But if I set a position further than 150 mm (on X or Y), the laser moves very close to the limits, as if the working area was only 200Ă—200 mm.
  • The actual machine size should be 400Ă—400 mm, but the motion is distorted — it does not match the real physical travel.

Not sure what you are doing here. Is this setting the Origin? Are you usung Absolute Coords in the Laser window?

You may have to do a calibration. So we have an accurate starting set of GRBL parameters, do a $$ in the Console window and paste here.