Hello, This isn’t exactly Taz firmware discussion but I’ve been advised to post this question here by Lulzbot’s team on Reddit.
Long story short, I’m building a test rig/printer to experiment with various components. It’s running Ramps 1.4, 24v, Marlin 1.1.8, so controller board wise it is very similar to both my Taz 5 and 6. It’s known that 24v (part cooling) fans don’t work well at low PWM/speed, and it also used to be a problem throughout most of my Taz 5’s life cycle until it was finally resolved with Taz 6 and Marlin 1.1.5 update for the Taz 5.
With the latest Taz firmware 24v fans have perfect full range of PWM speed from as low as 1/255, where as default Marlin 1.1.8 on 24v usually wont spin the fan until 90-100/255.
I’ve already tried multiple brands/models of fans and they all have similar result, of course the original Pelonis fans worked the best, but still fail to spin at low PWM on default Marlin
I’ve also tried playing with multiple combination of Marlin extra features for the past hour and the best I was able to do was get the fan at start spinning (although very roughly) at 80/255 with follow settings:
/ Increase the FAN PWM frequency. Removes the PWM noise but increases heating in the FET/Arduino
//#define FAST_PWM_FAN
// Use software PWM to drive the fan, as for the heaters. This uses a very low frequency
// which is not as annoying as with the hardware PWM. On the other hand, if this frequency
// is too low, you should also increment SOFT_PWM_SCALE.
#define FAN_SOFT_PWM
// Incrementing this by 1 will double the software PWM frequency,
// affecting heaters, and the fan if FAN_SOFT_PWM is enabled.
// However, control resolution will be halved for each increment;
// at zero value, there are 128 effective control positions.
#define SOFT_PWM_SCALE 4
It is my understanding that 24v fans work best at 120MHz, and after referencing Lulzbot’s firmware on code.alephobjects.com it seems to suggest there is some custom PWM table. I’m familiar with tuning Marlin but not good enough with programming to be able to fully understand Lulzbot pre-defined variables with their fan control.
How do I go about to learn and replicate it on my Ramps 1.4 with default Marlin?
Thank you very much