Introduction: Pixel Smart Lamp

This is a project I made for a smart lamp controled by Bluetooth with an Android App developed on Android Studio.

Pixel's main goal is to display beatiful lights. It's fireplace lightmode, for example, let's you see how a single-pixel fireplace might look like. Also the rainbow mode shows how a lot of gradients are "naturally" formed by the leds.

Pixel's eletronics are an Arduino Nano and 10 addressable LEDs ws2813. It also has a display showing the time, and a buzzer so you can set up an alarm.

It's body is made with MDF (laser-cut) and acrylic.

Github for .apk, arduino files, app files.

EDIT: uploaded the cutting sheets for the MDF part


  • Arduino nano;
  • Bluetooth module HC-05
  • Real Time Clock module;
  • 4-digits LED display;
  • 10 x Addressable LEDs ws2812b
  • Potentiometer;
  • 4 x Buttons;
  • Buzzer;
  • 5V-2amp font.

Step 1: Setting Up Eletronics

My first step, after getting the eletronics delivered, was assembling all of it on a protoboard.

This way, I could test it and begin programming the Arduino.

I had to:

  • Solder the leds;
  • Assemble all devices on protoboard;
  • Assemble the 10 addressable leds (two for each side of the cube, minus the bottom);
  • Begin programming.

Before getting the acrylic cube for the final display, I tested it on my mother's plastic bowl.

Step 2: Programming

My next step was programming. First, the arduino with all the funcionalities I first imagined for Pixel:

  • Display current time on clock;
  • Set up alarm for waking up (or a timer);
  • Display several lightmodes, from a simple white lamp to a rainbow show or a fireplace. For this part, several examples on FastLED library for Arduino were very helpful.

After completing it, I had a fully controllable lamp, using analog buttons and the potentiometer. So, the next step was setting up the bluetooth connection with an app I made just for Pixel. This was the part that took the longest. Before this project, I had no knowledge on Android programming, and didn't even know Java language. But I already knew Object-oriented programming, so I started a Android programming course, on Udemy.

You can check all you want on my Github. The link is above on the beginning of this arcticle.

Step 3: Designing Pixel

At this moment, I had imagined how Pixel would look like, but it was time to put it on the paper. Actually, on my PC. Since I would build Pixel on MDF wood and acrylic, I knew I had to draw a very precise project. So I chose a CAD software and started drawing Pixel.

This might look a bit much, but I already knew CAD drawing from my graduation course on Engeneering. And it was very helpful for getting the 2D drawings for laser cutting the MDF.

Step 4: Assembling the MDF

After drawing Pixel on CAD, I contacted a local company that made acrylic objects, like displays, trophies, etc. These places usually have laser cutting machines, so I asked if they could build my acrylic cube and cut the MDF.

So I got a 6mm MDF board, and sent them the cutting drawings.

I received them like in the picture above, and assembled all of it using cyanoacrylate glue.

Step 5: Soldering the Components

This was one of the most hard moments. I didn't have any experience soldering eletronics, so I watched some videos and tried it.

Step 6: Finishing the Wood Work.

At this moment, I had Pixel working as I've planned it. Some adjustments were necessary, like the setting up the LEDs brightness.

But the MDF finishing wasn't as I expected. So I got a wood sheet, witch is a very thin piece of wood. I covered all the MDF surface with if, after making sure the clock display could emit light through it.

Step 7: Enjoy the Lights!

After all this work, I had a lamp that was much brighter and better looking than I first imagined it.

You can check on the video above all of Pixel's light modes.

Please contact me if you have any doubts on your project. I will ble glad to help :)

Lighting Challenge

Participated in the
Lighting Challenge