Print time estimates wildly inaccurate

Hi all. New to both Octoprint and 3D printing in general.

I have a CR-10S and have had no real problems using Cura v 3.3.1 up to now. I have noticed that the print time estimates have been a little optimistic but not unduly so. I thought that I would try Octoprint in order to remotely (elsewhere in the house or via the web) monitor large prints progress. The first thing I noticed is that the slicing options within Octoprint, using the Cura engine, leave a lot to be desired. I have enabled the "Watched" folder and this allows me to slice using Cura on my PC and have the gcode automatically uploaded to Octoprint for printing.

I sliced a 554kb STL with both Cura 3.3.1 and Cura 15.04.6 and both gave me estimates of about 15 hours. When imported into Octoprint it too estimated about 15 hours. The gcode is reported as being 69.5MB. I started the print using Octoprint yesterday and, after 19.5 hours, it is showing about 65% complete with another 10 hours to go, just about double the estimate.

What gives and is this typical?

Still going!! :smiley: Current progress

Unfortunately the estimates are never really accurate.. I use S3D and I use the time as a guide.. 2.5 hours is going to take a couple of hours.. 15 hours, going to be a day.. you certainly can't use those time as a schedule..

As I said, previous prints using Cura direct from my PC via USB were pretty accurately estimated. What I was wondering is whether the 15 hours estimated from Cura on my PC and from the Cura engine within Octaprint would have been more accurate had I used the PC to print this model. It's still printing and looks like the 15 hour estimate is going to be about 27 hours.

Estimation is difficult.

1 Like

Yeah... we've been talking about this. Just two days ago, Gina opened up some hooks in the interface to allow would-be "solvers of the greatest problems of the world" to write plugins to make better estimates of this stuff. I myself started one two days ago and I'm working on that when time permits. I know that at least one other person seems to be doing the same.

1 Like

I wish you good luck. Is there a pattern to the inaccuracy? I wonder if I can always double the indicated time. I will be reluctant to kick off a 27 hour print if I'm not sure I will be at home for the duration. I wouldn't chance leaving the printer unattended for any length of time.

If you read in that second link provided, I suggested a decent-enough method.

  1. You determine your printer's bps (bytes per second) with a spreadsheet approach. Take several prints as completed, trying to choose different shapes for your sampling. Note the filesize in bytes and the print time in seconds. Calculate the average bps. Mine is around 330 bps, for what it's worth. For great justice, remove the comments before doing this calculation.
  2. For any new file that isn't seen in the history data, calculate the expected duration by the filesize, having removed the comments from the file.

surely the biggest factors that change the print time as calculated by the slicer, has to be the printer itself.
Different settings in the firmware or stored in the printers eeprom, like acceleration, jerk and max speeds, would have effects that the slicer can not be aware of, and therefore can not factor in to its time estimate..

During my attempt to understand Jerk and Acceleration it was very obvious why the time estimates are incorrect.. your printer does not mover at 60mms it is slowing to turn, jerking from a stop to acceleration to run speed and then there are all of the below speed setting.. if you have used S3D there are a boat load of speeds, all percentages of some other speed or percentage of another percentage of a speed.. very very very complicated, if the part printing is complicated.. a square bock that is 4x4x4", I would think the time estimate would be close compared to something complicated .. Good luck with trying to figure it out!

1 Like

Thanks everyone. Some interesting reading there. I don't know how Octoprint calculates it's estimated time but it can't be very different from the way Cura does it as they both came up with very similar figures. My concern is whether the time taken to print from within Octoprint will be significantly different from the time taken when printing from Cura on my PC. In my, very limited, experience Cura's estimate has been fairly accurate so far. Yesterday was the first print I'd sent to Octoprint and the actual time taken was nearly double the 15 hours estimated. More experimentation is need.

So I am guessing you slice your model on your PC with Cura (as I do with S3D) then upload the gocde with Octoprint to the Pi and tell it to print, is that correct? Your time would be the same no matter how you got the gcode to the printer... Opctoprint just send the gocode to the printer through the USB cable just like your PC or just like putting that same Gcode on and SD card and manually putting it in the printer.. Gcode tells the printer what to do and how fast to do it, not octoprint..
If you sliced the model with Cura in the octopi image there may be a difference in version between that and what is on your PC.. I recall seeing info about cura profiles needing to be prior to the current 2.x version or something.. Since I have not tried cura yet I just ignored that data.. Good luck!

I'm sure you're right. It just seems strange that time estimates from Cura on my PC have, up to now, been pretty accurate. But since using Octoprint they are not. I'm currently printing a chess piece (King) with Octoprint and the estimate was 3 hours. It has been 3 hours now but is only 60% complete. I'll try printing the Queen direct from my PC later, via USB (I never use the SD card), and see if there's a difference. The STLs are a similar size.

I will try and PM you my email address so you can send me the King and I will see what S3D says. However, that is kind of apples and oranges.. 2 very different slicers..

Cheers. Here's a link to the file in my Public OneDrive folder. Clicky

Here are a couple of "third opinion" sites you might try:

http://www.gcodeanalyser.com/ and http://gcode.ws/.

The second site is basically the same code as used on OctoPrint's GCode Viewer tab but the first site requires "speeds and feeds" from your printer which I believe you can get mostly from M115 output and then attempts to give a more accurate time estimate.

In OctoPrint's defense, the second print of a file after a successful first print will use the actual time of the first print as its estimate.

I have my .25 nozzle installed atm and sliced with custom support at 1mm resolution and 40% support infill running at 35mms, .2 layer height, .25 width, 4 bottom layers, 4 top and 4 shells 50% infill estimate is 4 hours and 53 minutes. This is with a single process. If I split that out and used higher infill in the bottom section and less in the top I could be reduced.. Not sure I want to print this as I am low on plastic..
If I change the nozzle to .35, .2 layer, .4 width and 3 shells estimate is 3 hour 29 minutes..

I've emailed the Cura 15.04.6 settings too. When you open a file in Cura 3 it uses the settings saved in the STL but flags any differences to your current profile. I don't expect you to actually print the model though.

Screenshot02

No I can print it, just need to swich nozzles and set starting height. I have some black PLA I don't like and will us that to see how different the time is from the estimate.

Thanks @b-morgan The first site gives me an estimate of 3:40, the second 3:36 just about the same as Cura and Octoprint. The current print is already well over that and reporting 75% complete.