Raspberry pi 3d printer monitor

OctoPrint.org - Download & Setup OctoPrint

OctoPi (Raspberry Pi) · Octo4a (Android) · Docker install · octoprint_deploy & octoprint_install (Linux) · Manual install (Linux, Windows, Mac)

Guy Sheffer maintains “OctoPi”, a Raspbian (and thus Debian) based SD card image for the Raspberry Pi that already includes OctoPrint plus everything you need to run it:

  • OctoPrint plus its dependencies
  • MJPG-Streamer for live viewing of prints and timelapse video creation, compatible with various USB webcams and the Raspberry Pi camera

Recommended hardware: Raspberry Pi 3B, 3B+, 4B or Zero 2. Expect print artifacts and long loading times with other options, especially when adding a webcam or installing third party plugins. Setups not using recommended hardware are not officially supported.

Please note that the Raspberry Pi Zero and Zero W are not recommended explicitly since severe performance issues were observed, caused by the WiFi interface when bandwidth is utilized (e. g. the webcam is streamed), negatively impacting printing quality. See also here. The Zero 2 however is recommended.

Installing OctoPi

OctoPi is available through the Raspberry Pi Imager, which you can use to download and setup OctoPi. You can install it yourself, or alternatively simply buy one of the available

Installing OctoPi using the Raspberry Pi Imager

🤚 Before you begin

Read and follow these instructions precisely. Most importantly, leave the system username as “pi”, do not change it to anything else or OctoPrint won’t work!

  1. If you haven’t already, download and install Raspberry Pi Imager on your computer

  2. Find the OctoPi image under “Choose OS”, by selecting “Other Specific Purpose OS” > “3D printing” > “OctoPi” and then the “stable” version.

  3. Open advanced options by clicking on the button with the gear, or by using the keyboard shortcut ctrl+shift+x and then:

    • Configure your wifi options: Set your SSID, password and WiFi country:

    • Change the system password in “Set username and password” by entering a new password to use for the system user “pi”. This is not the password you’ll use for logging into OctoPrint but one that you’ll have to use to log into your Pi via SSH should you ever need to. Leave the username as “pi”, do not change it to anything else!

    • Optionally: Change the configured timezone in “Set locale settings”

    • Optionally: Change the hostname in “Set hostname”

  4. Install the image to your SD card, then plug everything in to your Raspberry Pi and boot it up. Do not format the SD card after installing, even if prompted to do so. This will break the installation and you will have to start over!

  5. Access OctoPrint from your browser via http://octopi.local or the hostname you chose (if your computer supports bonjour) or http://<your pi's ip address>. https is available too, with a self-signed certificate (which means your browser will warn you about it being invalid - it isn’t, it’s just not recognized by your browser).

Please also refer to OctoPi’s README, especially the “How to use it” section.

Alternative Initial Setup

If you decide against using the Raspberry Pi Imager, here are some alternative steps to get started:

  1. Flash the image to your SD card through whatever alternative means you’ve chosen.

  2. With the SD card still attached to your computer, set up the Wifi connection using the octopi-wpa-supplicant.txt file on the root of the installed card when using it like a thumb drive. Important: Do not use WordPad (Windows) or TextEdit (MacOS X) for this, those editors are known to mangle the file, making configuration fail. Use something like Notepad++, Atom or VSCode instead or at the very least heed the warnings in the file. If your computer doesn’t see the card right away after flashing, try ejecting and inserting it again. Do not format the SD card after installing, even if prompted to do so. This will break the installation and you will have to start over!

    Please also refer take a look at the full WiFi setup guide in the FAQ that also includes troubleshooting tips.

  3. Plug everything into your Raspberry Pi and boot it up

  4. Log into your Pi via SSH (it is located at octopi.local if your computer supports bonjour or the IP address assigned by your router), default username is pi, default password is raspberry. Run sudo raspi-config. Once that is open:

    1. Change the password via “Change User Password”
    2. Optionally: Change the configured timezone via “Localization Options” > “Timezone”.
    3. Optionally: Change the hostname via “Network Options” > “Hostname”. Your OctoPi instance will then no longer be reachable under octopi.local but rather the hostname you chose postfixed with . local, so keep that in mind.

    You can navigate in the menus using the arrow keys and Enter. To switch to selecting the buttons at the bottom use Tab.

    You do not need to expand the filesystem, current versions of OctoPi do this automatically.

    You also do not need to manually enable the RaspiCam if you have one, that is already taken care of on the image as well.

  5. Access OctoPrint through http://octopi.local (if your computer supports bonjour) or http://<your pi's ip address>. https is available too, with a self-signed certificate (which means your browser will warn you about it being invalid - it isn’t, it’s just not recognized by your browser).

