How to install Octoprint on Raspberry Pi - Octopi Quickstart + STARTER KIT GIVEAWAY!
In this video, I will show you how to install Octoprint on a raspberry pi. Read the full transcript below, if you prefer a written version.
Don't forget to enter the Giveaway for a Raspberry Pi 4 4GB Starter Kit at https://crosslink.io/free
Hello, my name is Daniel, welcome to the CrossLink channel. I would like to help you being more successful with 3d printing and if you're here for the first time, subscribe and hit the bell notification icon so you don't miss anything.
Last time, I talked about why you should use OctoPrint, go watch the video here, if you mised it. In the following months, you're going to see more of those videos about all the important aspects how to run OctoPrint, control it from your smartphone, remote access from anywhere and the best and important plugins to use.
Octoprint is a software to control your 3D printer, to run print jobs and monitor your printer over the network. It usually gets installed on a Raspberry Pi, which is connected to your local network and from there you can either access the Octoprint web application with any web-browser and also mobile apps on your phone. It can however also run on a normal computer but since you probably will have it running 24/7, the raspberry pi is one of the most power saving and economical options to run it, so we will focus on the raspberry pi based installation in this video.
Let's start with the prerequisites for the setup. All the hardware and software required is also linked in the description of this video.
You will need a raspberry pi of course, preferably a model 3B or better. Older models and also the Pi Zero W are not recommended because they are not powerful enough. There is more information on the OctoPrint website.
I this example, I am using a new Raspberry Pi Model 4 with 4GB of RAM. It's still affordable and has a lot of potential for future upgrades and a lot of Plugins that I'd like to use.
I am using a starter Kit containing the Raspberry Pi, the original Power supply and a suitable memory card. I've linked that in the description of this video, if you're interested to buy it.
Also, I am running a giveaway until May 10th 2020 for a complee Raspberry Pi 4 starter kit, worth 100USD containing everything that you will need to get started using OctoPi with your 3D printer. You can enter for free at crosslink.io/free.
There is several choices how to install Octoprint on the Raspberry Pi. Either you install Raspian Linux first and afterwards install Octoprint yourself, or you take the pre-packaged version of Raspian and Octoprint that is called OctoPi.
I use the OctoPi image all the time, because I think it is the most convenient way to get OctoPrint on the Raspberry Pi.
But if you never used a raspberry pi before, you need to know that it does rely on micro-sd cards where the operating system and software will be started from.
And if we look at the market of sd-cards, there is sooo many options to choose from, so what should you use?
At least, you should have a 16GB or larger card for running OctoPi, not because the software takes up so much space but later in your journey of using it to 3D print you will need some space to store the 3d models, so the gcode files used during the print process and you probably also want to install more plugins for octoprint.
Also a nice feature is recording timelapses which are basically videos of your prints that will take up additional space on the sd-card.
I also recommend buying branded cards like the ones from sandisk, that I have linked in the description of this video. They are fast and also very realiable. Cheap cards tend to fail more often and this might lead to some frustration, so this would be saving money in the wrong spot.
The last question before choosing an sd-card should be how fast needs the sd card be. I recommend using a class 3 sd card with somewhat around 100MBytes per second of read and write speed. This will ensure that booting and running software on the raspberry pi is not slowed down by the sd-card.
So, you've got the Raspberry Pi, you've got the SD card, what next?
On the Octoprint homepage, choose to download the latest octopi image.
Then, you can for example use the Balena Etcher software to flash the octopi image. It works on Windows, Mac and Linux so this will work very similar on each platform.
Select the downloaded image first.
Then insert the SD card and select the according drive or path that represents the sd-card.
Finally hit the flash button.
On Windows, and probably also on a Mac you will have to confirm once more because the software needs elevated rights
Etcher creates a file system on the sd card and copies all files over. After the process you might get a few messages especially on Windows to format a drive before you can use it. Don't confirm any of those questions, cancel them all, because otherwise this will destroy the file system that has just been created and you might need to start over.
Just wait for the flashing process to finish.
The software on the sd card is now ready to run. However one thing might be left for you to configure depending whether you like to connect to the raspberry pi over the wireless network or via ethernet.
If you like to use the wireless network, you still have to configure your wireless network settings on the sd-card.
If so, remove and re-insert the sd-card to the reader slot in this case because Etcher automatically unmounts the drive after the flashing process.
You might again get some formatting questions, also cancel them all.
Now, open the drive that is labelled boot.
Here, open the octopi-wpa-supplicant.txt file.
In the WPA2 section, uncomment the configuration lines and enter your network name and password that you normally use to connect to your WIFI network.
Save the file, close your editor and cleanly remove the drive with the system tray icon in windows or by ejecting the drive on your mac.
Now, insert the sd-card into the slot on the backside of your raspberry pi.
Connect your 3D Printer to the Raspberry Pi with the USB cable.
Also, if you like to use a USB Webcam to monitor your prints, connect that now.
Now, connect the power supply to power up your Raspberry Pi.
It should connect to the network and be discoverable in your webbrowser a few minutes later as octopi.local if your network router supports this. Otherwise, you will need to find out the ip address in your router's menu.
Just to show you how I would find this raspberry Pi on my network, I am going into my internet router's configuration page and I am looking for WIFI devices. Here I find the new octopi instance and I can copy the IP Address over to my browser to get to the website.
Let's do the initial setup to get this going with the Ender 3 as an example
First, you wanna create a user account and provide a password. This is really highly recommended for security reasons, so please do not skip this step.
So, I am creating a user and giving a secure password...
and I click "Keep access control enabled"
At this point you can choose whether you like to share anonymous usage data with the octoprint team. This is pretty much your choice whether you like to enable this, I am doing this.
Connectivity check means that octoprint checks whether it can reach the internet to look for updates. I am interested in getting the latest updates as soon as possible, so I'm enabling this.
Plugin blacklist processing means, there is a blacklist being kept by the octoprint team, which prevents abusive and defective plugins to be used with your version of octoprint. So if for example you update octoprint to a new version and that plugin is known not to work propery with that version of OctoPrint, the blacklist might disable it for that reason.
Ok, next up is the printer profile
Here you will give a name for your connected printer. This is basically free text, it doesn't really matter how you call your printer, you will have to enter the details manually here.
So I'm calling my Printer Ender 3 and the model is also Ender 3.
The print bed is rectangular and the origin, meaning where the 0/0 position is, is the lower left corner as like for most reprap printers unless you know better.
The Ender Ender 3 has a heated bed as well.
The dimensions are 235 by 235 by 250 maximum print volume.
For the axes, I am keeping everything default.
And let's finally check the hotend and extruder settings. Our nozzle on the Ender 3 is 0.4mm and there is one extruder, fine.
On the Server commands I am not changing anything for the moment, so I am clicking next
If you have a webcam connected over USB, you can configure that right now or you can do it later in the settings page under Webcam.
Actually, it's strange that these values are not set by default but here are the default values for using a USB webcam. I am also putting them into the description of this video, so you can copy them from there.
So, I am copying these default values into the fields for Stream URL, Snapshot URL and Path to ffmpeg.
Next - on the last page, click finish.
Good, we are now on the main screen of OctoPrint. There is still no information about our printer status here, because we need to finally make the connection settings and save them.
Now it's really time to connect your printer to the Raspberry Pi with the USB cable if you didn't do it yet. It doesn't really matter, which USB port you use, it's detected automatically. I would rather use the USB 3 ports for the webcam if you have one that supports USB 3.
I wanna have OctoPrint connecting to my printer automatically every time OctoPrint is started, so checking the "Auto-Connect on server startup" checkbox and also the Save connection settings. Unless you discover any connection issues with your printer, leave the serial port and baudrate settings on AUTO and then click "Connect".
As soon as there is a connection established, the state should change to operational and you'll see the current temperatures of the hotend and printbed in the chart on the right hand side.
Let's do a quick walk through the parts of the UI so you know what they are about.
First, the connection panel is now collapsed as soon as there is a connection to the printer, you can always show and hide it by clicking the Header.
The state panel will always show what's going on with your printer, whether it's idle or printing and if it's printing, how long the print is going to take.
Here you can also start, pause and cancel prints.
In the files panel, you will see the files that are available to print. There might be some gcode files already in the list, but these sample files come with the OctoPrint distribution and you can either ignore or just delete them.
On the right hand side, taking most of the screen estate is the main panel, that is divided into multiple tabs.
The first one is showing you the current temperature and you can also set new target temperatures to heat up the printbed or nozzle from here.
So let's say, I am entering 50 degrees for the printbed here and hit this checkmark button, it's going to send that command over to the printer and we will shortly see the temperature rising in this chart.
Also, the light blue line in this case indicates the desired and the dark blue line shows the current printbed temperature.
So, let's set this back to off, and it's going to cool down. There is also presets for different materials, these can be changed in the configuration section, we're going to cover that later.
The control tab shows the webcam image, if you have connected one and configured it correctly. Btw. a little troubleshooting tip here, If you have connected a USB webcam after you already powered the Raspberry Pi on and you've configured it in the webcam settings page and it still doesn't show an image of the webcam, I would suggest to reboot your Raspberry Pi once again with the webcam connected to try again. For me that worked fine.
But - Back to the control tab.
This also enables you to send commands like auto home using these buttons. You may also move any axis in each direction by selecting how many millimeters, so in this case 10 millimeters and in what direction by clicking the according button.
A nice hidden feature is that if you move your mouse cursor into the webcam image, you can use your keyboard to move your axis, for example the up and down buttons for moving the printbed.
Also here you can control the extruder and feed filament, for example if you like to do a filament change manually.
Last but not least you can enable or disable the stepper motors from here and turn the fans on and off if your printer supports that.
The gcode-viewer and terminal tab, I am not going to explain now, that's a bit too advanced for the moment.
Finally, the Timelapse Tab is where you can setup how the printer will record timelapses of your webcam, if you have one connected. I will cover that in detail in a later video.
I think it's now time to do our first test print using OctoPrint. I have sliced a gcode file of a Benchy with CURA and saved it to my desktop.
Let's upload this to OctoPrint now.
I am clicking the Upload button in the files panel, then selecting the file from my desktop and then clicking open.
A few moments later, it appears in the list of files on the OctoPrint page
From here, I can either directly click the Printer button to start the print or I can first click the name to see some numbers like how much filament it's going to take and the approximate print time. Then I can also hit the Print button, if am sure that everything is setup correctly.
Good, so let's hit Print and wait for the result.
During the print, you can watch the progress and monitor if there is any issues using the webcam.
If you discover that you need to stop the printer because you see an issue you can click the stop or pause button any time. It might not stop immediately but a few seconds later because there is always some commands on the printer's buffer that will be executed even after OctoPrint stops sending new commands.
So, I hope this helps you get your OctoPrint instance up and running quickly. Also don't forget to enter for the giveaway of a Raspberry Pi 4 Starter Kit at crosslink.io/free.
If you like this video, please do me a favor. I appreciate if you hit the like button or subscribe to my channel - BUT - the real way, how you can support me is - Go watch some of my other videos that I have linked for you in these two cards here.
Thanks for watching, see you next time.