Telnet printing using a filament monitor
Krzsztof last edited by
Hi, I have a 3D printer in which the printing proccess has to be done by streaming G-codes by the ethernet. Telnet channel works fine and the printing proccess runs without major issues. The problem is that I would like to use Duet3D Laser Filament Monitor. I know that it works with printing from the SD card, but printing from the card is not available in my case.
I have tried to modify the firmware by adding a custom M-code which executes StartPrinting(true) before I start streaming G-codes, but it hangs the board. Is there an easy way (or not that easy) to tell Duet3D that it is in printing state (and has to use filament monitor) while I'm sending G-codes by telnet?
To do that would require substantial changes, both to the firmware and to your GCode sender. The problem is, when the firmware detects a filament problem (or any other situation that demands a rapid pause), it needs to discard all the moves is its pipeline, because they are not going to print properly. Then when the print is resumed, it needs to start executing moves from where it left off. When printing from SD card it can do this, because each move in the pipeline is tagged with the location in the SD card file that it came from. But when accepting streamed GCodes, there is no file address. I guess you could send all GCodes with line numbers, but then the firmware would need a means to send back the line number of the first GCode that was not executed, so that the GCode sender could restart from there.
What is your objection to printing from SD card?