How to Access OctoPrint Over the Internet (Safely and Securely)
We're sure you've often thought about accessing OctoPrint over the internet and that too from anywhere in the world from any device. Controlling your 3D printer over a local network is simple, whereas establishing a remote connection is more difficult. If you're curious about how it's done easily, you've come to the right place
This article addresses this question and provides a how-to guide for accessing OctoPrint while away from home.
What is OctoPrint?
OctoPrint is one of the best free and open-source 3D printer remote monitoring and control software applications. It allows you to better manage your 3D printer activities and run it more efficiently. The software with its wide range of plugins enhances your 3D printing output.
If you are new to OctoPrint, you can get started by reading our guide on how to set up OctoPrint.
How does it work?
OctoPrint is typically run on a Raspberry Pi that is linked to your 3D printer. It connects to your 3D printer via USB cable and essentially takes control of it. It can send commands to control and operate the 3D printer. These can range from simple tasks like moving the printhead in the three axes or starting/stopping prints to more complex tasks like converting linear g-codes to arc codes, accessing your 3D printer from remote locations, even outside your local network, and more.
In short, OctoPrint simplifies and gives you more control over your 3D printer operations, allowing you to print more efficiently.
To run OctoPrint, OctoPi, an OctoPrint image preconfigured for the Raspberry Pi with pre-installed OctoPrint, mjpg-streamer as a webcam server, and a couple of scripts is commonly used to allow for simple initial setup.
Why is a remote access solution for OctoPrint needed?
This question has been addressed in several articles about the need for an OctoPrint remote access solution. To understand this, consider a situation in which you start a print and monitor it to ensure that it does not fail, but you suddenly need to go out for work. But as you leave the house, one question lingers in your mind: what's going on with my print?
We've all been there, and this is just one example of when a remote access solution comes in handy.
But did you know that OctoPrint is only available on your local network?
While what we said is correct, it is also true that there are multiple ways to access OctoPrint over the internet to give you access from anywhere, which we will discuss in this article.
Before we proceed, if you are the inquisitive type and want to understand why you can't use OctoPrint anywhere but on your local network? Then read our article on Accessing OctoPrint Remotely, which will explain the issue.
Accessing OctoPrint from Anywhere with an OctoPrint Plugin
There are several methods for gaining remote access to OctoPrint. The simplest method is to use OctoPrint plugins. Plugins are simple to install, with almost no setup steps or time required. There are numerous such plugins available to help you access your OctoPrint instance to control/monitor your 3D printer and you can use any of these plugins to access your printer, depending on your preferences.
From this diverse list of remote access plugins, we will concentrate on one plugin that, unlike the majority of them, provides a multitude of features - Obico for OctoPrint. It is an all-in-one plugin that can do multiple activities.
Obico for OctoPrint
Install Obico for OctoPrint plugin/Courtesy: Obico
Obico is an intelligent, open-source, all-in-one 3D printing platform that allows you to monitor and control your 3D printer from anywhere in the world using any device, including a computer, tablet, or smartphone.
Obico is the plugin that replaces and builds upon the success of The Spaghetti Detective. Obico is more than just an OctoPrint remote access plugin; it also aids in live webcam streaming, AI-enabled failure detection with the ability to stop printing in the event of a fire. It can even send you notifications about the print's status. Essentially, it makes your 3D printer smart!
- Obico installation is simple, as explained below:
- Launch a browser and navigate to the OctoPrint page.
- By clicking the wrench icon, you can access the OctoPrint settings page.
- Click "Plugin Manager," then "Get More..." on the settings page.
- Enter "Obico" in the search box to find the "Obico for OctoPrint" plugin.
- Select "Install."
When OctoPrint prompts you, select "Restart Now."
We won't go into detail about all of these steps in this article, but you can find more information in our Obico for OctoPrint setup guide.
Access one or multiple printers connected to OctoPrint from anywhere on any device
A 3D Printer Farm/Courtesy: Ultimaker
Obico is created by the same team that created The Spaghetti Detective and this new plugin just builds upon its predecessor to offer simplicity, ease of use and feature-rich experience. Obico is unique in that it provides a wide range of free features such as unlimited webcam streaming, remote access, monitoring multiple printers, and more.
Here are the top three features that will make you fall in love with it.
As previously stated, both the free and paid versions have unlimited streaming; however, the free version has a video quality cap of 5fps, whereas the paid version has a high 25fps video quality. With its webcam streaming feature, you can access the printer from your home or anywhere in the world using any desktop, phone, or tablet device.
If you need to access OctoPrint while away from home, this is the plugin to use. It is supported by a team of professionals to ensure you always get the best results.
AI failure detection
AI-enabled failure detection/Courtesy: Obico
AI failure detection is one the best features offered by Obico. Though 3D printers are revolutionizing manufacturing, they are sadly not smart enough, most notably the low-cost DIY and desktop printers. Obico has a solution that can make them smart.
Obico with its AI Failure detection feature watches your 3D printer so you don't have to. It can detect print failures while monitoring the printing process. It does not stop there; if a failure is detected, it begins sending notifications to users, and if the user does not respond quickly, Obico pauses the print and turns off the extruder heater.
It takes this precautionary measure to avoid equipment damage and potential fire hazards.
The smart feature only turns off the extruder heater while leaving the bed heater on. This is done so that in the rare case of a false positive detection, the user can simply resume the print, and the printed parts on the bed remain unaffected.
This level of intelligence is not found in any competing plugin.
Start/stop prints, etc...
Obico also makes it easier to perform time-consuming operations when running multiple OctoPrint instances. Instead of monitoring multiple instances in multiple tabs by entering individual IP addresses (as you would if you were monitoring multiple 3D printers with OctoPrint), you can simply look at the Obico dashboard. Here, you will be able to see all of your 3D printers in one location and get status updates in one look.
This will greatly simplify your life, and you will be able to control your 3D printer from this interface. You can start, pause, stop, and resume prints, view webcam streaming, and control printing parameters such as temperature and fan settings, among other things.
Access the full OctoPrint user interface safely from anywhere with Obico's OctoPrint Tunnel
Obico OctoPrint Tunneling feature/Courtesy: Obico
We have already seen one method of how you can easily get remote access to your 3D printers, but there are more ways to gain access. But while creating such connections, you need to ensure that you are establishing a safe and secure connection. Exposing your printer to the internet can lead to hacking attacks and what not.
So, taking this perspective in mind, we share how you can use Obico's OctoPrint Tunneling feature to gain full access to OctoPrint.
For the most part, you'll have access to all of the features you need through the Obico web or mobile app, but if you need to access a specific OctoPrint plugin, you'll need full access to OctoPrint. In this case, you should make use of the Tunneling feature.
For those who are unfamiliar, OctoPrint Tunneling is a secure method of accessing the full OctoPrint UI even when you are not connected to your home network. It should be noted that this method is safe and secure only if:
- You do not share your Obico account with anyone.
- Make certain that you only allow trusted apps to access the tunnel. If you are unsure, you can view a list of all the apps you have authorized and uninstall any that you no longer require.
To use OctoPrint Tunneling, simply upgrade the plugin to version 1.4.0 or higher. Then, in the printer menu, select 'Tunneling.' And you're done.
Other Ways to Access OctoPrint remotely
In addition to the popular and easy Plugin and Tunneling methods, many users also use three other methods. These are not completely secure and require a lot of coding and technical understanding of the entire software and process, but these still work.
A reverse proxy can be set up using solutions such as nginx, Apache, and HAProxy, among others. However, this method exposes your OctoPrint installation to the internet, making you vulnerable to hacking attacks. It is therefore recommended that you set up some form of authentication, such as a username and password, to protect yourself.
Virtual Private Networks are an excellent method of gaining access to your OctoPrint instance. There are numerous options available, and some home routers even include a VPN server. When properly configured, VPN can be as secure as an HTTPS connection to your bank's website. However, this added layer of security is precisely what makes VPN so difficult to set up. Only the most expensive home WiFi routers include a built-in VPN server. Even so, getting it up and running is no easy task.
Port forwarding (NOT RECOMMENDED)
Port forwarding/Courtesy: Obico
Another method is port-forwarding, which allows you to access your OctoPrint from anywhere on the internet, not just your home network. We have a step-by-step guide to set up port-forwarding for OctoPrint Remote Access, but this method is not generally recommended by OctoPrint or its users.
If you are interested in knowing more about these three techniques (reverse proxy, VPN port-forwarding), then you can read OctoPrint Anywhere: Accessing OctoPrint Remotely.
Now that we've laid out the options for accessing OctoPrint over the internet in front of you, the decision isn't all that difficult. Some methods are straightforward and simple (via plugins), whereas others are not only complicated but also risky (reverse proxy, VPN and port forwarding).
And, among these methods, there is Obico, which provides you with ease of installation, safety and security from the open internet, as well as useful features like unlimited webcam streaming, AI-enabled failure detection and more that no other plugin provides. Obico is an excellent choice for moving forward and gaining remote access from anywhere to OctoPrint in a safe and a secure manner. To explore more about OctoPrint, check out our other articles related to OctoPrint.