Simplify3D is compatible!


#21

@TheBum,
have you tried any petg prints yet, do you have an FFF file possibly just got done reading that thread earlier.


#22

I used the FFF from the Snapmaker website:

https://s3-us-west-2.amazonaws.com/snapmaker.com/download/Snapmaker+-+Simplify3D.fff

I had to add a PETG filament type and I think the only things I changed were:

40mm/sec extrusion speed
6mm retraction distance
50mm/sec retraction speed

Basically, I took the extrusion and retraction settings from the Snapmaker 3D app.


#23

According to @whimsycwd the SnapMaker has a firmware limit for the Z-axis of 5mm/s:


You could program it for more but it will only move that fast.


#24

Was that directed at my comment? I was referring to the extraction speed in the extruder, not the Z-axis speed.


#25

Yeah, sorry, I thought you were talking about a Z-hop move.


#26

I do need to see if I can modify the pre-print commands. The official FFF doesn’t do the initial extrusion to prime the nozzle that Snapmaker3D does. Using a skirt really helps, but if you have a print that’s too big for a skirt, it’s going to cause the first layer to be under-printed.


#27

Perhaps do a 1 outline brim to prime the nozzle?


#28

The start script only contains a G28 “home” command. I should be able to add a “G1 Ex” command right after it to extrude x mm of filament. I wonder if I need a flow rate parameter too.


#29

The official FFF file’s start script doesn’t appear to have been modified from the default. All it does is home the axes. Appending the code that @rojaljelly posted above (except the G28, which is already there) should fix it; that’s the start code that Snapmaker3D uses, as determined by inspecting a G-code file created by it. I assumed that the official file would be complete, which was obviously a wrong assumption.

A few of the commands shouldn’t be needed, but it doesn’t hurt to have them.


#30

I checked one of the Simplify3D-generated G-code files and only the following commands should be needed in the start script:

G28 ; home all axes
G1 X-4 Y-4 ; Move the nozzle past the edge of the build plate
G1 Z0 F3000 ; Not sure this is really needed (homing should set Z to 0 and the flow rate is unused)
G92 E0 ; Not needed if the command immediately above is not needed
G1 F200 E20 ; Do the initial extrusion that gets wiped when the head moves over the build plate

The last “G92 E0” command is done automatically by the slicer.


#31

The initial extrude and wipe worked great: filament extruded onto the bed from the very first point. I’m doing a day-long print at the moment, so I won’t know how the ending script code will go for a while.


#32

I realized that I screwed up on my original ending script, but I was able to save the print and the printer by powering off as soon as the last bead was laid down. I love the G-Code Viewer in Octoprint!

My next print with the corrected script went great. So, to summarize the scripts I’m using successfully:

Starting Script

G28 ; home all axes
G1 X-4 Y-4 ; Move the nozzle past the edge of the build plate
G1 Z0 F3000 ; Not sure this is really needed (homing should set Z to 0 and the flow rate is unused)
G92 E0
G1 F200 E20 ; Do the initial extrusion that gets wiped when the head moves over the build plate

Ending Script

M104 S0 ; turn off extruder
M140 S0 ; turn off bed
G92 E0
G1 E-1 F300 ;retract the filament a bit before lifting the nozzle to release some of the pressure
G91 ; relative positioning
G1 Z10 ; move Z up a bit (10mm)
G90 ; absolute positioning
G1 X0 F3000 ; move X to min endstops so the head is out of the way
G1 Y125 F3000 ; so the head is out of the way and Plate is moved forward
M84 ; disable motors


#33

What printer are you choosing from the drop down when initially setting up Simplify3D?


#34

Ahh, I see. By importing the FFF file above it makes all the settings for a SnapMaker.

Now I’m trying to figure out how to get the bed to heat up?


#35

I added a retraction step (G92 E0 followed by G91 F3000 E-4) at the end of the starting script. It helps keep the mess down when the head crosses the edge of the bed as it positions for the first extrusion of the print job.


#36

@TheBum So my starting GCode now looks like this?

G28 ; home all axes
G1 X-4 Y-4 ; Move the nozzle past the edge of the build plate
G1 Z0 F3000 ; Not sure this is really needed (homing should set Z to 0 and the flow rate is unused)
G92 E0 ; reset extrusion distance
G1 F200 E20 ; Do the initial extrusion that gets wiped when the head moves over the build plate
G92 E0 ; reset extrusion distance
G91 F3000 E-4
G1 X110 F3000 ; quick wipe

The quickwipe function ensures that all the residue extruded before the nozzle goes over the plate is wiped away… May be unnecessary but a good failsafe…

Im unsure about the repeat of “G92 E0 ; reset extrusion distance” as it wasn’t clear if by adding it to the end you meant this to be repeated (it appears earlier in your script)?


#37

Not going to work because you’re still at Y-4.


#38

@Tone Many thanks for catching that.
How would you propose I return the nozzle to an appropriate position?

Adding G1 Y0 on the line beforehand?
Or simply another G28?
Or do I put G1 X110 Y1 F3000 ?


#39

Just change the Y-4 to Y5 or so. Also you better be REAL sure your Z is set accurately or you might scrape your bed. Or maybe you want to start at Z.05 and work your way down until you get a good wipe. On our T6 at work it actually has a little trough with some material in it to wipe the nozzle with.

OH! You also need a M109 S210 to get your nozzle up to temperature if it wasn’t already done before.


#40

@Tone Brilliant, thank you, I’ve adapted the code to read as follows now I understand the formatting…

START

G28 ; home all axes
G1 Z15.0 F6000 ;Move the platform down 15mm
G0 X-4 Y-1 Z0
G92 E0 ; reset extrusion distance
G1 F200 E20 ; Do the initial extrusion that gets wiped when the head moves over the build plate
G92 E0 ; reset extrusion distance
G1 Y1 Z0.2 ; prepare for quick wipe
G1 X110 F3000 ; quick wipe

END
M104 S0 ; turn off extruder
M106 S0 ; turn off cooling fan
M140 S0 ; turn off bed
G92 E0 ; reset extrusion distance
G1 E-1 F300 ;retract the filament a bit before lifting the nozzle to release some of the pressure
G91 ; relative positioning
G1 Z10 ; move Z up a bit (10mm)
G90 ; absolute positioning
G1 X0 F3000 ; move X to min endstops so the head is out of the way
G1 Y125 F3000 ; so the head is out of the way and Plate is moved forward
M84 ; disable motors