sorry I forgot to mention i did not flash the firmware with the above file.
i have to make separate posts for SS, it wont allow new members to post more then one item at a time
Here when I try setup a simple burn, i get these console errors.
I created the Font, applied the layer.
I dont know what the $I error is from
The $H is from me pressing the Home key
The rest is from me using the "Set laser position button.
The laser moved across the X, but to far
but the Table moved to the very top of the Y (opposite direction it should have gone)
Keep in mind using the GRBL device settings, most of the macro buttons will not work. They’re sending GRBL specific commands, and the Snapmaker uses Marlin. Example; $H
is home in GRBL, but in Marlin it’s G28
. You can setup your own macros in the console tab by right clicking them.
Also you’re getting mirrored results because you have the origin wrong. In your first image, you have the origin set to the upper left, it should be lower left. This should fix a lot of the movement oddities.
As far as crashing into the bed, you need to find your actual focal length. I assume you’re using the 40W as you mentioned it. Home the machine, flip down the measurement arm, and slowly move Z down until the arm touches the fins of the bed (you can also use a calibration card set directly on the laser bed and touch down on the card, 0.1mm shouldn’t make much of a difference). Look at the control screen and write down the machine Z coordinate. This will be your focal height, replace it for Z in the header in the G0 Z23 F6000
line
After all that is sorted, you can see about finding your true origin.
Ok so i have made those changes. It no longer crashes. when i start a program the laser head comes all the way down, then goes all the way back up, the table moves all the way forward and all the way back, then stat cutting. however the head does not come down at all … do i have to manually set the work height each time using the set origin button?
Make sure you’re setting a material height in Lightburn, if it’s set to 0, then it will not move the Z axis down, because it doesn’t know how thick the material is.
I had the correct material height in
should i be working from absolute coords or user origin, that seems to have an effect,
now the crosshair and the laser position dont match. I located the workpiece under the laser by the cross hair, and set the origin of the job. as you can see the job did not start in the corner like i wanted.
apparently the pause button does not work either … fun fun ! then i stopped the program mid cut but it did not turn off the laser
Absolute coords is what this guide was made to use.
I appologize for not catching it earlier, but the main problems you had (and why they were ‘fixed’ by directly controlling with Lightburn) are the comments left in your header. The snapmaker firmware has an old bug from 1.15.x still present that it can’t deal with inline comments properly. Thus is seems to skip a lot of the header. Whereas when run by Lightburn, it ignores comments properly and sends clean gcode.
Your latest posted header;
M106 P0 S255 ;
G28 ;
G54 ;
G92 X-22 Y404 Z353.8 ;
M8 ;
M3 S0 ;
Remove the space before, ;
, and anything after.
M106 P0 S255
G28
G54
G92 X-22 Y404 Z353.8
M8
M3 S0
This should let you actually get it tuned in and running properly.
EDIT: @Dhulleman Have you set the cursor offset in Lightburn? It should, in theory, work with user origin or current position settings. (I don’t have a laser with a crosshair to test, however). I assume absolute coords might ignore it. You can generate the same project, one in absolute, user, and current position, and post them here so I can review to get a better insight to what it’s doing.
@Skreelink
For starters. THANK-YOU for all you’ve given to this community. Your information got me stared with Lightburn and overall it’s working pretty well. Like @Dhulleman I’m running an Artisan with a 40w laser.
Question: How can I modify the header Gcode to prevent the toolhead from dropping all the way down to min Z height and back up before moving to the correct material height origin? I’m engraving on large, relatively thick boards and that initial down/up will crash the head into the workpiece. Do I need to manually set the z-work-origin to proper workpiece focal height (absolute), then set 0 material thickness or is there a way to get it to skip moving the head all the way down to the platform level z-work-origin, while still setting that value?
PS @Skreelink - did you mean Lightburn 1.45? Above you said Artisan support in LB coming in v 1.15, but 1.4 is current. Any idea when that’s supposed to release?
Updated method of setting the focus height in the header;
I meant 1.5 My brain has been mush the last few months, so much going on.
@Skreelink I think I get it. I was doing a crude version of what you describe by adjusting the G53 G0 Zxx (Z work origin) manually to equal the proper focal height which is for the tall 40w laser on my Artisan:
Bed level zero (laser housing just touching the bed) = 60mm machine coord Z
Focal height + 5mm to Z
Material thickness + Zmm
When I set that value to the header Z work zero then the initial drop is to the proper height.
If I understand what you’re saying, remove the header line that zeros the Z axis work origin, set the proper z height manually before printing, then start the print from that height.
Thanks.
If you post your current header, I can look it over and edit it for you. Just give me the machine Z coords after homing, and the focus bar touching the bed, not the housing.
It’s your header from the start of the thread, minus the safety home:
M106 P0 S255 ; This line is spit out by Luban and Snapmaker settings in Lightburn, so I include it.
G53 ; Changes to Machine Coords.
G0 Z65 F6000 ; IMPORTANT, the Z value here is your LASER HEIGHT on the touchscreen.
G54 ; Changes back to Work Coords
G92 Z0 ; This sets Z Work Origin to 0, making your laser height as 0.
G0 Z300 ; Moves the toolhead back up out of the way.
G53 ; Back to machine coords!
G0 X0 Y0 F6000 ; IMPORTANT, this is the offset you found following my laser guide!
G54 ; Oops, we’re back in work coords.
G92 X0 Y0 ; Yep, we gotta set 0,0 on X,Y as well!
M3 S0 ; This is a safety line, it brings the laser online at 0 power, basically a ready state.
With my 40w. Bed focal Z is 65. XY
Machine and Work are both 0,0
What I do now is adjust the G92 G0 to whatever the proper focal height with the material included. That way the head isn’t dropping to the bed focal height and potentially crashing into the workpiece. The 40w is just 5mm from the work surface so there’s very little room to spare.
I wonder if the Artisan has the same issue the 2.0 does where it flubs inline comments.
M106 P0 S255
G28
G54
G92 X0 Y406 Z354
M8
M3 S0
Try this header. This should home your machine, set your 0,0,0 to the homed position at the proper focal height, turn the air assist on, and put the laser in a ready state. It’s the condensed version of my OG header modified for the Artisan+40W from what I’ve studied.
With this in the header, you should be able to just throw your material height in Lightburn after some tests to determine your X/Y home.
For those struggling to connect to the Snapmaker with a USB cable because you’re in another room or can’t sit next to your devices. I have successfully connected Lightburn over IP with this tool. Which is available for free. https://www.virtualhere.com
I have an A350 with 40W and QuickSwap. I used a Raspberry Pi 4 as my “server”.
Can also try my remote start scripts that automatically upload it to the machine and start it.
Saves having to buy more hardware or frees up the additional hardware for other uses.
I’ve managed to setup my snapmaker 350 with 40w laser to frame accurately using the red dot by utilising a macro prior to framing. In my case, I’ve called it “Reframe”: M2002 T3 P1
G53 ;machine coordinates
G0 Z120 X36.2 Y2.9 F6000 ; moves to MY work coordinates, with z @ 36.2
G54 ; work coordinates
G92 X0 Y0 ; sets work origin
M2002 T3 P1 ; red dot on
After this, I can hit “frame” and it will accurately frame using the red dot which is way more helpful than using the actual laser. To get the accurate position of the red dot, I had to work out the offset from the laser which I did with some careful measuring. Thanks Skreelink for all your work on this guide.
After framing, I have another macro called “post frame” which turns off the red dot.
M2002 T3 P0 ; turns off red dot
G53; machine coordinates
G0 X14.2 Y2.9 F6000 ; move back to correct starting position
G54 ; work coordinates
G92 X0 Y0 ; set work origin
Hopefully this helps someone.
Right, I read your guide and knew there had to be an easier way, specifically USB over IP I also knew I could setup something myself, but I decided to find something everyone could use.
More solutions are always welcome, just ensure you have a very good wifi signal. Serial connections send date bit by bit and any interference or packet drop could result in a lost command. I don’t know if the software verifies all data sent/received. I would assume it does, but having the file locally is always a better option. Such as instead using the Pi for octoprint, or even installing Lightburn directly on the Pi and using a remote software such as VNC or Rustdesk to do the project locally.
That being said, I’m all for quirky, non-standard solutions. They can be the most fun.
EDIT: Also the software seems to be license based, not free. The trial allows a single device, but I would still hesitate to call this ‘free’ software.