Sync the bed and nozzle heating times so they are ready at the same time
 
Notifications
Clear all

[Closed] Sync the bed and nozzle heating times so they are ready at the same time  

  RSS
gsgriffin
(@gsgriffin)
Active Member
Sync the bed and nozzle heating times so they are ready at the same time

I'm having trouble printing PETG where I need the bed rather hot.  The nozzle jumps up to speed quickly, but the bed takes so long that many times it times-out with a bed heating error.

Just wondering if it makes sense and might be possible to more or less have the nozzle and bed get to the temp goal at close the same time?  As it is, the nozzle is cooking away for a very long time and baking the PETG while I try several times to get up to temp. I was thinking about the following:

1) Record starting temp for bed and nozzle2) Start heating the bed and nozzle
3) Time how long it takes for the nozzle to increase 10 degrees and then stop heating the nozzle.
4) Time how long for the bed to increase 5 degrees. 
5) Do the simple math for how long it will take (approximately) for the bed to reach temp. 
6) Start heating the nozzle when there is just enough time left for the bed to reach the temp and the nozzle to reach at nearly the same time (trigger could obviously be the bed reaching a certain target temp instead of just time...for when the nozzle starts to heat)

This topic was modified 3 years ago 5 times by gsgriffin
Posted : 28/03/2020 3:32 pm
karl-herbert
(@karl-herbert)
Illustrious Member
RE: Sync the bed and nozzle heating times so they are ready at the same time
Posted by: @ggriffin-mbi

I'm having trouble printing PETG where I need the bed rather hot.  The nozzle jumps up to speed quickly, but the bed takes so long that many times it times-out with a bed heating error.

Just wondering if it makes sense and might be possible to more or less have the nozzle and bed get to the temp goal at close the same time?  As it is, the nozzle is cooking away for a very long time and baking the PETG while I try several times to get up to temp. I was thinking about the following:

1) Record starting temp for bed and nozzle2) Start heating the bed and nozzle
3) Time how long it takes for the nozzle to increase 10 degrees and then stop heating the nozzle.
4) Time how long for the bed to increase 5 degrees. 
5) Do the simple math for how long it will take (approximately) for the bed to reach temp. 
6) Start heating the nozzle when there is just enough time left for the bed to reach the temp and the nozzle to reach at nearly the same time (trigger could obviously be the bed reaching a certain target temp instead of just time...for when the nozzle starts to heat)

You can set the sequence of the heating processes in the PrusaSlicer start gcode. E.g. first heat the bed, wait until it has reached the final temperature, then heat the nozzle to 175 degrees C., perform meshbed leveling, then heat the nozzle to final temperature, start printing.

A gcode table you can find here: https://marlinfw.org/meta/gcode/

Statt zu klagen, dass wir nicht alles haben, was wir wollen, sollten wir lieber dankbar sein, dass wir nicht alles bekommen, was wir verdienen.

Posted : 28/03/2020 4:10 pm
gsgriffin
(@gsgriffin)
Active Member
Topic starter answered:
RE: Sync the bed and nozzle heating times so they are ready at the same time

@karl-herbert

Thanks.  That gets close to the goal in a very rough way, but editing every single Gcode to do exactly this reorder/retiming sounds a little manual and tedious to something that I would assume could be automatic and normal and standard for all prints (or most). 

Is this not a problem for anyone else ever?  Am I the only one, and my MK3s is somehow different in heating times than others?

I'm posting this in the "Improvement" section to see if this could become something that seems reasonable and could be included in future builds of the software or even in the slicer.  I've had other issues with heating and timing (MMU2 related) that I posted and others built additional scripts to do something that should be included as well, in my opinion.  It appears to me that Prusa listens, takes good ideas, makes changes, and pushes them out in future versions.  Just hoping this might be one.  While constant GCode editing is an option, I do hope that Prusa can do better automatically for us.

Posted : 28/03/2020 4:23 pm
karl-herbert
(@karl-herbert)
Illustrious Member
RE: Sync the bed and nozzle heating times so they are ready at the same time

@ggriffin-mbi

The good thing about the opensource philosophy is that the firmware, software etc. itself can be expanded or optimized by myself. With many other products, I always have to rely on the manufacturer's reactions, which can sometimes be very grueling. There is plenty of help in the forum for slicers, MMU2s, extruders, etc. It just takes time and a lot of patience.

Statt zu klagen, dass wir nicht alles haben, was wir wollen, sollten wir lieber dankbar sein, dass wir nicht alles bekommen, was wir verdienen.

