Klipper (firmware). Klipper is an open source firmware for 3D printers that distributes the workload between a general-purpose computer (such as a Raspberry Pi) and one or more underlying microcontrollers on the 3D printer. The separation claims to allow for more advanced control compared to traditional firmware that runs solely on the printer's microcontroller. Klipper supports multiple types of kinematics, including Cartesian, CoreXY and delta robot.

History 
Klipper was developed by Kevin O'Connor in 2014. One of the early adopters was the Voron project which built CoreXY printers with open-source software and open-source hardware. Klipper's popularity has gradually increased over time, and in 2024 it came pre-installed on 3D printers from several manufacturers.

In 2022, Klipper entered into a strategic partnership with BigTreeTech, a manufacturer of motherboards for 3D printers.

In late 2020, Klipper introduced input shaping into the world of open-source 3D printing firmware.

Features 
As the host computer has more processing power and is capable of doing more intensive calculations, only the results of these calculations need to be sent to the microcontroller. This enables more precise control of stepper motors, advanced kinematics, input shaping for vibration reduction, detailed logging, use of macros, and changing configurations in real-time without the need to restart the firmware.

The printer also has pressure advance, which is a parameter that compensates for the pressure build-up in the nozzle during acceleration for smoother and more precise printing. It works by making the extrusion advance faster during strong accelerations, and advance slower during strong decelerations. This way, smoother lines can be achieved at high 3D printing speeds. The compensation is usually calibrated per material type (PLA, ABS, PETG, and so on), but can even be calibrated for each specific spool. The model takes into account the elasticity, viscosity, pressure and flow of the filament.

Supported hardware 
Klipper supports several types of 3D printers and microcontrollers, including boards from Arduino and STM32. It is compatible with many existing printers, and can be adapted to custom-built machines.

Installation, configuration and interaction 
Klipper is set up on a computer running Linux (such as Raspberry Pi), and in addition, appropriate firmware must be flashed onto the printer's microcontroller. Configuration is done through a text-based configuration file, which allows for customization and control of the printer's behavior.

To interact with Klipper, the user needs an interface. Two popular web interfaces are Mainsail OS and Fluidd. Other options are OctoPrint or KlipperScreen.

Development and society 
Klipper is maintained and developed by an active community of users and developers. The project is hosted on GitHub, where users can contribute code, report bugs, and read extensive documentation. There is also a dedicated forum, an r/klippers channel on Reddit, and a chat on Discord where users can get guidance with more common questions and problems.

See also 

 Marlin (firmware), another open source firmware for 3D printers

References

External links 
 
 Installation guide - klipper3d.org
 

3D printing
Free software programmed in C
Firmware