So been playing with all kinds of stuff with the arduinos. I just recently fried my first pro mini and a litlle single RGB LED breakout board and I'm still scratching my head on the why.
I purchased a higher end AC -> DC converter. It puts out 12v DC and can do up to 30a. The intent is to use it to power some RGB LED strips that'll take about 6A. and have the pro mini control it via PWM to the mosfets. (gate on the mosfet is 2.5v and it's specifically designed by sparkfun for this).
The arduino will be talking to some mosfets doing PWM for the DC power coming off the converter.
I know my arduino pro mini can be powered by up to 12 volt so I tried using only 1 SMD5050 (RGB LED) I have on a PCB and testing running the whole thing (LED and pro mini) off the 12v. It did not end well for the arduino or the LED.
I ran the 12v in to the power rails of the breadboards. While I'm typing this, I just realized 1 thing I did wrong. Rather than take the DC power in the breadboard and send it to the raw port of the pro mini, I had it connected to the Vcc port of the pro mini right next to a3. This worked whenever I've been using the low amp wall wart that runs 5v.
Anyway. Looking for some pointers other than the one I just realized of not using the raw about anything else I should have learned.
I had 3 of the pins that do PWM all running to resistors (I don't recall the values at the moment) and then to the RGB pins on the breakout board. The Gnd of the breakout was wired to the negative rail of the breadboard.
One thing I'm uncertain about is if you feed the arduino 12v and it's a 5v arduino, what does it do with the difference on the pins that I always expect to do 5v when on and 0v when off. Either I have to take additional precautions (I'm thinking about heat generated) running him 12v or do I have to add something else to make sure the digital and analog pins only do 5v?
Asking here because I still feel like I should have learned more than I did from this. Thx.
If you power from 12 volts, you should power your Arduino through it's on board regulator (if available).
You have already learned that.
After doing so, your chip will be fed (close to) 5 volts and that is what it can output on it's pins.
You need to know that you can't just count on all available outputs to keep this 5 volts, because there are limits to the currents that can be supplied by the regulator and to that that van be handled by the chip.
(And voltage will drop if current rises)
Also you can't just multiply the maximum current per output by the total number of outputs, the maximum total current is significant lower than that.
You should know what resistors were used for your RGB LED, it is not unlikely that each color needs a different value.
You should have a datasheet for each device you want to use for optimal performance.
That includes the Arduino and the chip it has.
Thanks for the responses. Feel better now that I know not just the what, but the why also.
LarryD: One I heard in another hobby of mine, "you start with a bag full of luck and an empty bag of experience. The trick is to fill the bag of experience before you empty the bag of luck." Already had 3 & ordered 10 more.
MAS3: Thanks for the comprehensive list. When I first set up this breakout with the LEDs on the board, I looked up the right resistors to use for each R/G/B. I just didn't know if powering the arduino off of 12v would change the voltage and by extension the appropriate resistor.
isptech151:
One thing I'm uncertain about is if you feed the arduino 12v and it's a 5v arduino, what does it do with the difference on the pins that I always expect to do 5v when on and 0v when off. Either I have to take additional precautions (I'm thinking about heat generated) running him 12v or do I have to add something else to make sure the digital and analog pins only do 5v?
Asking here because I still feel like I should have learned more than I did from this. Thx.
Firstly you should realize how fragile logic devices are to over-voltage - the ATmega chips
used in most Arduinos are designed to be powered from 1.8V to 5.0V. They only tolerate
a continuous supply voltage of 5.5V (10% more). 6V will start to risk permanent damage,
12V will definitely destroy it in microseconds as all the transistors on the
chip blow their gate-oxide layers. Gate oxide layers are a few atoms thick...
So anything with > 5V on it has to be treated as "highly dangerous" and your should always
double-check your circuit before applying power - double-checking saves time and money.
The built-in regulator on the Vin pin will work from 12V, but its job is to waste the
excess voltage, so that a lot of heat may be generated - in fact the voltage-excess
times the current from the load (the microcontroller and anything you run from it).
If you are powering a lot of devices directly from the Arduino pins and the Vcc pin
all that current comes from the regulator and it might be too much when powered
from 12V on the Vin pin as 7V are dropped across the regulator. Power Vin from
7.2V instead and only 2.2V are "wasted" - so a lot more current can be regulated to
5V for the same heat generation.
If in doubt use an external voltage regulator to provide 5V for high-current loads
(LED array at 5V for instance).
One trick I use when running from 12V is to have an external 8V regulator chip
to power Vin - this shares the heat dissipation and helps out, especially as external
regulators can have a heat-sink bolted on. I then don't have to worry if the 12V is
12V or 24V, both will work (larger heatsink may be needed)