Baike.dev
All toolsAI codingTrendingOpen sourceNewsSubmit
Log in
< Back to tools
K

kalico

> 编程语言
Open source

Klipper, but Limitless

682 stars0 likes0 views
WebsiteGitHub

About

Klipper, but Limitless

Welcome to the Kalico project!

This is a community-maintained fork of the Klipper firmware.

Our goal is to support features and behavior that could be "risky" if used incorrectly.

If I want my printer to light itself on fire, I should be able to make my printer light itself on fire.

See the Kalico Additions document for more information on some of the differences from Klipper.

Features merged into the main branch:

  • core: no Python2 tests; no PRU boards

  • core: git-untracked folder, plugins for user-plugins

  • core: danger_options

  • core: rotate log file at every restart

  • core: options for API server socket file mode, user, and group

  • core: options to change mode and group of linux mcu psuedoterminal

  • fan: normalising Fan PWM power (klipper#6307)

  • fan: reverse FAN (klipper#4983)

  • heaters: modify PID without reload

  • heaters: MPC temperature control

  • heaters: velocity PID (klipper#6272)

  • heaters: PID-Profiles

  • heaters: expose heater thermistor out of min/max

  • heaters: dual loop pid control

  • heaters/fan: new heated_fan module

  • gcode: jinja2.ext.do extension (klipper#5149)

  • gcode: gcode_shell_command (klipper#2173 / kiuah )

  • gcode: expose math functions to gcode macros (klipper#4072)

  • gcode: HEATER_INTERRUPT gcode command

  • gcode: RELOAD_GCODE_MACROS command

  • probe: dockable Probe (klipper#4328)

  • probe: drop the first result (klipper#3397)

  • probe: z_calibration (klipper#4614 / protoloft/z_calibration)

  • z_tilt: z-tilt calibration (klipper3d#4083 / dk/ztilt_calibration)

  • stepper: home_current

  • stepper: current_change_dwell_time

  • homing: post-home retract

  • homing: sensorless minimum home distance

  • homing: min_home_dist

  • virtual_sdcard: scanning of subdirectories (klipper#6327)

  • retraction: z_hop while retracting (klipper#6311)

  • danger_options: allow plugins to override conflicting extras

  • danger_options: expose the multi mcu homing timeout as a parameter

  • danger_options: option to configure the homing elapsed distance tolerance

  • danger_options: option to ignore ADC out of range

  • temperature_mcu: add reference_voltage (klipper#5713)

  • adxl345: improve ACCELEROMETER_QUERY command

  • extruder: add flag to use the PA constant from a trapq move vs a cached value

  • force_move: turn on by default

  • resonance_tester: warn about active fans during input shaper calibration

  • bed_mesh: add BED_MESH_CHECK command for mesh validation

  • respond: turn on by default

  • exclude_object: turn on by default

  • bed_mesh: add bed_mesh_default config option

  • config: CONFIG_SAVE updates included files

  • kinematics: independent X&Y accel/velocity for corexy and cartesian

  • kinematics: independent X&Y accel/velocity for corexz

  • idle_timeout: allow the idle timeout to be disabled

  • canbus: custom CAN bus uuid hash for deterministic uuids

  • filament_switch|motion_sensor: runout distance, smart and runout gcode

  • z_tilt|qgl: custom threshold for probe_points_increasing check

  • save_config: save without restarting the firmware

  • configfile: recursive globs / (klipper#6375)

  • temperature_fan: curve control algorithm

  • shaper_calibrate: store and expose accel_per_hz

  • resonance_tester: accepts ACCEL_PER_HZ in TEST_RESONANCES

  • mcu: support for AT32F403

  • z_tilt, quad_gantry_level: adaptive horizontal move z

  • core: non-critical-mcus

  • gcode_macros: !python templates

  • gcode_macros: !!include macros/my_macro.py

  • core: action_log

  • danger_options: configurable homing constants

  • tmc2240: adjustable driver_CS and current_range

  • extruder: cold_extrude

  • indx: support for the Bondtech INDX toolboard

If you're feeling adventurous, take a peek at the extra features in the bleeding-edge-v2 branch feature documentation and feature configuration reference:

  • extruder/pa: do not smooth base extruder position, only advance

  • dmbutyugin's advanced-features branch - Pull Request #262

    • stepper: high precision stepping protocol
    • extruder: sync extruder motion with input shaper
    • extruder: new print_pa_tower utility
    • input_shaper: smooth input shapers
    • input_shaper: new print_ringing_tower utility

Switch to Kalico

[!NOTE] The steps below assume an existing Klipper installation (a klipper systemd service and a ~/klippy-env python environment). On a fresh machine, install via KIAUH or run one of the OS-specific setup scripts in scripts/ after cloning; see the installation documentation.

Any add-on modules you are using will need to be reinstalled after switching to Kalico. This includes things like Beacon support, led-effect, etc.

Any data in ~/printer_data such as printer configs and macros will be unaffected.

Option 1. Manually clone the repository

If desired, make a backup copy of your existing Klipper installation by running:

mv ~/klipper ~/klipper_old

Then clone the Kalico repository and restart the klipper service:

git clone https://github.com/KalicoCrew/kalico.git ~/klipper
sudo systemctl restart klipper

It might happen that your python environment needs to be updated. If that is the case, run:

~/klippy-env/bin/pip install -r ~/klipper/scripts/klippy-requirements.txt

Option 2. Using KIAUH

For users that are not comfortable using Git directly, KIAUH v6 is able to use custom repositories.

To do this, add the Kalico repo to KIAUH's custom repository config depending on your KIAUH version:

Setup Kalico as repository in KIAUH v6

  • cd ~/kiauh

  • cp default.kiauh.cfg kiauh.cfg

  • nano kiauh.cfg

  • add https://github.com/KalicoCrew/kalico, main for the main branch

    or https://github.com/KalicoCrew/kalico, bleeding-edge-v2 for the bleeding edge branch

  • CTRL-X to save and exit

From the KIAUH menu select:

  • [S] Settings

  • 1) Switch Klipper source repository

  • Select Kalico from the list

Setup Kalico as repository in KIAUH v4

  • Add the custom repository to your klipper_repos.txt in the ~kiauh directory

  • echo "https://github.com/KalicoCrew/kalico,main" >> ~/kiauh/klipper_repos.txt for the main branch

    or echo "https://github.com/KalicoCrew/kalico,bleeding-edge-v2" >> ~/kiauh/klipper_repos.txt for the bleeding edge branch

From the KIAUH menu select:

  • [6] Settings

  • 1) Set custom Klipper repository

  • Select Kalico from the list

Repository changes will not persist across KIAUH versions.

Option 3. Adding a git-remote to the existing installation

It allows you to switch back to mainline Klipper at any time via a git checkout upstream_main

cd ~/klipper
git remote add kalico https://github.com/KalicoCrew/kalico.git
git fetch kalico
git checkout -b upstream-main origin/master
git branch -D master
git checkout -b main kalico/main
sudo systemctl restart klipper
sudo systemctl restart moonraker

Kalico is a 3d-Printer firmware. It combines the power of a general purpose computer with one or more micro-controllers. See the features document for more information on why you should use Kalico.

To begin using Kalico start by installing it.

Kalico is Free Software. See the license or read the documentation.

Issues· 0 open

View all issuesOpen on GitHub

No open issues yet, or sync has not completed.

> Tags

C

No comments yet. Be the first to share.

> Details

PublishedAug 1, 2026
UpdatedSep 17, 2026
Category编程语言
PricingOpen source

> Related tools

T
TypeScript
JavaScript 的超集,为前端与全栈提供静态类型
P
Python
通用编程语言,广泛用于 Web、数据与 AI
G
Go
Google 推出的简洁高效系统语言