Pi Upgrade Your Cheap 3D Printer
by Eymeric in Circuits > Raspberry Pi
961 Views, 3 Favorites, 0 Comments
Pi Upgrade Your Cheap 3D Printer
In this guide, we'll transform the affordable Anycubic Kobra Neo 2, one of the most budget-friendly 3D printers on the market, into a high-end 3D printing powerhouse using Klipper. Klipper is an advanced open-source control software designed for 3D printers.
What sets this tutorial apart is the exclusive kit of 3D parts included and the compilation of various resources sourced from the internet.
At the time of purchase, the Anycubic Kobra Neo 2 was priced at just €150. In my opinion, it's hard to find a better value for the price.
Additionally, you'll learn how to capture time-lapse videos of your prints!
Supplies
- M4 screw
- Anycubic Kobra Neo 2
- Raspberry pi
- Pi camera V2.1
Every software ressources can be found on Kobra 2 NeoInsights
3D Printer Assembly
For this step, I'll provide a brief summary and link to my YouTube video for a more detailed walkthrough. Here are some key points to focus on during the upgrade process:
- Belt Tension: Ensure the belt tension is similar to that of a bass string. You should feel a slight resistance when pushing on it.
- Bed and Head Eccentricity: Check the eccentricity of both the bed and the print head. You want them to remain steady when you attempt to tilt or move them. Avoid over-tightening, as this can lead to premature wear.
- Filament Tension: Examine the filament tension. You can adjust this by inserting a hex key into the extruder to loosen or tighten the tension. Avoid excessive tension, as it can cause the filament to grind.
For a more comprehensive guide, please check out my YouTube video linked below.
Print the 3D Part
Now, you can begin printing the part kits required for the upgrade. If you're using the same printer as me, I've directly shared my G-code for your convenience. At the moment, the cover may not clip securely into place, but it's sufficient to keep it steady for now.
Please proceed with the printing process using the provided G-code, and we'll continue with the installation steps once all parts are ready.
You can find STL file (with maybe update) on maker world : Maker world link
Flash the New Firmware
Now it's time to flash the custom firmware and remove the screen, as it will no longer be necessary.
To flash the firmware, simply copy the linked file to the root directory of the micro SD card and reboot the printer. Make sure to change the file extension to .bin before copying.
Once this step is completed, we'll move on to the next phase of the upgrade.
Downloads
Install Your Raspberry PI on Your 3D Printer
Place your Raspberry Pi inside the box, ensuring you've connected the camera strip beforehand. Clip the box securely onto the side of your 3D printer and then attach the camera to the side using screws.
This setup will enable you to utilize the camera for monitoring and capturing time-lapse videos of your prints.
Setup Klipper
Next, you'll need to install Mainsail OS onto the Raspberry Pi. To do this, follow these steps:
- Download and install the "Raspberry Pi Imager" software.
- Use the Raspberry Pi Imager to flash the appropriate OS to your micro SD card.
- Select Mainsail OS from the menu: Other specific-purpose OS -> 3D printing -> Mainsail OS.
Insert the flashed micro SD card into your Raspberry Pi and power it up. This process may take some time.
Once the Raspberry Pi is connected to the internet via an Ethernet cable, you can access the print server at mainsail.local.
Before connecting your printer, make sure to load the printer.cfg file specifically designed for the Kobra Neo 2. Remember to change the file extension to .cfg before loading it.
With these steps completed, your Raspberry Pi should be ready to control your upgraded 3D printer effectively.
Downloads
Klipper Initial Setup
Before proceeding, ensure that no components heat up and no motors activate when you power up the 3D printer and connect it to the Raspberry Pi (without the updated SD card).
Next, you'll need to calibrate Klipper:
- Home your axis using the dashboard.
- Type "PROBE_CALIBRATE" into the Console to initiate Z-height calibration.
For this calibration, you'll require a small piece of paper. Fold it in half and gradually lower the print head until the paper is gently pinched between the nozzle and the bed. The paper should be able to move under the probe with some resistance but without bending. Save this configuration and generate a height map from the heightmap menu.
With these calibration steps completed, you'll be ready to start printing with Klipper. If you don't wish to add a camera to your setup, you can conclude the tutorial at this point.
Camera Installation
First, you'll need to dump the Crownest log to identify the name of your camera device. Once you've determined the camera name, you'll need to define it in the crownest.conf file with the following settings:
[cam 1]
mode: camera-streamer # ustreamer - Provides mjpg and snapshots. (All devices)
# camera-streamer - Provides webrtc, mjpg, and snapshots. (rpi + Raspi OS based only)
enable_rtsp: false # If camera-streamer is used, this enables also usage of an rtsp server
rtsp_port: 8554 # Set different ports for each device!
port: 8080 # HTTP/MJPG Stream/Snapshot Port
device: /dev/videoX # Replace X with the correct device number
resolution: 1280x720 # widthxheight format
max_fps: 30 # If Hardware Supports this, it will be forced; otherwise, it will be ignored/coerced.
custom_flags: # You can run the Stream Services with custom flags.
Replace /dev/videoX with the correct device name you identified from the Crownest log.
After updating the crownest.conf file, you can define your first webcam settings in the Mainsail OS settings menu (accessible via the gear symbol in the top right corner).
You should now be able to see your camera feed at this stage of the setup.
Timelapse Setttings
Now you will need to activate the timelapse sub-component in moonraker.conf (line 62-67) and add the include line in printer.cfg (line 19).
After restarting, you'll be able to edit the timelapse settings in the new "Timelapse" category within the settings menu.
For optimal timelapse results, I personally recommend setting the retract distance to 1.5mm and the unretract distance to 1.4mm.
Additionally, in your slicer settings (e.g., PrusaSlicer), make sure to add timelapse instructions at each layer change to capture the printing process effectively. You can usually find this option in the slicer's configuration page.