Ramps FD Issue with extruder fans

I have problem with setting my ramps fd board fans to work like they shoud :/
I have flashed it with repetier firmware v1.0.0 dev, chosed ramp's fd v2 board (still need to reverse mosfets logic in pins.h after this), defined the extruder 0 print fan on D10 output and extruder cooler on D11 output. Also Im trying to use D12 as board cooling fan, and D2 for leds. 

My problems:
1st normal flash, with pwm 255 Extruder 0 cooling fan is not working, with pwm 0 the fan is working all the time, with pwm 155 the fan runs with full speed but after turning heater 0 on, speed drops to pwm 155. The printer is not reacting to temperature.

2nd flash with in configuration.h EXT0_EXTRUDER_COOLER_PIN -11 fan not working at all.

3rd flash with change in HAL.cpp from 1 to 0. 
if ((pwm_cooler_pos_set[3] = (extruder[3].coolerPWM & COOLER_PWM_MASK)) > 0) WRITE(EXT3_EXTRUDER_COOLER_PIN, 0);
No change from 1st flash 

4th flash change in HAL.cpp  if ((pwm_cooler_pos_set[3] = (extruder[3].coolerPWM & COOLER_PWM_MASK)) > 1) WRITE(EXT3_EXTRUDER_COOLER_PIN, 0); At start fan is at full speed, after heater on drops to pwm155, and stays there even after turning heater off (but temp exceded the range where cooler need to start)

5th flash change in HAL.cpp if ((pwm_cooler_pos_set[3] = (extruder[3].coolerPWM & COOLER_PWM_MASK)) > 0) WRITE(EXT3_EXTRUDER_COOLER_PIN, -1); Just like in 4th attempt

The D10 print cooling fan at 0% manual controll is turning, and on 100% is off.
The D12 board cooling fan is turned on only when heated bed is turned.

Anny help with solving this? 


  • First pin numbers must be positive- -11 will surely not do anything.

    From your description I see you have one of these ramps fd with inverting output that are by default on and not off.
    All needed is inverting output so in HAL.cpp search for

    and change 1 and 0. not -1 and not any comparisons. Only the WRITE commands need inversion. Maybe you need also one in initalization at startup, but I think the pwm will set it quickly anyway.
  • Thanks Repetier, thath helped! The last two not working things is sd card and bed leveling. 
    Sd card is not detected and not readed by full graphic LCD.
    The bed leveling is mirrored, nozzle is going higer when shoudl be lower and opposite. 

    I have run several g32 s2 to store it in eeprom, but it's not helping a lot. The gap is not too big, but irritating with some materials not sticking to bed because of this. 

    Im using induction probe and 4mm aluminium bed.
  • Do you use a display that has stored pin usage in displaylist.h (assuming you use 1.0). If pins are wrong this may fail and I know there are not many displays for that board in our list.

    bed leveling mirrored is not enoug information to help. What did you do and expect to come to that conclusion.
Sign In or Register to comment.