Print starts prematurely based on waiting for temp of extruder



  • my starting gcode has the following as the last code before any extruding happens. it's a little strange looking as the slicer is referring to tool 0 and the printer is using tool 1, but that's because it's a single extruder profile in the slicer that is using the non-default tool. it's worked perfectly fine for years this way.

    What I'm getting now, among other weirdnesses that are hard to quantify, is the print starts moving anywhere from 150 degrees to 200 degress, or other places. most of the time it waits for the temperature from the snippet below, but not always. it can even be the same file printed multiple times, works sometimes, and not others.

    Like I said, the only thing that's changed is the firmware version.

    M140 S[first_layer_bed_temperature]
    M104 S[first_layer_temperature_0] T1; set 1st nozzle heater to first layer temperature
    
    M190 S[first_layer_bed_temperature]
    M109 S[first_layer_temperature_0] T1; set 1st nozzle heater to first layer temperature
    


  • @gnydick That's weird. Any chance you can replace M104 with G10 S and R? I only mention it because technically M104 is deprecated but of course, most slicers haven't caught up with that fact. This is probably not what you want to hear but personally, I use "Pre-print" macros rather than the slicer start gcode because it gives me better control of what happens and in what order. That also allows me to easily use G10 which might be a work around for you (until someone comes up with a better idea).



  • @gnydick said in Print starts prematurely based on waiting for temp of extruder:

    Like I said, the only thing that's changed is the firmware version.

    did you say? and did you mention which versions?

    I'm using M116 to wait for heaters to come up to temp, not deprecated and seems to be working.


  • administrators

    @gnydick said in [Print starts prematurely based on waiting for temp of extruder]

    Like I said, the only thing that's changed is the firmware version.

    From what to what?

    Have you tried putting T1 at the beginning of that starting GCode that you posted?



  • @dc42 said in Print starts prematurely based on waiting for temp of extruder:

    Have you tried putting T1 at the beginning of that starting GCode that you posted?

    Doesn't the "M104 S[first_layer_temperature_0] T1;" that the OP is using do the same thing?



  • @dc42 just anything in recent history.



  • @deckingman I don't see G10 being able to function like both M104 and M109



  • @gnydick
    You must put an M116 command after G10 to wait for any temps to be reached.

    So your code could be something like this (For Prusa Slicer)

    M140 S[first_layer_bed_temperature]  R{first_layer_bed_temperature[0]-50} ; Set fast bed temp & standby - Standby is 50 degrees less than first layer temp.
    G10 P0 R{first_layer_temperature[0]-100}  S[first_layer_temperature_0] T[current_extruder] ; (set standby and active temperatures for active tool.  Standby is 100 degrees less than first layer temp )
    M116 ; Wait for temps
    

Log in to reply