G10, Cura, Standby Temperature
-
Hello!
I have a Duet Magnetic filament sensor on my machine. Yey!
Now, I want to configure pause/resume.g to kick my extruder to standby temperature on pause, as I want it to go to 0.
I have found https://forum.duet3d.com/topic/8786/pause-g-resume-g-with-filament-runout-temperature?_=1582919025828
In my config.g i have G10 P0 R0 S0
But when starting to print a sliced file my standby temp goes to the same as my printing temperature, but I can not find a G10 in the resulting GCode.
What logic am I missing here?
What would be a sane way to set this up?
M122
=== Diagnostics ===
RepRapFirmware for Duet 2 WiFi/Ethernet version 2.05 running on Duet WiFi 1.02 or later -
@janjoh said in G10, Cura, Standby Temperature:
What logic am I missing here?
Cura doesn't use G10 to set temps. It uses M104/M109 which will set both the active and standby temp to the same thing.
You can use the Cura start gcode variables to set a G10 in your start gcode.
First you need to include an M104/M109 command in the start code. That way Cura will detect that you're setting the temps and not place a forced temp value on it's own. Then you can use an G10 P R S using the temp variables.
So you'd have something like
M140 S55 ; set bed temp and release G28 ; home M109 S100 ; set extruder to 100 and wait M190 S{material_bed_temperature} ; set bed temp to cura specified value and wait G10 P0 S{material_print_temperature} R0 ; set active temp to curta specified value with standby 0 M116 ; wait for temps
-
@Phaedrux said in G10, Cura, Standby Temperature:
@janjoh said in G10, Cura, Standby Temperature:
What logic am I missing here?
Cura doesn't use G10 to set temps. It uses M104/M109 which will set both the active and standby temp to the same thing.
Aha! Gotcha...
Hm, what would happen if i were to include a
G10 P0 S0 T-1
in pause.g
and then
T R1 M116
in my resume.g ... Or would that mess things up big time?
-
I'm not sure, but I think if you did that, then the resume temp would be 0. But I could very well be wrong.
But if you had Cura set the active temp and used 0 for the standby as I posted above, when you pause, it should go to the standby temp without needing to set anything else.
-
@Phaedrux said in G10, Cura, Standby Temperature:
I'm not sure, but I think if you did that, then the resume temp would be 0. But I could very well be wrong.
But if you had Cura set the active temp and used 0 for the standby as I posted above, when you pause, it should go to the standby temp without needing to set anything else.
The problem with the start-code method is that i tend to use multiple temperatures for different part of the object as i print quite a bit with wood filament which i vary the tone of via temperature.
-
@janjoh do you set those multiple temps in the slicer?
-
@janjoh
If you are doing that by height then I did a Cura post processing script that will help (attached)
AddGcodeAtHeight.txt
You will need to rename it "AddGCodeAtHeight.py" and put it in your PostProcessing scripts folder in Cura.
e.g. C:\Program Files\Ultimaker Cura 4.5\plugins\PostProcessingPlugin\scriptsYou could then insert a G10 (or any other) command at any height by using the Post Processing Plugin
-
This post is deleted! -
This post is deleted! -
The problem is that Cura uses M104 which sets both the active and standby temperature to the same value.
The best workaround I can find is this.- Set Cura to have multiple extruders (otherwise standby temperature is not visible)
- Set standby temp to zero
- Place the following in your start G-Code
G10 P0 R{material_standby_temperature} S{material_print_temperature_layer_0} ; (set standby and active temperatures for tool 0)
- Set up a Search and replace in the Cura "Post Processing" plugin
I tried all sorts of regular expressions to ensure that it would only replace instances of M104 at the start of the line, but Cura seems to choke on them.
Then at the start of resume.g put
T R1 ; Select last tool used M116 ; Wait for temps
and in pause.g put
T-1
-
@OwenD Thank you so much, I have been looking for this solution for so long!