I have found a lot of topics but none of them describe what I want to use it for. Basically I want to put 104 RGB Leds under my laptop's keyboard and be able to control them individually. The following list is my shopping list:

  • 104 RGB Leds with common cathode @ 20mA each = ~2.1A total
  • 7 LED drivers (TLC5940)
  • 3 voltage regulators (IRF9520)
  • 3 resistors @ 4.7K

Now I want to control each LED individually and I will create a proof of concept with an Arduino but my questions are as follows:

  • Is the laptop's keyboard cable capable of delivering ~2.1A?
  • How can I supply a clock to the LED drivers (straight from laptop motherboard)?
  • Would it be possible to control the LED drivers with a Windows driver or would I need a separate controller like an Arduino?
  • \$\begingroup\$ besides that its probably not a good idea to run them all at 20mA, we don't know anything about your laptop to answer any question about its properties. And even when we knew the model and make, there is no way to figure these things out because the manufacturers give no guarantees whatsoever \$\endgroup\$
    – PlasmaHH
    Commented Nov 14, 2015 at 16:37
  • \$\begingroup\$ I understand, but this is the challenge. I want to find out if it's possible theoretically before implementing. The 20mA is just the specification of the LED. I might run them lower but I will need to test the visibility of the LED. I have an K55VM from Asus if that helps. \$\endgroup\$
    – John Smith
    Commented Nov 14, 2015 at 16:43
  • \$\begingroup\$ An IRF9520 is not a voltage regulator, and why do you need a regulator anyway? And why three resistors of that particular value? I would consider using two MAX7219 LED drivers. \$\endgroup\$ Commented Nov 14, 2015 at 17:04
  • \$\begingroup\$ Have you stopped to think what a wiring nightmare this is going to be? Laptops don't tend to have much extra space, and their keyboards are quite thin - how do you expect to fit all of that in there? Practically speaking, you would basically need to replace the main (flex?) circuit panel of the keyboard. Wiring would be a lot simpler with addressable LED modules, though they will probably cost more. \$\endgroup\$ Commented Nov 14, 2015 at 17:43
  • \$\begingroup\$ Yes, wiring is an issue and I know this. But I love a challenge. I looked up what I found to be named "LED Pixels" that are prewired but they indeed are quite pricey. On the other hand, I tried stuffing some RGB Led's under an older and smaller laptop keyboard and it went quite alright. There actually was just enough space under the keys. @Wouter van Ooijen you speak about MAX7219 which indeed would present a better alternative and sorry about using the wrong term. I basically threw together a bunch of parts I found in other LED multiplexing projects. \$\endgroup\$
    – John Smith
    Commented Nov 14, 2015 at 17:47

2 Answers 2


Your very best bet is to use Neopixel LEDs and a small Arduino as a controller. These are designed to be individually addressable, easy to wire together in a daisy-chain fashion and there are lots of examples of controlling them with Arduinos.

Adafruit is a great place to start: https://learn.adafruit.com/adafruit-neopixel-uberguide


Is the laptop's keyboard cable capable of delivering ~2.1A?

Probably not. Laptops, are designed to not be very power hungry. all their components are too.

How can I supply a clock to the LED drivers (straight from laptop motherboard)?

There may not be any usable clock inside your motherboard on any connectors. Even if you pull clock signal out of motherboard traces, In all probability, you might overload the capacitance on clock lines, and your clocks may fail to start. BTW, I do not see any use of clock signals

Would it be possible to control the LED drivers with a Windows driver or would I need a separate controller like an Arduino?

You may be able to signal your LED drivers through SMbus, but you'd need to rig up some interfacing hardware (like arduino). It may be a lot easier to hook up a usb-I2C/SPI/UART etc and use that with arduino instead. If your hardware sits on a standard bus, you would not need to write a driver. You would still need to write your application though.

I would like to add, if I was undertaking such a project, i would consider something like ws2812. They are easy to wire, come as strips, and are easy to control with arduino. They allow you to control color and brightness of individual leds, thereby allowing you to reduce overall power consumption by a lot.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.