SuperSlicer start/end gcode for Snapmaker

Has anyone tried to use SuperSlicer with Snapmaker printers?
I have loaded the software but having difficulty with the start and end g-code.
I would like to know what your start profile looks like if you have been successful.

General advice for “off-brand” slicers: Slice something with Luban and save the gcode to file. Then open the file in a text editor and copy everything from

M82 ;absolute extrusion mode
;Start GCode begin


;Start GCode end

to use as start gcode, and everything after

;End GCode begin

at the very end of the file to use as end gcode. You may want to tweak it later, but it should get you started.

Here is what I use, which is basically the same for PrusaSlicer and uses the configuration variables available in the slicer. A simple copy and paste from a GCode file will hard code the bed and nozzle temps, which is not a good idea:

;Start GCode begin

M1010 S3 P100 ;Set Enclosure lights to 100%
G28 ;Home

;M140 = bed temp, M104 = print temp
M140 S[first_layer_bed_temperature] ;Start heating bed
M104 S[first_layer_temperature] ;Start heating extruder

G90 ;absolute positioning
G1 X-10 Y-10 F3000
G1 Z0 F1800

;M190 = bed temp wait, M109 = print temp wait
M190 S[first_layer_bed_temperature] ;Wait for bed to reach temp before proceeding
M109 S[first_layer_temperature] ;Wait for extruder to reach temp before proceeding

;Prime the extruder
G92 E0
G1 E20 F200
G92 E0

;Start GCode end


;End GCode begin

;Retract the filament
G91 ;relative positioning
G1 E-2 F300 ;retract the filament a bit before lifting the nozzle, to release some of the pressure
G1 Z10 E-2 F3000 ;move Z up a bit and retract filament even more
G90 ;absolute positioning

M104 S0 ;extruder heater off
M140 S0 ;heated bed heater off

G28 ;Home
M84 ;Disable steppers

;End GCode end
1 Like

I appreciate the help!
That worked.
If you haven’t looked at SuperSlicer you might want to consider it as an upgraded Prusa Slicer.

Is this start and end G-codes for SuperSlicer and PrusaSlicer still works for SnapMaker 2.0 A250T?

I have some problems with PrusaSlicer.

I set 205 degrees for fist layer temperature but when i start printing, hotend tried to go to 250 degrees.

Start GCode Start

; Model: Snapmaker A250
; Update: 20240428
; Maintained by
; Printer : [printer_preset]
; Profile : [print_preset]
; Plate   : [physical_printer_preset]

M201 X[machine_max_acceleration_x] Y[machine_max_acceleration_y] Z[machine_max_acceleration_z] E[machine_max_acceleration_e]
M203 X[machine_max_feedrate_x] Y[machine_max_feedrate_y] Z[machine_max_feedrate_z] E[machine_max_feedrate_e]
M204 P[machine_max_acceleration_extruding] R[machine_max_acceleration_retracting] T[machine_max_acceleration_travel]
M205 X[machine_max_jerk_x] Y[machine_max_jerk_y] Z[machine_max_jerk_z] E[machine_max_jerk_e]


M140 S{first_layer_bed_temperature[initial_extruder]}

; you can clean the nozzle
M104 S165
M204 S100
G0 Z153 F960.0
G0 Y125.0 F3420.0
G0 X115.0

M190 R{first_layer_bed_temperature[initial_extruder]}

{if 1==1}
  G0 X0
  G0 Z0.2 F960.0
  G0 Y0 F3420.0
  G0 X230
  G0 Y250
  G0 X0
  G0 Y0

{if 1==1 && max(first_layer_bed_temperature[initial_extruder], bed_temperature[initial_extruder]) >= 90}
G0 Z0.06 ;raise z to counteract thermal expansion
G92 Z0 ;reset z

M104 S{max(250, min(290, first_layer_temperature[initial_extruder] + 15))}; common flush temp
G0 Z1.6 F960.0
G0 X{if initial_extruder == 0}100.0{else}130.0{endif} F3420.0
G0 Y0 F3420.0

M109 S{max(250, min(290, first_layer_temperature[initial_extruder] + 15))} C2 W1; common flush temp
G1 E15 F80.0
G92 E0

M106 S{min(255, (max_fan_speed[initial_extruder] + 10) * 2.55)}

M104 S{first_layer_temperature[initial_extruder] + 5}

G1 E9.0 F200
G92 E0
G1 E6.0 Z4.6 F200
G92 E0

G0 Z5.6 F200

G0 X{if initial_extruder == 0}55.0{else}175.0{endif} F3420.0
G0 Z0.3 F960.0
M109 S{first_layer_temperature[initial_extruder]} C3 W1
G1 E3 F200
G92 E0
G1 X{if initial_extruder == 0}0{else}230{endif} E3.42995 F3420.0
G92 E0

G1 E-{retract_length[initial_extruder]} F200
G92 E0
G0 Y20 F3420.0

; ready [physical_printer_preset]

Start GCode End

End GCode Start

G92 E0

G0 Z{max_layer_z + 2.0} F600
; retract the filament to make it easier to replace
G0 E-5 F200

    M104 S0
M140 S0
M220 S100

; DON'T REMOVE these lines if you're using the smfix (
; min_x = [first_layer_print_min_0]
; min_y = [first_layer_print_min_1]
; max_x = [first_layer_print_max_0]
; max_y = [first_layer_print_max_1]
; max_z = [max_layer_z]
; total_layer_number = [layer_num]

End GCode End.

This is my GCodes.

Your gcodes use the 250degree for flushing the hotend and then go to your print temperature and start your print.
Search your start gcode for 250 (initial extruder) and set it to whatever you want.
Flushing should prevent clogs from baked filament ends in the hotend.

Not sure why min(290, I guess this should be the min temperature like 190 degrees.

Same happens in the next M109 line.

For general understanding of gcodes have a look at this: