Grooveshark RGB 5050 LED strip controller using arduino and node.js
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.


GrooveLights is an RGB 5050 LED strip controller using arduino and node.js. This project was started to turn my back porch lighting into a music-controlled lightshow for a Halloween party. This project is based largely on two other projects, the Adafruit RGB LED Strip controller guide, and Noduino (see Sources).


The following are required to use this:


  • Arduino (Leonardo used, but Uno should also work, and any other with proper pin changes)
  • 12V Power Supply
  • RGB LED 5050 strip
  • 3x IRF510 mosfets (or equivalent 18V or higher w/ greater than 2 Amps rating MOSFET)
  • 3x ~220ohm Resistors
  • Computer(s) (2 computers can be used to stream light values over wifi if you want)


  • Linux (Only necessary for Arduino controller, should work with any OS with minor tweaks to serial port value in code)
  • Node.js (v0.10.15)
    • serialport (1.2.2)
  • Web browser
  • Arduino (1.0.3 or higher)


  • Grooveshark Plus or Anywhere account (sorry, I don't know how to access the frequency analyzer without the Visualizer)


SEE: pins 3, 5, and 6 are used to control FETs, which switch negative on/off. Vin pin from arduino is at 12v, used on white/black (they differ on each LED strip model) +12v pin. Schematic



Install dependencies

clone repo

open grooveshark, pick songs, open visualizer (you want the 3rd one down with the 7 bars)

nodejs lights.js in shell

run bookmarklet or run JS code in web JS console