Please also refer to OctoPi’s README, especially the “How to use it” section.

Image Downloads

Raspberry Pi Imager will download the latest version of OctoPi for you, but if you want to download the images yourself you can do so here.

Stable OctoPi

OctoPi 0.18.0 & OctoPrint 1.8.6 SHA256: 851573629147ec5385b9168a78377b8ed51af0a1d76c2174fe0e4ccb4f637a9d
Raspberry Pi 3B, 3B+, 4B or Zero 2 strongly recommended, Raspberry Pi Zero/Zero W not officially supported!
Image compatible with Raspberry Pi A, B, A+, B+, 2B, 3A+, 3B, 3B+, 4B 1/2/4/8GB, 400, Zero, Zero W and Zero 2.

OctoPi Release Candidate

The current OctoPi Release Candidate 1.0.0rc2 can be found here:

OctoPi 1.0.0rc2 & OctoPrint 1.8.1 Raspberry Pi 3B, 3B+, 4B or Zero 2 strongly recommended, Raspberry Pi Zero/Zero W not officially supported!
Image compatible with Raspberry Pi A, B, A+, B+, 2B, 3A+, 3B, 3B+, 4B 1/2/4/8GB, 400, Zero, Zero W and Zero 2.

OctoPi Nightlies

You can also get the 32bit nightlies here or the highly experimental 64bit nightlies here.

Further resources

  • For customizing OctoPi, take a look at CustoPiZer.
  • Scripts to build the image yourself can be found in OctoPi’s Github repository.

Filip Grzywok maintains “Octo4a”, an Android app that allows you to use an Android based smart phone as an OctoPrint host. Root is not required!

Check out the Octo4a README for information on how to obtain the app, install and run it.


There’s also a video guide on how to get Octo4a up and running by Thomas Sanladerer.

There’s also an official OctoPrint Docker image, octoprint/octoprint. It is maintained by Brian Vanderbush and team on GitHub.

Please refer to its entry on dockerhub for more details on usage and configuration.

octoprint_deploy is a guided script for creating multiple OctoPrint instances. This enables control of multiple printers on a single piece of hardware. It is compatible with OctoPi and also functions as a general Linux installer for OctoPrint, video streamers, haproxy, etc.

The related octoprint_install serves as a single instance Linux installer.

Both are maintained by Paul Paukstelis.

The generic setup instructions boil down to

  1. Installing Python 3, including pip.
  2. Creating a virtual environment somewhere: python -m venv OctoPrint
  3. Installing OctoPrint into that virtual environment: OctoPrint/bin/pip install OctoPrint
  4. OctoPrint may then be started through ./OctoPrint/bin/octoprint serve or with an absolute path /path/to/OctoPrint/bin/octoprint serve

More specific setup instructions for the most common runtime environments can be found below.


For installing OctoPrint on Linux, please take a look at the setup instructions for Raspbian on the forum. They should be pretty much identical on other Linux distributions.


For installing the OctoPrint server on a Windows system, please take a look at the setup instructions for Windows on the forum.


For installing the OctoPrint server on a Mac, please take a look at the setup instructions for MacOS on the forum.

Monitor your 3D printer remotely with a Raspberry Pi | by Aicha Fatrah

