1 (edited by mdrVB6 2015-08-30 00:14:02)

Topic: How to get started with G-code nozzle fan? Firmware changes?

So I had some free time today and I've had the parts printed for a while so I figured it was finally time to add a G-code controlled nozzle fan.  I'm using jagowilson's excellent design: http://www.soliforum.com/misc.php?actio … mp;preview

I'm running a RUMBA with typical marlin firmware.  I built it, wired it all up... and of course it doesn't work on the first try when I toggle the fan in repetier.  It's hooked to fan0 and all my other fans are fan1.  I just looked thru the firmware and I did didn't see anything specific to a nozzle fan.

Also, after I get it running, where are the controls for this in Cura?  I'm not using a PWM fan so I assume I don't have a choice on speed settings.  But what I really want the fan for is overhangs and bridges.  I see the check box for "enable cooling" but what if I only want it on for bridges and overhangs and short layer times?

I know this can't be that hard but I'm pretty stuck.  Help?  Thanks.

SD4 w/ RUMBA, E3D Volcano, all bearings, glass bed

2 (edited by grob 2015-08-31 00:51:46)

Re: How to get started with G-code nozzle fan? Firmware changes?

First step - if you've selected the right board in configuration.h, then the fan should be configured and work. The firmware implements the nozzle fan as long as the nozzle fan pin is configured, which it should be in the RUMBA pins.h.

Marlin can control any fan with PWM - all this means is it turns the power on and off quickly. You don't need a special fan or anything (you may be thinking of the 3-pin computer fans - the yellow wire is for a speed sensor, this is a speed output, not a control signal!).

First, check the fan voltage selector on the rumba is set right. The fan can take voltage either straight from main power, or from a 12V regulated supply. You've probably got 12V coming into the board, so it doesn't matter which, just make sure there's a jumper on the 3-pin header just behind the FAN0 connector labelled "PWR 12V-select".

I'd go straight to the terminal to test it's working, for confidence the host is OK.

Turn the fan on with:

M106 S255 ; on
M106 S0 ; off