Posted : 28/03/2020 4:53 pm
bobstro
(@bobstro)
Illustrious Member
RE: Sync the bed and nozzle heating times so they are ready at the same time
Posted by: @ggriffin-mbi

@karl-herbert

Thanks.  That gets close to the goal in a very rough way, but editing every single Gcode to do exactly this reorder/retiming sounds a little manual and tedious to something that I would assume could be automatic and normal and standard for all prints (or most). 

The "two step" nozzle warmup process sounds like what you're after. Prusa has implemented it for the Mini but the Mk3 profiles do not yet include it. Fortunately, all you need to do is add the startup gcode to a printer profile and save it off as a custom printer profile. I've got http://projects.ttlexceeded.com/3dprinting_bed_adhesion.html) and cleaning the Prusa PEI sheet [here]( http://projects.ttlexceeded.com/3dprinting_bed_cleaning.html). * If you have not already done so, try using Jeff Jordan's "[Life Adjust]( https://shop.prusa3d.com/forum/assembly-and-first-prints-troubleshooting-f62/life-adjust-z-my-way-t2981.html)" procedure for calibrating your Live-Z setting. It is much easier to use and understand than the on-board routine. It's much easier to make mid-print adjustments accurately with. In general, start high (less negative) and work lower (more negative) in large increments (e.g. 0.1mm) until the filament starts to stick on its own. When you've got your Live-Z setting adjusted properly, you should be able to gently rub the extruded lines on the PEI surface without dislodging them. Then start lowering (more negative) the level until there are no gaps between layers. Remember that the effectiveness of a solvent such as isopropyl alcohol is going to depend on concentration and volume relative to the amount of grease you're trying to remove. 71% pads work... on very tiny amounts of grease. A squirt of 91% works better, but if there's a lot of grease, you need a lot more alcohol. This is why the wash under the sink with Dawn is so effective: There's a much larger volume of Dawn-and-water rinsing stuff away instead of just moving the broken-down grease molecules around. And above all else, *avoid touching the PEI print surface*. Glue stick is NOT necessary for PLA on the PEI print surface. You paid the big bucks for a Prusa with a removable spring still sheet with PEI, so clean it up and take advantage of it. Save the glue stick for printing sticky stuff like PETG that might adhere too well. Even then, I only find I need glue stick when printing high-temp PETG at 260C+ temps. Try those 2 steps. If you're uncertain of the Live-Z results, post pics here of the 75x75 print bottom and you'll get quick help. If you want more detail, I've collected my notes on [Prusa PEI adhesion]( http://projects.ttlexceeded.com/3dprinting_bed_adhesion.html), [bed cleaning]( http://projects.ttlexceeded.com/3dprinting_bed_cleaning.html) and [Live-Z calibration]( http://projects.ttlexceeded.com/3dprinting_live_z_calibration.html). A bit of trivia - The reason higher concentrations of alcohol seem to be harder to find is that isopropyl alcohol is most effective against bacteria at roughly a 71% concentration. A bit of distilled water helps slow evaporation, making the alcohol more effective. If you're looking in pharmacies, that's why 91% and higher seem to be hard to find." target="true">documented notes on doing this here. Let me know if you have any questions.

Is this not a problem for anyone else ever?  Am I the only one, and my MK3s is somehow different in heating times than others?

I'm posting this in the "Improvement" section to see if this could become something that seems reasonable and could be included in future builds of the software or even in the slicer.  I've had other issues with heating and timing (MMU2 related) that I posted and others built additional scripts to do something that should be included as well, in my opinion.  It appears to me that Prusa listens, takes good ideas, makes changes, and pushes them out in future versions.  Just hoping this might be one.  While constant GCode editing is an option, I do hope that Prusa can do better automatically for us.

 

My notes and disclaimers on 3D printing

and miscellaneous other tech projects
He is intelligent, but not experienced. His pattern indicates two dimensional thinking. -- Spock in Star Trek: The Wrath of Khan

Posted : 28/03/2020 5:14 pm
bobstro
(@bobstro)
Illustrious Member
RE: Sync the bed and nozzle heating times so they are ready at the same time

Please ignore my last post. The forum time out failed to delete it. Here's what was supposed to post...

The "two step" nozzle warmup process sounds like what you're after. Prusa has implemented it for the Mini but the Mk3 profiles do not yet include it. Fortunately, all you need to do is add the startup gcode to a printer profile and save it off as a custom printer profile. I've got notes on the process here.

 

My notes and disclaimers on 3D printing

and miscellaneous other tech projects
He is intelligent, but not experienced. His pattern indicates two dimensional thinking. -- Spock in Star Trek: The Wrath of Khan

