PSU stays enabled even when X42 is high

Thanks @mcdanlj for moving this topic.

@donkjr I recently bought a K40 and directly started modifying it as this is what i like most.
FYI: I’m technician and work at a company for manufacturing excimer lasers for eye surgery, so i know what I’m doing when handling the PSU

When i got the laser it was working out of the box and the laser results where okay. I aligned the beam and everything was fine in this regard, but
i realized, that the Laser switch (the one to enable the laser in the front panel) is without function.
It is a digital control panel, so i have this soft button to en- disable the output, but this just sets the PWM to zero.
The other softbutton to test fire is working.
The Laser Switch is a fat red rocker switch which is connected to PIN 5 & 6 of the PSU. So GND and P.
It doesn’t matter if the switch is opened or closed. The laser can be test fired in any condition.
I then started investigating and found your blog as well as the schematic on Digikey.
I opened up the PSU and started to measure. The switch is working properly and also
the Optocoupler connected to P does what it should. The signal at X42 (Pin 1 of the TL494) toggles between GND and 5V according the Laser switch position.
At this point i’m a little lost and decided to write you this mail.

I want to use the P input for my interlock chain but this doesn’t work if the laser stays enable regardless of the signal on P.

My question is: Is this normal behavior? I would rather expect the PSU to be disabled when X42 is high.

Thanks for your great work and greetings from Germany

This does not sound like normal behavior certainly, the laser should not fire unless P is taken to the ground and the enable switch should provide that function.
Please, post a picture of your supply taken from the connector end.

Hopefully, I am not jumping to conclusions, this is quick guess:

There is a diode array* that allows the LPS test button [down on the supply] to override the LPS enable schema by asserting both L & P at the same time.
This diode array can short and if it does when you assert L, P is also asserted.

In fact, I just finished helping another with this exact problem with similar symptoms.

You can test this by disconnecting the digital control connector on the supply [the P and L connector depends on what kind of supply you have] and measure with a DVM:

  • With the power on; ground L and see if P goes to ground, it shouldn’t
  • With the power on; ground P and see if L goes to ground, it shouldn’t.

*the diode array can be implemented with 2 discrete 914’s or an A4W smt.

Alternately you could have a short in the connector or on the back of the board between P & L

If this isn’t the problem come back here and we will dig in further.

Greetings from Utah, USA.


Thanks for the fast reply.
This is the PSU.

Your guess seems legit. I disconnected the wires from P and L. Measured the voltage against ground and got 4.3V for P and 4.7V for L. Vcc is 5.08V.
I then grounded P and measured L. Got 4.7V. Like expected.
I then grounded L and measured P. Got 2.1V. This is not what should happen. Seems that the diode is a little too conductive in the reverse direction.
Do you agree?
For the moment I would just unsolder D13 and wait until I get a BAV70. The test switch on the PCB is useless anyway.

Yes it looks like a bad diode.
Remove it and see if that fixes it.

The PB on the LPS is useful for troubleshooting as it bypasses all the fire enabling functions outside of the the supply and verifies that firing problems are not in the supply.

You can get one here:

They are not to tough to replace :).

Perfect. Removed the diode and the P input acts as it should. Interlock chain is working perfectly. That was easy :slight_smile:
Many thanks for your quick and competent help.
As the diode is ridiculously cheap I will write it on the parts list.
Next step is kicking out the controller for a Arduino Uno with CNC shield as I have it laying around from my former diode laser.
Do you think this will do the job or should I go for a smoothieboard? What would be the advantage?

1 Like

An 8 bit Arduino will not be able to handle the raster speeds for engraving. It will choke on the Gcode required. A 32 bit smoothieboard will at least allow you to raster at around 80mm/s and if you put GRBL-LPC on it you can bump that up to around 250mm/s

1 Like

Thanks. I see.
My former diode laser had Uno, CNC shield, TMC2100 driver, GRBL 1.1f.
Movement with 200mm/s where no problem there. But to be honest i never used the machine that much as 5W is just not enough for anything. But it was a nice project :slight_smile:
Cutting went smooth with 10mm/s. Engraving was around 80-100mm/s if i remember correctly.
There where more like mechanical restrictions than cpu speed.
BTW: My homebrew 3D Printer runs at a travel speed of 200mm/s as well and is driven by a Mega with Ramps and TMC2100 on Marlin.
In my world it was just neccessary to stay below the 16000steps/second (found this value long ago somewhere) and what i saw so far i can confirm this.
But maybe i’m missing something. I would like to avoid tuning the K40 with a uno first and then find out that it’s crap and start over again.
Taking your info into account, the plan for now is:

BIGTREETECH SKR V1.3 board (easy to buy here)
TMC2100 for XYZ (already have them)

Would you agree, that this is a wise choice.

Unfortunately you will not be able to use GRBL-LPC on the SKR V1.3 board because they mixed up the pin mapping (compared to other smoothie compatible boards). GRBL-LPC needs all step signals on the same port, and all direction signals on the same port, which is not the case on the SKR V1.3!

1 Like

I see. Thanks for the explanation. I thought I could just change the pin mappings in the cpu_map.h like in the regular grbl. But it seems to be more than that. I’m glad I asked before buying one.
Which smoothie compatible board would you recommend?

At the moment the folowing boards are supported:

  • Original Smoothieboards
  • Cohesion3D Remix and Mini
  • MKS SBASE V1.3
  • Azteeg X5
1 Like

Thanks, i guess i will go for a MKS SBASE V1.3 then.

Same problem with Skr v1.4 and 1.4 turbo ?

I got an MKS SBASE 1.3 yesterday and flashed the most recent smoothieware firmware onto it.
Endstops, XY axes and air assist are already working. I’m currently struggling a little with the PWM stuff.
Plan is to connect MKS Pin 2.4 to PSU PIN L. The MKS is only connected to the PSUs 24V at its Power terminal.
I hooked up the oscilloscope to Pin 2.4 and VCC and got a pwm signal with 24V Amplitude (like expected).
I’m wondering if the PSU L input can handle this. Maybe @donkjr can enlighten me in this regard.

1 Like

The L input expects a ground to be provided to turn on its coupler. I think 24v could be damaging.

Usually an open drain is used and therefore the pin will read a low or open voltage when not connected.
It sounds like your driver output is configured to be pulled up to VBB.
Remove the pull up or use a driver whose drain is open ie not connected to anything.

1 Like

On the MKS SBASE pin 2.4 is connected to a MOSFET (like on the original Smoothiebaord), that pulls the negative output pin to GND. You must connect the negative side of the connector (right) to the L pin of the LPS. It doesn’t matter what voltage is connected to the board, because you don’t connect the positive pin of the output anyways.

1 Like

Attention: My precompiled bin files of grbl-LPC use Pin2.5 for laser PWM, not 2.4!

Yes, same pinout problem on the SKR V1.4 and V1.4 turbo.