Add Command `M600` in Your G-Code File

Hello, I am not able to get this to work for me. I am on a mac if that makes any difference. I have confirmed I am on the latest luban and cura software and os for the snapmaker. The snapmaker will stop at the layer and the module moves over to the side (a bit aggressive I might add with a grinding sound when it reaches the end). The screen doesn’t not transition to a filament runout and remains with the options of Pause / Stop. Any insights would be greatly appreciated.

Also if I hit pause or stop, nothing happens and I have to shut off the snapmaker and turn it back on. If i choose to resume power loss recovery, it goes back to the pause / stop freeze state.

Did you wrote the “M600” command directly into the g-code file or is ther now a function in luban which allows to stop at a certain layer?

I wrote it in.

Ok wired… i tried it right now and the “Filament Runout” event triggered flawlessly…

How are you running the file? Via the touchscreen from a usb stick or copied file, or over wifi/usb-serial cable in luban (from the mac)? Also what version is the controller firmware etc, snap a picture of the About page on your touchscreen controller.

• Filament runout works if i snip the filament no problem so I know that feature works.
• I also tried using cura’s post processing modify g-code filament change and that also does the same thing as if I add the M600 manual in text edit
• i edit the gcode in text edit and open in luban workspace and send over wifi to the Snapmaker.
• Snapmaker OS, i can confirm later today on the version number (currently running a print that will end in about 9.5hrs) It was up to date when I checked before posting here. From the touchscreen I clicked on check for update and received the message that it was up to date

When you say send over wifi, do you mean start the job over wifi? That doesnt work if so, but sending the files over wifi then starting from the touchscreen works. Not much else to suggest sorry. There was one other command added in last few months, maybe m25, cant remember but was related.
-Edit- found link Feature: support M25 pause · Snapmaker/Snapmaker2-Controller@2715db3 · GitHub

Personally I did use the m600 a couple of times via the touchscreen printing, but mostly I’m using octoprint which relies on ;@pause instead of m600 and setting pause/resume gcode routine. It’s nice in the fact that you can customise things, use plugins, and have a usb camera etc. It’s directly sending gcode over usb-cable to the snapmaker. I actually stick M600 on one line and @pause on another, but think I’ll try the m25 too, soon.

So i have tried slicing in Luban and cura, open the code in text edit and add the m600 and then open in luban workspace and send the gcode to the touchscreen. I then start the file from the touchscreen. Ive never started it from luban, Maybe Ill try the USB method next and see if that works.

What you’re doing sounds right. I also add a comment after ( ; this pauses) and make sure its capitol M for M600.
Maybe try adding another line with M25 and see what happens…

Dear colleagues,
As i’ve seen this M600 code feature is available for SnapMaker 2.0,
but i have Snapmaker Original. Does anyone have any solution for Snapmaker Original to use M600 code to change filament or any other way to make a change on the filament ?

Thanks boys,

1 Like

Hello guys,

I have a Snapmaker Artisan and I haven´t been able to make this command to work. I check all my g-codes and the M600 is there, but the printer just skip that and keep printin without the change.
Does anybody know why is this happening?

@Felipevc Its not implemented the same way in artisan firmware (yet)?
This article was about 2.0.

Hello @xchrisd, thank you for your answer.
Is that a question? Well, I have tried to do it with Cura, Prusa and manually, but the printer ignore the M600 command. Do you know if this is a firmware issue?

Thank you.

No, not a question.
Maybe it would help if you request this feature at

Hello @xchrisd!
Yes, I just did that a hour ago, because I haven´t been able to find anything about this.
Thank you.

I used the M600, changed the filament, but there is no button to resume printing. I tried in 2 ways: I sent the file to Snapmaker and printed it from Lubań.
How can I resume printing? maybe i need to change gcode elsewhere?


I am getting ready to try this, but was wondering has anyone doe this with the dual extruder? I want to change only one of the filaments, does the M600 run both filaments out or just one.

Never tried with dual extruder and sm2.0, let us know if it work please :wink:.

I did my first print using M600 or Cura you can add the filament change script. What I found out it works GREAT, but if you want to change both filaments you need to add the code twice.


Hey that’s a really nice model and print you got there! Good job!