I want to start a project using java to make led strips in my room react to the audio being played (preferrably via mp3 on my phone/pc, not just through picking up on sound in my room). However, I don't know what LED strips i need/what to look for in them that would allow me to control them via a java program and not their built-in music sync programs.

I know there are LED strips like these:



But I don't know if I would be able to control those via my own program (probably running on a Raspberry Pi board). So basically, what LED strips would allow me to control them via a "music sync" program of my own?


There are many kind of LED strips, however, if you work with Raspberry (or any MCU), I guess you want to use addressable led strips (like WS2811, WS2812, WS2813).

The reason is that you can switch on the Red/Green/Blue color of each LED separately.

If you don't want that, use non addressable LED strips (of course these are cheaper).

The difference between WS2811, WS2812, WS2813 is (among others) the fact that if one LED is broken, the remainder of the strip still works.

Also there are LED strips who can handle water/liquid slightly better (for outdoor use).

Some differences (from Differences):

  • WS2811 is the old version with external IC , it often made to DC12v addressable strip light, has only one signal too but it is mature for many years.
  • WS2812B LED strip has only one data signal when one pixel dies, the signal cannot pass through,
  • WS2813 digital LED strip, you can see as updated version of WS2811 addressable LED strip, it has double signals even one signal is broken, others can still work well, because the signal can pass through,

(Update after remark from Arseni below):

Except for a led strip you also need:

  • A microcontroller (to control it), if you have an addressable led strip
  • A library (at least for 'beginners' to be able to control it, for the microcontroller you use
  • Your own code, to let the program make the colors you want, and when
  • An external power source, if you have more than a few LEDs (not LED strips, but separate LEDs), you need an external power source that is strong enough.
  • For some (older) LED strips you might need a resistor, on newer types it's built in; same for a capacitor.
  • Sorry, I don't think i quite understand what you mean when talking about WS2811/12/13. Are you saying they are different than other types of led strips because they work when one led breaks?
    – jflinux
    Aug 7 '19 at 2:45
  • Additionally, what is the difference between a WS2811 light strip and a WS2812 or WS2813 strip? What do the numbers mean?
    – jflinux
    Aug 7 '19 at 2:46
  • @jflinux I searched a bit on google and added the differences Aug 7 '19 at 8:57
  • I think that in its current form, the answer is incomplete and could be misleading for persons who never used LED strips and expect that they would buy one and simply plug it into their Raspberry Pi. It could be useful to explain that, at a minimum, you also need an external power source (and a one which is powerful enough) and a resistor, and some wiring (and, in some cases, a capacitor). Aug 7 '19 at 21:25
  • Yes that is kind of my situation right now. I read though that those LEDs (WS2812b) can't be controlled by the pi with it simultaneously playing music. Any clue if that is true? Source: tutorials-raspberrypi.com/… under section "NeoPixel WS2812B / WS2811 vs. WS2801 on a Raspberry Pi"
    – jflinux
    Aug 8 '19 at 3:50

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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