Posted : 28/03/2020 5:29 pm
Chocki
(@chocki)
Prominent Member
RE: Sync the bed and nozzle heating times so they are ready at the same time

There is a way to improve (reduce) heating times, but does involve replacing the stock PSU and invalidating your warranty with something like a Meanwell LRS-350-24.

This has the ability to adjust the output voltage. Both myself and Guy2k have set our PSU to an output voltage of 26v.

This increases the wattage of both the hot end and heated bed and allows me to achieve higher temperatures on the heated bed as well as reducing the time it takes to get to temperature on both.

The electronics can handle the extra 2v without any issues, but don't take it above 26v.

The LCD display is NOT accurate and will show a lower voltage, if this mod is carried out, use a good accurate multimeter. 

Normal people believe that if it ain’t broke, don’t fix it. Engineers believe that if it ain’t broke, it doesn’t have enough features yet.

Posted : 28/03/2020 5:36 pm
Vojtěch Bubník
(@vojtech-bubnik)
Admin
RE: Sync the bed and nozzle heating times so they are ready at the same time

Also here is a short manual on PrusaSlicer scripting language.

https://github.com/prusa3d/PrusaSlicer/wiki/Slic3r-Prusa-Edition-Macro-Language

The names of the variables to be used in the macro language are shown at the bottom of the parameter tooltips.

Posted : 29/03/2020 10:59 am
gsgriffin
(@gsgriffin)
Active Member
Topic starter answered:
RE: Sync the bed and nozzle heating times so they are ready at the same time

@bubnikv

Thanks.  Interesting that in that description page the last example is pretty much exactly what I'm asking for....which means other need this...which means it could make sense to just make it a standard part of the scripting

Anywhere that describes how to use the scripting language.  I have no problem programming, but I don't see where or how to create macros, install or run them.

Posted : 30/03/2020 1:46 am
Daniel
(@daniel)
Eminent Member
RE: Sync the bed and nozzle heating times so they are ready at the same time

It's easy to write the G code so that the nozzle warms to 150 ° and the bed to 60 °. When bed leveling begins, the end temperature is 210 °, while bed leveling increases the end temperature. When the printer has aligned the bed, it will start and should wait until the end temperature is reached.

M862.3 P "[printer_model]" ; printer model check
M862.1 P[nozzle_diameter] ; nozzle diameter check
M115 U3.8.1 ; tell printer latest fw version
G90 ; use absolute coordinates
M83 ; extruder relative mode
M140 S[first_layer_bed_temperature] ; set bed temp
M104 S150 ; set extruder temp
M190 S[first_layer_bed_temperature] ; wait for bed temp
G28 W ; home all without mesh bed level
M104 S[first_layer_temperature] ; set extruder temp
G80 ; mesh bed leveling
M109 S[first_layer_temperature] ; wait for extruder temp
G1 Y-3.0 F1000.0 ; go outside print area
G92 E0.0
G1 X60.0 E9.0 F1000.0 ; intro line
G1 X100.0 E12.5 F1000.0 ; intro line
G92 E0.0
M221 S{if layer_height<0.075}100{else}95{endif}

Posted : 02/06/2020 7:02 pm
Daniel
(@daniel)
Eminent Member
RE: Sync the bed and nozzle heating times so they are ready at the same time

You can also write it in the filament G code, then it is even better than in the start G code, and you can set the extruder temperature to the preheat temperature, but then adjust the start G code accordingly.

Posted : 02/06/2020 7:37 pm
Daniel
(@daniel)
Eminent Member
RE: Sync the bed and nozzle heating times so they are ready at the same time

Example:
Printer start G-code:
M862.3 P "[printer_model]" ; printer model check
M862.1 P[nozzle_diameter] ; nozzle diameter check
M115 U3.8.1 ; tell printer latest fw version
M140 S0 ; set bed temp
M104 S0 ; set extruder temp

Filament start G-code (PETG):
M140 S[first_layer_bed_temperature] ; set bed temp
M104 S170 ; set extruder temp
M190 S[first_layer_bed_temperature] ; wait for bed temp
G28 W ; home all without mesh bed level
M104 S[first_layer_temperature] ; set extruder temp
G80 ; mesh bed leveling
M109 S[first_layer_temperature] ; wait for extruder temp
G1 Y-3.0 F1000.0 ; go outside print area
G92 E0.0
G1 X60.0 E9.0 F1000.0 ; intro line
G1 X100.0 E12.5 F1000.0 ; intro line
G92 E0.0
M221 S{if layer_height<0.075}100{else}95{endif}
M900 K45 ; Filament gcode LA 1.0

Posted : 02/06/2020 8:24 pm
Share: