Go Down

Topic: NeoPixel + Arduino Micro ----- Fish Tank Illumination Project (Read 3643 times) previous topic - next topic

zdiesel

Jun 25, 2014, 06:43 pm Last Edit: Jun 25, 2014, 07:49 pm by zdiesel Reason: 1
Hey Everyone,
New to the forum and relatively new to Arduino's. The only real experience I have had with them is with a couple small projects for my controls class (studying mechanical engineering). Regardless, I rebuilt an old Muncie 4 Speed (for any car people on here that may know what I'm talking about) and I had the old case left over so I gave it a real good wash and degrease and lined the inside of it with a non-toxic sealer.  I've also punched a couple clear acrylic panels out that I have attached to some openings on the case and sealed with silicone for viewing windows. One is on what will be the bottom of the fish tank so I decided to illuminate the tank. I did a little research and ordered up the following from Adafruit...

1 x NeoPixel Ring - 16 x WS2812 5050 RGB LED with Integrated Drivers http://www.adafruit.com/products/1463
1 x Arduino Micro without Headers - 5V 16MHz ATmega32u4 - Assembled http://www.adafruit.com/products/1315

Now my question is about powering the NeoPixel Ring. The Arduino Micro I'm currently planning on powering through the Micro USB port on the board, but I would also like to run the NeoPixel ring off of the Arduino for a couple reasons (simplicity, keep clutter down, and less wires). My concern comes in with current draw, I'm aware that most Arduino's have a regulated voltage output pins, buts its to my understanding that drawing to much current through the regulated 5v pin can fry the board which is obviously undesirable. Each RGB LED draws 60mA at full brightness which accumulates to a 960mA draw if the LED's are running full swing. Is this current level too high for the 5v output pin where I'll be running the board from a 5v cell phone charger off the USB port?

Alternatively, I've also heard of people powering LED strips off the VIN pin, which I really haven't been able to find a clear answer as to what exactly the VIN pin is/does. I've read that if powering from the USB port, the VIN would act as a direct connection to the power source (USB charger) with no regulator or sensitive electronics to worry about. Could be way wrong, looking for some clarification.

Also, most LED's operate at 3.3 or 3v so I should run a resistor in series with my power feed to tame the voltage down some from 5v, Correct? Can you tell why I'm a mechanical engineering student and not electrical yet? haha

I'll post some pictures of the tank later when I get home from work. My order from Adafruit should be there when I get home as well!

PaulRB

#1
Jun 26, 2014, 12:44 am Last Edit: Jun 26, 2014, 12:57 am by PaulRB Reason: 1
Hi diesel,


I'm currently planning on powering through the Micro USB port on the board... I'm aware that most Arduino's have a regulated voltage output pins, buts its to my understanding that drawing to much current through the regulated 5v pin can fry the board


Yes, there is a limit to how much current the onboard 5V regulator can supply, and I'm certain the ~1A your neopixels could draw would be too much for it. However, if supplying 5V through the usb connector, then the on-board 5V regulator is bypassed anyway, Unfortunately, I would be concerned about drawing an amp that way also. There is a transistor which selects between the 5V from the USB and the Vin pin. There will be a limit to how much current that transistor can handle. Then there are the pcb tracks on the board itself. They might not be wide enough to handle an amp.

I've also heard of people powering LED strips off the VIN pin... I've read that if powering from the USB port, the VIN would act as a direct connection to the power source (USB charger) with no regulator or sensitive electronics to worry about.


They may be powering the Arduino with a higher voltage, e.g. 12V, through Vin, and also powering the LEDs off 12V also (regular LED strips, not Neopixels). The Vin pin feeds the onboard 5V regulator.


Also, most LED's operate at 3.3 or 3v so I should run a resistor in series with my power feed to tame the voltage down some from 5v, Correct?


No, each Neopixel has a built-in driver chip which regulates the current to the r, g & b leds. The driver chip needs 5V input and regulates the voltage to the leds. If you supply too little voltage, you will find the blue fades or does not work at all. Supply less still, the green will also start to fade, leaving only the red. I have a small string of 10 Neopixels running off 3 x NiMh AA cells (~3.75V when freshly charged) and although the Neopixels operate ok at first, this is exactly what happens as soon as the cells begin to run down.

My advice would be to get a 5V regulated supply of at least 1.5A with a barrel-type plug rather than a USB plug. Also get a matching in-line or panel-mount barrel socket. Feed 5V from this to the Neopixels and to the 5V connector on the Arduino. That way the current for the leds does not pass through the Arduino at all. Don't forget the ground connections!

Also, make friends with an electronics engineering student and get them to explain this to you. The parts dealing with power supply are in the top-right part of the schematic.

Paul

zdiesel

Ive got a few EE friends, bless them haha.

Adafruit sells a 5v regulated 2000mA supply, I'll order one. Went to radio shack and they wanted like $25 for a power supply  :smiley-eek:. I picked up a 2.1mm barrel socket while I was their because I figured the Arduino wouldn't drive upwards of 1 A.

So you're saying I can feed the positive lead from a 5v regulated power supply into the 5v pin on the arduino to power the board? Or do I need to use the VIN pin to power the board?

Here's a picture of the project, you can see the hole in the bottom of the case thats covered in acrylic, thats where the LED will sit to illuminate the tank.


zdiesel

Hooked it up to the 5v source for now, seems to be powering it just fine. Only running brightness at 40% (higher in the video, was before I set the brightness in the code) and I don't see needing to run it at more than that...I don't need to blind my fish haha

Dry run, I think it will look sweet with some gravel a plant and a colorful beta swimming around in it

https://flic.kr/p/o7oDLv

Go Up