Introduction: DIY Ambient Wall Lights

About: Hi. I make cool electronic projects. See my youtube channel or website. YT: Web:

Hi. I'm Anonymous Shrimp, welcome to the first Instructables tutorial from this channel. If you'd like to see more of this, check out my Youtube channel here:

Now, on to the tutorial. These wall lights are controlled by one long addressable RGB strip. There are 4 hexes with the strip and an ir sensor, and one main hex. This main hex consists of an Ardiuno nano, and a couple of other things.


  1. Foam or wood
  2. Hot glue
  3. Dual lock Velcro/wall mounts
  4. Duct tape (optional)
  5. 3D printed 120 Brackets (
  1. Arduino Nano:
  2. WS2811 Addressable RGB LED Strip:
  3. IR Sensors: (Optional This would create an feedback to create something cool when you hand hovers. EX: The lights flash white whe your hands hover the )
  4. Protoboard (And headers):
  5. 30 AWG Wire:
  6. Resistors
  7. Status LED

Step 1: Watch the Video

By watching the 2 minute video, you can get a basic understanding of the project

Step 2: Cut Out Foam

You can first draw out lines for each of the hexes on your foam or wood.

For each hex, you'll need:

  1. 1 hexagon 6in sides
  2. 6 1in x 6in

Of course, you can vary the sizes or even change the shape. Just make sure that the side of the polygon is the same length as the rectangles.

Step 3: Construct Hexes

Use the newly cut out pieces to form a box. An easy way to connect them together is to make a rabbit cut, then glue in the foam rectangles. If you are using wood, you can use wood glue and screws.

Then, use an 3D printed 120 brace to bond the rectangles together. If you don't have a 3D printer, you can use more glue, or bend a metal 90 brace. Also, the brace is 120 degrees because a hexagon's angle is 120. If you are doing triangles, it would be 60 degrees.

Make sure to sand everything to get a nice finish.

At the end, place your wall mounts or Velcro on the back.

Step 4: Make Hex Electronics

Each of the hexes has an VCC, GND, IN, OUT, and IR. So each then each should have 5 wire coming out.

Save one of the hexes for the main controller, for each of the other ones, follow these steps:

  1. String RGB LEDs around the inside perimeter of the hex.
  2. Along the the strip's adhesive, use hot glue to secure it. You can also use duct tape to secure the strip (optional)
  3. Solder wires to the ends of the strip. 2 of them should be VCC, and 2 should be ground. 1 of each for DIN and DO
  4. Using a utility knife cut a small rectangle on the side of the hex to put a 5 pin header. (Optional)
  5. If you choose to use an IR sensor, solder wires to an IR Sensor. There should be VCC, GND, and OUT
  6. Solder each of the VCC wires together, and then connect it to the first pin of the pin header. If you didn't use pin header, connect it to a long wire.
  7. Solder each of the GND wires together, and then connect it to the second pin of the pin header.

  8. Solder the DIN wire of the strip to the third pin of the pin header.

  9. Solder the DO wire of the strip to the third pin of the pin header.

  10. Solder the OUT wire if the IR sensor to the third pin of the pin header.

Do this for all of the hexes except for one for that one will be used as the main board

Step 5: Make Main Hex Electronics

This project is ran off an Arduino micro controller. The schematic looks more complicated than is actually is. You can either solder it to a protoboard, but if you don't have access to some, you can use a breadboard. I prefer using protoboard because it is a little more permanent. Basically, the main board is just one of the other hexes, with the RGB Strip wired around and the IR Sensor. The main circuit board has a lot of pin headers than output to the other hexes. There are 5 pins for each hex. VCC, GND, RGB In, RGB Out, IR. Each of the IR pins goes to one of the digital pins of the Arduino. The VCC Goes to 5V on the Arduino, GND to GND. For one of the sets of pin headers, the RGB In should be ground to a digital pin on the Arduino through a 330 ohm resistor. The second RGB In goes to the first RGB Out. Third RGB In to the second RGB Out and it keeps goind until your last set of pin headers doesn't have an RGB Out. Or at least, the RGB out goes nowhere. In addition, I added an status LED for good measure.

Step 6: Understanding the Code (Or Write Your Own)

This step can be skipped if you really don't care.

The only thing I wanted to tell you is that there is a line that can be changed to change the pattern of the lights.

Step 7: Test Hexes

After uploading the code to the Arduino (Code can be found here:, plug in each of the hexes to the pin headers of the main hex. If it turns on, great! If not, check each of the connections. I actually fried one of my Arduino nanos because on one of the hexes, I switched VCC and GND on the RGB Strip. Try testing each of the hexes individually. Remember, if the first hex doesn't work, or is disconnected, the rest don't work because of the way we wired it.

If you did get is to work, cover the IR Sensor status LEDs and the Arduino built-in status led with electrical tape. They'll only ruin the effect.

Step 8: Cover Hexes

With the tracing paper, cover the hexes with it. You can use clear packaging tape to secure it, or glue. Make sure you don't cover the pin headers.

If you have an IR sensor, before sealing is completely, use a small screwdriver to calbrate the IR sensor to the new tracing paper by twisting the potentiometer the sensor (Clockwise = More sensitive, CCW = less sensitive).

Step 9: Finished!

After mounting it on the wall, and plugging everything back in, you are finally finished!. Try turning the room dark, then it looks really cool. Thank you for making it this far, and enjoy the nice lights on your wall.

More links:


Website link to project:


Arduino Contest 2020

Participated in the
Arduino Contest 2020