Incandescent Digital Wall Clock

[gallery columns="5" ids="237,238,271,235,236"]

 

 

 

This impressively large digital clock measures about 3ft x 4ft and utilizes 28 incandescent T6-1/2 tube style light bulbs with one relay accompanying each bulb. The brains of it all is an Arduino MEGA with a ChronoDot RTC for precise time keeping. The Mega has all the I/O ports needed to drive 28 opto-isolaters which are used to drive the 28 relays which in turn drive the 28 incandescent lights. The lights run off mains power through a dimmer to control the brightness. The original design called for a seconds unit, but the repetitive clicking sound of the relays became too much of an annoyance for some.

Nonetheless, you can view the entire early schematic [HERE].

Though highly inefficient, the code was constructed with an “If” statement for each numerical value of time each of the two units (hours or minutes) could be. A recent count showed that, according to the Arduino IDE, there exists exactly 1631 lines of code. The code is unique to this clock because there was no order between which segments were paired to which I/O ports on the Arduino. They all had to be mapped by keyboard individually.

Here is a snippet of the minutes side of the code:

...

  if(now.minute() == 58){ 
//Minute digit one
    digitalWrite(43, HIGH);
    digitalWrite(45, LOW);
    digitalWrite(47, HIGH);
    digitalWrite(49, HIGH);
    digitalWrite(39, LOW);
    digitalWrite(41, HIGH);
    digitalWrite(51, HIGH);

//Minute digit two
    digitalWrite(42, HIGH);
    digitalWrite(44, HIGH);
    digitalWrite(48, HIGH);
    digitalWrite(50, HIGH);
    digitalWrite(38, HIGH);
    digitalWrite(40, HIGH);
    digitalWrite(46, HIGH);
  }

...

Leave a Reply

Your email address will not be published. Required fields are marked *