Jump to content

Auto Bed Leveling while Nozzle & Bed Heats Up


3DStyle

Recommended Posts

Posted (edited) · Auto Bed Leveling while Nozzle & Bed Heats Up

Hi folks,

 

I'm trying to edit my start G-Code so while my printer is heating the nozzle and/or the heatbed, it will also perform auto bed leveling simultaneously.

 

I was thinking about implementing it as the following: 

IF PRINT JOB USES HEATBED - then the printer will first heat up the bed, then wait for it to reach its desired temperature

Once the bed is heated, it will proceed to auto bed leveling + heating up the nozzle. 

 

IF PRINT JOB DOESN'T USE HEATBED - the printer will heat up the nozzle + auto bed level at the same time.

 

I used the following G-Code: 

G21 ;metric values
G90 ;absolute positioning
M82 ;set extruder to absolute mode
M107 ;Turn layer fan OFF

M140 S[bed0_temperature] ;set bed temperature
G28 ;home all axis
M190 S[bed0_temperature] ;wait for bed temperature

M104 [extruder0_temperature] ;set extruder temperature
G29 ;auto bed leveling
M109 S[extruder0_temperature] ;wait for hotend temperature

However, it didn't work.

When I start a print job, the printer will first heat up the nozzle or the heatbed, and then will procced to G28 and then G29.

 

Am I doing something wrong? Will Cura even allow to heat nozzle and auto bed level at the same time?

By the way, my printer is running with the latest Marlin 1.1.9 version. BLTouch probe leveling is enabled. 

 

 

Thanks for any help guys.

