Fans - Is always on okay?

Should we just wire fans for always on when main breaker closed? Or perhaps relay switch or PWM control when the robot is enabled?

I’m sure a career inspector will probably weigh in on your question, but in my experience wiring the fans for “always on when the PDP is energized” shouldn’t be an issue. Just be sure to wire the fans through a 20A breaker on the PDP to remain legal.

Always on is legal; see beginning of R36 for the exception to requiring a power regulating device. The 20A breaker limit is in R59. R37 permits them to be controlled by a relay or other controller, which you may do to conserve battery life, perhaps controlled via a temperature or infrared sensor.

Added: Actually, as they are classified as CUSTOM CIRCUITS, you can even control them from a relay not listed in the rules controlled by (for example) an Arduino. Note that not all fans are legal; they must fit one of the requirements of R37 table 10-1, fifth row from the bottom.

Hard drive motors or fans that are: included in any Kickoff Kit, distributed via FIRST Choice, part of a legal motor controller (including manufacturer provided accessories), or part of a legal COTS computing device

I really hope FIRST changes this next year to some sort of technical limitation on fans, or even just a list of part numbers of commercially available fans (including those that are legal under the current rule?). It’s getting a bit tedious to figure out if an old dusty fan at the bottom of some bin is usable…

1 Like

Cool thanks.
So is it legal to control fans from RoboRIO PWM ports? How about when disabled? Might save us throwing in a relay.

The only thing you should be plugging into PWM ports is a motor controller or servo. If you want to use a motor controller to control one or more fans, OK - but then the things controlled by that motor controller will be the only things allowed on that PDP output per R59, row 1 of the table.

If they’re small enough, you could power them from the PDP or VRM; the PDP would even allow switching. You could also use an inexpensive relay module to control them via a DIO or relay port.

From the RoboRIO user manual I see the relay ports appear to be just 5V digital outputs. Going to assume these aren’t for driving relay coils and won’t have flyback diodes nor decent current source capability either. Hmmmm, this looks more like a custom circuit application. Maybe the fan will run all the time :thinking:

Those relay modules don’t require signals to drive the relay coils; those are provided through separate 12V pins (which you would power from a breaker or VRM, usually the same power source as the fan). They only require a signal-level 5V (or less; the great majority work on 3.3V, and some down around 2.2V) which is enough to light up a tiny LED hidden inside an opto-isolator. The other side of the opto-isolator then passes the 12V to the relay coils.

Note that because of the isolator, most (not all) of these relay modules are negative logic - that is, providing a high voltage to the LED produces the same result as no power, providing ground lights the internal LED and causes the relay to switch.

You could drive a fan with a dedicated PWM input from the Roborio, if the voltage and PWM speed are compatible.

But…Are your electronics really going to get that hot in 2.5 minutes? Fans really need ducting to be effective.

Please don’t connect a fan to the Roborio pins. Any of them. The motors in many fans will inject noise back into the power suppy of the Roborio. This can cause all sorts of wierd problems that will be next to impossible to troubleshoot at an event.

Depending on the fan, the current drawn by the fan may also cause the 5V regulator in the Roborio to shut down. This will probably not be a good thing to have happen to your robot or the robot of someone who read your post.

If the OP is just trying to cool the compressor, mounting the fan right next to the compressor is good enough.


We’d never consider running fans from anything other than the PDP. It’s about speed control, or running flat out with no control at all, and if we can use a PWM port (without 5V of course). Pretty sure we’re stuck using a relay to drop power when the robot is disabled though if we want it off when disabled. You’ll enjoy this one Phil - see you in Canada next week!

I’m looking forward to meeting you and your team.

Sorry but the meat pies are not up to Kiwi standards. There are a few places near the venue to try poutine though.

Please keep in mind the Rio output lines do not source near enough current to run a fan. (4 mA for the DIO, 7.5 mA for the relay, & 15 mA for the PWM. Besides I think all the legal fans (KOP) are 12 volts.

We use to run the victor 8xx cooling fans (essentially KOP fan) directly of the motor controller feed generally 40amps.

This topic was automatically closed 365 days after the last reply. New replies are no longer allowed.