Ender 5 Plus + Klipper
Purpose
I would like to unleash the power of my Ender 5 Plus(here after referenced as E5+) by removing the "bottleneck" that the weak mainboard processing power introduce. I also need to keep the cost as low as possible. Klipper supposedly should do just this, by moving all data processing from the E5+ mainboard on to the Raspberry Pi 4 i got connected already anyway.
First try/step will be a combo of Klipper and Octoprint. This makes it easy to flash the Klipper firmware onth the E5+ and I already got OctoPrint running at a Raspberry Pi 4 connected to my E5+ so...
Later i might try the Klipper + Moonraker + MainSail combo.
Klipper + OctoPrint
An installation guide is avilable on the Klipper website. I will follow that now.
make menuconfig will ask for microcontroller - the E5+ uses atmega2560. See printer-creality-ender5plus-2019.cfg
You(and I) MUST read, understand and perform the Config checks - Manual Leveling - Probe Calibration & Bed Leveling BEFORE trying to print!!
The overview page is a valuable resource of information so i got a lot of reading to do ;-)
Depending on the result of the first Benchy test print I believe that the next tuning should be done in this order:
- Resonance compensation: A tool to reduce ringing in prints. This was a challenge to my 50 year old eyes but it actuallt helped a lot so do not skip this - find a magnifying glass ;-)
- Calibrate Klipper extruder rotation_distance - I skipped this because the test prints didn't show _any_ signs of over- or under-extrution.
- Extruder nozzle temperature - I skipped this because i already know what temperature the PLA i use need to be printed at on my E5+
- Pressure advance: Calibrate extruder pressure.
Problems I ran into
- The touch display on the printer does not work with Klipper and some search results suggests that the display on E5+ is not supported by Klipper :-/... i will keep look for solutions, but it is not essential to me because I use the OctoPrint webinterface. The stock 4.3 inch TFT LCD display is marked "DMT48270C043_06WT". Maybe that can help in the searce for solutions.
THIS FIXED THE DISPLAY --> https://www.reddit.com/r/ender5plus/comments/kx9hsy/klipper_screen_on_ender_5_plus/
- OctoPrint reported errors in the Gcode that turned out beeing related to hidden ascii codes in the start_gcode. Solution was found somewhere on the Intarwebs i cannot recall. I copied the Start and End G-code from Cura int Notepad++ and manually replaced all spaces with new ones. I could not see any difference on the spaces before and after BUT it worked so who cares ;-)
- I lost http and ssh connection to the Raspberry Pi 3/4 into the Pressure Advance cube test print. The test print finished anyway so it was only network connections that died. I powercycled the Pi and everything seemed okay again!? It happened again and i suspect it is the WiFi connection that somehow locks up so I disabled the WiFi interface and connected the Raspberry Pi with an ethernet cable.
Reference pages
- My cry for help in the Danish Facebook group Den seriøse Ender-3/Ender-5 gruppe
- Klipper is a 3d-Printer firmware. It combines the power of a general purpose computer with one or more micro-controllers.
- OctoPrint provides a snappy web interface for controlling consumer 3D printers.
- Moonraker is a Python 3 based web server that exposes APIs with which client applications may use to interact with Klipper.
- Mainsail is a lightweight & responsive web interface for the Klipper 3D printer firmware.
- Printer.cfg reference.
Notes for the future
- During Probe calibration it may be necessary to set the printer’s Z position_min to a negative number (eg, position_min = -2).
- Adjusting bed leveling screws is nessesary to do now and then ;-)
- Calibrating PID settings is a wise thing to do everytime the environment around the printer changes 'significantly'.
- Calibrate Klipper extruder rotation_distance.
- Resonance compensation
- Pressure advance: Calibrate extruder pressure. !Disable any PA setting already present in your config file BEFORE you run the PA test again!
- ALWAYS slice as described in the tips for configuring a “slicer” application for use with Klipper.