Introduction: Smart Binary Pendant Lamp Clock

About: A passionate electronic Hobbyist.

Hi everyone. Imagine the moment when someone asks you the time and you tell the exact time looking at your pendant lamp!!

Today I will show you how to make an amazing pendant lamp which tells you the time. It has 4 RGB LED which show time in binary form by turning on and off and changing color. This project is fairly easy to build yet amazing.



1. Glue gun

2. Drill machine

3. Anti cutter.


1. PVC sheet( 5mm thickness)

2. Arduino Nano

3. Jumper wire(Female to female)

4. Other wires.

5. 4 RGB LEDs(Diffused one is better)

6.HC-05 bluetooth module.

7.Mini AC 110-220 V to DC 5V converter(Link).

Step 1: Concept

This pendant lamp uses 4 RGB LED and uses different colors to show hour and minute . 4 LEDs function as 4 binary digit and the binary value of led is 1 when on and 0 when off. We can get upto 15 including 0 .

For showing hour, it's fine. because hour is limited to 12. but for minutes it needs to count upto 59. So it's not possible to represent minute with 4 LEDs.

So I decided to show hour, 1st and 2nd digit of minute with three different colors which will come in sequence.

As it's a pendant lamp as well as a clock, you can't turn it off because even if you don't want the light, you need the clock to run.

So I made an android app to turn it on and off which includes many other features also including setting the time, setting the color of representing hour, 1st digit of minute and 2nd digit of minute and time of showing each color. The shape of the pendant lamp looks like a pyramid and the LEDs are placed in the bottom of the pyramid.

Step 2: Circuit Diagram

This is the circuit diagram for the project.

Resistance with LEDs are optional but safe to use. You can also use only one resistor in the Ground pin of each LED as we are not going to use more than one color in same time.

Add a HC-05 Bluetooth module with the Arduino to communicate with the app.

Connection with Arduino and Bluetooth module:

1. Arduino 5v->HC-05 VCC

2.Arduino GND ->HC-05 GND

3.Arduino Tx ->HC-05 Rx

4.Arduino Rx ->HC-05 Tx

Step 3: Designing the Body and Assembly

1.Cut four Equilateral triangle with each side of 13 cm from the PVC sheet, using an anti-cutter.

2.Cut 4 strips which has dimension of 13*2.5, 9.5*2.5, 6.5*2.5, 4.5*2.5 cm. The length(13, 9.5 , 6.5, 2.5 cm) are found after dividing the height of triangle into four equal pieces.

3. Take one triangle and make four 4 mm holes with the drill machine in the line of the triangle which represents height. The holes should have same distance.

4. Attach the strips in the triangle like the picture. Make sure the strip doesn't go out of the triangle.

5. Make the circuit as shown in the circuit diagram.

6.Put the LEDs into the holes.

7.Make a Pyramid using other three triangle as shown in the picture . You can easily make pyramid by taking three same sized equilateral triangle matching the sides and gluing them with one another

8. Make a hole for the Power wire at the top of pyramid.

9.Pack everything up in the pyramid and finally attach the bottom triangle with the pyramid using glue gun.

10. And it's done.

Step 4: 3D Printable Design

I have also included 3D printable design files for the body. You can 3D print the designs and attach them with 3 M3 nut bolts if you don't want to take the hassle of making it with pvc sheet. The bottom part should be white colored for more brightness.

Step 5: Arduino Code and Android App

The Arduino code and the android app is attached here.

You can edit the pin no , default hour , minutes and delay time in the code.

Step 6: Calculating Time

As we know, In 4 digit binary, The value of each 1 from left to right

respectively is 8 4 2 1.
For example:

if 1100 is the number which means 1st two led is on, and other is off.

The number it is showing is:

8*1+4*1+2*0+1*0= 8+4=12 .


For 1010, The number is: 8+2=10.

For 1001, The number is : 8+1=9.

In this project , the LED at the peak of the triangle has value of 1 , then the led after that has a value of 2 , then the 3rd led from the top has value of 4. And the last one at the bottom has value of 8. By default,

Hour is represented by RED,

First digit of minute is represented by GREEN and

Second digit of minute is represented by BLUE.

By default , After every 1500 ms , the color of the lamp changes and represent different digit.

[Note:For showing zero , all LEDs will light up instead of all light being off as it's hard to indicate a number if a certain color doesn't light up at all.]

Step 7: Connecting the Lamp to the App

You can connect the lamp to the given android app through Bluetooth by pressing the connect button.

You can transfer the time of your phone to the lamp just by pressing Get current time for the lamp. You can also turn on and turn off the Lamp through the app. The micro controller will still run to count time if you turn off the lamp through the app. You can set the color of representing hour, 1st digit of minute and 2nd digit of minute and delay of showing each color.

Here is a video how the pendant lamp can be controlled by android app:

Step 8: And It's Done!

Now you have successfully built this unique pendant lamp or unique clock whatever you say. Connect the wires to an AC power supply and Install it in a suitable place. As it's light weight , the wire alone will be able to take the weight. Still you can add extra rope for more stability.

You can use more powerful and brighter LEDs but if it takes more than 20mA , you will need an additional amplifying transistor for each pin as you can't use Arduino pins directly. You can also customize the design to make it look even more better. Just make sure you can understand the value of LEDs easily by looking at it.

First Time Author Contest

Participated in the
First Time Author Contest