octoprint

Octoprint: Manage your 3D printer remotely with Raspberry Pi and Octopi

Today in 3DWork.io we bring you an interesting article on how to configure a Raspberry Pi with Octoprint very easily, to be able to manage one or more 3D printers remotely from any web browser. I hope and hope that it can be of use to you.

As always I remind you that we have a great community in our Telegram channel where you can expose your doubts and queries. You can join us at the below link.

 

 

Introduction: What is Octoprint?

Octoprint server2

Basically, Octoprint is a completely free Open-Source application that allows us to monitor and manage our 3D printer remotely using a Raspberry Pi.

In this way, and with our preferred web browser, we can make new impressions, monitor the temperature of our bed or nozzle (nozzle), see our impression in real time on video and many other things.

The installation and configuration process is extremely simple, so without further ado … let’s get to it!

 

Required components

In principle, Octoprint can be installed and configured on any Raspberry Pi. However, it is recommended to use Raspberry Pi 3B or higher. In no case should Raspberry Pi Zero W be used, since problems have been found with the WiFi generating problems during printing, as you can see in the next link.

Another detail to keep in mind is that the Raspberry Pi has a connector to add webcams on the board itself. It does not necessarily mean that you should use this type of camera, if you have a normal webcam it is very likely that it is compatible and you can use it. In this way you will not have to acquire it separately and pay that money.

In my case I had at home a Logitech C270 Webcam (used in a 3D Scanner). So I decided to use it again, as it works perfectly at 720p resolution. You just have to connect it via USB to the Raspberry Pi and it will automatically detect it, you don’t need to install any drivers.

In case of using the latest Raspberry Pi 4, it is highly recommended to install a fan or heatsink, since in these models the temperature causes serious performance problems.

Raspberry Pi 4 Amazon Logo PNG e1579685453346 aliexpress logo
MicroSD Card Amazon Logo PNG e1579685453346 aliexpress logo
Raspberry Pi camera   (optional) Amazon Logo PNG e1579685453346 aliexpress logo
Cable extender camera  (optional) Amazon Logo PNG e1579685453346 aliexpress logo
Power supply 2.5A Amazon Logo PNG e1579685453346 aliexpress logo

 

Installing Octoprint Server

Arduino monitor3

To install Octoprint we will go directly to its website, and to the section Download. There we will find a completely preconfigured Raspbian operating system image with the Octoprint server activated, called Octopi. In this way, we will not have to install the operating system from scratch, or fight with tedious configurations and problems.

The download is available in ZIP format. Once downloaded, unzip the file on your desktop. It will be an image of the Raspbian operating system with the extension *.IMG

To copy the image to the SDCard we will use the free Etcher program, which you can download from next link. Load the image file, select the correct drive (make no mistake about this), and begin the process. After a few minutes, you will have your Raspbian + Octoprint Server image correctly installed on the SDCard and you will only have to click the memory on your Raspberry Pi again.

 

Supported 3D Printers

3dprinter 15423

There is on Github a list of printers reported by users themselves where they confirm that it works perfectly. Here’s the link direct.

If your printer does not appear do not worry, it does not mean in any way that it is not supported. It may just be that no one has tested and confirmed it.

 

Connecting Octoprint to our WiFi

raspi

Setting up the Octoprint connection is done by editing a text file found on the SDCard. We will connect the memory card to our PC using the adapter and we will look for a file called octopi-wpa-supplicant.txt

Now we will edit the file using a text editor. At this point, I have to emphasize that do not use the Windows Notepad or any other “rich” text editor in any way, since by saving the file and uploading it to the Raspberry Pi can give you lot of issues.

I personally use Sublime, but you have dozens of options like AtomVimVS CodeNotepad++ and many others. They all work very well, it is simply to adapt to the one you like the most.

Once the file octopi-wpa-supplicant.txt has been edited, we will proceed to modify it. In this section we uncomment the lines where we indicate the WiFi network and password and we will put our data.

## WPA/WPA2 secured
network={
ssid="my_wifi_network"
psk="my_password"
}

 

With this, the data that our Raspberry Pi will use to connect to the WiFi of our network would already be configured. However, if our network is hidden, we must add an extra line: scan_ssid = 1

Finally, if we use Raspberry Pi 3B + or a newer model, we must necessarily indicate the country code, so we add our country as you can see below:

# Uncomment the country your Pi is in to activate Wifi in RaspberryPi 3 B+ and above
# For full list see: https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2
#country=GB # United Kingdom
#country=CA # Canada
#country=DE # Germany
#country=FR # France
country=ES # Spain

List of countries (ISO 3166-1)

If you live in a country other than Spain, you can find the country code at this listing. And well, in principle our WiFi would already be configured, so let’s proceed to click the SD Card on our Raspberry Pi and turn it on.

 

Setting up Octoprint

In theory, and if the whole process has been done correctly, you should already be able to connect to the Octoprint server. To do this, we will open our favorite browser on our computer, mobile or tablet and we will put the following URL:

http://octopi.local

After loading the web page in Octoprint on our local network, the “Setup Wizard” or configuration wizard will appear. Through the following 7 sections, we will proceed to configure our Octoprint server and then connect it to the 3D printer. Well, let’s get to it, I’ll stick the 7 windows here and configure them one by one quickly without further delay.

 

Setup Wizard

octopi 1 1

On the first screen, Octoprint Server welcomes us and thanks us for installing the software on our Raspberry Pi. Nothing to configure here, so we go to the next window by pressing the Next button.

 

octopi 2

