fan kickstart

fan kickstart does not work for me. When setting fan to 20% it does not start. Manually giving it a spin makes it "kickstart".
I looked at the code (current dev) and found some lines related to kickstarting the fan, but it looks like this is not implemented correctly. At least I could not find the code where the fan is actually set to 100% to kickstart it.
Can somebody confirm that the feature is working or the code is not yet finished?



  • It is implemented in HAL.cpp but only for fan and fan 2 and not for cooling fans. Rest is in printer.cpp

    void Printer::setFanSpeedDirectly(uint8_t speed) {
        if(pwm_pos[PWM_FAN1] == speed)
        if(fanKickstart == 0 && speed > pwm_pos[PWM_FAN1] && speed < 85)
             if(pwm_pos[PWM_FAN1]) fanKickstart = FAN_KICKSTART_TIME / 100;
             else                  fanKickstart = FAN_KICKSTART_TIME / 25;
        pwm_pos[PWM_FAN1] = speed;

  • edited May 15
    Ah ok, i found it in HAL.cpp :)
    But unfortunately it doesn't work for me. I will try to increase the kickstart time, maybe that will help...
  • i tried even values of 2000 for FAN_KICKSTART_TIME, but the fan does not start for values < 60%

    any ideas?
  • Maybe because of this condition
       if(fanKickstart == 0 && speed > pwm_pos[PWM_FAN1] && speed < 85)
     speed < 85 means it kickstarts only below 33% = 85/255

  • that is true for 60%, but that's only a rough estimate where my fan starts without kickstarting. the problem arised with 20%, where i would like it to kickstart. it does not work there either :(
Sign In or Register to comment.