(photo credit – Adafruit)
Something easy to forget when building you own electronics it the importance of a good power supply. Equally important is power distribution (wiring).
The LPD8806 LED strip we are using runs best off 5V, but will actually pretty well anywhere between about 3V and 6V, with obvious brightness changes. But the controller (Olimex OLinuXino i.MX233 Micro/Maxi, or Raspberry Pi) is quite a bit fussier, and really wants 5V +/- 5% (4.75V to 5.5V), without too much noise or ripple.
The LED strip draws about 50mA per LED at full brightness, so our 52 LED set up can potentially draw over 2.5 amps! And you want to allow another 200mA to 400 mA for the CPU and WiFi (lower value for Olimex Micro, higher value for Olimex Maxi or Raspberry Pi).
So you’d think that a 5V 3A supply should be fine, and all will be well. But it isn’t quite that easy. The Freescale i.MX233 really does not like its 5V supply going below 4.7V, or it will restart due to brown-out detection. I expect the Raspberry Pi is much the same, although I didn’t experience any problems with them during development.
For example we found that the output of a common 5V 3A plug pack could easily drop to maybe 4.8V above 2 amps. Add in some common 24AWG wire plus some connectors, and you can easily lose another 100mV or more.
As another example, the connectors and some short sections of wire in the following photo were dropping nearly 200mV when carrying a couple of amps.
Running off a 50W (5V 10A) supply (from Adafruit) gave us some leeway during initial development, as these supplies actually output something like 5.3V at no load. Thus at a few amps, the voltage doesn’t go far below 5V.
So what are the solutions?
– Calculate your total power budget early, and add in a bit extra
– Use a decent quality power supply – not a $2 one from ebay!
– Use good quality connectors, and only where necessary
– Use heavier gauge wire where possible
– Use a star connection method from the power input to each LED strip section, and separately to the controller board
The star connection used in our prototypes is shown below (photo from the previous post). The black device is a 6V Transient Voltage Suppressor across the power input.
Also note that the OLinuXino Maxi actually requires at least 6V at its power input. In the next post I’ll explain how we got around that in our prototypes.
For some further info on the quality of various USB chargers (including cheap counterfeit ones), and how well they handle higher currents, check out this great article at Ken Shirriff’s blog – especially the Power Curve section. Most of these are only rated to 1 or 2 amps, but it helps to understand a bit more about trade-offs in power supplies.