Upgrade your 3D printer setup

3D printing is cool tech, but I do not trust leaving my printer running for hours without checking on its progress. I once dared to leave the printer running for hours and when I came home I found a pile of spaghetti filament. I lost both time and filament and I had to run the print all over again. Not to mention being worried the whole time I was away that I might burn my apartment down. So I needed a way to monitor the printer while I was away and to also be able to control it in case things went wrong.

After some research, I found OctroPrint, and when I configured it with my 3D printer via my Raspberry pi, I loved the result. I mean, I'm combining two things that I love, 3D printing and a Raspberry Pi computer. I can now control and view my 3D printer from my web browser and initiate prints remotely. So I decided to write this article to share my experience. I’m not going to walk you step by step on how to configure it, because there are plenty of great detailed tutorials, I will be sharing some in the references section. For this article, I’m just going to share the overall setup and the output.

First let me tell you what you will need, or what I have, I’m sure you can do the same with most printers or Raspberry Pis. So hardware-wise:

  • Raspberry Pi (Raspberry Pi 3 Model B+)
  • Raspberry Pi camera (Raspberry Pi 4 Model B Camera Module) + Camera extension cable
  • 3D printer (Creality Ender 3 pro), you can check if your printer is compatible with OctoPrint from their website.

For the software, you will need OctoPrint, OctoPrint is free, open-source software that allows you to remotely perform and monitor all aspects of your 3D printer (like remotely load new prints, monitor extruder temperature, pause or turn off printer …) using a Raspberry Pi computer via a web interface. You can directly install it from your Raspberry pi as I did, or you can mount a new Image dedicated for OctoPrint called OctoPi, the second option will require less configuration. If you are new to Raspberry pi and you don’t want to hustle with networking and camera module configuration then directly install the OctoPi image.

Raspberry pi and the camera module

I had to print support for the raspberry pi camera module. I, unfortunately, don’t have a long cable to mount the camera directly to my Ender, so I used a simple print I found on Thinkercard. What I liked about this support is that it is simple and requires no additional screws.

3D printed camera module support

Once you install the OctoPrint on your Raspberry pi and you do your network configuration and 3D printer configuration. You will be able to open a UI via your browser.

OctoPrint InterfaceOctoPrint InterfaceOctoPrint Interface

As you can see, I can both see and change different printer parameters, like temperature and axes, I can see the live camera stream and I can stop/resume/run prints.

Enjoy 🖖.

  • https://octoprint.org/
  • https://community.octoprint.org/t/setting-up-octoprint-on-a-raspberry-pi-running-raspbian-or-raspberry-pi-os/2337
  • https://howchoo.com/g/ntg5yzg1odk/using-octoprint-with-the-creality-ender-3-3d-printer
  • https://www.tomshardware.com/how-to/raspberry-pi-remote-control-camera-from-web

Klipper screen on Orange pi

Hello community.

I want to say right away that I am not an important writer. I leave this note so that I myself do not forget and others can at least somehow help.

I'm not a Linux expert. So .. copy-paste user. And I won’t decipher the console commands too much. I'm afraid to call it wrong. And some do not even know what they mean and what packages they install.

This page helped.

The story is like this.

For some reason, I wanted to have offline control of a printer that runs on a clipper. Namely, install the clipper screen. On occasion, a 7-inch touchscreen connected via HDMI & USB was purchased. I'll tell you right now, I'm crazy. For a clipperscreen, 5 would be enough, or even less. Not so much information is displayed there at a time.

From iron, there is Raspberry pi 3 b and Orange pi pc plus.

I recently bought an orange for a printer. And after a couple of weeks, my photopolymer grunted, which was driven by a long-bought raspberry.

Initially, I wanted to write the entire history of the installations, but there is already a lot of text and everything is water. On this I will describe the final working version.

Orange Pi PC Plus version.

