Can anyone help with a REPRINT button for OctoDash or standalone plugin/How to?

So in a farm environment it's easy you need more than one of the same plate of pieces printed, so when I go to harves the bed of pieces, I would like to just hit "Reprint" on the touchscreen and the job is started again with no further interaction.

Is that possible?

I'm using Octodash but the project seems dead already... so any how to would be great too, or a plugin if needed.

Thanks!

Can be difficult.

What's about OctoScreen?

IIRC Octoscreen is even more abandoned...

This thread mentions something but I'm not sure if it can be made to work with octodash?

1 Like

Are you running your own Marlin version? HOST_ACTION_COMMANDS have an option to start print, and if that's enabled you can use a custom action button in OctoDash to send the command to do it.

So, if your firmware does have action command support (which IIRC you are using Prusa, which won't work) the command M118 // action:start would be the appropriate gcode command.

It would be possible to craft a fairly simple single file plugin that could interpret @start as a gcode command and basically mimic the same thing.

This should work with OctoDash or OctoScreen (not sure how to add buttons in this one though). I just tested directly from the terminal command, and worked perfect. Juts upload this python file in plugin manager. Once installed you'll probably have to restart OctoPrint. Then add custom action button that runs the command @start. If a file is selected in OctoPrint it will start printing it.

https://gist.github.com/jneilliii/bcf90dee7335543800856d4b9430430c/raw/75f844681d0d4da85d55e17d97283ce20d389068/reprint.py

This last script regardless of the firmware requirement you mean?

Correct, that's a firmware independent solution.

I have something I am calling Octo-Pendant. I use it more or less exactly as you are wanting to. It's pretty inexpensive to make yourself. I do also list it on my Tindie but its a bit pricey because I am not ready to really support someone that does not have at least hobbyist skill levels. If you wanted to build a bunch of them, the PCB files are on Github.

Additionally, I am working on an update the SIO Control plugIn that would allow inputs to trigger things like this. I think I am a 4-5 weeks or so away from that coming out though.

1 Like

nice project. I've seen similar ones in the past that weren't touch screen with esp based devices. not sure the full capabilities of that side of things, but would recommend looking into websocket comms for real-time updates over API polling if you aren't already.

Many many thanks! Will test and report back asap!

There is not a lot of polling going on. It updates the main print info and temps but not that often so its pretty light weight on Octoprint. Most of what it does is send commands to the printer using the API. It was born out of a need / want to start the next print through OctoPrint without having to go back to the interface in another room. Its so much quicker to just tap the screen sitting next to the printer. I expanded it to include the things I found I wanted to do when at the printer and well now it has a bunch of screens and functions. This stuff can be really handy if you don't have a good display/menu on your printer.

Yeah, this is exactly why I enabled host action commands and host start in my firmware. Same for OctoDash use for my roommate. He never logs into OctoPrint directly and just uses it to start prints I've sliced and uploaded for him.

What's/What're your printer/s @jneilliii ??

I've had several over the years and always compiled my own Marlin for them as most stock printer manufacturer firmware is crap. Currently I have a FLSUN Q5, Creality CR-10, and BambuLabs X1C with AMS (of course this one isn't updated). I've done the same previously for my MakerFarm i3 and Ordbot Hadron printers.

1 Like

Thanks for the .py, works great :wink:

I guess it's impossible to make it to display the button on print completion right? That would have been awesome, but the action button already does its job fine :wink:

Yeah, that would be impossible without rewriting how OctoDash works. Glad it worked out for you.