Many people wonder how they can connect their Raspberry Pi to the Ender 3 or similar 3D printer, to open up many new features. When installed properly, you can control your 3D printer from anywhere with an internet connection and even monitor your prints in real time.
I decided to write an article taking you through the steps to connect your Raspberry Pi to an Ender 3, so keep on reading to find out how.
How to Connect Raspberry Pi to Ender 3 (Pro/V2/S1)
Here’s how to connect a Raspberry Pi to your Ender 3:
- Purchase the Raspberry Pi
- Download the OctoPi Image file and Balena Etcher
- Flash the OctoPi Image File onto your SD Card
- Edit the Network Configuration file on the SD Card
- Configure the Security Set up of the Raspberry Pi
- Configure other Raspberry Pi settings
- Complete the Setup process using the Set Up Wizard
- Connect the Raspberry Pi to the Ender 3
Purchase the Raspberry Pi
The first step is to purchase the Raspberry Pi for your Ender 3. For your Ender 3, you need to purchase either a Raspberry Pi 3B, 3B plus, or 4B for it to function optimally with your Ender 3. You can purchase the Raspberry Pi 4 Model B from Amazon.
Also, you may need to get a housing for the Raspberry Pi, or print one. This is to ensure that the internals of the Raspberry Pi is not exposed.
Check out the Ender 3 Raspberry Pi 4 Case on Thingiverse.
Download the OctoPi Image File and Balena Etcher
The next step is to download the OctoPi image file for your Raspberry Pi so that it can communicate with your Ender 3.
You can download the OctoPi image file from OctoPrint’s official website.
Also, you need to download the Balena Etcher software to flash the OctoPi image file onto the Raspberry Pi. This process makes the SD card a bootable storage device.
You can download the Balena Etcher software from Balena Etcher’s official website.
Flash the OctoPi Image File onto your SD Card
After downloading the OctoPi image software, insert the SD card into the computer where the file was downloaded.
Launch the Balena Etcher software and flash the OctoPi image software by selecting “Flash from file”. Select the OctoPi image file and select the SD card storage device as the target storage device then flash.
If you are using a Mac, it would require admin access by requesting a password to complete the flashing process.
Edit the Network Configuration File on the SD Card
The next step is to edit the network configuration file. On the SD card, locate the “OctoPi-wpa-supplicant.txt” and open it with your text editor. You can either make use of the Notepad text editor on Windows or Text edit on Mac to open the file.
After opening the file, locate the “WPA/WPA2 secured” section if your Wi-Fi network has a password or the “open/unsecured” section if it does not. Although your Wi-Fi network should have a Wi-Fi password.
Now delete the “#” symbol from the beginning of the four lines below the “WPA/WPA2” section to make that part of the text active. Then assign your Wi-Fi name to the “ssid” variable and your Wi-Fi password to the “psk” variable. Save the changes and eject the card.
Configure the Security Set up of the Raspberry Pi
The next step is to configure the security set up on the pi’s operating system by connecting with an ssh client. This is to ensure you can connect to Octoprint with a web browser.
You can either make use of the Command prompt on Windows or the Terminal on Mac. On your command prompt or terminal, type in the text, “ssh [email protected]” and click enter. Then respond to the prompt that pops up by saying “Yes”.
Then another prompt will pop up asking for the Raspberry Pi username and password. Here you can type in “raspberry” and “pi” as the password and username respectively.
At this point, you should be logged into the pi operating system. Still, on the command prompt or Terminal, you need to create a super user profile on the pi operating system. Type in the text “sudo raspi-config” and click enter. This returns a prompt asking for a password for your pi.
After inputting the default password, it should lead you to a menu bar, showing a list of configuration settings.
Select the system options and then select the password. Input your preferred password and save the settings.
Configure Other Raspberry Pi Settings
You can also play around with the other settings in the menu bar like the hostname or your time zone. While this may not be necessary, it helps to customize the settings to suit your preference.
To change the hostname, select the system options and then select hostname. Set the hostname to any suitable name or preferably your printer’s name, e.g. Ender 3. Once you are done, click on finish and then confirm the Raspberry Pi to reboot. It should take a few seconds for it to reboot.
Complete the Setup Process Using the Set Up Wizard
Since the hostname has been changed, enter the URL “https://hostname.local” (for example, “https://Ender3.local”), instead of the default “https://Octoprint.local” on your device connected to the same Wi-Fi network as the Raspberry Pi.
You should be greeted by a set-up wizard. Now set up your Octoprint username and password to enable you to log in to your account from your web browser.
It should be noted that the password and username used here are different from the username and password created for the super user previously.
On the setup wizard, you can also choose to enable or disable other configuration settings as you deem fit.
You also need to edit the printer profile settings by setting the build volume dimensions to 220 x 220 x 250mm for an Ender 3. Another thing to look out for is the hotend extruder setting. Here, the default nozzle diameter is set to 0.4mm, you can tweak this setting if your nozzle diameter differs.
Click on finish, to save your settings. At this point, the Octoprint user interface should boot up.
Connect the Raspberry Pi to the Ender 3
This is the final step in this process. Plug in the USB cable to the Raspberry Pi and the micro USB into the Ender 3’s port. On the Octoprint user interface, you should observe that a connection has been established between the printer and the Raspberry Pi.
You might also want to enable the auto-connect option to enable the printer to connect automatically once the Raspberry Pi boots up.
At this point, you can run a test print to observe how the Octoprint user interface works.
Here is a video from BV3D that shows the process visually.