This is only partially correct . What I do (and also octoprint), I open the serial port from the pi to the UM on start and keep it open. You are then free to query the serial interface whenever you like, also while printing from SD. So you just need to make sure that you do not re-connect the serial port. So a PI restart while printing will reset the Arduino => mess up the print.Amedee wrote:Right, it is the one or the other.reibuehl wrote:If the print is started from SD, you can't monitor the progress from OctoPrint anymore as it can't "attach" to the printer while it is working.
For the printer, printing from SD or from USB is a totally different process, so you cannot suddently decide to send a pause from USB while printing for SD.
Also when the line is opened (through USB), the Arduino board will reset. It is the way Arduino works and there is nothing you can do from the software side.
OctoPrint is a (very nice) alternative to other USB printing software (like Cura, Repetier Host, ...) and like these it replaces the controller.
If you just want a monitoring solution for SD card printing OctoPrint won't help, just use a webcam, you can then possibly use a berry to remotely switch the power off or connect a gpio pin to the UltiBoard and trigger an event (custom firmware required )
With M105 and M27 I get the status for Temp and also status in Bytes printed of total. You can then of course also pause, stop etc. using GCODE.
For the record, I like octoprint, but I wanted to keep printing from SD card and at the same time make Timlapse pictures. Octoprint had no way of starting stoping a Timelapse on the fly (maybe now it does), I even created a feature request, but that was not accepted AFAIK. So I wrote my own little python application that does that. I have just yesterday posted a picture of the web frontend in another post: viewtopic.php?f=34&t=139#p1435 (scroll down).
The code of my application (pretty messy) is not really ready for production, but if someone is interested I might make an exception .
EDIT: the progress bar you see on my application is purely bytes printed vs. total bytes => so this is especially in the beginning of the print waaay of as the first layer prints normaly slower etc.