How to change temperature every 25 layers (or 5 mm) in Ultimaker Cura or G-code?
I want to print this heat tower calibration test.
The instructions say to change the temperature every 25 layers. It also tells me to use G-Code command
First, is there a way to specify this command using Ultimaker Cura?
If not, how do I do so in the G-code file?
I see that the G-code file is just a plain text file with a command per line presumably. Do I just insert
M104 S225at one point and then
If so, how do I know where the 25th layer is?
Every time you see a Z movement that matches the layer height (eg. 0.20 mm) you can assume that is the end/start of one "layer".
It should have a line like:
;Layer count: 17
;LAYER:0. ; mine has this as the first layer
G0 F2400 X67.175 Y61.730 Z0.250. ; moves to Z0.250 mm for the first layer, with layer thickness 0.25 mm
G0 F2400 X78.078 Y69.627 Z0.550 ; 2nd layer.
So search for "Z" or "Layer" and once you've seen 25 of these "small" movements (comparing to previous Z movement?), insert your line of code at the end of the layer commands. Don't confuse it with large Z-movements, that may correspond to move up/retract filaments.
Depending on your goals for the print, maybe you also want to insert a wait time - say a minute or two for the new temp to stabilize? Here is the line for that:
G4 P200 ; Sit still doing nothing for 200 milliseconds.
The value of Z can be found in the G-code file; if all layers are 0.2 mm, you can just look up parameter `Z5`, `Z10`, etc. in the file, there is no need to count for 25 layers. Positioning is usually absolute, not relative, for most slicers. Insertion of a dwell time (pause) is usually not necessary as the temperature steps are not that high, but nice addition if you want to be precise!
Under the Extensions menu in Ultimaker Cura, there's an option to add post-processing scripts. One of these is called TweakAtZ, and it allows you to override certain print settings when the printer reaches a certain Z height. Multiple overrides can be specified for different heights.
TweakAtZ has been bundled with the standard Ultimaker Cura download for some time, but if your version doesn't have it, you can download it from GitHub.