Wondering what the progress on the touchscreen actually means

Hi. I’m in the middle of a very long print (~130hrs) and knowing that the estimated time remaining isn’t that accurate I’m trying to make myself some maths calculations. I would like to know what the percentage of progress shown on the touchscreen actually means (actual layer/total amount of layers, current line/total amount of lines in the g-code file, etc…).

Being able to take this value as a safe starting point would help me a lot, thanks for your responses.

I have a v1, not a v2, so it’s possible that they’re different. The firmware is available for both, but I have no idea where to start looking. I’ve ruled out the progress bar representing estimated time (not that it’s accurate) and progress by layers, but just in an informal way.

My current (untested theory) is that the progress is by line or byte count. Probably byte count, because that’s the easiest value to get at the beginning of the print.

How can we test this? We could edit the GCode by hand, and add a bunch of comments. If say a file starts out at 10k lines and 100kB of data, adding 10k empty comments (which is 20kB [2 bytes for # and newline {I’m on a Mac}]) to the beginning of the file will differentiate between lines, layers, and bytes. If the progress immediately jumps to 50% complete, it’s counting lines. If the progress immediately jumps to 20% complete, it’s using bytes. If it progresses normally, it’s using layers or time. Let me give it a try…

# Before edit
clewis ~/Downloads/3D Objects/Small_Calibration_Pyramid [] $ wc -l CalibrationPyramid.gcode
    6873 CalibrationPyramid.gcode
clewis ~/Downloads/3D Objects/Small_Calibration_Pyramid [] $ ls -la CalibrationPyramid.gcode
-rw-r--r--  1 clewis  1000  177811 Aug 25 16:20 CalibrationPyramid.gcode

# After adding 10k comments before layer 0
clewis ~/Downloads/3D Objects/Small_Calibration_Pyramid [] $ wc -l CalibrationPyramid.gcode
   16874 CalibrationPyramid.gcode
clewis ~/Downloads/3D Objects/Small_Calibration_Pyramid [] $ ls -la CalibrationPyramid.gcode
-rw-r--r--  1 clewis  1000  197812 Aug 25 16:17 CalibrationPyramid.gcode

After the nozzle and bed were heated, the progress bar jumped from 0% to 10% complete before printing anything. Given that the file is ~197kB, and I added 20kB, that indicates that the progress bar is based on bytes.

I repeated the test by starting with a fresh gcode, and inserting 10k lines totalling 100kB before layer 0. File size 177811 → 277813, same number of lines as the previous test. Now progress jumps from 0% to 36% before printing starts. And 100/277 is 0.361.

Cool! Now I can follow along in the GCode better by using the progress bar.


The RNG gods saw you in a positive light that day.

On a more serious note, it’ll only give you a general idea where it’s at, not the exact lines, but IMO it’s better than nothing!

EZ Cura plugin idea: add an end of line comment to each line with the number of bytes in the comment for each line relative to how long that line is compared to everything else so this will result in a meaningful progress /s (only half though…would be really nice)