User Tools

Site Tools


3dprinter:klipper

This is an old revision of the document!


Klipper

Klipper is an alternative firmware for 3D printers' micro-controllers. The default firmware for most 3D printers is Marlin. Klipper consists of 2 parts, the micro-controller firmware to control basic motor and print head and software running on an attached general purpose computer like a Raspberry Pi or a PC.

Details on https://www.klipper3d.org

Octoprint was designed for Malin firmwares, but can work with Klipper through a plugin:
https://all3dp.com/2/install-octoprint-klipper-single-board-computer-sbc/

Installing Klipper and OctoPrint: The tool of our choice is Klipper Installation And Update Helper (KIAUH), which streamlines the installation process by reducing user inputs to the bare minimum and adding a graphical interface. It also helps manage updates and removal of every component.

Arksine/Moonraker is a Python 3 based web server that exposes APIs which client applications can use to interact with Klipper.

There are several Web interfaces that can interact with Klipper through Moonraker's APIs:
Octoprint
Mainsail by Mainsail-Crew





Fluidd by Cadriel


Touchscreen GUI:
KlipperScreen by jordanruthe

Obico for Klipper is a Moonraker plugin that enables the Klipper-based 3D printers to connect to Obico. This provides remote access as well as AI Failure detection.

PrettyGCode for Klipper

OctoEverywhere Octoprint Plugin for remote access/monitoring and AI Failure detection

General setup info for Klipper:
https://www.youtube.com/watch?v=WlTzVUTOgXQ&list=PLC4bOo0vesmLKXC2iWGTRBbbjXiHDj3Xz

3D Printer Accelerometer, very useful for improved printing speeds with Klipper:
adxl345 accelerometer
https://www.klipper3d.org/Measuring_Resonances.html
https://www.reddit.com/r/klippers/comments/z38v02/adxl345_via_usb/
https://dfh.fm/products/kusba-adxl345-accelerometer-by-xbst_

Extruder/bed mount design:
https://www.thingiverse.com/thing:5276353/comments

docker setup for klipper/moonraker/mainsail (outdated)
https://www.reddit.com/r/klippers/comments/lv3pxx/docker_setup_for_klippermoonrakermainsail/

Docker setup for klipper/moonraker and various frontends:
https://github.com/mkuf/prind
https://hub.docker.com/r/mkuf/klipper

Cura plugin for improved printing of circular areas with Klipper:
arcwelder cura plugin

Klipper config file for the Creality Ender 3 S1:
https://raw.githubusercontent.com/Klipper3d/klipper/master/config/printer-creality-ender3-s1-2021.cfg

wget https://raw.githubusercontent.com/mkuf/prind/main/docker-compose.extra.make.yaml -O docker-klipper-make.yaml
mkdir config
touch config/build.config
alias make="docker compose -f docker-klipper-make.yaml run --rm make"
make menuconfig
make
#make flash FLASH_DEVICE=/dev/serial/by-id/<my printer>


# This file contains pin mappings for the stock 2021 Creality Ender 3
# S1 & S1 Pro. To use this config, check the STM32 Chip on the
# Mainboard, during "make menuconfig" select accordingly either the
# STM32F103 with "28KiB bootloader" or the STM32F401 with
# "64KiB bootloader" and serial (on USART1 PA10/PA9) for both.

# For a direct serial connection, in "make menuconfig" select
# "Enable extra low-level configuration options" and  Serial
# (on USART2 PA3/PA2), which is on the 10 pin IDC cable used
# for the LCD module as follows: 3: Tx, 4: Rx, 9: GND, 10: VCC

# Flash this firmware by copying "out/klipper.bin" to a SD card and
# turning on the printer with the card inserted. The filename
# must be changed to "firmware.bin"

# With STM32F401, you might need to put "firmware.bin" in a
# folder on the SD card called "STM32F4_UPDATE" in order to flash.

# See docs/Config_Reference.md for a description of parameters.



Configuring Klipper/Moonraker

All Runtime Configs are stored within config of this Repo.

    Update config/printer.cfg with your Klipper config, set the serial device and make sure to not remove the existing Macros as they are required by fluidd/mainsail. See Klipper3d Docs for Reference
    Make sure to update cors_domains and trusted_clients within moonraker.cfg to secure your moonraker api from unwanted access. See Moonraker Docs for Reference


https://github.com/mkuf/prind#advanced-topics
https://github.com/mkuf/prind#input-shaper-calibration
mount /dev/sdc1 /mnt/usb
cp out/klipper.bin /mnt/usb
mkdir /mnt/usb/STM32F4_UPDATE
cp out/klipper.bin /mnt/usb/STM32F4_UPDATE/firmware.bin
umount /mnt/usb

Links

3dprinter/klipper.1697974938.txt.gz · Last modified: 2023/10/22 12:42 by Wulf Rajek