In this section we will proceed to enter the access data to the server. It goes without saying that it is very important to have access control always activated . Above all, if our computer is going to be accessible from outside our local network (for example, the Internet).

Enter your username and password here, and press the Keep Access Control Enabled button. Then click Next and we will go to the next window.

 

octopi 3

Enabling this information will send detailed information on the use of Octoprint, and will help developers to identify problems with new updates. If you wish, you can activate it or keep it deactivated, as you decide.

 

octopi 4

In this section we will configure the connectivity verification. Octoprint will try to connect to the Internet regularly as indicated in Check interval . It is advisable not to set an excessively low value, or it will reduce unnecessary bandwidth and increase the use of the CPU of our Raspberry Pi.

By default, Google’s DNS (8.8.8.8) are configured, you can change them if you wish.

 

octopi 5

Octoprint maintains a Blacklist, on all the existing plugins. By activating this option, the server will protect us from the use of any malicious Plugin that may exist at a certain moment. As you always have to be careful about these things, we strongly recommend activating this option.

 

octopi 6

At this point, we must finally configure our printer. This section consists of 4 other subsections, so we will navigate through the four and we will put all the required information.

In the General tab we will fill in the Name and Model fields if we wish, with the information we want.

In Print bed & build volume we will add the morphology of our machine. It is essential to know the measurements (print volume) and the type of bed we have (square or round). We will also indicate if we have a heated bed and a Heated Chamber.

In the Axes section we will configure the speeds and feedrate of our machine. It will also allow us to invert the motors if necessary (Invert control).

Finally, in the Hotend & extruder , we will configure the diameter of our Nozzle (Nozzle diameter) and the number of extruders we have.

Once all this is configured, we will press the Next button as usual to advance to the next window.

 

octopi 7

This is the last window of the configuration wizard, which does not need to do anything. He informs us that everything is ready and offers us a couple of tips and/or recommendations.

We proceed to press the Finish button and we will have finished.

 

Octoprint connection to our printer (via USB)

Now we can connect our Raspberry Pi with Octoprint to our printer. In this way, you can now send commands and monitor all kinds of processes in it. Of course, you will have to connect a USB cable from your Raspberry Pi to the 3D printer.

Once connected, we will open the browser and go to the Connection section. In Serial Port and Baudrate we will select the AUTO option, and in Printer Profile the name that we previously gave should appear to our printer in the Configuration Wizard .

We will press the Connect button and wait a few seconds. If there has been no problem, we can see the temperatures updated in real time from our 3D printer.

If we want to save the connection data and have the web server connect as soon as we start up, we must activate the Save connection settings and Auto-connect on server startup boxes respectively.

 

Connecting our webcam to Octoprint

Octoprint99

Probably the most interesting and obvious reason to install an Octoprint server is to be able to view our 3D prints in progress. Good to verify that the process is being carried out correctly, or to stop our printer remotely due to an error in it.

There are two types of cameras that we can use for this option. A Raspberry Pi camera, or a USB webcam.

Raspberry Pi cameras

The ideal would be to use a Raspberry camera as it is recommended in these cases. In this way we will not have any problem. If you are going to use a camera of this type never connect it with the Raspberry Pi turned on.

Always, before connecting it, make sure that your Raspberry Pi is completely turned off and without any type of power. Then connect the camera to your Raspberry Pi and turn it on again. The connection must be made directly on the board, in the specific connector it has.

Webcams USB

If you decide to use this type of webcam, you should know that not all of them are supported. In this link you can check which ones are tested and verified.

In the event that your camera is supported, you will simply have to connect it via USB to your Raspberry Pi, and it will be in charge of detecting it and starting it up.

 

Frequent Asked Questions (F.A.Q.)

Connecting Octopi via SSH

You can connect to Octopi directly from SSH as if it were a linux. Well, it really is a fully optimized version of debian to run on Raspberry Pi machines without any problems.

For this you will need an SSH client, I use Putty, you can find it in the next web page. Once downloaded, connect to the Raspberry Pi IP or, failing that, to “octopi.local” through port 22 and a connection will be created.

The default data for access are the following:

User: pi
Password: raspberry

 

I forgot my password, how can I reset it?

In the event that you have lost your password, you can restore it very easily by executing 3 simple commands.

Of course, you must access via SSH to your Raspberry Pi, as we have explained in the first point (Connect to Octopi via SSH). The commands to execute are the following:

rm ~/.octoprint/users.yaml
sed -i -e 's/firstRun: false/firstRun: true/g' ~/.octoprint/config.yaml
sudo service octoprint restart

 

Can I manage more than one printer with Octoprint?

The answer is no. Managing more than one 3D printer at the same time with Octoprint is not officially supported, and would require multiple server instances on our Raspberry Pi.

What you can do is have several profiles and select the one of the printer you want to manage at that precise moment.

 

What minimum memory card size do I need?

Octopi occupies less than 1GB, but we need something more to be able to use it. It is recommended to start with a minimum of 4GB, with that would be more than enough. If you want to add many STL files, you will have to look for a larger size.

 

Can I add Plugins to Octoprint?

Of course, they also offer you a great variety of tools to complement the use of the server. You can add them directly from the Octoprint interface, in OctoPrint Settings – & gt; Plugin Manager .

In this way, you can only add verified plugins from their official list.

 

Where are the Octoprint log files stored?

The log files are a very valuable tool to detect problems during the management of the server. You can access each and every one by going to OctoPrint Settings -> Logging.

 

 

I hope this brief introduction to Octopi Server may have been helpful. Please feel free to read other interesting articles from 3DWork.io and also visit us on our social networks (Facebook, Twitter and Instagram):