Difference between revisions of "3D Filament Temperature Tower"
(New page) |
m |
||
Line 44: | Line 44: | ||
[[File:Temp Tower Check.jpg|thumb|Temp Tower Check]] | [[File:Temp Tower Check.jpg|thumb|Temp Tower Check]] | ||
When you're sure your G-code is right, print the model. I like to check after the base prints, and again after the first floor to make sure the nozzle temperature is actually what it should be. | When you're sure your G-code is right, print the model. I like to check after the base prints, and again after the first floor to make sure the nozzle temperature is actually what it should be. | ||
+ | [[Category:3D Printing]] |
Latest revision as of 16:54, 11 October 2024
If you have a new filament, and you're not sure what temperature to use with it, one way to explore the possible settings is to make a Temperature Tower, which uses different temperatures for each section.
There are lots of Temperature Tower models out there. I've been using this one, because it is easy to customize the tower: https://www.thingiverse.com/thing:4876406
If you open this model in OpenSCAD, you can edit the start and end temperatures. You may want to look at the filament manufacturer's suggested range and go a few steps beyond it in both direction.
Click the Render button (cube with hourglass) and then the STL button to export the STL.
Open PrusaSlicer and load the STL. Set the filament to a good guess for your filament. A setting like "Generic PETG" should work if there is no manufacturer-specific preset.
Make sure you're set up for the the Expert UI (Configuration > Configuration Assistant...) will let you change this. Go to the Printer tab, and select Custom G-code. In the Before layer change G-code box, enter
; TEMP FOR LAYER {layer_num - 7} TOWER FLOOR {(layer_num-7) / 50 + 1} M104 S{<START TEMPERATURE> - (layer_num-7) / 50 * 5}
And change the <START TEMPERATURE>
to match what you set in OpenSCAD.
Slice the model and export the gcode.
I have found that PrusaSlicer likes to forget the custom G-code when I change unrelated things, so I like to double check my gcode by running something like this:
grep 'TEMP FOR LAYER .*[05]0' -A 1 Temp_Tower_235-195_PLA_w_gcode_0.2mm_PETG_MK3S_2h29m.gcode
This shows you a bunch of the temperature changes, so you can double check them:
; TEMP FOR LAYER 50 TOWER FLOOR 2 M104 S230 -- ; TEMP FOR LAYER 100 TOWER FLOOR 3 M104 S225 -- ; TEMP FOR LAYER 150 TOWER FLOOR 4 M104 S220 -- ; TEMP FOR LAYER 200 TOWER FLOOR 5 M104 S215 -- ; TEMP FOR LAYER 250 TOWER FLOOR 6 M104 S210 -- ; TEMP FOR LAYER 300 TOWER FLOOR 7 M104 S205 -- ; TEMP FOR LAYER 350 TOWER FLOOR 8 M104 S200 -- ; TEMP FOR LAYER 400 TOWER FLOOR 9 M104 S195
When you're sure your G-code is right, print the model. I like to check after the base prints, and again after the first floor to make sure the nozzle temperature is actually what it should be.