Fixes for Raspberry Pi 3 and notmatt/audio-reactive-led-strip
Go to file
2016-12-27 02:27:07 -07:00
arduino/ws2812_controller Added a status indicator LED that blinks when command is received 2016-12-24 20:37:43 -07:00
python Renamed mel_visualization.py to visualization.py 2016-12-27 01:31:50 -07:00
.gitattributes 🎉 Added .gitattributes & .gitignore files 2016-10-12 14:44:03 -07:00
.gitignore Added new visualization module that uses a mel filterbank instead of onset detection 2016-11-07 17:45:52 -08:00
block-diagram.png Added block diagram to explain the purpose of this repository 2016-12-26 23:21:44 -07:00
description-cropped.gif Added a cropped description gif to better match README formatting 2016-12-26 23:58:29 -07:00
description.gif Added a smaller description gif that doesn't take up as much space 2016-12-26 17:59:08 -07:00
led-effect-demo.gif Added gif to demonstrate LED visualization effect 2016-12-27 00:58:29 -07:00
README.md Greatly expanded the README with project information 2016-12-27 02:27:07 -07:00
scroll-effect-demo.gif Added demo gif of scroll effect 2016-12-27 01:11:17 -07:00

audio-reactive-led-strip

Real-time LED strip music visualization using the ESP8266 and Python

block diagram

overview

Demo (click gif for video)

visualizer demo

Overview

The repository includes everything needed to build an LED strip music visualizer (excluding hardware):

  • Python real-time visualization code, which includes code for:
  • Arduino firmware for the ESP8266 (ws2812_controller.ino)

What do I need to make one?

The following hardware is needed to build an LED strip music visualizer:

  • Computer with Python 2.7 or 3.5 (Anaconda is recommended on Windows)
  • Any ESP8266 module with RX1 pin exposed. These modules are known to be compatible (but many others work too):
    • NodeMCU v3
    • Adafruit HUZZAH
    • Adafruit Feather HUZZAH
  • Any ws2812b LED strip (such as Adafruit Neopixels)

Dependencies

Python

There are only a handful of Python dependencies:

  • Numpy
  • Scipy (for digital signal processing)
  • PyQtGraph (for GUI visualization)
  • PyAudio (for recording audio with microphone)

On Windows machines, the use of Anaconda is highly recommended. Anaconda simplifies the installation of Python dependencies, which is sometimes difficult on Windows.

Arduino dependencies

The ws2812b i2s library must be downloaded and installed in the Arduino libraries folder.