OctoPrint has become a common upgrade for 3D printers, and it’s gained a large community backing. While OctoPrint’s main purpose is to allow you to remotely control your machine, many users still prefer to use their printer’s direct interface for certain tasks.
There are a few reasons for this: Some are more technical, like avoiding the lag of the OctoPrint web interface, while others are aesthetic, as OctoPrint’s interface isn’t very imaginative. No matter the reason, using a direct interface on your printer with OctoPrint allows you to get the best of both worlds. The downside of this setup is that your printer’s own display can only be used for non-OctoPrint features.
Luckily, as OctoPrint is open source, community makers have developed graphic user interface (GUI) plug-ins that integrate OctoPrint’s features into compatible direct interfaces. OctoDash and OctoScreen are two such GUI plug-ins compatible with touchscreen displays.
While these two programs have similar goals, they have some differences in how they achieve them. In short, OctoDash is the newer option, with a lot of advanced interface and control features, a host of supported plug-ins, and a few customization options. OctoScreen follows a more simplistic and organized design, with tools for configuring a Wi-Fi connection and compatibility for multiple hot ends.
In this article, we’ll dive deep into the differences between OctoDash and OctoScreen, discussing several areas where the two programs differ. But first, we’ll review how OctoPrint’s GUI programs work. Let’s get started!
Before we get into the differences in printer control features for the two programs, it’s important to go over how they work. As we mentioned, OctoDash and OctoScreen operate via touchscreen displays connected to a single-board computer (e.g. a Raspberry Pi) running the OctoPrint server.
As GUI OctoPrint plug-ins, OctoDash and OctoScreen are really just a restructured version of the original web interface with many of the same basic commands. When you click a button – like when you set your hot end temperature – the button is simply a mask for sending the corresponding G-code command to your printer.
The difference between these GUIs and the web interface is that they mask the commands differently. Although most of the features between OctoPrint GUIs are the same, they can also contain other unique control and interface features. This is achieved through integrating new features from other G-code commands or OctoPrint plug-ins into the interface.
Lastly, it’s important to mention that OctoDash and OctoScreen are technically unofficial OctoPrint plug-ins. This means you can’t download them and upload them to your OctoPrint server directly from the OctoPrint Plugin Repository. Instead, you have to download them via commands sent to your OctoPrint server directly.
The first difference between these two GUIs is the onboard tools and buttons that let you control your printer. The control features on the GUI are perhaps the most important element of the program because, without them, the plug-in would be useless.
OctoPrint’s stock web interface doesn’t have many built-in features for using leveling sensors. However, OctoScreen has included bed leveling if you’ve installed a compatible sensor like a BLTouch. OctoDash doesn’t have this, but users have mentioned that a similar feature is in the works.
Another feature that OctoDash has is the integration of OctoPrint plug-ins that provide you with even more control over your machine. For example, if installed, OctoDash supports the FilamentManager plug-in so you can select and track filament usage as well as tell your machine what material you’re using. OctoDash also supports a few others, like Enclosure, PSU Control, PrintTimeGenius, and Slicer Thumbnails.
Although OctoScreen lacks the support and integration of OctoPrint plug-ins, it allows you to manage your device’s Wi-Fi connection. On OctoScreen’s opening screen, you can easily change your connected Wi-Fi network without having to edit your OctoPrint configuration files. This feature may not seem significant, but it’s super helpful if you sometimes need to change between networks, providing an easy way to reconnect without having to restart your entire OctoPrint server.
OctoDash and OctoScreen both bring great GUIs to the table, significantly better than almost any 3D printer’s stock display or the OctoPrint web interface. However, they differ in their layout, color scheme, and other ways relating to what you see on the screen. Even though such features don’t affect the program’s control capabilities, it’s important to consider them as you could be using this interface a lot.
The most obvious difference is that OctoDash uses a color scheme based on light grey for the backgrounds, with buttons in a few colors including white, red, green, yellow, and blue. In contrast, OctoScreen uses a darker grey for its background, with yellow, pink, and turquoise for the highlighted buttons.
OctoScreen also looks more simplistic and clean, with all the buttons neatly organized around the borders of the interface, each located in an equally sized rectangular box. OctoDash is a little cluttered with its many features condensed into a small space.
One significant interface feature is OctoDash’s built-in 3D model rendering. Although this probably consumes some computing power on the connected board, it’s a nice way to preview what your print should look like. Sadly, OctoScreen doesn’t have this feature.
The last difference we’ll be discussing is compatibility, which refers to the compatible hardware and software. This is important for a GUI because you want it to work properly with your computer board, display, and of course your 3D printer. Luckily, as both GUI applications are designed for OctoPrint, they are will work on any 3D printer that OctoPrint can run on and connect to.
According to their website, OctoDash is optimized for 3.5″ to 7″ touchscreen displays, making this program a great choice for screens like the popular Raspberry Pi 7″ Touch Screen Display. Very similarly, OctoScreen is meant for smaller LCDs with low resolutions, like 480 x 320. Essentially, any LCD that’s compatible and properly set up on the board running your OctoPrint server should work for either program.
As we’ve mentioned, OctoScreen is compatible with an automatic bed leveling sensor, like a BLTouch device. Of course, you can still have one with OctoDash, you just won’t be able to easily control it from your OctoDash display. OctoScreen is also compatible with dual extruder printers as you can control multiple heating elements.
Lastly, another compatibility factor that we’ve touched on previously is support for plug-ins. OctoDash integrates a few other OctoPrint plug-ins (if already installed) into its GUI. OctoScreen can coexist with other plug-ins, but you can’t control them from its GUI.
Now that we’ve gone over the main differences between OctoDash and OctoScreen, it’s important to review the information as a whole.
OctoDash clearly takes the cake when it comes to printer control features due to its number of supported plug-ins. Although OctoDash also has many great interface features, like built-in 3D model rendering, the interface might be a little cluttered, especially if you’re using a small display.
On the other hand, OctoScreen has a well-organized and easy-to-use interface with support for multiple hot ends. Unfortunately, OctoScreen doesn’t have many unique control features or compatible plug-ins, but this also means the program requires less space and computing power from your device. One potential downside, though, is that according to some users, OctoScreen is seeing diminishing support as newer GUI programs (like OctoDash) are taking its place.
Overall, OctoDash is probably the better option for those looking to use OctoPrint plug-in features on a direct interface who aren’t worried about the capabilities of the computer running the OctoPrint server. On the flipside, OctoScreen is the better option for those who want an organized interface and more compatibility with their 3D printing setup (e.g. BLTouch device, dual extrusion).
Lead image source: 6ROM7 via Reddit
License: The text of "OctoDash vs OctoScreen: The Differences" by All3DP is licensed under a Creative Commons Attribution 4.0 International License.