smartin015 / continuousprint

Octoprint plugin to allow the creation of a print queue that prints, clears the bed and then prints again
40 stars 38 forks source link

GPIO actuation via at-command #226

Open smartin015 opened 1 year ago

smartin015 commented 1 year ago

Is your feature request related to a problem? Please describe.

Some continuous printing setups require activation of switches or relays attached to the OctoPrint host device (usually a Raspberry Pi). There's no convenient integration of these mechanical clearing solutions using CPQ today.

Describe the solution you'd like

Allow manipulation of host-side GPIO in-line with printer GCODE so these clearing methods are supported.

I expect using at-commands would be the most clear-cut option, e.g.

@gpio 4 HIGH
P4 400 
@gpio 4 LOW   

Would set GPIO 4 high, then low after a 400ms delay.

Describe alternatives you've considered

Having this be a separate plugin to reduce initial complexity, but in the end that may be more of a mess to maintain.

Additional context

This feature should also be a consideration for remote management of microcontroller GPIO in https://github.com/smartin015/peerprint/issues/13.