I focused on it, since there is a built-in emms memory on board, to which you can clone the system and start from it, or just keep the configured clipper as a backup if the flash drive suddenly fails. If desired, you can transfer data from it byte by byte to a new USB flash drive.

It was not possible to launch the screen clipper on the armbian CLI (server) version. The screen in a cyclic reboot showed either a black box (probably an attempt to start the environment and the clipperscreen interface), or a terminal. And so in a circle.

It was possible only on the desktop version of armbian.

But the deployed system is larger than the internal emms.

And here you can cheat.

1. Install the console version of armbian (cli). And through the "Bios"

sudo armbian-config

We find the corresponding item and download the desktop version.

There will be no photo. If you get to the console and clipper, you will find it. Everything is easy there.

We are updating the system.

sudo apt-get update
sudo apt-get upgrade

(whatever it is) And just before installing the clipper in general and the clipperscreen in particular.

sudo apt install xorg xinit xserver-xorg-legacy libjpeg-dev zlib1g-dev python3-pip python3-dev libatlas-base-dev python3-gi-cairo python3-virtualenv gir1.2-gtk-3.0 virtualenv matchbox-keyboard wireless- tools xdotool xinput x11-xserver-utils libopenjp2-7 python3-distutils python3-gi python3-setuptools python3-wheel

3. run two more commands in turn. I do not know their purpose, perhaps they are not even needed, perhaps these packages would have been installed when installing the clipperscreen itself. Nonetheless.

pip3 install vext
pip3 install vext.gi

When installing packages of the second command, an error popped up at the end and a warning about incorrect installation. Or something like that. This did not affect further work.

Actually everything.

The groundwork for the clipperscreen is completed.

4 through KIAUH we install clipper, moonraker and mainsail. There are no difficulties at all. We press the buttons, we agree with everything proposed. There are definitely two Russian-language installation sites and, of course, the clipper page in English.

5 install the klipper screen itself through the same KIAUH (point 5)

Installing the CS is quite lengthy. The longest clipper package in KIAUH.


In the moonraker.conf file, add to the trusted ip list and save.

Read more here

sudo reboot


In theory, after loading, we should see the interface of the same clipper screen on the screen.

If something is wrong. And the clipper screen is not displayed on the screen, go to the clipper screen site and watch troubleshooting.

We make the necessary changes, the .


Raspberry variant.

Also, we managed to get a working version only on the desktop version of raspbian.

On the console version, or rather on Mainsail OS, the coipperscreen rose, but the touch did not work.

In general, everything is simple with raspberries. On the same site clipper skria it is written how to prepare a single-board for installation.

Literally one or two changes in the "bios".

Seems like

sudo raspi-config

My raspberry has no built-in memory, so the size of the system on the memory card is not critical at all.

Let's summarize.

The key feature of the clipper screen launcher is installation on the desktop version of the system.

Set "X" before installing the clipperscreen.

That is, if you have a cli version of armbian and the clipper is already working, then you can install xorg, clipper screen, check if it works and if it doesn't work, load the desktop packages.

It should work.

And one more thing. Faced a strange situation. If I immediately put the desktop version on orange pi, then for reasons that were not clear at first, Wi-Fi refused to work on orange. Did not work at the "I do not see iron" level.

In the variant when the desktop was loaded on an already installed CLI version - Wi-Fi seems to work. But there was a moment when I put the battery on charge from the same power adapter. And the wifi fell off. From which I concluded that the desktop version may consume more energy plus the power of the screen itself.

But the low power version is being checked. Since when I just rolled the desktop version, the screen was not connected and no other consumers were turned on. I hope it's all about food. For if this is not so, then I do not know how to treat it. The kernel versions are the same on the two distributions.

I am writing this just in case, suddenly someone else will also come across. Check food. I have 5v 3A

Actually, that's it.

I do not pretend to be the truth, perhaps for someone something will be obvious and will cause bewilderment,

If it came in handy for someone, it's not in vain that I dug around for several days.

All the best.

10 reasons to use OctoPrint for 3D printing