Skip to content

Commit 4baf0ea

Browse files
authored
Merge pull request #188 from Frix-x/develop
Klippain v4.0.0
2 parents 52632ec + f4ce997 commit 4baf0ea

File tree

185 files changed

+2818
-1388
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

185 files changed

+2818
-1388
lines changed

README.md

Lines changed: 18 additions & 47 deletions
Original file line numberDiff line numberDiff line change
@@ -1,71 +1,42 @@
11
# Klippain
22

3-
> Klippain - the pain-free recipe for (french)bread and butter Klipper configuration!
3+
> Klippain - The pain-free recipe for (french)bread and butter Klipper configuration!
44
5-
![Klippain](./docs/klippain.png)
5+
Klippain is a generic, modular, and highly customizable Klipper configuration for CoreXY 3D printers. Designed for use on various machines, it has been reported working correctly on Voron V2.4, Voron Trident, Voron V0, TriZero, VZbot, Ender5, etc... I even use it myself on an heavily modified Prusa i3 MK3s.
66

7-
Klippain is a generic and modular Klipper configuration for CoreXY 3D printers. I use it on my Voron V2.4 (V2.1237), my Voron Trident, my custom TriZero, and my heavily modified Prusa i3 MK3s. Other CoreXY printer owners (Voron, VZbot, Ender5, ...) have also reported no issues using it.
7+
![Klippain](./docs/klippain.png)
88

9-
The files are frequently updated with new features that I create, but also with merged PRs from users. **Always** look, think, understand, and adjust to your own. But that should work in most cases. You can reach me in the Voron Discord: I'm **Frix_x#0161**.
9+
The configuration is regularly updated with new features and merged PRs from users. You can reach me on the Voron Discord as **Frix_x#0161**.
1010

11-
Yes, "pain" \pɛ̃\ is the french word for bread: there is no pain in pain, only joy. Thanks to the french channel "honhonhonbaguette-FR" on the Voron Discord for this joke and name suggestion!
11+
Fun fact: "pain" \pɛ̃\ is the French word for bread, so there's no pain in this pain—only joy! Thanks to the French channel "honhonhonbaguette-FR" on the Voron Discord for the joke and name suggestion!
1212

1313

1414
## Features
1515

16-
Klippain is designed to be generic: you can use it on a wide variety of machines by simply selecting and enabling the hardware and software options that you need.
17-
18-
The **adaptive bed mesh** functionality I wrote some time ago, the **custom calibration macros** for pressure advance & flow, the **automated input shaper workflows**, and the **vibrations measurement** macros and scripts are among the custom features available out of the box.
16+
Klippain is designed for versatility. By selecting and enabling the desired hardware and software options, it can be used on a wide range of machines.
1917

20-
Here is a [list with the details and usage instruction for all the features](./docs/features.md). There are also some installation instructions in their documentation if you want to use them standalone in your own personal configuration.
18+
Custom features available out of the box include **adaptive bed mesh**, **custom printer calibration macros**, **automated input shaper workflows**, and **vibration measurement** macros and scripts, ... Refer to the [features documentation](./docs/features.md) for a detailed list and usage instructions.
2119

2220

2321
## Installation
2422

