Main Content

I’m lucky to have friends working in the electronics industry in various different capacities. Through them, I’ll occasionally get hold of some unwanted/rejected/surplus boards or components that would otherwise just end up in the WEEE bin. It’s always nice when one of these lands on my desk that I think “hey! I could do something with this!”. Recycling!

The Boards
This time, it’s some LED boards. Each board has 100 LEDs pre-soldered to it. There’s no connection between any of the LEDs, but they are arranged into a 20-by-5 matrix. There are M3 and M2.5 holes drilled at the top and bottom of each LED. The boards measure ~145mm by ~240mm.

These boards aren’t intended to be used as-is, they’re break-outs for individually-mounted LEDs that are used for a high-output illumination application in a product. The actual LEDs used are Cree® XLamp® XM-L type, which are insanely high-output chips with a maximum DC forward current of 3 amps - at that current though they require significant thermal management and are unpractically (and eye-damage-inducingly) bright for most applications.

I decided that at a more sensible current, the rectangular array layout of the LEDs could be leveraged to produce a display. I set to work finding a suitable driver to run the whole array as a multiplexed matrix.

Driver Shopping
I know nothing about LED drivers; and sometimes, coming to a completely new field like this, you often don’t even know what to Google to find what you’re looking for.

Search terms like “led matrix driver ic” and “led array driver” were annoyingly good at finding offerings from ST and other companies that were mainly focussed on driving large LED backlight panels (controlling many LEDs in the same way at the same time). That seems to be a far more common requirement these days with the prevalence of LED backlights for large LCDs. My requirement was for an LED multiplexer IC that could individually modulate the output of LEDs in an X-Y matrix.

Eventually though, you start to stumble on terms that are more conducive, or rule out unwanted offerings with boolean searching (-backlight etc). TI’s TLC5958 looked like a good prospect - 48 channels, PWM modulation multiplexing. A few downsides irked me though - the requirement for the LED common anodes to be switched using your own external FETs for instance.

Eventually, I found a more straightforward option from ISSI (Integrated Silicon Solution Inc.). Their IS32FL3738 (6x8 Dot Matrix LED Driver) looked like it ticked all the boxes - all switching on both the anode and cathode side taken care of; easy to communicate with via I2C; a straightforward-to-solder TSSOP package. The chip has 8 current sources and 6 current sinks, so that would mean I would need 3 of them to control the entire panel (with some spare/wasted capacity given the odd number of LEDs on the board - 100).”

Link to article