OctoPrint plugin that integrates with a filament sensor hooked up to a Raspberry Pi GPIO pin and allows the filament spool to be changed during a print if the filament runs out.
Future developments are planned to include multiple filament sensors and pop-ups.
Initial work based on the Octoprint-Filament plugin by MoonshineSG.
Using this plugin requires a filament sensor. The code is set to use the Raspberry Pi's internal Pull-Up resistors, so the switch should be between your detection pin and a ground pin.
This plugin is using the GPIO.BOARD numbering scheme, the pin being used needs to be selected by the physical pin number.
An API is available to check the filament sensor status via a GET method to /plugin/filamentreload/status
which returns a JSON
{status: "-1"}
if the sensor is not setup{status: "0"}
if the sensor is OFF (filament not present){status: "1"}
if the sensor is ON (filament present)After installation, configure the plugin via OctoPrint Settings interface.