The ESP32 being a 3.3V part makes me wonder whether it puts 5V out. I see one mention of 5V there but I’m not sure it’s right. It talks about input of 5V so I think it means it is 5V tolerant when used as a leveling input.
Since you are getting some power, just not full power
and:
Your machine ran at full power before you changed the board
then:
The power control on L is suspected not to be at a full power level
If the IN is not 5V then the PWM signal on IN is not telling the LPS to run at full power, which points to controller configuration or job settings in the software.
Do you have a milliamp meter for laser current? To help from going down a rabbit hole it would be good to know the current being drawn by the tube at max IN.
Sorry I missed that you have a meter.
22ma is full power so as you said, and I missed, you have full power.
This suggests an optical path problem.
Did you change anything there?
Oh, and aliso installed the ma meter as I did not have it before, just to make sure power is correct, but like you say if it reads > 22ma power is fine?
Removed G an IN that goes to TTL, measure 1.6v when doing nothing and 2v no matter what power setting.
Also, while I did the tests the laser still fired, without the ttl plugged in, and I could change power settings that reflected on the ma meter. This is with only L connected to the spindle negative??
Do you mean that you left IN open? Why?
Left open the voltage you measured make sense?
We want to just measure IN while it is connected.
It sounds like the L signal is also a PWM signal, it should only be an enable not a PWM signal. That means it is asserted when the job starts but does not control the power. This has to be set up properly in config.
I suspect you have 2 PWM signals and that is why power is weird.
Although what you have can work, I never recommend setting up a controller like this.
I normally suggest that:
A pot is installed on IN to manually set power limits
The PWM signal is connected to L
Try this:
Disconnect IN and connect it to 5V.
Leave L connected as it is.
Run the job and see if it operates properly at full power.