Finally got my hands on a Raspberry Pi 4. I installed MainsailOS and I followed this guide and got Klipper set up and running in a few hours.
I literally doubled my print speed in the slicer settings, which is giving me a 30-40% reduction in print times and the print quality is actually better at the same time... The only concern I have now is how the whole table vibrates when printing so fast 😅
Managing the printer through the moonraker interface on Mainsail is really nice. I also set up Obico for remote monitoring away from home with an old webcam.
The issues I had during setup were pretty few, but I'll list them here:
The USB webcam I had did not work at all out of the box, but that was quickly fixed by installing Crowsnest - after install the camera (Logitech C270) was working perfectly
After installing Crowsnest, the camera worked, but the web interface was no longer connecting to Klipper - I found out this was because I set up my Raspberry Pi with a non-default username, and the Crowsnest installation had apparently updated my moonraker.conf to look for Klipper in the default location. Just had to update klippy_uds_address: /home/pi/printer_data/comms/klippy.sock to have my username instead of pi
The last problem I have is that I'm having so much fun printing at turbo speed through the slick web interface that I'm burning through my filament too fast and I need to order more soon.
Next on the list is a Raspberry Pi cam (the Logitech C270 is on its last leg) and some LED lighting to get a better view of the prints.
It really feels like I got a whole new printer. I am really impressed with it and I would definitely recommend to anyone with a cheaper Marlin printer and at least a little bit of Linux experience.
I did the same and have had a great experience. Can you advise on the slicer settings you're using to speed up the prints? I haven't found many specific examples and there are so many variables!
I use Cura 5.4 and the only changes I made were to the start and end gcode for the machine (per the guild I linked). After that, I did a few prints with my regular profiles, then started cranking up the speed a little at a time. So really the only setting I changed was the print speed and start / end gcode.
The printer handled everything else - honestly it feels a little like magic to me, even though it's just software. I'm a software engineer so I feel like I should have a better grasp of it, but printer firmware is pretty far outside of the type of work I do. One thing I do know is that Klipper manages acceleration itself and doesn't use the acceleration gcodes sent from the slicer - those get ignored and Klipper decides how fast to accelerate (this is configurable using moonraker or the config files).
I think the thing that makes the most difference in letting you print at higher speeds is the input shaping. I don't understand all the inner workings, but it using the processing power on the raspberry pi to compensate for the vibration of the printer, letting you print much faster without getting artifacts in the print that affect quality. Here is some info on that
I'm sure there are a lot of slicer and Klipper configurations that I can do to improve things even more as well
You may have already done this since you mentioned input shaping but said you only changed print speed.... dont forget to crank up the acceleration values too (you can find your max good quality when doing input shaping tuning)
If you use prusa/superslicer I could share my profile tomorrow when I get back home. Started out with the ellis klipper superslicer one and then ported it over to pruasa and have been making a few tweaks here and there.
The one thing I didn't like about klipper firmware on my CR-10 was the default filament runout setup. One of my first big prints (with expensive ApolloX filament) ran out. The default klipper setup waits something like an hour, with the hot end still hot, then completely shuts down.
So my home position was lost, and with a partial part on the plate, there was no way of re-homing, so it was a wasted part.
Make sure your filament runout timeout is set to 24 hours (and I think I might have made the temp lower so it didn't burn?)
I like klipper on mine, too. I do wish the default mesh would be loaded at startup, but it doesn't load any mesh. Which doesn't really matter, I guess. I have four build plates, three different styles, so I'm running bed levelling pretty much every print anyways.