3D Printing/Modeling, Woodworking, Coding and generally making stuff

Running klipper on an Ender 6

Ender 6 with klipper

VERY ROUGH notes on running Klipper on an Ender 6. Comments/edits welcome.

Contents

Config Files

You can view my current Ender 6 config at my Github repo: klipper_ender6

Here is a sample one that I snapshotted early on.

Bed leveling

Calculate Bed Mesh

Run the following commands:

  1. BED_MESH_CALIBRATE
  2. BED_MESH_PROFILE SAVE=name
  3. SAVE_CONFIG

Only run #2 and #3 above if you want the mesh to persist after reboot.

Bed Visualizer

To see bed mesh in Octoprint's Bed Visualizer, go to the Bed Visualizer page and click on the cog in the lower right. In the gcode box put:

M140 S65                    ; set bed temp to 65C
G28                         ; home the axis while the bed is heating
M190 S65                    ; (optional) wait for the bed to get up to temperature
BED_MESH_CALIBRATE          ; start calibration
@BEDLEVELVISUALIZER         ; tell Octoprint plugin to listen to result
BED_MESH_OUTPUT PGP=0       ; report the mesh to Octoprint
BED_MESH_PROFILE SAVE=mesh  ; save the profile to named profile `mesh`

I also added a shortcut button on the bed visualizer page to save the config.

  1. While still in the Bed Visualizer settings page click on Commands tab.
  2. Create a new button, name it "Save Config"
  3. Set the gcode to SAVE_CONFIG
  4. Close the input dialog

Now save the settings page.

Updating the Ender 6 built in LCD screen to support Klipper

Install the klipper source

git clone https://github.com/Klipper3d/klipper
cd klipper
git remote add desuuuu-klipper https://github.com/Desuuuu/klipper.git
git fetch desuuuu-klipper
git checkout desuuuu-klipper/master
make menuconfig

For the stock Ender 6 main board you need the following settings:

Stock Ender 6 klipper settings

For the BigTreeTech SKR 2 board (such as the one in my Ender 6) you need:

Installing Klipper on an Ender 6

The steps below are for installing klipper on an Ender 6 that has been upgraded with the following list of mods:

  1. BigTreeTech SKR 2 main board
  2. Biqu H2 Extruder & hot end
  3. Bimetallic heat break for Biqu H2
  4. Custom enclosure for printing ABS

Installation steps

On your Raspberry Pi (or other machine if you prefer) we need to install the klipper source (if you have not already) and then add the desuuuu repository that specifically supports the T5UID display of the Ender 6.

To initially install klipper on Raspberry Pi:

git clone https://github.com/Klipper3d/klipper
./klipper/scripts/install-octopi.sh

To fetch the forked version of klipper that works with T5UID display on an Ender 6:

git remote add desuuuu-klipper https://github.com/Desuuuu/klipper.git
git fetch desuuuu-klipper
git checkout desuuuu-klipper/master

Build the firmware for the motherboard

To compile the micro-controller code, start by running these commands on the Raspberry Pi:

cd ~/klipper/
make menuconfig

For the Stock Ender 6 main board set these to:

Stock Ender 6 klipper settings

For the BigTreeTech SKR 2 in an Ender 6 set these as follows:

[*] Enable extra low-level configuration options
    Micro-controller Architecture (STMicroelectronics STM32)  --->
    Processor model (STM32F407)  --->
    Bootloader offset (32KiB bootloader)  --->
    Clock Reference (8 MHz crystal)  --->
    Communication interface (USB (on PA11/PA12))  --->
[*] Enable DGUS T5UID1 screen
        Screen Serial Port (USART1)  --->
    USB ids  --->
[ ] Specify a custom step pulse duration
()  GPIO pins to set at micro-controller startup

Now build the firmware file:

make

Now copy the out/klipper.bin file to the SD card on your computer. Best way to do this is from your Mac:

scp pi@octopi.local:/home/pi/klipper/out/klipper.bin /Volumes/SD\ FAT\ 4GB/firmware.bin

Then eject the SD Card with

diskutil eject

Now insert the SD card into the printer's SD card slot and turn it on. The firmware will install and klipper will be ready and waiting for the Raspberry Pi to connect.

Update the LCD display firmware

The firmware on the Ender 6 LCD display also needs updating to support klipper.

Follow the instructions found here: https://github.com/Desuuuu/DGUS-reloaded-Klipper

Update for the new DGUSdisplay branch from _desuuuu

There is an updated version of the DGUS display code from desuuuu that is slightly different that the previous process.

GitHub user desuuuu has a new repo for a much more customizable LCD firmware here https://github.com/Desuuuu/DGUSPrinterMenu.

To use it we need to use a different branch of their klipper repo, so the steps above are now slightly different.

If you have not already installed klipper from the earlier steps, these are still the same, however you can skip them if you already done this part.

git clone https://github.com/Klipper3d/klipper
cd klipper
git remote add desuuuu-klipper https://github.com/Desuuuu/klipper.git
git fetch desuuuu-klipper

Now in the klipper directory, the new part:

git checkout desuuuu-klipper/dgus-display
make menuconfig

Make sure everything looks like this:

Klipper screen

Now run

make

Copy the out/klipper.bin file to the SD card as before (see above) and flash it to your printer.

Next follow the instructions for flashing the display firmware here: https://github.com/Desuuuu/DGUSPrinterMenu/wiki/Flashing-the-firmware

Service control

To start, stop or restart klipper service on the Raspberry Pi command line:

sudo service klipper start|stop|restart

Comments/edits here on Reddit

December 22, 2022 (2y ago)

3dprinting

#Klipper#Ender 6