OctoPrint blocks binary GCode
I use the latest alpha/beta versions of PrusaSlicer and the beta 5.1 firmware for my Prusa MINI. Input Shaper is awesome!
My question: By default PrusaSlicer creates binary GCode, but uploading this to OctoPrint it blocks it because of unknown format. I have to uncheck every time the binary option.
Is there a way to let OctoPrint accept binary BCode?
Thanks for some hints!
Best Answer by stritti:
There is now a Plugin for OctoPrint: https://plugins.octoprint.org/plugins/bgcode/
RE: OctoPrint blocks binary GCode
This discussion on the Octoprint forum should answer your questions: https://community.octoprint.org/t/prusaslicer-new-bgcode-format-binary-g-code/55105
RE: OctoPrint blocks binary GCode
Oh, thanks. I haven't found that post.
RE: OctoPrint blocks binary GCode
See also, this thread: https://forum.prusa3d.com/forum/postid/685759/
RE: OctoPrint blocks binary GCode
There is now a Plugin for OctoPrint: https://plugins.octoprint.org/plugins/bgcode/
RE: OctoPrint blocks binary GCode
I tested that plugin about 2 weeks ago, when it was first made available. It is a helpful "work-around" and the author was very proactive in creating it. Unfortunately (and not the plugin author's fault), it does not solve the entire problem -- only Prusa can do that.
The plugin's installation is lengthy because Prusa's conversion utility needs to be compiled on the Octoprint host. Installing (and updating) on a Pi4 takes around 10 minutes, much longer on a Pi3. This isn't a frequent operation but is still inconvenient.
But there was another change in Print Settings coincident with the switch to binary gcode. The default for the "Label objects" option was changed from "Octoprint style" to "Firmware style". This change breaks Octoprint plugins which rely on those comments. The new plugin (using the Prusa utility) is able to convert the format from binary to text, but that does not convert the Object Labels.
Both of these settings belong in PrusaSlicer's PRINTER settings, not PRINT settings, as compatibility with them is determined by the PRINTER definition (i.e., a combination of Firmware and Print Host support, as defined in the Physical Printer settings). That would allow enabling or disabling them at the Physical Printer level, so that users sending to PrusaLink/PrusaConnect could easily enable them, while those with an Octoprint interface could easily disable them.
RE:
GOOD NEWS! PrusaSlicer 2.7.1 has moved the binary gcode setting to "Printer Settings". From the release notes:
The option Export as binary G-code was removed from Print Settings. Instead, there is a new option in Printer Settings named Supports binary G-code so it can be set at printer level. There is also a new global switch in Preferences->Other, which controls whether binary G-code will be generated for printers which support it. It is therefore easy to turn the feature on or off without doing any changes in profiles (#11734, #11873).