General Miata Chat A place to talk about anything Miata

fan current draw issues need EE advice

Old 06-25-2018, 03:59 PM
Senior Member
Thread Starter
Join Date: Jun 2015
Location: TAMPA, FL
Posts: 787
Total Cats: 18
Default fan current draw issues need EE advice

I have been having problems because my fans draw too much current, especially at idle. I was thinking about making a fan controller to address my problems an hopefully the problems of others as well.

Basic premise is:
Controller: Arduino
Power: 12v switched, w/ volt reg for chip
  • Fan 1 circuit
  • Fan 2 circuit
  • RPM

Basic idea is that when the fans turn on, it instead signals the controller to run them (via some big mosfets). But it only runs them at 100 percent duty cycle above 2500 RPM. Up to 1500 RPM 50 percent cycle, up to 2000 75 percent. This keeps everything happy at idle.

  1. Was going to sense RPM by splicing into the trigger wire on one of my COPs and feeding it to an opto-isolator. This shouldn't affect the wire I'm tapping in to, should it?
  2. Was going to do something similar with the 12v fan power... Do I just connect the 12v line to the isolator and then to ground or am I missing something?
  3. Can you run fans via PWM?
  4. Am I missing some obvious reason this is a dumb idea?
AlwaysBroken is offline  
Old 06-25-2018, 04:06 PM
Senior Member
matrussell122's Avatar
Join Date: Sep 2016
Location: Seattle
Posts: 1,271
Total Cats: 201

I know nothing about Arduino but my fans are PWM controlled. I also had to run an external 35a relay because the factory one is only good to 10a
matrussell122 is offline  
Old 06-25-2018, 05:00 PM
Tweaking Enginerd
iTrader: (2)
Join Date: Mar 2013
Location: Boulder, CO
Posts: 983
Total Cats: 119

Sure, what you are describing could work. The Arduino Uno can only drive 5V, so you have to chosse switches that are logic level. Make sure you flyback the drain to VBATT, or alternatively get a FET with a large VDS voltage. I suspect a FET with high VDS at the current you want, logic level may be a little harder to find.

I would use a relay for the high side (12V), or allow the main ECU to continue controlling the 12V turn-on and splice your FETS into the low side (Return) on the fans.

Most Miata versions have a tach signal, I would use that instead of the coil triggers. I don't think you will need to opto isolate that, but you will need to level translate. Running a precision counter in an arduino requires interrupts. You can do it with polling if you don't mind a little error in the signal. Another option would be to put the TACH on the 20dB slope of either a low pass or high pass filter followed by a diode and secondary R C to ground. Then you can sample it directly with the ADC.
Ted75zcar is offline  
Old 06-25-2018, 05:39 PM
Senior Member
Thread Starter
Join Date: Jun 2015
Location: TAMPA, FL
Posts: 787
Total Cats: 18

I just had an epiphany. I'm going to disconnect the fans from each other (I did the old ECU wire cross trick years back). I have a theory that having both running at the same time when the AC is off isn't really that important. I mean, so long as you are ducted properly, the fan only works when you're not moving.... Which means low thermal load.

If that doesn't work, I'll break out the soldering iron.

Edit- I'll put a divider between the fans so only one fan on doesn't suck air through the other hole instead of the radiator. Yay riveting.

Last edited by AlwaysBroken; 06-25-2018 at 06:22 PM.
AlwaysBroken is offline  
Related Topics
Thread Starter
Last Post
02-10-2014 09:59 AM
01-27-2009 11:03 AM
General Miata Chat
01-22-2009 09:35 PM
General Miata Chat
11-01-2008 02:10 AM
General Miata Chat
06-10-2008 08:39 AM

Thread Tools
Search this Thread
Quick Reply: fan current draw issues need EE advice

Archive - Advertising - Cookie Policy - Privacy Statement - Terms of Service

© 2019 MH Sub I, LLC dba Internet Brands

We are a participant in the Amazon Services LLC Associates Program, an affiliate advertising program designed to provide a means for us to earn fees by linking to and affiliated sites.