About 6 weeks ago I switched from Marlin to Klipper. Back in May 2018 in this thread Problem after installing Klipper (after disabling IPV6 on RPI) @OutsourcedGuru brought up a very good point
It would be great to eventually come up with a how-to for updating Marlin and OctoPi for Klipper. I know from second-hand experience that it moves enough of the work over to the Raspi 3 so that the RAMPS board is never overloaded (resulting in short-duration stalls which themselves probably produce surface blobbing).
I can confirm that I am observing "short-duration stalls which" "produce surface blobbing". This issue is caused by the fact that Octoprint and Klipper are sharing resources and even RPI 3 B+ is not always able to serve both in real time. The workaround is to lower printing speed, but then it takes away one of the main advantages of Klipper – ability to print much faster than firmware running on 8bit MCUs.
So, here are few questions, I’d like to ask, and I hope other Klipper users can also benefit from the answers:
- What can be done, if anything, to increase priority of the processes running Klipper, while keeping OctoPrint functional?
- Which core elements of OctoPrint cause the highest CPU load and/or disk/memory utilization during printing process? Which of them are optional and can be disabled?
- Which Plugins are the most “resource hungry” during the print?
- When client is connected to the web interface, does OctoPrint “feed” all the tabs with the data, including the tabs that are currently hidden? For example, is it sending video stream to ‘Control’ tab if active tab is ‘Temperature’?
- Is there a way other that “try and fail” to find out whether certain newly added OctoPrint feature or newly installed Plugin will affect print quality due to RPI temporarily running out of resources?