I started looking into this already as the actual build is waiting for some parts.
The M408 gives nice variety of information and I can do the progress bar with fraction_printed. But the plan was also to make a very large 7-segment / led matrix screen that would show information on the print, including as accurate as possible time left.
I can of course estimate a time left value by measuring the changes in fraction_printed, but I see that there is also timesLeft-parameter. And I would like to combine other parameters to the estimation as well, to potentially make it more accurate. But looks like it is only available when printing from SD card. Is this true? I'm just curious why is that like that?
I'm especially interested in current layer and total layers information and then also filament used and total filament.
fraction_printed: the fraction of the file currently being printed that has been read and at least partially processed.
message: the message to be displayed on the screen (only present if there is a message to display)
timesLeft: an array of the estimated remaining print times (in seconds) calculated by different methods. These are currently based on the proportion of the file read, the proportion of the total filament consumed, and the proportion of the total layers already printed. Only present if a print from SD card is in progress.