OctoPrint - Raspberry Pi Zero W

Updated 4 months ago ​by Jakub Dolezal

1. How to install Raspberry Pi Zero W to your MK3

Installing RPi Zero W requires purchasing the board together with several other components. You need to know how to solder pins or have somebody experienced around. All information is provided in the online step-by-step photo guide. In case of any issues during the reassembly, feel free to use the comments section below each step.

2.  How to download or create your own RPi Zero W OctoPrint image

There are two ways to get OctoPrint up and running on the RPi Zero W. First, there is a custom version called PrusaPrint, which was created by Prusa Research. Our engineers optimized the settings directly for the MK3. There is no need for additional setup or config changes. The software is ready to print. Download the image, unzip it and flash it to the MicroSD card. The whole process is described in our online step-by-step photo guide.

Download link:  Plugin for displaying IP address on the printer's screen is currently being updated, once finished it will be shared in here.

In case of connection issues between OctoPrint (PrusaPrint) and your printer, please contact our support. For other issues please visit the official OctoPrint's FAQ.

The second option is to create your own image, which will contain the most basic setting to get OctoPrint to communicate with your MK3 printer. Some settings included in the PrusaPrint will be missing and are not part of this guide.

Following part is for experts only! 
Prerequisites: Computer with working terminal (command line interface), MicroSD reader, Wi-Fi network

I. Download the latest OctoPrint image

octoprint.org/download

II. Download flashing utility Etcher

etcher.io

III. Using Etcher, flash the OctoPrint's image on the MicroSD card

Select image - Select SD card - Flash

The process takes several minutes.

IV. Editing wireless setting

On your computer, locate the SD card partition called "boot" and open it. Look for a file called "octopi-wpa-supplicant.txt" "octopi-network.txt", open it for editing. Insert your Wi-Fi name and password, also uncomment (by deleting "#") three lines show below to activate this part of the custom configuration.

## WPA/WPA2 secured
#network={
#  ssid="put SSID here"
#  psk="put password here"
#}

Example of adjusted config:

## WPA/WPA2 secured
network={
  ssid="PrusaResearch"
  psk="topsecret"
}

V. First boot of the OctoPrint

Insert the MicroSD card in the RPi Zero W and connect it to the MK3 printer. See our online step-by-step photo guide for detailed instructions. You need to activate the RPi port in the MK3 printer, enter menu -> settings -> RPi Port and set it to "ON".

VI. Finding the IP address of the RPi Zero W

In order to be able to edit setting in the OctoPrint, you need to use terminal (SSH) and connect to your RPi Zero W using IP address. If you have access to your home Wi-Fi router look for the latest leased IP address leased by DHCP server, or use a network monitoring tool (ex. Angry IP scanner) to discover your RPi Zero W.

VII. First connection using the terminal

Open the terminal and connect to your Pi using SSH, which is enabled by default. Make sure the printer and your computer are connected to the same network. Type following:

ssh pi@your_pi_address
Note: default password is "raspberry".

VIII. Changing default password

Using default password "raspberry" is not recommended, please change it immediately. Type the command below and follow the instructions on the screen:

passwd

IX. Expanding size of the filesystem

By default, the available space is limited to lower OctoPrint's overall size. To increase it, open Raspberry settings:

sudo raspi-config

In the menu select: Advanced Options -> Expand Filesystem -> Reboot

X. Editing serial connection

By default, OctoPrint doesn't include settings to connect to the MK3 via the serial port. Two config files must be updated and serial port added using the web interface. Some of the following codes are taken from a thread by Scott.w12. More information is provided in the following steps.

XI. Swapping ports used by GPIO and Bluetooth

The first thing to enable serial connection is to swap ports used by the GPIO (soldered pins) and the internal Bluetooth chip. We need to add a line in the config file on the boot partition.

sudo nano /boot/config.txt

Move the cursor to the very end and add:

dtoverlay=pi3-miniuart-bt

XII. Disabling the serial console

Moving to another config file, where part of the code must be deleted to disable serial console.

sudo nano /boot/cmdline.txt

Look for following string (text) and delete it

console=serial0,115200

XIII. Rebooting RPi

For all changes to take effect, please reboot your Raspberry Pi Zero W.

XIV. Adding serial port

Last part of the configuration is in the web interface. Open your browser and type either "octoprint.local" or the IP address of the RPi Zero W. You might be greeted with the welcome wizard, please go through it first.

As soon as you arrive at the home screen, open "Settings" (top right), head to "Serial Connection", then "Additional serial ports" and insert following:

/dev/ttyAMA0

Save the change and reboot OctoPrint. After reboot, select the new port and connect to your printer.



Congratulations, you just finished the custom OctoPrint setup for your MK3!

3. How to see the IP address on your printer's screen 

Running Raspberry Pi Zero W on your MK3 is sometimes called having a headless system, as there is no screen directly connected to the Pi board. Whenever you move your MK3 to a different network or forget the printer's IP address it might be hard to retrieve it. Luckily there is a great plugin, which will show the address on the printer's screen during the startup.

Visit GitHub website and look for OctoPrint-ipOnConnect plugin by jneilliii and download it. Open your OctoPrint's web interface (in the web browser). Open settings and in the left column find "Plugin manager", then click on "Get More..." and using an option " ... from an uploaded archive" point to the file on your computer you've downloaded previously. 

After the plugin is installed, go back to the main screen (homepage) and ensure you have ticked "Auto-connect on server startup". Reboot the printer, give it a minute or two and you should see the IP address on the MK3's screen. Note, that as long as you enter the printer's menu or insert an SD card, the IP address will disappear from the screen and you have to reboot the printer to see it again.

Plugin for displaying IP address on the printer's screen is currently being updated, once finished it will be shared in here.

4. How to update firmware using RPi Zero W

Updating firmware on the Original Prusa i3 MK3 using RPi Zero W is currently not possible due to hardware limitations on the Raspberry board. Our engineers are looking into possible solutions.

For now, to update the firmware on your MK3, please use the official software provided by Prusa Research. The updater is included in the driver's package. Follow the instructions provided in the firmware flashing guide.


How did we do?