Jump to content

Temp gcode not in start gcode of Cura?


Recommended Posts

Posted · Temp gcode not in start gcode of Cura?


Hoping someone can help me figure this out. I'm trying to set up RGB lighting for my printer, I've got it mostly figured out, however, I'm trying to get a red light to come on when the printer starts heating up. As it is, I can only add that code in Octoprint, since Cura doesn't seem to show the bed and tool heating code in the start gcode section. I can see this code when I look at it in OctoPrint, but how do I access it in my slicer program? I don't want to have to modify each individual gcode before I print every time in OctoPrint. Is there a way to put custom temp code in the start gcode of Cura and not have it auto-generated? Basically, why is the boxed g code (M190, M104, M109) not by default in the start g-code of Cura? and is there a way I can put it in there? I'd like to add a M150 command at the very start, but I can't because it will put the bed and tool heating code before that.


I've tried adding the below code at the start g-code section:


M150 R255; turn on red LEDs


M190 S{first_layer_bed_temperature} ; set bed temp

M104 S{first_layer_temperature} ; set extruder temp

M109 S{first_layer_temperature} ; wait for extruder temp
M82 ; absolute extrusion mode


however, it still adds additional M190, M104, M109 before it when I look at the gcode in OctoPrint.






  • Like 1
Link to post
Share on other sites

Posted · Temp gcode not in start gcode of Cura?

Looking at the Cura sources I would expect those names to be material_bed_temperature, material_bed_temperature_layer_0, material_print_temperature and material_print_temperature_layer_0.

  • Like 2
Link to post
Share on other sites

Posted · Temp gcode not in start gcode of Cura?

Hello @ahoeben, while you're here did you see the request the other day from a user to be able to have multiple extruders with a single heater? I think quite a lot of people would probably like that. I suggested that I would do the engine stuff if some heroic person worked on the front end. It probably doesn't need much, maybe just a checkbox to say that all the extruders share a heater. Are you up for it?

  • Link to post
    Share on other sites

    Posted (edited) · Temp gcode not in start gcode of Cura?

    thanks smartavionics, using the material command was the thing to do!


    from an earlier reddit post I made, someone else suggested which worked: 


    M140 S{material_bed_temperature} ; heat bed, nonblocking

    M104 S{material_print_temperature} ; heat hotend in parallel ;


    M190 S{material_bed_temperature} ; heat bed, blocking

    M109 S{material_print_temperature} ; heat hot end, blocking

    Edited by Tetra84
    • Like 1
    Link to post
    Share on other sites

    Posted · Temp gcode not in start gcode of Cura?

    Hi. Having the same issue. Cura ignores that I set M140 and M104 commands into the "start code" and still adds these commands BEFORE custom start code.


    What I wanted to achieve is to start heating up nozzle and the bed at the same time, home the nozzle and then wait for target temps. Instead of waiting for the bed, then waiting for the nozzle, then waiting for the homing.


    I'm using similar thing to previous message:

    M140 S{print_bed_temperature}
    M104 S{print_temperature}
    do things
    M190 S{print_bed_temperature}
    M109 S{print_temperature}


    Variables are different than previous message but they're correct, according to result.


    So Cura still inserts its default heating code, which is start heating the bed and wait, then start heating the nozzle and wait.


    Cura 4.6.1, Windows.

  • Link to post
    Share on other sites

    Posted · Temp gcode not in start gcode of Cura?

    Ok, googled a bit more and found out.


    Apparently Cura ignores M140/M104 commands in custom start code if you use these variables. Even though they are correct and working overall. They're just being ignored by parser that decided whether it should insert heating commands or not.


    According to this issue, I need to use {material_print_temperature_layer_0} and {material_bed_temperature_layer_0}. I tried, it works properly. Cura recognizes these variables in custom start code as heating commands.

  • Link to post
    Share on other sites

    Create an account or sign in to comment

    You need to be a member in order to leave a comment

    Create an account

    Sign up for a new account in our community. It's easy!

    Register a new account

    Sign in

    Already have an account? Sign in here.

    Sign In Now
    • Our picks

      • UltiMaker Cura 5.7 stable released
        Cura 5.7 is here and it brings a handy new workflow improvement when using Thingiverse and Cura together, as well as additional capabilities for Method series printers, and a powerful way of sharing print settings using new printer-agnostic project files! Read on to find out about all of these improvements and more. 
          • Like
        • 7 replies
      • S-Line Firmware 8.3.0 was released Nov. 20th on the "Latest" firmware branch.
        (Sorry, was out of office when this released)

        This update is for...
        All UltiMaker S series  
        New features
        Temperature status. During print preparation, the temperatures of the print cores and build plate will be shown on the display. This gives a better indication of the progress and remaining wait time. Save log files in paused state. It is now possible to save the printer's log files to USB if the currently active print job is paused. Previously, the Dump logs to USB option was only enabled if the printer was in idle state. Confirm print removal via Digital Factory. If the printer is connected to the Digital Factory, it is now possible to confirm the removal of a previous print job via the Digital Factory interface. This is useful in situations where the build plate is clear, but the operator forgot to select Confirm removal on the printer’s display. Visit this page for more information about this feature.
          • Like
        • 0 replies
    • Create New...