printing time to layer (height)  

  RSS
uullttiimmaakkeerr
(@umaker)
Trusted Member

Can I get anywhere the printing time to a spcific layer? (for example to layer 90, where I had to insert a nut)? Then I can set a kitchen-timer, that I am prepared ...

thx - Carsten

Posted : 29/10/2019 8:30 am
Tim
(@tim-m30)
Illustrious Member

You can find some of the time detail in the gcode file.  M73, but the decoder ring is a bit tough to decypher.  

Set print progress to 25%

M73 P25

 

Here's an actual P.Slicer gcode example from a 2 hr 9 min print (129 minutes):

; first layer extrusion width = 0.42mm

M73 P0 R129
M73 Q0 S130

So, using my guess at the decoder ring:

M73 P(ercent)0 R(emaining)129

M73 Q(uiet?)0 S(et?)130  <-- my guess is this is also percent and time remaining, but for silent mode

Based on this slicer detail:

; estimated printing time (normal mode) = 2h 8m 38s  <-- 129 minutes
; estimated printing time (silent mode) = 2h 10m 8s   <-- 130 minutes

But these commands are buried in the gcode, not at convenient spots like layer changes:

G1 X120.133 Y138.789 E0.16302
G1 X120.133 Y138.254 E0.01678
G1 X116.463 Y134.585 E0.16302
G1 X116.463 Y134.051 E0.01678
M73 Q0 S129
G1 X120.133 Y137.720 E0.16302
G1 X120.133 Y137.186 E0.01678
G1 X116.463 Y133.517 E0.16302
M73 P0 R128
G1 X116.463 Y132.982 E0.01678
G1 X120.133 Y136.652 E0.16302
G1 X120.133 Y136.117 E0.01678
G1 X116.463 Y
This post was modified 1 month ago 4 times by Tim
It is always wise to get more than one opinion......
Posted : 29/10/2019 9:59 am
uullttiimmaakkeerr
(@umaker)
Trusted Member

gCode M73 I know, but this is a very unconvenient solution. Maybe ... some time ... there will be displayed time beside the layer-view-sliders.

:o) thx tim

{if layer_z==21.2}; Pause to insert objects
; I N S E R T
{endif}

then I open the gCode in my textEditor and searh for "I N S E R T" then scroll back to M73, get my calculation, substract and tadaaaaa. -- not so convenient.

Posted : 29/10/2019 12:51 pm
Sembazuru
(@sembazuru)
Honorable Member

You can find this in PrusaSlicer 2.1.0. Go to the preview and move the layer to where you want to know the timing. Temporarily put a color change here. If you have background processing turned off (I believe this is the default), generate (but don't save) the gcode. At the bottom of the right-hand bar (you may need to scroll down to it) is some basic printing statistics. These statistics now include print times for the different colors. Here is an example:

Note, the times in parentheses are the time in the count-down timer shown on the LCD display during printing for the start of each color, not cumulative time.

Once you have taken note of the timing, disable the color change in the layer slider. (I just tried and "Undo" doesn't work.)

Posted : 29/10/2019 12:54 pm
richard.l and bobstro liked
zoltan
(@zoltan)
Member Moderator

Good tip @sembazuru, but I think he even does not need to remove the colour change code. When the time "insert the nut" comes he has to stop the print anyway. So the G-code will do it on behalf of him not pushing him to watch the continuously the kitchen timer. 😉 If I am not wrong the colour change is indicated by a beep, so the printer will even ask him for action to be done.

This post was modified 1 month ago by zoltan
even an old man can learn new things 🙂
Standard I3 mk3s, FW 3.8.1, no closed box, sketchup , fusion 360, PrusaSlicer, Windows 10...
Posted : 29/10/2019 3:55 pm
Neophyl
(@neophyl)
Reputable Member

Yes but with a colour change command the printer will also unload the filament and then demand it be reloaded along with the purge that happens.  That is a pain in the rear if all you want is a pause and you risk stray filament getting on your print from the purge.

Better to remove them in slicer or run a post processing script to remove them.

Posted : 29/10/2019 4:02 pm
Sembazuru
(@sembazuru)
Honorable Member
Posted by: @zoltan

Good tip @sembazuru, but I think he even does not need to remove the colour change code. When the time "insert the nut" comes he has to stop the print anyway. So the G-code will do it on behalf of him not pushing him to watch the continuously the kitchen timer. 😉 If I am not wrong the colour change is indicated by a beep, so the printer will even ask him for action to be done.

You make a good point. This certainly is possible. I didn't go into how to use g-code to pause, though I suppose I could have. I use custom g-code to get the printer to pause for hardware insertion. The means that I don't have to unload and reload the same filament, I have the printed area pushed forward so I don't have to reach under or over the gantry, I perform an x/y home just in case I moved the bed or the extruder, and a couple other things.

If the OP wants to see my custom g-code in this thread (I've posted elsewhere on this forum about it), I'll certainly upload it here with explanation. I guess I just assumed (possibly incorrectly) that he already had a pause built in and was just asking about how to determine the timing so he could set a stopwatch to get ready and return to the printer at the appropriate time. 

Posted : 29/10/2019 6:24 pm
Tim
(@tim-m30)
Illustrious Member

Well - there is this: use the layer change gcode to detect the important layer, then pause and buzz the beeper for a while.

It is always wise to get more than one opinion......
Posted : 29/10/2019 6:47 pm
Tim
(@tim-m30)
Illustrious Member

Thinking about it; insert a pause at the important layer also allows for a quick search to find the timer commands in the gcode. Open the gcode, find the pause, then search backward for the M73.

 

M300 S660 P200 : M300 S480 P100 : M300 S880 P300
M0 Insert Nuts, press [enter]

 

 

It is always wise to get more than one opinion......
Posted : 29/10/2019 7:31 pm
uullttiimmaakkeerr
(@umaker)
Trusted Member

to insert something at layerheight is no problem. I am using MMU2s and changing color as workaround to get the time to this layer is not possible.

Posted : 29/10/2019 10:29 pm
Tim
(@tim-m30)
Illustrious Member

I'd like the slicer to optimize layer heights automatically so I don't have to do it manually.  I'd also like the printer to warn me before it jams.  Why can't the devs do these things for me???

There are some tasks that require a user to do some work. This is one of them.  Sure, a feature to support this very limited task would be nice, and it should be posted as a feature request over on GitHub, but there are other things the devs need to work on and this feature probably doesn't help many people, so will be ranked low. 

People have provided several work-a-rounds that accomplish what you are trying to do. I suggest you try them out before continuing to ask for someone to do the work for you. You might learn something, and none of us have access to your printer or computer to press the mouse buttons that must be pressed. 

It is always wise to get more than one opinion......
Posted : 30/10/2019 2:53 am
Sembazuru
(@sembazuru)
Honorable Member
Posted by: @umaker

to insert something at layerheight is no problem. I am using MMU2s and changing color as workaround to get the time to this layer is not possible.

Yeah... I don't have an MMU2. I don't know how or if PrusaSlicer accounts for the time for toolchanges in the timing estimation. I've only tested my suggestion on a single color print.

Posted : 30/10/2019 10:17 pm
Share:

Please Login or Register