I use Octoprint solely as a means of external control. I have a USB number pad next to my printer which I have connected to a laptop, which runs a program that sends GCode commands via Octoprint when keys are pressed. This allows me to quickly set temperatures, move the head around, control the fans, etc.
The annoying thing is, though, any codes that move the head cause it to enter "serial printing" mode, blocking access to the UI. Worse, there have been a few times where I unloaded the filament but didn't pull it out of the sensor right away, then I moved the head up with the numpad, and pulling the filament out triggered a filament runout sequence that I could not cancel without resetting the printer.
Expected functionality
Two possible solutions:
Add a toggle setting in "User Interface" to enable/disable the serial printing screen. SerialPrinting::serial_command_hook can check this setting and do nothing if it is disabled.
Add a GCode toggle that Octoprint could send which would indicate that following commands are not part of a print, but are just control moves. This would be more complex and require allocating and documenting the GCode as well as an enhancement to Octoprint.
I have implemented the first option myself and can submit a PR for it.
Printer model
All models
Describe the enhancement
I use Octoprint solely as a means of external control. I have a USB number pad next to my printer which I have connected to a laptop, which runs a program that sends GCode commands via Octoprint when keys are pressed. This allows me to quickly set temperatures, move the head around, control the fans, etc.
The annoying thing is, though, any codes that move the head cause it to enter "serial printing" mode, blocking access to the UI. Worse, there have been a few times where I unloaded the filament but didn't pull it out of the sensor right away, then I moved the head up with the numpad, and pulling the filament out triggered a filament runout sequence that I could not cancel without resetting the printer.
Expected functionality
Two possible solutions:
I have implemented the first option myself and can submit a PR for it.