-
Notifications
You must be signed in to change notification settings - Fork 119
Version 2.7
Welcome to OctoScreen version 2.7. This release features several big improvements to the Files panel, fixes for a few crashing bugs, and improved logging.
The biggest improvements in version 2.7 are the various enhancements to the Files panel, including:
- Ability to not only browse OctoPrint's local files, but files on SD cards as well (however, there are some limitations to this - more on this later)
(note: The SD card mentioned here is the SD card reader that's on your printer's motherboard, not an external SD car reader plugged into your Raspberry Pi)
- Added alternating background color to list items in the file browser. The alternating background color makes it easier to distinguish one row form another.
-
Filenames are now truncated with the "..." at the end instead of the middle. Normally, when one truncates a string, the string is truncated the middle and the characters which were removed are replaced with "...". When browsing g-code files, most of the important information is at the beginning and middle of the filename, and the least important information is at the end (like ".gcode", or the layer height and other settings if your slicer appends this information). I changed this so the truncation happens at the end. It's a little thing, but it adds quite a bit to the "quality of life" here.
-
When present, a thumbnail image of the model is now displayed. Please note that this feature requires either the Prusa Slicer Thumbnail plug-in or the Cura Slicer Thumbnail plug-in to be installed, and only works for models in OctoPrint's local file system, and does not work for models on SD cards.
- Users can now tap anywhere in the row to select it.
- Confirmation modal dialog boxes now have a white border, making it clearer to see.
-
Added the filename to the print confirmation dialog box. I should point out that for now, this dialog box uses the GTK's standard confirmation dialog box and only displays the name in the contents. I looked into displaying the thumbnail as well, but the standard confirmation dialog box in GTK isn't very customizable, and I would need to recreate the entire window. I haven't ruled it out, but for the moment I'm sticking with using GTK's standard/built-in confirmation dialog box.
-
Added support for multi-extruder/single nozzle systems (like the Prusa MMU). The Filament panel now has a toggle control to toggle between extruders.
-
Filament panel with single hotend and multiple extruders
- Filament panel with multiple hotends and multiple extruders
- Filament panel with single hotend and single extruder
I'm going to be blunt. I don't recommend printing from an SD card. Although functional, there are many limitations, and printing from OctoPrint's file system is a much richer experience than from an SD card. You've heard the saying before - a chain is only as strong as its weakest link. Well, OctoScreen relies on OctoPrint, OctoPrint relies on the printer's firmware (Marlin), and file browsing isn't very well supported in the firmware of most printers. Here is a list of issues I found while implementing browsing and printing from an SD card:
- To retrieve a list of files, one issues an M20 command to the printer. M20 isn't very well implemented, and there are several issues, such as...
- File names are truncated, making it difficult to make out which file is which.
- All files on the SD card are returned, not just the files in a specific folder (like the root, or within a sub folder)
- Hidden and deleted files (files beginning with
.
) are returned. (Note however, I did add a filter to filter these files out so you won't see them in OctoScreen's file browser) - For more information on this issue, see:
- https://community.octoprint.org/t/bug-the-files-api-is-returning-all-files-on-sd-card/28791/6
- https://github.com/OctoPrint/OctoPrint/issues/1600
- https://docs.octoprint.org/en/master/api/files.html#retrieve-files-from-specific-location
- https://marlinfw.org/docs/gcode/M020.html
- https://marlinfw.org/docs/gcode/M033.html (M33 isn't very well supported, and isn't supported on my Prusa i3)
- In addition to all that, preview thumbnails are not available.
- Fixed a bug which caused OctoScreen to crash if the printer wasn't on.
- Fixed a bug pertaining to the default filament extrude length and default load length. When set to a long length, this would sometimes cause the application to crash on machines with direct drive extruders. I fixed a few things in this area, and I set the default length to 100mm. If you have a bowden extruder, or you want to change the length to a different value, you can customize this and set the length if you have the plug-in installed.
- Fixed a bug with the load/unload g-code being incorrect. For load, unload, extrude, and retract, OctoPrint's
extrude
command is now used for each of these actions. - @thebelne - Fixed a bug where the log level was always defaulting to
Debug
- @thebelne - Fixed a bug where, when a watchdog event wasn't given enough time to complete the app would crash.
- @thebelne - Added ability to enter a space in the Network Connection panel
- @thebelne - Fixed a bug pertaining to custom control with a confirmation not working
- @thebelne - Fixed a bug pertaining to custom control with multiple commands not working
- Added more logging.
- Break up the Monolith! Broke up several large files in
mcuadros/go-octoprint
(like common.go (871 lines), and printer.go (490 lines)) into smaller individual files. - Hard fork of the
mcuadros/go-octoprint
code intooctoprintApis
andoctoprintApis/dataModels
. There were so many changes, it didn't make sense to keep it in the original repository. - Moved
logger
into it's own folder/package. This isolates logger from other files inutils
, and means it doesn't have any other dependencies, allowing it to be used in every package.