I had a model I had originally printed in PLA, and then lost the STL... but I still have the G-code. Now I want to print it in PET-G. Do I need to do anything other than update the numbers on the M104 and M90 instructions near the top of the file to set for new hot end and bed temperatures to get it to print properly?

I know some materials I might also need to adjust speeds, but it seems like with PLA<=>PET-G those two items ought to be enough. Is there anything else I should check?


1 Answer 1


Tired of waiting, the print is now 40% done and seems to be just fine.

Thinking through my own problem more, there are three other things I might want to check (other than base speeds, as mentioned in the question) if I do this in the future:

  1. Cooling. Some materials need the cooling fan set differently. This should also be a single line edit near the top of the file.
  2. Retraction. Some materials need different retraction settings to control stringing, and in fact I do find I often need retraction to be a little more aggressive for PET-G vs PLA, even if this one print came out okay. This change is needed for every retraction instruction, instead of just once at the top of the file, but I could probably adjust it via a simple find/replace in the file.
  3. Travel Speed. Some materials need faster travel moves, also for stringing. This manages a trade-off between speed and quality. One could just always set for the fastest travel speed, which both improves print times and stringing, but faster travel moves sometimes result in ringing/ghosting at the corners, and so there's a balance that can be different per material type. This might be adjustable with a find/replace, but I would want to read through the file some to be sure we don't use similar gcode/speed numbers for anything else. It may also be possible to use strong accelleration/jerk controls to compensate for consistently faster travel moves, in which case I could set my slicer to use fast speeds that still always work, regardless of material.
  • 1
    $\begingroup$ With M220 you can alter the speeds, so that would take care of PLA to PETG difference in speed. Note that sometimes fan speeds are increased for printing overhangs or small areas. How are your Python skills! ;-) That should fix this fast! $\endgroup$
    – 0scar
    Sep 29, 2022 at 17:53
  • $\begingroup$ @0scar I'd go for PowerShell (or even C#), but the coding wouldn't be a problem :) $\endgroup$ Sep 29, 2022 at 18:32
  • $\begingroup$ Indeed, what you're doing should work fine, and thinking about it exposes how misleading slicers are about the need for profiles. For the most part, gcode is not just material independent but even device independent, and can be made even moreso if you use features like firmware retraction that let you configure more of the variables on the firmware/printer side instead of the slicer. $\endgroup$ Sep 29, 2022 at 20:19
  • 2
    $\begingroup$ Some slicers have a separate temperature for the first layer, so watch for second set of hotend temp and bed temp commands in the Gcode after the first layer completes. It may sneak back to the PLA temperature. $\endgroup$ Oct 1, 2022 at 18:43
  • 1
    $\begingroup$ Yeah, I've actually printed an ABS gcode (editing speed and temps) with porcelain. $\endgroup$
    – Davo
    Oct 3, 2022 at 14:50

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .