These are the G-code snippets that belong with my Slic3r profiles for the FlashForge Creator Pro. Although I think the G-code is quite mature now, it is possible I will update it separately from the rest of the profile. Therefore use the ‘Watch’ button to stay notified of updates.
If you want to be on the bleeding edge and get the latest changes even if they are not significant, these G-code snippets are tracked in a GitHub repository.
If you see that only this G-code was updated, you can in most cases copy-paste the updated snippets into the printer settings section of Slic3r as explained in my article. However, check the ‘Updates’ section below to see if you don't need to do anything else like enabling certain options in the printer profiles.
This code has the following features:
- Z homing with the same speed as plate levelling procedure
- Reliable tool change when printing with left extruder
- Only heat nozzles to 140°C while waiting for the bed to heat and then continue heating, to avoid baking filament inside the extruders when the bed needs a long time to heat
- Before printing the priming line, chop off ooze on front edge
- Extrude a line across the front of the bed to prime the nozzle
- Do an extra wipe on the extruded line
- No dubious fiddling with stepper VRefs
It is probably easy to adapt this code for other slicers like Cura or Simplify3D if you know how to substitute the parameter names. However, for Cura you would need to remove the relative E commands because it only supports absolute extrusion coordinates.
(Again, I attached an STL file just because Thingiverse only allows Things with some kind of 3D model.)
Tweaked start G-code: wait slightly farther away from the front edge to reduce risk of ooze not being properly chopped; improve sideways chop and add another final move for another small wipe across the extruded line; set all speeds to sensible values (although some are simply overridden by firmware limits anyway).
No longer disable Z stepper in start G-code, because this could cause the platform to drop if the Z axis is very well lubricated (it could also introduce a small error due to microstepping being interrupted). Also slightly reorder options summary to better group items that I care the most about.
Update priming routine in start G-code to reduce the risk of sticky filaments remaining stuck to the nozzle; tweak tool change during start code; remove obsolete macros and avoid the risk of non-ASCII characters ending up in the code (both these confuse the latest Prusa3D release).
Big change: converted profiles and G-code to relative E coordinates. Do not copy-paste these snippets into your existing printer profiles, unless you enable ‘Use relative E distances’ in every profile. Also updated start G-code to produce a better preview in Repetier Host (both these changes were recommended by freiser77).
Note that one small disadvantage of the relative E, is that the hack to counteract extruder lag when the print starts, no longer works. This can now only be done in a post-processing script that adds about 0.6mm to the first unretract. Maybe some day I'll release such a script…
2017/12/31: made a change to the Start-dual-extruders-postproc code because some versions of Sailfish do not honor the M109 command. Make sure to download the latest version of this file if you need it.
Minor changes: now really disable both extruder steppers and only re-enable the one(s) we need. Also reduce time of the end message from 5 to 3 seconds and reduce tool swap speed.