I'm using three PWM outputs from an Arduino Mini Pro to drive the R/G/B parts of some strips of LEDs. The circuit is basically this: circuit diagram

I've got a single 12V power supply, rated at 200W, to light the LEDs and to power the Arduino via the RAW pin, and there are 5 metres of 60LEDs/m RGB LEDs, i.e. a total of 300 LEDs, which should be drawing ~72W according to the spec sheet (14.4W/m).

The problem is that even when the sketch says digitalWrite(9, 255); digitalWrite(10, 255); digitalWrite(11,255), the LEDs are considerably dimmer than when connected directly to the 12V supply. My cheap, digital volt meter measures ~8.1V between GND and the PWM pins across the LEDs, not the 12V that the transformer is supplying.

Am I doing something wrong? Does the MOSFET really cause such a large drop in voltage? Is there anything I can do to mitigate it? (It's important to get as much brightness as possible from the LEDs for this project).

  • Which MOSFET are you using? And what voltage is the MCU running on? Mar 17 '15 at 17:27
  • Sorry, should have said — I've got three STP36NF06L MOSFETs. As for the MCU (I take it that means "the Arduino", yes?) — as I said, I'm supplying it with the same 12V as the LEDs, via the RAW pin (the right-most pin on the bottom row of this picture, which I think the Arduino steps down to 5V to use on board.
    – Tim Morley
    Mar 17 '15 at 17:52
  • The pwm pins should only be 5 volt at the most. Or are you referring to the drain of the mosfet? Can you post a picture of your wiring?
    – Gerben
    Mar 17 '15 at 20:59
  • Gah, sorry, the 8.1V is measured across the LEDs, not at the Arduino's PWM pin (which is obviously, as you say, at ~4.8V). I've just edited my post to show the correction. I added a circuit diagram at the same time. [I've actually used pins 9, 10, 11 rather than 3, 5, 6, but otherwise my circuit is as shown.]
    – Tim Morley
    Mar 18 '15 at 11:44

By my calculations you are sinking 6 amps:

72 W / 12 V = 6 A

I have some doubt that the Arduino board is designed to handle that amount of current through its ground plane. Try running a separate ground wire to the MOSFET sources.

I would also be concerned about the gauge of wire you are using, and whether the prototyping board can handle that amount of current.

  • +1 Absolutely - the Arduino board is not built for supplying that much current, even as a 'pass through'. Connect the 12V supply (both +Ve and GND) directly to the MOSFET/LED portion. Sep 21 '15 at 12:38

Your MOSFETs may not be appropriate for driving from a 5V device. I had a similar problem and someone suggested I need to use a MOSFET with a low turn-on voltage, specifically IRLB8743 (http://www.irf.com/product-info/datasheets/data/irlb8743pbf.pdf) which is fully enabled at 4.5V. You might also find that your MOSFETS are getting warm because they are acting as resistors if not fully engaged. In the above datasheet it says "Very low RDS(on) at 4.5V" meaning low resistance when VGS (arduino output voltage) is at 4.5V or more.

Your datasheet is here http://pdf.datasheetcatalog.com/datasheet2/8/0iyt26iogeofcyaowtrx4z7iwiky.pdf and I'd love to be able to tell you how to compare but I'm not sure which values to look at :/

The breadboard itself may also be introducing resistance. If you wiggle the mosfets around and the lights change brightness this is likely.

LEDs have a set forward (turn on) voltage. You can expect to see that voltage drop over LEDs and not more, which does not indicate the problem (current).

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.