OctoPrint is a powerful application that allows you to remotely upload GCodes, print 3D objects, and monitor and control all aspects of your 3D printer. However, to view or monitor 3D printers using OctoPrint, you need to open a particular IP in the web browser manually every time you want to check the progress or any other detail or whether the printer is running or finished printing.
To make 3D printer monitoring further easier and more convenient with OctoPrint, you can build a tiny OctoPrint monitoring device that displays the progress in real-time on a mini OLED display.
If you've set up OctoPrint to control and monitor your 3D printer and prints, you should also consider building and installing a mini DIY OctoPrint 3D printer monitoring device that connects with OctoPrint API wirelessly and fetch information such as:
All this information is displayed on a small OLED screen. It turns off the display when the printer is off, not operational, or disconnects and turns on when the printer is connected and operational.
It's a WiFi-based monitoring device built using a D1 Mini and a 0.96-inch OLED display in a 3D printed case. You can place this device anywhere in your office or home, such as on your desk, to keep an eye on the progress and monitor the prints without actually browsing the OctoPrint web interface.
Once you have all the components required, follow the steps given below to build a wireless OctoPrint Monitor device.
Visit the printer-monitor release page and download the firmware. You can choose between two firmware based on the display you are using.
For this project, we are using the firmware for the SSD1306 OLED display (0.96"). If you want a slightly bigger display, get the 1.3" SH1106 OLED display. You also need to print a different 3D case for the bigger display.
Alternatively, you may also download the project, extract it and edit the code in Arduino IDE. You can modify or edit the code as per your needs.
Once you've flashed the firmware, the device will reboot and start in Access Point (AP) mode. We will connect to the AP and configure the OctoPrint Monitor. The steps are as follows:
The OctoPrint monitor will now start displaying the weather information when the printer is not running.
After the firmware is flashed and the OctoPrint Monitor is configured, you may connect the 0.96" or 1.3" 128x64 OLED display to the D1 Mini board using some jumper wires as shown below.
Connect the displays SDA to D2, SCL to D5, VCC to 5V, and GND to G pin on the D1 Mini board. Optionally, you may also use a NodeMCU board if you already have one. But you will need to design a specific 3D case for it.
Connect the USB cable to turn on the OctoPrint monitoring device and check if it's displaying the information on the display. Once confirmed, you can refer to the Thingiverse project and assemble this in a 3D-printed case.
You can use hot glue or tape to keep the display in its place. Put the cover and connect the micro USB cable to the D1 Mini micro USB port.
Connect the USB to a 5V power source such as a power bank or smartphone adapter. This will switch on the device.
With the OctoPrint 3D printer monitoring device, you can keep an eye on the printer status, such as remaining time, progress, bed and nozzle temperature, etc., without browsing the IP address of the OctoPrint Server or need to refresh the page.
You can build a few of these and place them on your work desk or maybe living room to keep an eye on the print progress. You can also build a smart clock using the MAX7219 matrix and use it to display the printer status via OctoPrint API.