16 Channel PWM LED driver starter board - DIY kit - Arduino code availableDesigned by madworm in Germany
MBI5030 starter board DIY kit What is it? As the title says, it is a small 'dev-board' that will get you started with the Macroblock MBI5030. Macroblock is a Taiwanese manufacturer whose product l...Read More…
As the title says, it is a small 'dev-board' that will get you started with the Macroblock MBI5030. Macroblock is a Taiwanese manufacturer whose product line includes a wide variety of very affordable and quite capable LED driver chips. They're available at kingelectronics, a US based distributor for them. They do sell small quantities to everybody.
The MBI5030 is a 16-channel constant current LED driver with 16/12-bit PWM. You send your data just once, feed the chip with a constant high frequency 'grayscale clock' and it takes care of the rest. Many AVR chips can be programmed (FUSE setting, needs an ISP programmer or 2nd Arduino loaded with 'Arduino-ISP') to output their system-clock on a certain pin. That option is quite suitable to drive the 'grayscale clock'.
The main idea for this board came when I was trying to write some code for that chip. I simply didn’t want to breadboard all of those LEDs, too many wires, wouldn’t easily survive transportation in a bag… With 16 onboard LEDs, all you need to wire is power and the SPI interface and you’ll get visual feedback instantly. When satisfied, pull the jumper, add high(er)-power LEDs and an external power supply to test the real thing.
I have found these chips quite valuable if you frequently deal with LED projects and have to keep the cost down. Chips from other major manufacturers (TI...) are nice too, but for a similar set of features they make you pay a lot, especially for small quantieties. It may be worth to have a look at the MBI chips, maybe even build a small stash of them. That saves shipping costs in the long run.
Developing and testing code for said chip.
Minimalistic build-instructions with photos
This DIY KIT is intended for experienced masters of the soldering iron or lords of the toaster-ovens. If you haven't soldered 0603 parts before, you will get into serious trouble. Get some practice first!
However, soldering will become much easier if you're willing to do without the on-board LEDs. That somewhat defeats the purpose of this board, but you'd still get a pretty decent LED driver.
The example Arduino-sketch contains ASCII-art showing how to wire things up quickly.
Obviously you'll need 5V and GND. Then there's the 'GCLK' wire supplying a high-frequency signal to drive the 5030's PWM generation (counter + comparators).
Send-only communications (writing data and configuration bits) needs 'SDI', 'DCLK' and 'LE' to be wired. If you also want to read information back (LED error status, configuration bits), connect 'SDO' as well. If you don't need that, connect the Arduino pin that would go there to GND using a 10k resistor. That way all reads consistently return 0.
P.S. The zylon demo is part of the Arduino library for the 5030 chip (see source code link).
Josh | Aug. 20, 2015
We recognize our top users by making them a Tindarian. Tindarians have access to secret & unreleased features.
We look for the most active & best members of the Tindie community, and invite them to join. There isn't a selection process or form to fill out. The only way to become a Tindarian is by being a nice & active member of the Tindie community!