Hey guys, my K40 laser now runs using GRBL and about 20$ in parts.
I spend the last couple of days designing a simple plug and play PCB to replace the rather unusable moshi board (mostly because of it’s interfacing software because the board itself is pretty solid in my opinion).
I unsoldered and reused the main power connector as well as the flatband connector from the original board.
GRBL supports setting the laser power (PWM) in software and allows easy access because it understands standard gCode commands (besides some nice configuration options).
And the best so far: It works!
So much for the positives.
Now the negatives:
So far I haven’t had much luck short vectors and LaserWeb3. It seems arcs and vectors in general don’t come out in an ideal path to be lasered. The head goes back and forth from vector to vector. It also engraves small arcs really really slow and it seems like it sends them as little tiny individual vectors instead of arks. Circles, however, work perfectly fine! Maybe it is me dxf file that is the cause?
2.5D engraving works but is painfully slow and the laser power doesn’t seems to be adjusted on the fly but rather from micro-vector to micro-vector. Which makes sense. But it causes the machine to be super slow, quite similar to the small 1mm arcs that I put into corners of laser cut parts to make them fit together without filing.
I slightly modified the latest version of GRBL directly from github (https://github.com/grbl/grbl) and used my 3D-Printer with a mill attachment to mill the Eagle board.
Does anyone have any hints or ideas how to configure GRBL for fast look-ahead / feed forward engraving for cutting and 2.5D engraving?
@Walter_White From my point of view those shields are very good in getting things going. I prototyped this board on one! But I believe, making things tidy is also reducing the chance of making mistakes. I just needed to unscrew one of the cables from the power supply of the K40 and add two little wires for laser control. The rest of completely plug and play. I saw some of the builds with a standard shield and adapters to the ribbon cable and it looks like a nightmare to me… but to be fair, I still also build nightmare cnc-machines but I just don’t like working with those.
@HalfNormal I want to publish the files after I have cleaned up some minor things! The board is supposed to be single sided with a bunch of wired on the top of the board but it can also be manufactured as double sided board. I will post the link here - it will likely be github or google drive.
@HalfNormal Regarding the J-Tech firmware: I love that they put in the extra effort to modify GRBL for real laser support. But I can’t find the source. I need to invert the spindle ON pin in order to not burn out my CO2 laser on first try. I also use pin D11 (LaserPWM) as well as pin D13 (#LaserEnable) instead of D12 (was spindle, now open).
Having said that and also that I have searched for quite a while to get my hands on the source code of this open source grbl… I hate to see that J Tech seems to have modified the grbl source without providing it to the public in order to promote their own PicLaser software. That PAINS me. GRBL is a great piece of software made by hobbyists(!!) along with all these other systems like Marlin and the like and all manufacturers that use them usually publish their modified sources for users to do more hacking or for grbl to merge the mods into their code base! This is a great mod for lasers and we can’t use it because we need extra hardware (inverter) in order to make it work…
@Ariel_Yahni_UniKpty Thank you! I’m using SolidWorks for my design and I always have problems with my DXF files! I’ll check if there is any options similar to the ones described in your linked article! Interesting stuff! I wish LaserWeb3 would integrate a path optimizer for those “broken yet standard” dxf and svg files. It would be totally worth it and would make LaserWeb my absolute goto software!
@Timo_Birnschein if you ask Larry in the forum, he will supply the uncompiled code so you can change the config.h to invert the logic on the enable pin. I agree about Jtech. I have bugged Jay for a long time to supply the source code. He is now working with Sonny for a better GRBL laser mix. We will see…
Check out JT Photonics GRBL 0.9 (CLOSED SOURCE BOO) or LaserInk for the fast/on-the-fly PWM update stuff. I haven’t tested it wth the K40 but it works on my Little A3 Engraver. The code is out there for Laserbnk…
IT WORKS! I use dxf2gcode with my own preprocessor configuration in combination with GRBL-Controller and it now works like a charm! Cutting… that is. Engraving still doesn’t do much useful at all.
In the GRBL firmware I changed the PWM frequency in spindle_control.c to “No Prescaling” because on fast moves, I could see the individual points. I hope it’s not too fast for the power supply now but cuts nicely!
This is a 6.2mm thick piece of MDF cut at 5mm/sec with 12mA on the analogue scale and two passes.
@Timo_Birnschein There has been some great ideas on how to get the 1.0c GRBL to work with the K40 without having to recompile for now on the x-carve forum
I have a 0.9j version running right now that is rastering using gcode generated by LW3 and send to grbl using universalGcodeSender (because sending it through LW3 causes my Win 10 to bluescreen out randomly after some time +Peter van der Walt
I ported all the changes that Nick Williams made on his LaserInk modified grbl firmware to be able to have planned variable laser power for every single motion command. This actually works well and the limiting factor now seems to be the sender application! I have to deactivate live scrolling in universalGcodeSender to work properly without interrupting the serial stream.