Edited by 3DStyle
typo
  • Link to post
    Share on other sites

    Posted (edited) · Auto Bed Leveling while Nozzle & Bed Heats Up

    Hi

    I am not really sure if this is your problem, but as far as I know, the leveling of the bed comes from the firmware itself (if you use an Ultimaker). So if you want to do it on your own, you have to switch the g-code flavor in Cura to ??? (I think Marlin).

     

    Edited by Smithy
  • Link to post
    Share on other sites

    Posted · Auto Bed Leveling while Nozzle & Bed Heats Up

    I meant, that the Ultimaker printers do the bed leveling on their own before a print, regardless what you set in your g-code. (will maybe ignored) And as far as I know, you can override this behavior when setting the g-code flavor to Marlin.

     

    But I am not an expert, just give some advise what I have read in the past. And if you already set it to Marlin, it will be probably something else.

    • Like 1
    Link to post
    Share on other sites

    Posted · Auto Bed Leveling while Nozzle & Bed Heats Up
    12 hours ago, 3DStyle said:

    Am I doing something wrong?

     

    I think so...? It looks like a start script for Simplify3D, not for Cura?

    Have you inspected the generated gcode?

     

    The variable names are different for Cura and curly brackets are used:

     

    ; for example:
    ;
    M190 S{material_bed_temperature_layer_0}
    ;
    M109 T0 S{material_standby_temperature, 0}
    ;
    M104 T0 S{material_print_temperature_layer_0, 0}
    ;

    AFAIK all variable names that are defined in "fdmprinter.def.json" can be used.

     

    • Like 1
    Link to post
    Share on other sites

    Posted (edited) · Auto Bed Leveling while Nozzle & Bed Heats Up
    10 hours ago, tinkergnome said:

     

    I think so...? It looks like a start script for Simplify3D, not for Cura?

    
    ; for example:
    ;
    M190 S{material_bed_temperature_layer_0}
    ;
    M109 T0 S{material_standby_temperature, 0}
    ;
    M104 T0 S{material_print_temperature_layer_0, 0}
    ;

     

     

    You were right! I took those lines from a Simplify3D forum, now I understand why it didn't work out.

     

    Anyways, I used M140 S{material_bed_temperature_layer_0} and M190 S{material_bed_temperature_layer_0} and it

    works - when I start a print job that includes a build plate temperature, the bed is heating and once it's done - printer starts to initialize a G29 command. While the printer is auto bed leveling, I want the extruder to heat up, and let the machine wait until the extruder reached its temperature before starting to print.

     

    Since my extruder is on E1, I used M104 T1 S{material_print_temperature, 1} and M109 T1 S{material_print_temperature, 1}.

    Unfortunately, the extruder is not heating up. The printer starts to print and the extruder is cold. Do you know why?

     

    Here's how my G-Code looks like now:

    G21 ;metric values
    G90 ;absolute positioning
    M82 ;set extruder to absolute mode
    M107 ;Turn layer fan OFF
    
    M140 S{material_bed_temperature_layer_0} ;set bed temperature
    G28 ;home all axis
    M190 S{material_bed_temperature_layer_0} ;wait for bed temperature
    
    M104 T1 S{material_print_temperature, 1} ; set hotend temperature
    G29 ;auto bed leveling
    M109 T1 S{material_print_temperature, 1} ;wait for hotend temperature

     

    Edited by 3DStyle
  • Link to post
    Share on other sites

    Posted · Auto Bed Leveling while Nozzle & Bed Heats Up

    I was able to make it to work! This is how the G-Code looks now:

    M140 S{material_bed_temperature} ;set bed temperature
    G28 ;home all axis
    M190 S{material_bed_temperature} ;wait for bed temperature
    
    M104 T0 S{material_print_temperature} ;set hotend temperature
    G29 ;auto bed leveling
    M109 T0 S{material_print_temperature} ;wait for hotend temperature

    Now my prints are more "productive" - instead of waiting for the nozzle and/or the bed to heat up, then home XYZ, then start to auto bed leveling; now it first heats up the bed (if it set to do it), in the same time it homes XYZ, and wait for the bed's target temperature. 

    When the bed reaches to its temperatures, the printer will proceed to heat the nozzle and while the nozzle heats up, auto bed leveling is being executed. When the heating is all done, print starts. 

    • Like 2
    Link to post
    Share on other sites

    Posted · Auto Bed Leveling while Nozzle & Bed Heats Up

    I do something similar with my start code, but my bed temperature heat up takes the  longest time, start the head heating at the same time too, but I don't M190 until after all the levelling, and then park & wait at a wait point. I also use the Cura standby temperature setting to partially heat up the nozzle, before going to the higher print temperature at the wait point, as too much heat here can damage the LokBuild on probing with my printhead nozzle. Cuts my preheat time and start to print time down too, so win win for me. ?

     

  • Link to post
    Share on other sites

    Posted · Auto Bed Leveling while Nozzle & Bed Heats Up

    Here's what I've got for a Prusa i3 Mk3 (edited down to show warmups only). I raise the nozzle for inspection and bed cleaning, then set the nozzle up to a no-ooze temp and set the bed to a warming temp for the PINDA leveling probe . This has the side benefit of waiting to cool down to this temp if the nozzle is hot, which is good for the Prusa PINDA probe. I then drop the nozzle near the bed center for warming the PINDA probe (consistent temp yields consistent results). Once it's warmed, I re-home, set final bed and nozzle temps, wait for them to warm up, then print the prime line and go.

    ; Last updated 20180910
    M104 S140 ; Set nozzle no-ooze warmup temp
    M140 S65 ; set bed PINDA warmup temp
    G28 W ; home all without mesh bed level
    G0 X0 Y200 Z100.0 F1000 ; raise nozzle and present bed for cleaning
    M109 ; wait for extruder no-ooze warmup temp before mesh bed leveling, cool hot PINDA
    G0 X125 Y105 Z0.10 F1000; PINDA warming position
    M190 S65 ; wait for bed PINDA warmup temp
    M860 S35 ; wait for PINDA temp to stabilize
    G28 W ; home all without mesh bed level
    G80 ; mesh bed leveling
    M140 S{material_bed_temperature_layer_0} ; set bed final temp
    M104 S{material_print_temperature_layer_0} ; set extruder final temp
    M109 S{material_print_temperature_layer_0} ; wait for extruder final temp
    M190 S{material_bed_temperature_layer_0} ; wait for bed final temp
    ; Print prime line
    G92 E0.0 ; reset extrusion distance
    G1 Y-3.0 F1000.0 ; go outside print area
    G1 X20.0 E6 F1000.0 ; 20mm intro line @ 0.30
    G1 X60.0 E3.2 F1000.0 ; +40mm intro line @ 0.08
    G1 X100.0 E6 F1000.0 ; +40mm intro line @ 0.15
    G1 E-1.0 F900; retract to avoid string
    G1 X95.0 E0 F1000.0 ; -5mm intro line @ 0.00
    G1 X106.0 E0 F1000.0 ; +6mm intro line @ 0.00
    G92 E0.0 ; reset extrusion distance
    M82 ; absolute extrusion mode

     

  • 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
        • 18 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...