MIDI Lighting - Messing around with a Piano + LED visualizer

Sdílet
Vložit
  • čas přidán 24. 01. 2021
  • Just testing my MIDI controlled lighting - using a digital piano connected to the LED visualizer. The visualizer uses an Arduino to convert the piano's MIDI signal to the LED lighting (a strip of Neopixels/WS2812b LEDs).
  • Věda a technologie

Komentáře • 10

  • @anuragsaroha8043
    @anuragsaroha8043 Před 3 lety +1

    thats beautiful

  • @lagammeanimee
    @lagammeanimee Před 2 lety

    Hi, Do you used a usb host shield or you had a midi output ?

    • @SyntheticState
      @SyntheticState  Před 2 lety

      This version is with MIDI 5-pin output. Had to use a small USB-to-MIDI device to go from my PC to the visualizer because my piano didn't have MIDI output.

  • @TwinPlanet114
    @TwinPlanet114 Před 2 lety

    Hello, is there anyway you could tell me how you made this? Or direct me to a place where I can learn how to?

    • @SyntheticState
      @SyntheticState  Před rokem +1

      Hey sorry for the late response, but I have some other videos on my channel that go over the process a bit

  • @tech4ol197
    @tech4ol197 Před 2 lety +2

    Can you share the code?

  • @PiLaunchpad
    @PiLaunchpad Před 3 lety +1

    hello, I was wondering if there is a way to light up more than 128 leds on one strip using the piano roll. Could you help me with that? Thank you!

    • @SyntheticState
      @SyntheticState  Před 3 lety +1

      hmmm, that's a good question. It's definitely possible but also depends on what you want to do exactly.
      If you want to do a one-to-one mapping of note to LED, then it's not possible without some "hacking" with multiple channels or something. That's because there's only 128 notes per MIDI channel, and so the piano roll has only 128 notes total.
      But, if you're fine with 128 notes but want more than 128 LEDs, than you have to map the notes to LEDs. The map() function will do the trick. Just make the NUM_LEDS define at the top of your program any number you want, but you'll have to test it because performance will suffer (memory and CPU limitations).