External Control Buttons / DIY PanelDue?



  • Hello,

    I have a Duet 2 Wifi that's powering a Printrbot Simple Metal.

    I currently use the web control UI 100% to control the printer.

    I would like to have a few momentary push-button switches that I can use to make the printer run specific GCODE scripts. Here's the ones I want to set up so far:

    1. Home All
    2. Warm Hotend & Bed to standby temps
    3. Pause
    4. Resume
    5. Firmware Reset / Emergency Stop
    6. Start printing "newest" gcode file on SD card

    I know it's possible to use some of the GPIO pins on the Duet for control of lights / LEDs and stuff but what I'm hoping to do is wire all these buttons to a raspberry pi, and have it send commands to control the Duet.

    Any suggestions on taking advantage of the PanelDue pins vs sending commands over wifi and impersonating the duet web interface?

    https://github.com/patrickkuo/PanelPi
    https://duet3d.dozuki.com/Wiki/PanelDue

    I found an interesting repo where someone seems to have done what I wanted by spoofing the web interface, but their project focus appears to be running a web UI and actuating controls based on that. I want to run a raspi in a headless / command line mode and read GPIO input, and then send commands to the Duet.

    Eventually I would also like to use a multi-segment LED matrix to display the layer #, hotend temp, etc. I'd also like to be able to execute arbitrary post commands to send myself slack / sms updates (print is done, printer paused for material change etc) I basically need two things:

    1. Get printer info every 60s
    2. Send string with GCODE / Macro to run

    Thanks!



  • @dirtybirdnj said in External Control Buttons / DIY PanelDue?:

    I would like to have a few momentary push-button switches that I can use to make the printer run specific GCODE scripts. Here's the ones I want to set up so far:

    1. Home All
    2. Warm Hotend & Bed to standby temps
    3. Pause
    4. Resume
    5. Firmware Reset / Emergency Stop
    6. Start printing "newest" gcode file on SD card

    I know it's possible to use some of the GPIO pins on the Duet for control of lights / LEDs and stuff but what I'm hoping to do is wire all these buttons to a raspberry pi, and have it send commands to control the Duet.......................

    You can use triggers to run macros to do pretty much anything you want - not just switch lights and LEDs on. So if you are going to use push buttons, you might as well wire them straight to io pins and leave out the complexity of having the RPi in between.

    Funnily enough, I've just finished connecting a simple 4 switch joystick and a couple of push buttons which I use to jog my XYUVA and B axes around at two different speeds, as well as homing those axes using exactly that technique.

    More info in these threads
    https://forum.duet3d.com/topic/19541/yet-more-conditional-gcode-help-required/23
    and
    https://forum.duet3d.com/topic/19631/my-joystick-jog-control/6



  • @dirtybirdnj said in External Control Buttons / DIY PanelDue?:

    I'm hoping to do is wire all these buttons to a raspberry pi, and have it send commands to control the Duet.

    you can send g-code to the duet web interface, to the usb serial interface or enable telnet and send g-code there as the pi processes the button presses.

    (think the telnet option is depricated and might get removed at some point)

    However if you have enough free pins on the Duex expansion connector I'd keep it all on the Duet for reliability.


Log in to reply