Help With Chinese Laser Module - Firing On Start Up - And Other Problems

Hey all,

I have a Chinese laser module: https://www.aliexpress.com/item/32559183201.html

It is allegedly “5.5 watts”.

I have it wired up and I have TTL working through remapping D9 to pin 44 and can control intensity with the fan speed under the temperature menu.

My problem is that it fires pretty intennsly at start up, while the ‘Marlin’ logo is shown on my ramps LCD.

I have a 10k ohm resistor bridging pin 44 and GND in the aux 2 headers.

If I disconnect the TTL cable, it fires full blast. If I connect the TTL pins on the module to eachother, it goes off.

I’m at a loss, but it seems like Arduino is pulling pin 44 high at start up until Marlin can fully initialize. Is there some what I can change this? I tried poking around in the firmware and can’t find a conclusive area to add a digitalwrite(44, low) or something like that.

(the TTL cable colors are reversed, follow the board)

1 Like

I might be totally wrong about this… what board are you using?

On a Rambo board, looking at the pinout, it appears to be SDA (part of the I2C bus).
That same diagram shows the I2C bus held high with onboard 10k resistors.

I2C buses are usually held high with a 4.7k in my projects. Maybe that is the issue?
Try allocating a different pin maybe.

1 Like

It’s a Ramps 1.4 board with a Mega underneath. I’ll give it a shot with the different pins on Aux 2.

1 Like

Ramps board is a different pinout, so it’s probably not that then.
Still worth trying a different pin I would think.

If you can’t find the issue, you can buy very cheap delay relay modules (like £4). You could just delay the laser connecting.
Would be a better solution however to find the issue.

I’m not sure the delay module would work if your trying to engrave.

I was just thinking to stop the laser switching on until the Ramps had initialised

What I’m going to do is wire up a switch to a relay shield like Steve suggested. When I’m ready to fire the laser, I’ll hit the switch (5v) which will provide 12V to the laser and power it up. That will be easier than messing with all the software. TTL will stay hard wired. Thank you!

Be real careful with your eyeballs… without a cabinet it’s possible for the beam to reflect off anything shiny and also I’ve heard the wavelength of the laser isn’t always as advertised with the Chinese lasers plus the safety glasses provided are not worth using. From what I understand even good safety glasses aren’t a help if they don’t match the wavelength of the laser.

1 Like

Looking into Marlin a bit more, pin 44 has some references to LCD functionality and thus why I think it is firing on start up until everything is initialized, then marlin remaps 44 to the fan pin.

I’m now up and running with a 5V Relay breakout board. I’ll post an image of my setup once it’s nice and tidy.

Edit; Found this: Image2gcode engraving - how to improve it

My problem now is that I’m having a weird issue with the laser firing. I don’t know what this artifact is called and simple googling for words describing what I’m seeing aren’t producing any relevant results.
It looks as if each pixel is a small line about 3 mm in length, rather than an individual pixel. It seems like the TTL isn’t updating fast enough?

This is what came out when I ran the vicious1 logo in the 3dpBurner Image2Gcode (MPCNC) with 3000 mm/min, horizontal scanning, 100 x 55 mm, resolution at 0.18, greyscale 8 bit, max power “128”:

v1laser

Sorry about the shadows, the lighting in my hobby area is weird.
The code for the first little bit from the squiggle on top of the I:

G1 X24.3
M106 S93.36471
G1 X24.12
M106 S69.77255
G1 X23.94
M106 S62.7451
G1 X23.76
G1 X23.58
M106 S78.80785
G1 X23.4
M106 S105.4118
G1 X23.22
M106 S0
G1 X23.04

Slowing down the feed rate to 800 mm/min and changing to diagonal yields much better results but still having blur issues. I’ll try to adjust acceleration and jerk and see what happens.

I think its 1 of x things

  1. Not enough bandwidth on the Arduino Mega to drive the PWM update.
  2. I have Pololu knockoff drivers that I’ve struggled with on calibration. I’m wondering if they’re missing steps.
    x) reserved for more thoughts later