Neje power discepancy

New Neje Master 2S user with 5/20W laser module. I am trying Lightburn prior to purchasing…

My issue is that the power output is terrible. To demonstrate, I’ve burned a stamp using the Neje phone app and Lightburn (sorry about the other rubbish on it - wood is in short supply at the moment).

The top example is via the Neje app, the bottom via Lightburn. Neje setting is speed 9mS (whatever that is) and 31% power, and it took 01:46. Lightburn layer is set to 6000mm/m and 100% power, and that took 01:30.

You can see the dramatic difference. The beam is noticeably not as bright when it’s happening too. I have searched for any reference to this kind of discrepancy and the only one that seems relevant turned out to be using Benbox instead. So here is my $$ settings:


S-value max is set to 1000, which matches $30. Can someone tell me what I am missing (hopefully something simple) or how to otherwise fix this?

Hi there,
I’m also not a professional but have you tryed to set the $30=255 and in the Lightburn also the Settings to S = 255? Maybe this does the trick.

1 Like

Just tried that and the result is exactly the same. I checked the G-code output to make sure, and it’s passing 255 as expected.

But thanks for the idea :slight_smile:

There should be no difference.


Generally m is meters, 9 meter/second would be 9 m = 9,000mm/s

It’s probably 9mm/s (9 mm/s). This is how fast it’s moving by the material. Some times it’s mm/m (minute) for ss led lasers. Might want to check, it’s selectable.

If the Neje is running 9mm/s and the Lightburn is set to 6000mm/m then you are programming the material to pass atl 6000 / 60 or 100mm/s. Over ten times the speed of the Neje.

Does it look like it’s running faster?

You need to check and see what units you are operating with.

mm per minute (mm/m)
mm per second (mm/s)

Take care :smiley_cat:

Does it look like it’s running faster?

Slightly. They both take around the same time with Lightburn being 10 seconds faster. I will try with a slower Lightburn setting, but I am not hopeful.

The difference is actually much more than it looks - the Neje burn was on 31% power and that’s because at higher power the image is burnt so much it’s blurred. Meanwhile, Lightburn can barely register anything at what’s meant to be 100% power.

I found a slight improvement by ticking constant power, and setting the image to two-tone. But it is still very much feinter, just filled in a bit more.

Would you mind posting your .lbrn2 file so we can examine it’s settings? Just drag and drop it on the reply window.

From what I can see you look setup properly, but I will go over it in more detail later when I can squeeze it in.

I don’t think you have Max, Min power settings on your controller. Lightburn doesn’t allow you access to ‘option’ that your board doesn’t support, quite correctly.

If you do have access to min power, that can be an issue. If you make it equal to max, and see if it makes a difference.

There must be something hosed up in the configuration. We know both software and hardware works… That only leaves configuration.

Do you know what version of grbl you have… ? It will tell you when it boots.
Let me know if you have a volt meter to check the pwm.


When you tell the laser to run 10x its maximum speed at 100% laser power, it will actually run at its maximum speed with 10% laser power. Because that will deliver the same amount of energy to the material at any point.

So make sure the speed you set in LB is lower than the laser’s max speed (which is $110/$111 = 4000 mm/minute).

The Neje may ignore $30 (the dual firmware stuff is a bit weird), so I’d recommend to set it to its default of 1000 and configure the same value in LB’s settings.

BTW: With low-powered diode lasers you most likely will run at 100% power and vary the result with the speed setting most of the time.

Thanks for all the suggestions :+1:

tldr: as some suspected, it turned out to be the traverse speed. If anyone is interested, and for anyone suffering a similar issue, this is how I got there:

In no particular order…

Do you know what version of grbl you have… ?

Grbl 1.1f [’$’ for help]

Generally m is meters, 9 meter/second would be 9 m = 9,000mm/s

Yes, a bit fast! Turns out it means milliseconds (presumably per pixel). Since I can’t tell how fast that is, I made a new short job and set the Neje app to go with 10ms then adjusted the Lightburn speed until the job time was the same.

When you tell the laser to run 10x its maximum speed at 100% laser power, it will actually run at its maximum speed with 10% laser power.

An excellent point! But, sadly, not applicable on account of using M3 (constant power). And, to make sure…

Let me know if you have a volt meter to check the pwm.

I can do better than that:

This is the Neje app set to 50%, at the point where the laser is turned off. I did this without a laser attached for safety, hence the floating input slowly dropping. However, it’s sufficient to show the PWM level and timing (apparently, the laser power is affected by the PWM voltage as well as duty cycle).

This is the same job (a 5mm black square) using Lightburn:

More or less the same, although I think Lightburn is doing a row at a time in one direction (which is sensible for a CNC tool) whereas Neje is going both directions, hence the much shorter off time. (Hmmm… that could affect total time, which upsets my attempt to make things the same.)

OK, so that was without the laser. Putting it together and running the same jobs again gave this:

  1. is Neje at 50% and 50ms. This is where I discovered it’s time rather than distance and aborted the job.

  2. is the Lightburn job using 50% power and 6000mm/m. This took 26s.

