Hi,
I believe there might be a bug in Klipper.
I was calibrating a new extruder and noticed that the part cooling fan is turned off even though it should be running based on my slicer settings. I checked the gcode file and the M106 commands were there, the slicer didn’t “forget” them.
After looking around I found out that the problem was the maximum value. I can use any value with M106 Sxxx above 25, which seems to be the minimum for my fan to start, and the fan is running perfectly fine. But M106 S255, which should be 100%, doesn’t start or speed up the fan.
I can start the fan with M106 S254 as expected, but using S255 on a running fan (no matter it’s current speed) actually turns it off! So it’s shouldn’t be a problem of my fan drawing to much power and 255 being to much for my board (which would be weird anyway).
It looks like there something like a <255 instead of a <=255 for the value check as the behaviour is the same for any other value of 256 and above, as the range is 0-255 for this value, and values that are to high are treated as turn off command instead.
I updated klipper a few days ago, so it’s not an old version. And I do not see how any other component could cause this behaviour.