Introduction: Arduino Sound Reactive LED Pyramid

Illuminate your favorite hot spot with our Sound Reactive LED Pyramid. Make your favorite place to kick back the hot spot for all of your friends and family. With a wide variety of colors these lights will add a new flavor to any setting. For years colors have had a direct correlation to mood. Illuminate your life! The Pyramid comes to life reacting to sound going through its unique variety of colors.

Step 1: Materials

  • Clear Acrylic Sheet
  • Wires
  • Power Source
  • Arduino
  • Breadboard
  • Acrylic Glue
  • NeoPixel Ring
  • Sound Impact Sensor

Step 2: Building the Model

Utilizing Inventor the model we created is 6.25x6 inches the pyramid to ultimately cutout on a laser engraver. Clear Acrylic made it hard to hide the NeoPixel ring inside our pyramid so the clear acrylic was sanded to give it a frosted appearance.

Step 3: Circuit and Code

#include

#ifdef __AVR__ #include #endif #define Pin 9 #define NUMPIXELS 12 Adafruit_NeoPixel strip = Adafruit_NeoPixel(60, Pin, NEO_GRB + NEO_KHZ800); Adafruit_NeoPixel pixels = Adafruit_NeoPixel(NUMPIXELS, Pin); int delayval = 500; // delay for half a second

void setup() { pixels.begin(); // This initializes the NeoPixel library. pinMode(7,INPUT); //SIG of the Parallax Sound Impact Sensor connected to Digital Pin 7 pinMode(Pin, OUTPUT); Serial.begin(9600); }

//this function will make the LED dim once the Parallax Sound Impact Sensor sends a 1 signal, and then return to it’s original brightness. void loop() { boolean soundstate = digitalRead(7); if (soundstate == 1) { Serial.println(soundstate); for(int i=0;i

// pixels.Color takes RGB values, from 0,0,0 up to 255,255,255 pixels.setPixelColor(i, pixels.Color(50,50,50,255)); // Moderately bright green color. strip.setPixelColor(1, 0, 50,0,255); strip.setPixelColor(2, 50, 0, 50, 0); strip.setPixelColor(3, 0, 50, 0, 50); strip.setPixelColor(4, 0, 50, 50, 0); strip.setPixelColor(5, 0, 50, 0, 0); strip.setPixelColor(6, 0, 50, 0, 0); strip.setPixelColor(7, 50, 50, 50, 50); strip.setPixelColor(8, 0, 0, 50, 127); strip.setPixelColor(9, 0, 50, 0, 127); strip.setPixelColor(10, 50, 0, 0, 127); strip.setPixelColor(11, 0, 50, 0, 127); strip.setPixelColor(12, 50, 50, 50, 127); pixels.show(); // This sends the updated pixel color to the hardware.

delay(delayval); // Delay for a period of time (in milliseconds). pixels.setPixelColor(i, pixels.Color(0,0,0)); pixels.show(); } } else{ Serial.println(soundstate); pixels.show(); }

}

Step 4: Enjoy!

Now use your newly created Sound Reactive LED Pyramid to bring life to any situation! :)