While testing out a power supply, using my older B+ w/ a Unicorn HAT mounted, I decided to try maxing out the brightness on the Unicorn’s LEDs. Yes, I read the warnings, and no, no eye damage occurred. :)
My script for testing:
pi@megamaid:~/unicorn-hat $ sudo python3
Python 3.4.2 (default, Oct 19 2014, 13:31:11)
[GCC 4.9.1] on linux
Type “help”, “copyright”, “credits” or “license” for more information.
import unicornhat as u
u.brightness(0.2)
for y in range(8):
… for x in range(8):
… u.set_pixel(x,y,255,255,255)
… u.show()
…
u.brightness(0.5)
u.show()
u.brightness(1.0)
u.show()
However, I saw something I did not expect: When brightness was set to 1.0 and show() was run, the LEDs went to full brightness… and then there were wisps of smoke! I didn’t spend time trying to track down precisely where the smoke emanated from - I chose instead to quickly unplug the Pi.
The smoke appeared to rise from the left edge of the HAT, so it could have come from the Pi itself, or from the chips on that side of the Unicorn HAT. The Pi itself appears to be in working order (sans Unicorn HAT), so I suspect the smoke didn’t come from the Pi.
Is this known or expected behavior? Did I just fry the unicorn? (I pulled the unicorn off my Pi and haven’t reconnected it since this incident). Should I sell Thinkgeek some pre-cooked unicorn meat?
If you want to pop that Unicorn HAT back in the post to us we’d be happy to take a look. I think it’s likely that any “smoke” was some contaminant burning off with the heat of the pixels (grease from fingers, etc).
You shouldn’t do any damage testing it again on your own Pi though I’d suggest dropping the brightness down to a more sensible level!
Thanks, Jon! I’m across the pond from you guys (I recently picked this up from Adafruit over here), so I think I might test it again before I ship it out. I used a macro lens attached to my DSLR to take some shots of the area I saw the smoke come from, and don’t see any obvious damage, so you may be right.
I’ll let you know the outcome. No burnt unicorns here, I hope!
Well, I tested it again. When I started, the Unicorn HAT still worked (more on that in a moment). 20% and 50% brightness worked as expected, but 100% brightness once again caused the smoke tendrils to start rising. Sure enough, it was coming from the chip marked W2N 56, which appears to be a MOSFET (feel free to correct me if I’m wrong!).
On a whim, I grabbed my multimeter and held a temperature probe to the smoking component. It peaked around 283°F, but I managed to snag this pic right after it started to fall… and immediately before the MOSFET desoldered itself from the Unicorn HAT. That’s right - it ran so hot at 100% brightness that it melted the solder!
Yes, this last test was done on a stove - it happened to be at a good height for my fairly tall tripod, and of course, it had a fire extinguisher nearby in case we judged wrong about the risk of testing this board again!). That being said, the stove itself was off - the temperature reading came from the MOSFET itself!
since this topic was opened, a year ago - the maximum brightness, the part that brightness 1.0 in software allows anyhow, has been capped, for the very reason discussed here. So, yes, setting unicorn pixels to 255,255,255 is safe.
I can confirm - running the Unicorn at 255,255,255 is now perfectly safe. As RogueM says, this was down to the driver not properly capping the power usage (apparently, Jon was surprised that the Pi was able to supply the power necessary to cook that component!). The bug was fixed last year, so unless you have a Unicorn software install older than that, you should be perfectly fine.