Please note: the forum is closed.
No new user registrations are accepted. For more info, please click here.
No new user registrations are accepted. For more info, please click here.
FAN controlled by RRD Fan Extender
skysurfer
Posts: 37🌟 Super Member 🌟
Hi,
i like to build in my A3S an driver coller controlled with an RRD Fan extender.
This Fan Extender will connected to the Servo's pin and will controlled with the pin D11 and D6.
I have a try behind me without really result.
The reason ...
on this side https://www.instructables.com/id/Configuring-and-using-Reprap-Ramps14-RRD-Fan-Exten/ it will discused from Pin 4 and 5.
I have made the changing according this page ... also in the firmware.
Then i made tests for it with the command M42 Px Sxxx.
When i send the command M42 P4 S255 ... i get no action from the fan. the same with P5.
When i send the command with P11 or P6 then the fan's are running ore can be stopped.
So i have think, i must change in the firmware the pin's to 11 and 6.
So i have done it and then it was no action by the fan's.
What is going wrong ?
Many thanks for the help.
Comments
Otherwise, perhaps you can post your firmware zip and we can check it?
/**
* Controller Fan
* To cool down the stepper drivers and MOSFETs.
*
* The fan will turn on automatically whenever any stepper is enabled
* and turn off after a set period after all steppers are turned off.
*/
//#define USE_CONTROLLER_FAN
#if ENABLED(USE_CONTROLLER_FAN)
#define CONTROLLER_FAN_PIN FAN1_PIN // Set a custom pin for the controller fan
Here is the question witch pin must be used (D11, D6, D5 or D4) and what ist number ?
#define CONTROLLERFAN_SECS 60 // Duration in seconds for the fan to run after all motors are disabled
#define CONTROLLERFAN_SPEED 255 // 255 == full speed
#endif
// given number of milliseconds. This gets the fan spinning reliably
// before setting a PWM value. (Does not work with software PWM for fan on Sanguinololu)
//#define FAN_KICKSTART_TIME 100
// This defines the minimal speed for the main fan, run in PWM mode
// to enable uncomment and set minimal PWM speed for reliable running (1-255)
// if fan speed is [1 - (FAN_MIN_PWM-1)] it is set to FAN_MIN_PWM
//#define FAN_MIN_PWM 50
// @section extruder
/**
* Extruder cooling fans
*
* Extruder auto fans automatically turn on when their extruders'
* temperatures go above EXTRUDER_AUTO_FAN_TEMPERATURE.
*
* Your board's pins file specifies the recommended pins. Override those here
* or set to -1 to disable completely.
*
* Multiple extruders can be assigned to the same pin in which case
* the fan will turn on when any selected extruder is above the threshold.
*/
#define E0_AUTO_FAN_PIN -1
#define E1_AUTO_FAN_PIN -1
#define E2_AUTO_FAN_PIN -1
#define E3_AUTO_FAN_PIN -1
#define E4_AUTO_FAN_PIN -1
#define EXTRUDER_AUTO_FAN_TEMPERATURE 50
#define EXTRUDER_AUTO_FAN_SPEED 255 // == full speed
The order that these pins are set is important to understand:
1. First, the ID for each board is defined in boards.h:
#define BOARD_MKS_GEN_L 53 // MKS GEN L
2. Then, configuration.h sets the motherboard type:
#define MOTHERBOARD BOARD_MKS_GEN_L
3. The board ID of 53 is used in pins.h to load the right pin file
#elif MB(MKS_GEN_L)
#include "pins_MKS_GEN_L.h" // ATmega1280, ATmega2560
5. the RAMPS pinout is loaded from pins_RAMPS.h, which defines the fan pins:
6. So at no point in this chain, is a controller or extruder fan defined. FAN1 is only used if you have a second nozzle, fan0 for nozzle 0, and fan1 for nozzle 1. Therefore, you can enable extra fans from configuration_adv.h safely:
#define USE_CONTROLLER_FAN // <-- need to uncomment this line, this is the fan above stepper drivers
#define CONTROLLER_FAN_PIN 6 // Set a custom pin for the controller fan
7. However, pin 6 and 11 are already set in pins_RAMPS.h, so we need to go back and disable the functions that they are set for:
4. is about pins_MKS_GEN_L.h
5. is about pins_RAMPS.h.
So the flow of the compilation is
The point of my explanation is that we need to check all these files for where the pins are defined.
In this case, we need to change pins_RAMPS.h as 6 and 11 are already defined there.
You do not need to change the board name - the MKS Gen L is based on the pinout of the RAMPS board. So this is already setup. But, this means that you need to also change the pins in pins_RAMPS.h to achieve the result you want.
You do not need to change any files except 6. configuration_adv.h and 7. pins_RAMPS.h
Also, for helpful posts, there is always a “thanks” button at the top of posts.
Happy printing!
FYI: If you plan to keep the DRV8825 for a while, you may want to also look into salmon skinning and diode smoothers
https://jgaurorawiki.com/a5/tlsmoothers
https://jgaurorawiki.com/a5/stepper-drivers
Howdy, Stranger!
RegisterIt looks like you've been lurking for a while.
If you register, we will remember what you have read and notify you about new comments. You will also be able to participate in discussions.
So if you'd like to get involved, register for an account, it'll only take you a minute!