I wanted to use the incorrect speed for Lightburn to verify the effect of changing only that (and conversely, to check that other changes didn’t make any difference). Having got that out of the way…

  1. is the Neje at 50% power, 10ms per whatever. The job took 1:04

  2. is Lightburn at 50% and 250mm/m. This took 1:09 (there is an extra dot for identity). Looks pretty burnt to me!

So, user error. Cheque on the way to Lightburn, and thanks y’all for your help.

That’s got to be the worst looking PWM signal I’ve ever seen, only thing worse didn’t work at all.

50% power at 50ms. Power control with these lasers is an illusion. When they lase they, they lase at 100% power, if they are not lasing, 0 power. PWM gives you the illusion you can control the power but it’s a distribution of power over a time (as I think you stated). The only control you really have is feed.

50% power over 50ms means the period of the PWM has to occur in 50ms. 1 cycle / 0.050 second = 20 cycles/second, or your PWM ‘base’ frequency would have to be 20 Hz for that to occur.

It’s going to come back to a configuration problem, I bet. Part of it is your guessing at what the power/speed means that will get you grief.

Good luck :slight_smile:


The PWM looks bad because there is no pulldown on it (due to the lack of a laser) so when it’s not actively pulled up it is floating. I thought about adding a resistor but the important part (the sharp rising edge and flat top) are clear.

I might be missing your thrust, but we know that the PWM frequency is 1KHz, so the burn time could be anywhere from 0 to 1ms. If it took 50ms to cover one pixel, that pixel would get zapped 50 times at whatever power is set (as the duty cycle), and if it took 10ms it would be hit 10 times.

Clearly it’s not that simple since the beam is constantly moving, so the beam width would be a factor as well, but I think looking at the time as a separate thing to the speed is acceptable. The only real question is what the time relates to - what distance is it covering. I am tempted to jump at it being the time between steps (of the stepper) but it seems awfully slow for that.

But that puzzle is academic. I only use the Neje phone app to prove it is working before uninstalling and using something decent :slight_smile:

To make this work you have to know how big a pixel is? Do you? Can you change that size.

Again, we know the hardware works, I’m confident the software works that only leaves configuration as an issue.

The bottom line is you are taking the information that worked on A and moving those ‘settings’ to B assuming they will work not knowing if one is oranges, apples or wheat…

Where is the documentation you have been using? If you don’t mind posting it or a link, I’d like to read about it and see where we may be going down the wrong road. Until we speak the ‘same’ language we will get nowhere. We are probably arguing about the same thing anyway, but it must be nailed down for a solution to present itself.

Maybe you should think of this as a machining operation. It doesn’t matter if it’s destructive or additive (3d print or it’s it’s icing a cake.) The two important parts are ‘speeds and feeds’. Speeds refer to ‘spindle speed’ of the machine and relates to % power on a laser or how much icing you are squirting out. Feeds refer to how fast the material is going by the operational part of the machine. I say it that way because the material can be moved past the head, the head can be moved past the material or a combination of both.

So 50% power at 50ms is speed and time, without ‘feeds’ it is useless. There must be some way to quantify it so we can transfer it to another machine.


To make this work you have to know how big a pixel is? Do you?

Like I said, it is academic now because I am satisfied that the Lightburn setup (using GRBL) is fine - the initial problem was caused by me being a dork.

However, to satisfy your curiosity, I have no idea how big a pixel is, or even if they exist per se - the idea of a minimal burn area is just a logical progression given the information available.

The bottom line is you are taking the information that worked on A and moving those ‘settings’ to B assuming they will work not knowing if one is oranges, apples or wheat…

Kind of, but not really :slight_smile:
I had no idea of what speeds would be appropriate (since Neje doesn’t use speeds) so dropped in one of those power scale examples to determine what might be suitable. Unfortunately, I didn’t touch the speed setting which was set up for CO2 laser, hence the very optimistic speed being used. Since the job under Neje seemed to be running at a similar speed to the same job under Lightburn, I assumed it was in the right ballpark, hence surprise that the actual damage to the target was way off.

Where is the documentation you have been using?

That’s the thing: there is none. No-one seems to know what that XmS relates to, or even means. It is pure guesswork. The sum of it is mostly here:

This academia is killing me over and over. Glowforge does something similar. That makes going to a different machine difficult.

Oz mentioned he’d like to put those limits in Lighburn, which would help with situations like yours.

I figured you were reading this information somewhere and I thought I’d like to look, but as usual the Chinese have blindsided us…

The only thing that I can think of is to put a scope on the motor field and see how fast it’s changing. You would think there would be an easier way… Time distance?

Oh well, thanks for chat and your time, take care.


Oz mentioned he’d like to put those limits in Lighburn, which would help with situations like yours.

Ah! OK, I apologise for not getting your drift on this.

It might be possible to record stepper signals, correlating to the laser signal. Perhaps just capturing the laser head movement on camera would be sufficient to work it out. I’ll see what I can come up with in the way of logging once I’ve got the system settled down.

I was reading about one of the product faq’s and they mentioned the Glowforge. They stated that 50% speed was 500mm/s. That at least gives me a clue about the glowforge…

No problem, most of us are not writers, wordsmithing so someone understands what you are trying to explain is no trivial task.

Good luck, have fun…