More printers are being released with Wi-Fi as a feature, but many are without Wi-Fi. So, wouldn’t it be nice if you could add Wi-Fi to your printer? Problem: I have three MonoPrice Duplicator i3s in my garage. When I print to them I place my .gcode file on a mini SD stick and then run it to my garage to print the file. While this may not be a problem to most, for me with three kids I can’t stay in the garage all day or night ensuring my print doesn’t fail. Luckily there is a solution in a little operating system called Octopi which can be loaded to a small hobby computer called Raspberry Pi. Raspberry Pi has Wi-Fi and USB, so it can easily be plugged into your printers USB port and connected to your home computer via your Wi-Fi and a handy local website. In this tutorial I will be giving complete step by step instructions on setting up Octopi with OctoPrint on multiply Raspberry Pi Zero.
What do We Need?
- Raspberry Pi 1,2,3, or 0
- Raspberry Pi Case
- Mini SD Card
- Mini SD Card USB Interface
- 5 Volt Power Cable
- USB to Printer Cable
- Raspberry Pi Camera
- Raspberry Pi Camera Cable
- Raspberry Pi Camera Mount
- M3 screws w/hex heads, washers, and nuts (to assemble and mount camera mount)
Let’s put it together
I opted to use Raspberry Pi Zero’s because of the substantial price savings, but with a savings in price comes other issues. The Pi Zero uses Micro USB’s, so you will need to buy USB converters or cables which have a male micro USB end. Also while the Pi Zero uses less power it is also slower than other versions of the Pi. Now knowing all that, it will cost you about $10.00 per Pi Zero compared to $30 for a Pi Two or Three. As long as you don’t use the HDMI video out, the speed shouldn’t be an issue. I have taken many time lapse videos with mine since building it. So what are the steps?
We’ve got all of our parts on hand and are now ready to assemble and program the Pi Zero. My Pi Zeros were bought from Micro Center (on sale for $5 each) and the cables, adapters and cameras came from AliExpress. I paid $1 each for the cables and adapters and $10 each for my cameras. Download the latest Octopi Print OS from OctoPrint.org. You will also need to download an .ISO image file extractor like IsoBuster, CDmage, Daemon Tools, or Winrar . Once you’ve installed one of these use an USB CD card adapter and plug in your blank SD card. Now use the .ISO extractor program you choose too extract the contents of the .ISO OctoPrint file to the SD card.
First we must configure the Octopi-network.txt file. While the SD card is attached to your computer open the Octopi-network.txt file with Wordpad or any other text editor. Uncomment your flavor of security for your home network by removing the pound signs (#) directly at the beginning of the lines. Now enter your SSID for your home network and password. That’s all you need to do, now save the file and exit your editor.
Eject the SD card from your computer and insert it into the MicroSD card slot on the Raspberry Pi Zero as shown in the picture below.
Now plug the power into the Micro USB 5V Power connector on the Pi Zero. The power LED will light on the Pi Zero indicating it is reading the operating system from the SD card and loading.
This will be the most important step, we will now configure the Host name so we can run multiple Pi Zero’s. You will need to download and install PuTTY. PuTTY is an SSH telnet client, that we will use to access Octopi on the Pi Zero through our Wi-Fi connection. It is possible to attach a keyboard and screen to the Pi Zero but not necessary as the PuTTY will allow us to access the Pi Zero without the need for extra cables and hardware. Next download and install Bonjour Print Services for Windows. This will allow us to access the Pi locally at Octopi.local. After installing PuTTY, click on the desktop icon and the PuTTY Configuration window will open.
In the Host Name (or IP address) type Octopi.local and click open. There is no need to change any of the other default settings.
To login type “pi” and the password “raspberry”, you change the password later.
Type “sudo raspi-config”.
Select “2 Hostname” and change it from “Octopi.local” to “Octopi1.local” or any other name you want to use. It is very important that each Raspberry Pi Zero have its own unique Host name or they will crash when trying to access the network, because you cannot have two or more devices with the same Host name on the same network. Next select “5 Interfacing Options” and enable the Raspberry Pi Camera. After you return to the main screen select “Finish” and answer the question “Would you like to reboot now” with “<YES>”. The Pi Zero will then perform a reboot, which will shut down your PuTTY connection. This step will have to be repeated with each of your PI ZERO’s, so each has their own unique Host Name.
Let’s configure the Octopi1.local interface for your printer. Type Octopi1.local into your browser and you should see the following screen:
Use this first screen to assign a logon name and password. This is not necessary if you are the only one using your network or you don’t have access to your local net from other networks. In that case you can disable access control. Next go through the automatic setup and describe your printer to OctoPrint. You will need to know your build plate dimensions, Bandwidth, number of extruders, and the USB port name. At this point we are ready to attach the board and camera to the printer.
This is the final setup step and in this step you will need a box to mount the PI ZERO and camera box and a way to attach the camera to the printer.
Finally, click on the CONNECT button to have full remote control of your printer and be able to monitor it from anywhere in your home. You still have to go to the printers to ensure your printer is level, feeding filament,and operating properly at first. The rest of the print can be monitored in the warmth of your home.
Octopi is a great operating system for remote automation of your Maker Space and easy to set up. With steps given in this article you should now have complete control of your Maker Space from a distance. OctoPrint is constantly being upgraded and even has the ability download and install plugins created by other users. For example you can download a plugin that monitors filament and pauses your print when the filament runs out. With the use of Raspberry Pi Zero cost should not be a problem when setting this hardware and software up. Finally, understand OctoPrint while it is free to install and use is a project of love and respect. If you feel the same as me please support Gina Häußge over at patreon.com, so she will continue her love of this hobby.