Are you’re running Klipper on your 3D Printer?
Do you find yourself wondering: what’s next?
Well, stick around, because in this article, I’m going to share with you my 9 MUST-HAVE Klipper plugins to get the most of this incredibly powerful firmware.
Let’s get after it!
Background
These days, more and more printers are running Klipper – even from the factory, and even on the most cursory level, the reasons are clear:
- Klipper is natively web-enabled, meaning you can manage your printer from the computer in a way that would’ve previously required a third-party Octoprint installation.
- It is more developed when it comes to speed-printing must-haves like Pressure Advance and Input Shaping, allowing you to print much faster and with much better quality.
- Many people, myself included, also find the simplified, cleaner code-base to run faster and lighter than Octoprint. And yet, one of the things that keeps people loyal to Octoprint is the incredibly mature plugin ecosystem and directory, which offers hundreds of plugins that add amazing functionality to do just about anything you could possibly want.
What Are The Best Klipper Plugins?
Fortunately, Klipper has come a long way in a short time, and as you’re about to see, you can use a few easy-to-install plugins to gain back most, if not all, of that awesome functionality.
To be honest, I’m making this list for myself as much as I am for all of you, because with more and more of the printers I review on the channel shipping with Klipper, I needed to write down a checklist of the plugins I like to install on each one.
I’m going to put them in this list in the exact order you need to install them, because some of the later ones will depend on the earlier ones.
KIAUH
Right off the bat, let’s talk about KIAUH, or the Klipper Installation and Update Helper.
As the name would imply, this is a simple utility that allows you to quickly install updates and upgrades right through the command line interface.
To install it, you simply need to SSH into your printer using a command line interface, and run two simple commands, followed by a third to install it. I’ll link to the instructions in the description, of course, but it’s literally that easy, and you can just pause the video and run these commands if you want.
With KIAUH installed, we are now ready to install many of the OTHER tools that it enables.
Mainsail
I know, I know, this isn’t really an “upgrade” so much as switching the preferred web interface – so skip it if you want.
But personally, I prefer the look and feel of Mainsail for a lot of reasons I won’t get into in this video. At the same time, I’ve noticed that almost ALL the Klipper-native printers I’ve been reviewing come with Fluidd.
Not to fear, because thanks to KIAUH, adding Mainsail is as simple as going into the command line and selecting it. What’s cool about this is that you can run BOTH Fluidd and Mainsail on separate ports, so you don’t have to worry about uninstalling or breaking anything.
Custom Macros
The next “upgrade” we need to make before we get into the more advanced stuff are custom macros.
If you don’t know, Macros are little snippets of GCode, kind of like routines, which you can call up at any time.
That means that you can add a button on your Klipper interface or touch screen, call them up in your sliced GCode, such as at the start and end of a print, and so on.
Klipper makes it SUPER easy to write and use Macros by simply adding them into any included config file with a specific syntax, so before you really get into the weeds with your 3D Printer, it’s worth investing some time in flushing those macros out.
Here are a few Macros that I, personally, like to set up or customize on every printer I own:
- Print Start: Configuring what should happen when a print first starts, especially Bed meshing, which I’ll cover in a moment, changing LED statuses, and so on. Most printers already have this configured, but often times, it is pretty bare-bones.
- Print End: Same idea, but when a print ends.
- Load/Unload: Automatically heat up the nozzle, then extrude or retract a set length of filament based on your hot-end to completely clear it in one click.
- Clean Nozzle: For printers with a nozzle brush, a routine to brush the nozzle a few times before important steps like bed leveling or Z homing.
- LEDs On/Off/Status: Turn white LEDs on or off with the click of a button, or based on whether or not the printer is working, and change the colors of RGB LEDs based on what the printer is currently doing, temperature, and so on.
- Take_Snapshot: Use a USB Connection to trigger a snapshot on an external DSLR or mirrorless camera(more on that in a second)
Those are just a few macros that I find useful, but the sky is the limit, and you can definitely go wild creating all sorts of cool custom macros.
Exclude Object
Let’s get into the “meat and potatoes;” the truly MUST-HAVE plugins that you simply shouldn’t run Klipper with out.
No upgrade for Klipper deserves that title as much as “Exclude Object,” a module which identified each of the objects on your print bed, and allows you to cancel individual objects mid-print without losing the entire bed.
I can’t tell you HOW many times this module has saved me time, filament, and money, especially when you consider that many times, a failed print will “spread” throughout the bed and cause other adjacent parts to fail, too.
Installing Exclude Object is as simple as adding a config file, referencing it in your printer.cfg, and updating your slicer to include the necessary code in any gcode it exports. As with everything in this video, link in the description below.
KAMP
Now that we have Exclude Object installed, we can add the next game-changing upgrade, and that’s KAMP: Klipper Adaptive Meshing and Purging.
I first learned about this upgrade from Daniel over at ModBot.
Basically, KAMP allows your printer to do a more focused, detailed bed mesh and purge only in the areas that will be actually used during that print. This means less time meshing your entire bed, more density of meshed points, and all-around better, more reliable prints.
Personally, I got this working, and was LOVING it, but then, something broke either in my printers config files, or perhaps in the latest update of OrcaSlicer, because my Voron still insists on meshing the entire bed for every print. I’ll need to play around with some of my other printers after, and see if it’s the slicer or the printer, but if you have any ideas as to how I can fix this, please drop me a comment below.
Obico and/or OctoEverywhere
I don’t know about you, but personally, I can’t sit around 24 hours a day and watch my printers.
I wish I could, but I also like, you know, seeing my children’s faces once in a while.
This is especially challenging when your printers are in one location, such as your home, and your life is in another location, such as work. Without a way to watch your printers, how will you prevent catastrophic failures and kilos of wasted filament?
Fortunately, these next two apps, Obico and OctoEverywhere, solve that problem in two different ways.
First, they enable remote access to your printers using a secure tunnel, meaning you can not only see your printer’s webcam stream, but also start and stop prints if you so desire.
Second, each of these apps offers an AI spaghetti detection feature that will alert you or stop the print if things get too hairy – no pun intended.
Best of all, they both work well with Klipper, and are a breeze to install.
Timelapse
One of the most popular and powerful upgrades for OctoPrint is Octolapse, a plugin which automatically creates buttery-smooth timelapses by moving the print head at the start of every layer.
Fortunately, Klipper now has an easy-to-install module that will do the exact same thing, and personally, as with all things Klipper, I find it simpler to configure and use than it’s OctoPrint alternative.
And as you’ll see in a moment, we can not only do these time lapses with the onboard camera of our printer, but also, with a little work, we can even connect a high-quality external camera, too!
Gphoto2 + GCode Shell Command (Optional)
I’ll admit it, these two aren’t as much of a “must have” as the rest of the items on this list, but if you want to make decent looking timelapses, they definitely are.
The first is Gphoto2, a piece of code for Raspberry Pi’s and similar boards which allows them to communicate over USB with your proper camera – allowing you to trigger snapshots.
This one is a bit tricky to install, and I usually follow a video tutorial by a fellow youtuber every time I need to install it, because there are a LOT of steps.
Fortunately, if you persist – and assuming your camera is compatible – you will eventually get to the point where you can trigger a snapshot from a shell command.
From there, you need to install GCode Shell Command, which creates a way for you to trigger that shell command, you guess it, right from within your GCODE. Thanks to KIAUH, this is at least really simple to do.
From there, you have a few options. You can, if you want, just add that GCODE to your “next layer” code in your slicer, and you’re done.
Or, if you want to create more silky-smooth timelapses with a parked tool head, you’ll want to install the Timelapse module we discussed early, and then piggyback off of it by simply inserting the appropriate snapshot GCODE alongside it’s own instructions.
Again, I’ll be honest: I often struggle to configure these two modules, even though I’ve done it a few times.
KlipperScreen
One last “nice-to-have” before we part ways, and that is KlipperScreen.
I know, I know, you guys have called me “spoiled” before for insisting on putting touch screens on all of my computers, but what can I say, I’m lazy, and I don’t like doing a lot of clicking around to get to what I want!
KlipperScreen allows us to control our entire printer – even initiating prints – right from an easy-to-use touchscreen. Sure, your standard printer interface allows you to do SOME things, like loading nad unloading, from the click-wheel interface, but one thing I REALLY love is the ability to add custom macros for things like Cleaning the Nozzle and so on.
If you’re like me, and your computer isn’t right next to your printer or printers, this one tool alone will have you TONS of walking back and forth for things like initiating prints, turning on LEDs, cleaning nozzles, and so on.
Oh, and here, once again, you can thank KIAUH for making this install super easy. Aren’t you glad we covered that first?
Finally, if you aren’t sure which screen works will for adding KlipperScreen to your setup,you can always use BigTreeTech, which offers a variety of screens in all different sizes, and I’ve really been enjoying mine.