25-
Installing Klippain should not be too complicated if you are already familiar with the Klipper ecosystem. Make sure you already have Klipper, Moonraker, and a WebUI is installed on your printer. You can use [KIAUH](https://github.com/th33xitus/kiauh) if you don't.
26-
27-
Then, to run the installation script, connect to your printer using SSH and type the following command:
28-
```
29-
wget -O - https://raw.githubusercontent.com/Frix-x/klippain/main/install.sh | bash
30-
```
31-
32-
This script will backup your old configuration, download this GitHub repository into your RaspberryPi home directory and setup the entire environment in `~/printer_data/config`. You'll also be asked if you want to select and install some MCU board_pins templates. This is recommended as it will allow a very fast filling of your `mcu.cfg` user file, but you can always do it manually afterwards if you prefer.
33-
34-
35-
## Configuration
36-
37-
To configure and customize everything for your printer, there are some additional steps required. Please follow them carefully!
23+
To install Klippain, first ensure you have already Klipper, Moonraker, and a WebUI installed on your printer. If not, use [KIAUH](https://github.com/th33xitus/kiauh).
3824

39-
#### 1. MCUs settings
40-
If you didn't install any MCU templates during the installation (or want to customize the default wiring), you will need to modify your `mcu.cfg` file by following the [MCU pinout and wiring documentation](./docs/pinout.md).
25+
Then, run the installation script using the following command over SSH. This script will backup your old configuration, download this GitHub repository to your RaspberryPi home directory, and set up Klippain in `~/printer_data/config`. You will also be prompted to select and install MCU board_pins templates. This is recommended for faster `mcu.cfg` setup, but you can do it manually later if you prefer.
4126

42-
Also, do not forget to fill in the serial_port or can_uuid of your MCUs. If needed, you can refer to the [official klipper documentation](https://www.klipper3d.org/FAQ.html#wheres-my-serial-port) to find them.
43-
44-
#### 2. Printer settings, overrides and variables
45-
Open the `printer.cfg` file and uncomment the lines that correspond to your printer hardware or software components in order to enable them (such as extruder type, XY motors, Z motors, QGL vs Z_TILT, etc...). This will customize the behavior of this generic Klipper configuration and will also enable the corresponding macros.
46-
47-
Then it's time to customize the configuration by editing the `overrides.cfg` user file by following the [overrides documentation and examples](./docs/overrides.md). You can tweak the machine dimensions, limits, currents, and everything else in all this config sections. You can also use the overrides to invert motor directions, etc...
48-
49-
When Klipper is able to boot, modify and adapt the `variables.cfg` file to suit the configuration of your machine. This file adds additional customization to how all the macros will behave (coordinates of everything, enable/disable some software features, etc...).
50-
51-
#### 3. Initial startup of the machine
52-
Before printing for the first time, you will need to **check all the features very carefully to avoid any problems on your machine!** You can start by following the [config checks section from the official Klipper documentation](https://www.klipper3d.org/Config_checks.html).
53-
Then, also check that you are able to attach/detach the mechanical probe (if you use one), do a QGL/Z_TILT, have correct coordinates for all the used components (purge bucket, physical Z endstop, etc...). You should also check your first layer calibration (and the `switch_offset` parameter of the automatic z calibration plugin if you use it), etc...
54-
55-
Finally when everything seems to work, you need to add the custom print start gcode to your slicer. Here is an example for SuperSlicer:
56-
```
57-
START_PRINT EXTRUDER_TEMP={first_layer_temperature[initial_extruder] + extruder_temperature_offset[initial_extruder]} BED_TEMP=[first_layer_bed_temperature] MATERIAL=[filament_type] CHAMBER=[chamber_temperature] SIZE={first_layer_print_min[0]}_{first_layer_print_min[1]}_{first_layer_print_max[0]}_{first_layer_print_max[1]}
27+
```bash
28+
wget -O - https://raw.githubusercontent.com/Frix-x/klippain/main/install.sh | bash
5829
```
5930

60-
Also add the custom print end gcode to your slicer:
31+
Finally, Klippain requires a few simple steps to configure and customize it for your printer: please follow the [configuration guide](./docs/configuration.md).
6132

62-
```
63-
END_PRINT
64-
```
33+
> **Warning**
34+
>
35+
> General rule to keep the auto-update feature working: **never modify Klippain files directly**, but instead add overrides as per the documentation! To proceed, you can modify all the pre-installed templates in your config root folder (`printer.cfg`, `mcu.cfg`, `variables.cfg` and `overrides.cfg`) as they will be preserved on update.
6536
6637

67-
## Sponsor the work
38+
## Support the Project
6839

69-
I try to be open to any user request if it fits into this configuration design. So feel free to open an issue or a PR if you want your specific hardware device or new feature to be supported.
40+
I strive to accommodate user requests that align with this configuration's design. Feel free to open an issue or a PR for specific hardware device support or new features.
7041

71-
Alternatively, you can also buy me a coffee or help me buy new hardware to support my work :)
42+
Alternatively, consider buying me a coffee or contributing to new hardware purchases to support my work!

config/hardware/axis/X/0.9deg.cfg

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
[stepper_x]
2+
rotation_distance: 40
3+
microsteps: 64
4+
full_steps_per_rotation: 400
5+
6+
# We also include the default wiring and speeds from here to avoid duplicating
7+
[include default_wiring.cfg]
8+
[include default_speed.cfg]

config/hardware/axis/X/1.8deg.cfg

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
[stepper_x]
2+
rotation_distance: 40
3+
microsteps: 64
4+
full_steps_per_rotation: 200
5+
6+
# We also include the default wiring and speeds from here to avoid duplicating
7+
[include default_wiring.cfg]
8+
[include default_speed.cfg]
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
# X TMC2209 definition
2+
3+
[gcode_macro _USER_VARIABLES]
4+
variable_x_driver: "TMC2209"
5+
gcode:
6+
7+
[tmc2209 stepper_x]
8+
uart_pin: X_TMCUART
9+
interpolate: False
10+
run_current: 0.8
11+
sense_resistor: 0.110
12+
stealthchop_threshold: 0
Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
# X TMC2209 definition with some custom TMC parameters to reduce the
2+
# VFAs (Vertical Fine Artifacts) produced by the first V0 LDO motors kit
3+
4+
5+
# Including first the default X TMC2209 file
6+
[include TMC2209.cfg]
7+
8+
# Then applying overrides for specific V0 parameters from LDO
9+
[tmc2209 stepper_x]
10+
run_current: 0.7
11+
# stealthchop_threshold: 999999
12+
driver_TBL: 2
13+
driver_TOFF: 2
14+
driver_HEND: 1
15+
driver_HSTRT: 4
16+
driver_PWM_LIM: 8
17+
driver_PWM_GRAD: 8
18+
driver_PWM_FREQ: 1
19+
driver_PWM_REG: 4
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
[stepper_x]
2+
homing_speed: 60
3+
homing_retract_dist: 0
4+
homing_positive_dir: true
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
[stepper_x]
2+
step_pin: X_STEP
3+
dir_pin: X_DIR
4+
enable_pin: !X_ENABLE
5+
endstop_pin: X_STOP

config/hardware/axis/XY/0.9d_xy.cfg

Lines changed: 0 additions & 26 deletions
This file was deleted.

config/hardware/axis/XY/1.8d_xy.cfg

Lines changed: 0 additions & 26 deletions
This file was deleted.

config/hardware/axis/XY/1.8d_xy_V0specific.cfg

Lines changed: 0 additions & 42 deletions
This file was deleted.

0 commit comments

Comments
 (0)