Snapmaker team claims: Marlin input shaping better than RRF..?
-
Snapmaker has made their Marlin firmware of the J1 printer Open Source and boldly claims that RRF input shaping is inferior to what they added to Marlin:
... Because RRF is implemented on an MCU-based platform, we first integrated the input shaping and stepper control logic of RRF into Marlin and attempted to verify it on J1. However, the results were not as good as expected. After a detailed analysis of the code, we found that RRF does not perform input shaping on all movements. What it did was before the input shaping, it pre-determines whether the section of a movement meets the requirements for input shaping. If not, this section of the movement will follow the conventional trapezoidal motion profile to control the motor movement, which will lead to excessive vibration and layer shift when the print head runs in zigzags over short distances. ... [please refer to the link for the rest of the text, it is rather lengthy and I admit I do not understand all the details]
Now I am really curious since I am right now preparing a configuration for the 6HC board for the J1: what do @dc42 and the rest of the Duet team here think about this? I would expect RRF to be superior over Marlin in basically all cases
-
@NeoDue they are definitely wrong about layer shift. It's true that there are some types of move that RRF does not currently apply IS to, in particular accelerate/decelerate moves. These are mostly short zigzag infill moves, for which IS is not required. However, there may sometimes be short accelerate/decelerate moves for which it may be advantageous to apply IS at the expense of speed. So in RRF 3.5 we will examine all accelerate/decelerate moves to determine whether the peak speed should be limited so that IS can be applied.
From their description, it appears that they basically copied the algorithm from RRF, with a few changes.
-
@dc42 That is what I expected - thanks a lot for confirming my thoughts!
-
@dc42 Now that I know this, some things are clear to me, since I was wondering why my whole printer is shaking only when printing infills like gyroid, eventhough I am using input shaping and quite conservative accelerations. Are there any major improvements planned on the input shaping front in the upcoming updates? From what I've read from the users using both Duet/RRF and Klipper - Klipper still has a bit of an edge over RRF with input shaping....