Klipper on Ender 3 šŸ˜±

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments
Captions
Is it possible to print fast on the Ender 3 without sacrificing quality? Absolutely! With Klipper and its amazing input shaping, speeds and accelerations that are unthinkable with other firmwares are now achievable. In todayā€™s episode I show you how to install and configure Klipper on the Ender 3 with input shaping and pressure advance. Letā€™s get started! It normally takes about 30 minutes to print this calibration cube with the Ender 3. With Klipper, this time is reduced to less than 7 minutes! A 3DBenchy requires around 2 hours to print with the Ender 3. Klipper can print it in only 28 minutes with no loss in quality! The easiest way to get started with Klipper is to use a Raspberry Pi image like MainsailOS or FluiddPI. Download FluiddPI from GitHub. Write the image to an SD card, using Raspberry Pi imager. Before clicking on WRITE, press CTRL+SHIFT+X to configure advanced options. Insert the SD Card into your Raspberry Pi and turn it on. Connect to the Raspberry Pi web interface using the hostname you set when you wrote the image. This gives you access to the Fluidd web interface for Klipper. Donā€™t worry about the ā€œUnable to open config fileā€ error message: we will fix this shortly. To compile the micro-controller code for the 3d printer mainboard, connect to the Raspberry Pi with ssh. Open the Klipper Firmware Configuration tool. Select STM32 for the Micro-controller architecture, STM32F103 for the processor model, a 28KiB bootloader, and the Serial communication interface. These are the valid settings for the CrealityV4.2.2 or 4.2.7 mainboards. Now exit, save the configuration and compile the firmware. This creates a Klipper.bin file in the Klipper/out directory. Copy this file to an SD Card using scp and give it a unique name. Insert the SD card into the printer and turn it on to flash the firmware. Now connect the Raspberry PI to the printer using a Micro USB B to USB cable. The next step is to create a printer configuration file. As a starting point, I am using the example that come with Klipper for the Creality 4.2.7 mainboard. I copy and paste this configuration into a printer.cfg file, save and restart the firmware. There are a couple of Fluidd warnings. Indeed, Fluidd requires certain settings to be defined in the configuration file. I copy and paste them from the Fluidd documentation, save & restart the firmwareā€¦ OK, all Fluidd warnings are gone. Now letā€™s configure a BLTouch by adding a bltouch section to the configuration file. I also define a safe_z_home section to home toward the center of the print area. To use the probe in place of the z endstop, I set the stepper_z endstop_pin to ā€œprobe:z_virtual_endstopā€ In order to keep using the LCD display of my Ender 3 Pro with Klipper, I add a display section. To make configuration changes in Klipper, I just need to update printer.cfg and restart the firmware. Letā€™s try to home the printerā€¦ So far so good... Now I configure Auto Bed Leveling by adding a bed_mesh section to the config file. I also add a G29 macro to emulate Marlinā€™s G29 Gcode which is not available in Klipper. To perform auto bed leveling, I issue a G29 command in the console. Fluidd provides a graphical tool to visualize the result of the bed mesh leveling. We will configure pressure advance and input shaping in a short moment. Before that, I want to mount the Raspberry Pi to the printer and power it directly from the Ender 3 power supply. This is optional but results in a cleaner and more organized setup. I printed this Raspberry Pi enclosure which mounts the Raspberry Pi to the Ender 3's extruded aluminum rails. In order to power the Raspberry Pi directly from the Ender 3 power supply, I use a XT60 Y-splitter cable and reduce the voltage to 5 volts with an LM2596 buck converter. Finally, I connect the Raspberry Pi to the printer with a micro USB B to USB cable. Optionally you can use a Raspberry Pi camera to remotely monitor the printer from the web interfaceā€¦ For the camera to work, it must be enabled in raspi-config OK, now letā€™s take a look at Klipperā€™s most awesome feature: Input shapingā€¦ Using an ADXL 345 accelerometer connected to the Raspberry Pi, we will measure the resonance frequencies of the printer. Knowing the resonance frequencies allows Klipper to control the print head in such a way that it cancels its own vibrations! We need to do some additional setup on the Pi first in order to perform these tests. Iā€™m just following the steps from the Klipper documentationā€¦ This completes the configuration. Letā€™s check if we can read some data from the accelerometerā€¦ Yes, it works! I start the resonance test on the X axis by mounting the accelerometer on the print head. The test shakes the printhead along the X axis and measure printer vibrations amplitude as function of frequency. To perform the resonance test on the Y axis, I mount the accelerometer on the bed. To post-process the accelerometer data and compute the optimal input shaping parameters, I run the calibrate_shaper Python script as per the documentation. This script generates two plots, one for X and one for Y and makes recommendations about which input shaper settings to use. All I have to do to enable input shaping is to add an input_shaper section to the printer configuration file and cut and paste the recommended settings. Letā€™s compare the print quality with and without input shaping by printing a test model. Wow! The result is impressive! Input shaping almost completely eliminates ringing even when using accelerations as high as 7000 mm/sĀ²! The next step is to tune pressure advance. Pressure advance does two useful things: it reduces ooze during non extruding-moves and it reduces blobbing during cornering. Tuning pressure advance is done by printing a test model. The TUNING_TOWER command instructs Klipper to increase the pressure_advance value by 0.005 per mm of Z height. Inspect the print and then use a caliper to find the height that has the best quality corners. Compute the pressure_advance value as the measured height x 0.005 Add the pressure advance value in the extruder section. In my case, the pressure advance was too high. I reduced the value to 0.04 and got much better print qualityā€¦ What do you think about Klipper on the Ender 3?! Please let me know in the comments below. Thanks for watching and see you soon on YouMakeTech!
Info
Channel: YouMakeTech
Views: 8,626
Rating: undefined out of 5
Keywords: klipper ender 3, klipper, klipper vs marlin, klipper input shaping, klipper pressure advance, klipper bltouch, configure klipper, why klipper, print fast ender 3, fast printing ender 3, 3dbenchy, klipper input shaper, input shaper
Id: MaUU8stsZPo
Channel Id: undefined
Length: 9min 7sec (547 seconds)
Published: Sat Oct 23 2021
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.