Written By: Kimberly Davis
What you’ll need:
- Neopixels
- Wires
- Arduino
- Mini breadboard
- Power supply
- Cardboard
- Tracing paper
- Resistors: 2k (or two 1k)
- HC-05 Bluetooth Module
- Recycled plastic bottle
Step 1:
Take any kind of cardboard, or mat board, and cut out six pieces of 6-inch x 6-inch squares.
Step 2:
Take five of the squares. In the middle of each square cut out a 4-inch x 4-inch square, to make a frame.
Step 3:
Take one of the frames. Cut a 2cm x 1.5cm rectangle, 0.5 inches away from the right bottom corner of the frame.
Step 4:
Using tracing paper, cut out five pieces of 6-inch x 6-inch squares.
Step 5:
On all five of the frame pieces, glue one piece of tracing paper on to the back.
Step 6:
Take one of the frames and glue the other four frames to each side of the first frame. This should create a cube, leaving one side open.
Step 7:
Take any plastic bottle. Cut out 2 inches in length of the bottle (Preferably somewhere in the middle), creating a cylinder.
Step 8:
Take a neopixel strip and cut it to approximately 26.5 inches in length.
Step 9:
Glue the neopixel strip to the outside of the plastic cylinder. (If using a glue gun, be careful not to melt the plastic.)
Step 10:
Take a mini breadboard, an Arduino, and one HC – 05 Bluetooth module. Using wires and resistors set up the Bluetooth module on the breadboard and Arduino. For instructions on how to set up a Bluetooth module, follow this link: https://howtomechatronics.com/tutorials/arduino/arduino-and-hc-05-bluetooth-module-tutorial/
Step 11:
Glue your cylinder to your final cardboard square, about 2 inches away from one of the edges. Before gluing, try to keep the cylinder as close to the centre as possible while still leaving enough room for the Arduino and breadboard.
Step 12:
Using wires, connect the neopixel strip to the breadboard and Arduino. For instructions on how to set up the neopixel strip, follow this link: https://learn.adafruit.com/adafruit-neopixel-uberguide/basic-connections
Step 13:
Install the Adafruit NeoPixel library. Follow this link for the library: https://github.com/adafruit/Adafruit_NeoPixel
Upload the following code to the Arduino:
#ifdef __AVR__
#include <avr/power.h>
#endif
Serial.begin(9600);
strip.begin();
strip.show();
colorWipe(strip.Color(127, 127, 127), 50);
}
while (Serial.available()) {
char c = Serial.read();
if (c == ‘#’) {
break;
}
command += c;
}
colorWipe(strip.Color(250, 0, 0), 70);
}
else if (command == “2” || command == “green”) {
colorWipe(strip.Color(0, 250, 0), 70);
}
else if (command == “3” || command == “blue”) {
colorWipe(strip.Color(0, 0, 250), 70);
}
else if (command == “4” || command == “purple”) {
colorWipe(strip.Color(127, 0, 127), 70);
}
else if (command == “5” || command == “yellow”) {
colorWipe(strip.Color(127, 127, 0), 70);
}
else if (command == “6” || command == “aqua”) {
colorWipe(strip.Color(0, 127, 127), 70);
}
else if (command == “7” || command == “rainbow”) {
rainbowCycle(20);
}
else if (command == “8” || command == “off”) {
colorWipe(strip.Color(0, 0, 0), 0);
}
else if (command == “9” || command == “on”) {
colorWipe(strip.Color(127, 127, 127), 50);
}
}
command = “”;
}
for (uint16_t i = 0; i < strip.numPixels(); i++) {
strip.setPixelColor(i, c);
strip.show();
delay(wait);
}
}
uint16_t i, j;
for (i = 0; i < strip.numPixels(); i++) {
strip.setPixelColor(i, Wheel(((i * 256 / strip.numPixels()) + j) & 255));
}
strip.show();
delay(wait);
}
}
WheelPos = 255 – WheelPos;
if (WheelPos < 85) {
return strip.Color(255 – WheelPos * 3, 0, WheelPos * 3);
}
if (WheelPos < 170) {
WheelPos -= 85;
return strip.Color(0, WheelPos * 3, 255 – WheelPos * 3);
}
WheelPos -= 170;
return strip.Color(WheelPos * 3, 255 – WheelPos * 3, 0);
}
Step 14:
Take a power supply and plug it into the Arduino. For information about how to properly power an Arduino, follow this link: https://www.open-electronics.org/the-power-of-arduino-this-unknown/
Step 15:
Take the cube and place it over the board. Position the small hole on the cube to where the power barrel on the Arduino is located.
Step 16:
Download any Arduino Bluetooth app onto your phone or tablet.
Step 17:
On the app, connect to the Bluetooth module. Then set up the app to send numbers between 1 – 9.
Step 18:
Try it out. Send any number between 1 – 9 (depending on your app you can also say the command you want). Watch the colors change on the lightbox.
Press or say the following commands:
- 9 / “on” :
- 1 / “red’:
- 2 / “green”:
- 3 / “blue”:
- 4 / “purple”:
- 5 / “yellow”:
- 6 / “aqua”:
- 7 / “rainbow”:
- 8 / “off”
Step 19:
Customize with images and designs. Take a piece of tracing paper and any simple image. Use the tracing paper to trace over the image. (Try to use an image that is 4-inch x 4-inch or less.)
Step 20:
Cut the image out of the tracing paper. Stick the image to any of the 5 sides, inside of the cube.
Step 21:
Enjoy and have fun with your new customized lightbox!