If that doesn't work, then there's something else wrong:
* Get a multimeter, and check you get 12V between the two fan terminals on the RUMBA when it's on, and 0V when it's not.
* Check the fan is connected around the right way (red + and black -) (they're often not regular DC motors, and don't like being backwards usually - some don't work, some die, it really is a gamble).
* Maybe even test the fan with 12V directly to check it works.
* If all else fails, come back with some more detail about your marlin version and config and there might be something wrong in there...

SD3. Mk2b + glass, heated enclosure, GT2 belts, direct drive y shaft, linear bearings, bowden-feed E3D v5 w/ 0.9° stepper
Smoothieboard via Octoprint on RPi

3 (edited by mdrVB6 2015-08-31 22:45:06)

Re: How to get started with G-code nozzle fan? Firmware changes?

Okay, I went and checked these things.

I definitely have the right board selected, its been working for a long time and the only thing I am changing is this fan.
There is a jumper on the "PWR 12V-select" and the jumper for fan0 is set correctly (the same as fan1, which works fine.)

I made sure the fan is turned on, then checked the voltage at the terminals and got nothing.  Yes, I'm sure I did this right because fan1 reads 12v when it should.  So I'm not sure what the problem is.  I can see the / across the fan in repetier be removed when I send the command, so I know that is working.  Any other suggestions?  Thanks.

FWIW, the orange light next to fan0 is on, and toggles off when I turn the fan off.  So it seems right, but there is no 12v going to the terminals.

SD4 w/ RUMBA, E3D Volcano, all bearings, glass bed

4

Re: How to get started with G-code nozzle fan? Firmware changes?

mdrVB6 wrote:

Okay, I went and checked these things.

I definitely have the right board selected, its been working for a long time and the only thing I am changing is this fan.
There is a jumper on the "PWR 12V-select" and the jumper for fan0 is set correctly (the same as fan1, which works fine.)

I made sure the fan is turned on, then checked the voltage at the terminals and got nothing.  Yes, I'm sure I did this right because fan1 reads 12v when it should.  So I'm not sure what the problem is.  I can see the / across the fan in repetier be removed when I send the command, so I know that is working.  Any other suggestions?  Thanks.

FWIW, the orange light next to fan0 is on, and toggles off when I turn the fan off.  So it seems right, but there is no 12v going to the terminals.


Can you post a good clear picture of the board and an overall view of the fan connections and components around them?

Printing since 2009 and still love it!
Anycubic 4MAX best $225 ever invested.
Voxelabs Proxima SLA. 6 inch 2k Mono LCD.
Anycubic Predator, massive Delta machine. 450 x 370 print envelope.

5

Re: How to get started with G-code nozzle fan? Firmware changes?

What firmware are you using?  I know I should know the answer.

Printit Industries Model 8.10 fully enclosed CoreXY, Chamber heat
3-SD3's & a Workbench all fully enclosed, RH-Slic3r Win7pro, E3D V6, Volcano & Cyclops Hot End
SSR/500W AC Heated Glass Bed, Linear bearings on SS rods. Direct Drive Y-axis, BulldogXL
Thanks to all for your contributions

6 (edited by grob 2015-09-01 01:08:32)

Re: How to get started with G-code nozzle fan? Firmware changes?

mdrVB6 wrote:

Okay, I went and checked these things.

I definitely have the right board selected, its been working for a long time and the only thing I am changing is this fan.
There is a jumper on the "PWR 12V-select" and the jumper for fan0 is set correctly (the same as fan1, which works fine.)

I made sure the fan is turned on, then checked the voltage at the terminals and got nothing.  Yes, I'm sure I did this right because fan1 reads 12v when it should.  So I'm not sure what the problem is.  I can see the / across the fan in repetier be removed when I send the command, so I know that is working.  Any other suggestions?  Thanks.

FWIW, the orange light next to fan0 is on, and toggles off when I turn the fan off.  So it seems right, but there is no 12v going to the terminals.

Ok, if you can get the light to toggle, then that rules out firmware and uC I/O.

Next, please measure the voltage between ground (power supply -ve) and each pin of the fan screw terminal.

* The + pin should be +12V all the time, relative to power supply -ve
* The - pin should toggle between +12V and c. 0V when you change the signal.

If the LED is toggling, but that voltage on the FAN0 (-) pin is not, then the FET has failed (or board traces in/around the FET have failed). As carl suggests, please closely inspect (and maybe post a pic of) the fet (see below). Potentially it's got a dry solder joint or an obvious magic-smoke mark! Also worth checking is the solder joints for the screw terminal itself (bottom of board).

http://www.soliforum.com/misc.php?action=pun_attachment&item=9138&download=0

Post's attachments

fan0rumba.png
fan0rumba.png 102.03 kb, file has never been downloaded. 

You don't have the permssions to download the attachments of this post.
SD3. Mk2b + glass, heated enclosure, GT2 belts, direct drive y shaft, linear bearings, bowden-feed E3D v5 w/ 0.9° stepper
Smoothieboard via Octoprint on RPi

7 (edited by mdrVB6 2015-09-01 01:37:13)

Re: How to get started with G-code nozzle fan? Firmware changes?

Pic of the area:  http://imgur.com/gallery/V8mDaoU

Firmware is adrians.  Nothing related to fans have been changed. 

I could pull the board off to get a picture of the bottom if that is all that remails but I'd rather not if I don't have to.  I have no reason to suspect any damage.

Will try testing the voltage like grow suggested.  If not tonight, then tomorrow.  But the standard test across the terminals get nothing.

SD4 w/ RUMBA, E3D Volcano, all bearings, glass bed

8

Re: How to get started with G-code nozzle fan? Firmware changes?

I looked at the rumba schematic. They are using the FETS to switch grounds. That being said there should always be 12 volts on the pin with the red wire or the screw marked +. If there is not then you voltage select jumper is bad or there is no power being delivered to that circuit due to an open or damaged trace. You should also be able to measure 12 volts at the  top pin of the jumper with your meter grounded on a power ground. Dont use the fan ground for your meter.

Printing since 2009 and still love it!
Anycubic 4MAX best $225 ever invested.
Voxelabs Proxima SLA. 6 inch 2k Mono LCD.
Anycubic Predator, massive Delta machine. 450 x 370 print envelope.

9 (edited by grob 2015-09-01 06:13:11)

Re: How to get started with G-code nozzle fan? Firmware changes?

Yup, carl is right - if the (+) terminal is open circuit (not connected to 12V) then when you measure between the two terminals you'll read 0 whether it's on or off. This is why I suggest measuring both FAN0 terminals (+ and -) against the power supply -ve. smile

SD3. Mk2b + glass, heated enclosure, GT2 belts, direct drive y shaft, linear bearings, bowden-feed E3D v5 w/ 0.9° stepper
Smoothieboard via Octoprint on RPi

10

Re: How to get started with G-code nozzle fan? Firmware changes?

Okay, I just measured the fan terminals against the power supply when the fan is running (light is on).  When the meter is grounded to the fan0 terminal (-) and red probe is on the + of the PSU, I get 12.  When the meter is red on the + fan terminal and grounded to the PSU, it gets nothing.  So, unfortunately, this seems to indicate I have a broken trace, right?

SD4 w/ RUMBA, E3D Volcano, all bearings, glass bed

11

Re: How to get started with G-code nozzle fan? Firmware changes?

mdrVB6 wrote:

Okay, I just measured the fan terminals against the power supply when the fan is running (light is on).  When the meter is grounded to the fan0 terminal (-) and red probe is on the + of the PSU, I get 12.  When the meter is red on the + fan terminal and grounded to the PSU, it gets nothing.  So, unfortunately, this seems to indicate I have a broken trace, right?

Since you get 12 with the first setup that indicates that your FET is working and switching properly. With the second setup it indicates that 12 volts is not being supplied to the fan0+ as it should be. The voltage must go through the jumper next to that header. I have seen bad  jumpers. With the meter ground at power supply ground what do you get on the top pin of the jumper with the machine on? By top I mean the pin furtherst from the fan connector on the three pins the jumper can be placed on.

Printing since 2009 and still love it!
Anycubic 4MAX best $225 ever invested.
Voxelabs Proxima SLA. 6 inch 2k Mono LCD.
Anycubic Predator, massive Delta machine. 450 x 370 print envelope.

12 (edited by mdrVB6 2015-09-02 00:37:54)

Re: How to get started with G-code nozzle fan? Firmware changes?

I'm getting 12v across that pin and the PSU ground.  I also confirmed the jumper is good by switching it with the fan1 jumper.

SD4 w/ RUMBA, E3D Volcano, all bearings, glass bed

13 (edited by grob 2015-09-02 01:15:48)

Re: How to get started with G-code nozzle fan? Firmware changes?

If the top pin is getting 12V, the jumper is good, and the screw terminal is still not getting voltage then we're down to the last island! smile

Take the jumper off, turn the power off, and check continuity (resistance) between the middle pin of the 3-pin header and FAN0 (+) screw terminal. There should be c. 0 Ohms (i.e. directly connected), but from your previous tests sounds like that's not the case.

Fault likely to be a damaged trace, or loose solder joint. Check the joints behind the screw terminal, and behind the 3-pin jumper header. To be sure to be sure, resolder both. Look for abrasions, cuts, burns on both the front and back of the board in that area. Time to take the board out and check behind I'm afraid.

SD3. Mk2b + glass, heated enclosure, GT2 belts, direct drive y shaft, linear bearings, bowden-feed E3D v5 w/ 0.9° stepper
Smoothieboard via Octoprint on RPi

14 (edited by mdrVB6 2015-09-02 22:13:57)

Re: How to get started with G-code nozzle fan? Firmware changes?

I've never really checked continuity before but youtube helped.  There seems to be no continuity between the middle pin and the + terminal (multimeter does not beep).  However, this is also the case for fan1, which works fine.  So maybe I am doing something wrong.  There is no visible damage on the board, front or back.  I wouldn't trust myself to solder it anyway.  Any more suggestions? 

Are we sure that a firmware issue has been completely eliminated?  The light does toggle, so I think so.

SD4 w/ RUMBA, E3D Volcano, all bearings, glass bed

15 (edited by grob 2015-09-03 00:35:41)

Re: How to get started with G-code nozzle fan? Firmware changes?

* For the same reason you suggest (the toggling light), I'm also sure it's not the firmware.

* I would be sure it's not the FET if you can confirm that you've seen the voltage between power supply (+) and the FAN0 (-) pin toggle along with the light (12V when on, 0V when off).

* Not to be rude but I'm also a little suspicious of the continuity measurement - make sure you get a beep when you touch the multimeter probes together (only some multimeters beep, and only in a specific continuity mode - others just measure resistance/ohms; approx. 0 ohms means continuity), and make sure the power to the board is completely off (while I'm pretty sure this isn't a problem here, it's good practice for resistance/continuity measurements). If FAN1 is working, you really should be getting continuity there (see diagram below, fan0 and fan1 are identical, there should be a direct connection between pin 2 of the 3-pin header and pin 1 (+) of the screw terminal).

* If there's no damage, but you don't have continuity, then I'm afraid I'm stuck. Something *must* be wrong in there, we're just not seeing it. Given the (-) terminal seems to work, you could just leave the fan (-) lead there, but wire your fan (+) lead straight to power supply (+) and not bother with the FAN0 (+) terminal!

http://www.soliforum.com/misc.php?action=pun_attachment&item=9140&download=0

(Also, don't stress about soldering, it's fun hehe. These are just terminals, they're big(ish) and will tolerate plenty of heat. Maybe a different story if we were asking you to replace one of the stepper IC's! smile)

Post's attachments

fan0rumba_schematic.png 38.47 kb, file has never been downloaded. 

You don't have the permssions to download the attachments of this post.
SD3. Mk2b + glass, heated enclosure, GT2 belts, direct drive y shaft, linear bearings, bowden-feed E3D v5 w/ 0.9° stepper
Smoothieboard via Octoprint on RPi