Control WS2812B LED Strips with Teensy from your favourite MIDI Software
Requirements:
Software:
Hardware:
- Teensy with MIDI support (Teensy 2.0, Teensy++ 2.0, Teensy LC and Teensy 3.0 to 4.1)
- WS2812B 5V LED Strip
- Power supply (if long enough LED Strip is used) More details here
Note: There are different versions of midiLED for various purposes, check them out if you feel like you're missing a feature. If you want a feature implemented, please submit this form
If you've spotted a bug, please report here
- Download and install the Arduino IDE from the link above
- Download and open midiLED.ino file in the Arduino IDE
- Go to File -> Preferences and add
https://www.pjrc.com/teensy/td_libs_ArduinoIDE/package_Teensyduino_index.json
to the Additional Boards Manager URLs
- Go to the Board Manager (left sidebar), search for
Teensy
and install the latest version
- Select your Teensy board in the Tools -> Board, select the COM port that it is connected to in Tools -> Port
- Select the USB Type to MIDI in Tools -> USB Type
- Set the Optimize option in Tools -> Optimize to Fastest
- Set the number of LEDs you're using in line 3, and set the PIN your LED strip is connected to in line 4. Adjust other options if necessary.
Play with the rDelay variable in the code, slightly decrease it (by 20 or 30) or increase it. Might fix the issue. Larger, more powerful teensy might potentially solve the issue as well
Make sure the PIN in the code is set to the actual PIN that your leds are connected. Also, the LED strip MUST be WS2812B, other LED strips will NOT work. Make sure you're actually sending some MIDI to the Teensy Double-check the polarity of the LED strip, and that you've connected the signal wire to DIN/DI (Digital In) on the LED Strip, not the DO (Digital Output)