A Designers Clock
![IMG_5368.JPG](/proxy/?url=https://content.instructables.com/FSC/TA6H/LGZ4XLN9/FSCTA6HLGZ4XLN9.jpg&filename=IMG_5368.JPG)
welcome to the adventure of clock making enjoy
Supplies
![IMG-2452.jpg](/proxy/?url=https://content.instructables.com/FEZ/6AW0/LGKUK5P8/FEZ6AW0LGKUK5P8.jpg&filename=IMG-2452.jpg)
![IMG-2453.jpg](/proxy/?url=https://content.instructables.com/FEY/0NB4/LGKUK5PB/FEY0NB4LGKUK5PB.jpg&filename=IMG-2453.jpg)
![IMG-2454.jpg](/proxy/?url=https://content.instructables.com/F6N/WKYQ/LGKUK5PF/F6NWKYQLGKUK5PF.jpg&filename=IMG-2454.jpg)
![IMG-2455.jpg](/proxy/?url=https://content.instructables.com/FKV/18HM/LGKUK5PL/FKV18HMLGKUK5PL.jpg&filename=IMG-2455.jpg)
![IMG-2457.jpg](/proxy/?url=https://content.instructables.com/FI9/WW47/LGKUK5PR/FI9WW47LGKUK5PR.jpg&filename=IMG-2457.jpg)
![IMG-2741.jpg](/proxy/?url=https://content.instructables.com/FKU/4KRG/LGKUK5QI/FKU4KRGLGKUK5QI.jpg&filename=IMG-2741.jpg)
![IMG-2403.jpg](/proxy/?url=https://content.instructables.com/F4I/B3E3/LGKUK5RJ/F4IB3E3LGKUK5RJ.jpg&filename=IMG-2403.jpg)
![IMG-2404.jpg](/proxy/?url=https://content.instructables.com/FCE/FX56/LGKUK5RU/FCEFX56LGKUK5RU.jpg&filename=IMG-2404.jpg)
![IMG-2407.jpg](/proxy/?url=https://content.instructables.com/FSV/7XUN/LGKUK5S6/FSV7XUNLGKUK5S6.jpg&filename=IMG-2407.jpg)
![IMG-2404.jpg](/proxy/?url=https://content.instructables.com/FEY/Q85S/LGKUK5SS/FEYQ85SLGKUK5SS.jpg&filename=IMG-2404.jpg)
![IMG-2405.jpg](/proxy/?url=https://content.instructables.com/FMZ/6JTS/LGKUK5T6/FMZ6JTSLGKUK5T6.jpg&filename=IMG-2405.jpg)
![IMG-2407.jpg](/proxy/?url=https://content.instructables.com/FA4/NQHN/LGKUK5TM/FA4NQHNLGKUK5TM.jpg&filename=IMG-2407.jpg)
![IMG-2408.jpg](/proxy/?url=https://content.instructables.com/F1M/TJ27/LGKUK5TN/F1MTJ27LGKUK5TN.jpg&filename=IMG-2408.jpg)
![IMG-2409.jpg](/proxy/?url=https://content.instructables.com/F60/CWU1/LGKUK5UG/F60CWU1LGKUK5UG.jpg&filename=IMG-2409.jpg)
![IMG-2415.jpg](/proxy/?url=https://content.instructables.com/F10/FPEM/LGKUK5VE/F10FPEMLGKUK5VE.jpg&filename=IMG-2415.jpg)
- Computer
- Jumper wires
- Breadboard
- Dupont wires
- Arduino Uno
- USB power cable
- LCD1602 module
- GY-521
- Power Box Battery Holder Box with Cable on
- batteries
- Arduino program
- rubber band
- scissors
- hot glue
- popsicle sticks
- drill
- hinge
- screws
The Beginning
![clock .png](/proxy/?url=https://content.instructables.com/FW0/NQ3L/LGKUK661/FW0NQ3LLGKUK661.png&filename=clock .png)
![tinkercad-logo.png](/proxy/?url=https://content.instructables.com/F5S/ROV5/LGKUK676/F5SROV5LGKUK676.png&filename=tinkercad-logo.png)
in the beginning:
- TinkerCad opened
- the design is made and remade to thy liking, add, take, and make your kind of clock book design (sunny design optional but optimum)
- then it is to be printed! get a 3d printer !!, if you can afford one, get a cardboard box, and cut squares from it to make a bookcase similar to the image, or to the design you created on Tinkercad, then use hot glue carefully, to glue the sides together. ( if you know how to use one be careful, If not get a parent or someone you know to help you)
- while you wait for it to be printed, or for the hot glue to dry, it is best to start the Arduino processing!!
Arduino This
![IMG-2742.jpg](/proxy/?url=https://content.instructables.com/FO3/S85X/LGKUK5QP/FO3S85XLGKUK5QP.jpg&filename=IMG-2742.jpg)
![IMG-2743.jpg](/proxy/?url=https://content.instructables.com/FUC/I1KQ/LGKUK5QT/FUCI1KQLGKUK5QT.jpg&filename=IMG-2743.jpg)
![IMG-2744.jpg](/proxy/?url=https://content.instructables.com/FK4/WKOA/LGKUK5R2/FK4WKOALGKUK5R2.jpg&filename=IMG-2744.jpg)
![IMG-2745.jpg](/proxy/?url=https://content.instructables.com/FDK/J12D/LGKUK7BE/FDKJ12DLGKUK7BE.jpg&filename=IMG-2745.jpg)
![IMG-2746.jpg](/proxy/?url=https://content.instructables.com/F7F/1DF7/LGKUK7AP/F7F1DF7LGKUK7AP.jpg&filename=IMG-2746.jpg)
the Arduino process:
to go to Arduino (which is ) in the windows (bottom left) go to the A section (top) of the windows.
after reaching the given screen
go to the tools section and select Manage Libraries
to the search bar look for the following to download:
- Wire. h library for the I2C interface (included in Arduino IDE)
- LiquidCrystal_I2C.h library (by Frank de Brabander) for the I2C 16×2 LCD module (GitHub link)
- RTClib.h library (by Adafruit) for the DS3231 RTC module (GitHub link)
once finished go on to the next step
Code This
now you put the following code:
/*
function to update RTC time using user input
*/
void updateRTC()
{
lcd.clear(); // clear LCD display
lcd.setCursor(0, 0);
lcd.print("Edit Mode...");
// ask user to enter new date and time
const char txt[6][15] = { "year [4-digit]", "month [1~12]", "day [1~31]",
"hours [0~23]", "minutes [0~59]", "seconds [0~59]"};
String str = "";
long newDate[6];
while (Serial.available()) {
Serial.read(); // clear serial buffer
}
for (int i = 0; i < 6; i++) {
Serial.print("Enter ");
Serial.print(txt[i]);
Serial.print(": ");
while (!Serial.available()) {
; // wait for user input
}
str = Serial.readString(); // read user input
newDate[i] = str.toInt(); // convert user input to number and save to array
Serial.println(newDate[i]); // show user input
}
// update RTC
rtc.adjust(DateTime(newDate[0], newDate[1], newDate[2], newDate[3], newDate[4], newDate[5]));
Serial.println("RTC Updated!");
/*
function to update LCD text
*/
void updateLCD()
{
/*
create array to convert digit days to words:
0 = Sunday | 4 = Thursday
1 = Monday | 5 = Friday
2 = Tuesday | 6 = Saturday
3 = Wednesday |
*/
const char dayInWords[7][4] = {"SUN", "MON", "TUE", "WED", "THU", "FRI", "SAT"};
/*
create array to convert digit months to words:
0 = [no use] |
1 = January | 6 = June
2 = February | 7 = July
3 = March | 8 = August
4 = April | 9 = September
5 = May | 10 = October
6 = June | 11 = November
7 = July | 12 = December
*/
const char monthInWords[13][4] = {" ", "JAN", "FEB", "MAR", "APR", "MAY", "JUN",
"JUL", "AUG", "SEP", "OCT", "NOV", "DEC"};
// get time and date from RTC and save in variables
DateTime rtcTime = rtc.now();
int ss = rtcTime.second();
int mm = rtcTime.minute();
int hh = rtcTime.twelveHour();
int DD = rtcTime.dayOfTheWeek();
int dd = rtcTime.day();
int MM = rtcTime.month();
int yyyy = rtcTime.year();
// move LCD cursor to upper-left position
lcd.setCursor(0, 0);
// print date in dd-MMM-yyyy format and day of week
if (dd < 10) lcd.print("0"); // add preceeding '0' if number is less than 10
lcd.print(dd);
lcd.print("-");
lcd.print(monthInWords[MM]);
lcd.print("-");
lcd.print(yyyy);
lcd.print(" ");
lcd.print(dayInWords[DD]);
// move LCD cursor to lower-left position
lcd.setCursor(0, 1);
// print time in 12H format
if (hh < 10) lcd.print("0");
lcd.print(hh);
lcd.print(':');
if (mm < 10) lcd.print("0");
lcd.print(mm);
lcd.print(':');
if (ss < 10) lcd.print("0");
lcd.print(ss);
if (rtcTime.isPM()) lcd.print(" PM"); // print AM/PM indication
else lcd.print(" AM");
}
void setup()
{
Serial.begin(9600); // initialize serial
lcd.init(); // initialize lcd
lcd.backlight(); // switch-on lcd backlight
rtc.begin(); // initialize rtc
}
void loop()
{
updateLCD(); // update LCD text
if (Serial.available()) {
char input = Serial.read();
if (input == 'u') updateRTC(); // update RTC time
}
}
Making the Fun Part
![arduino model .png](/proxy/?url=https://content.instructables.com/FXL/YE11/LGUUN22D/FXLYE11LGUUN22D.png&filename=arduino model .png)
step 1. The Dupont wires connect to the breadboard (as shown in the model), ensuring they align with the GY-521: SCL, SDA, VCC, and GND.
step 2. Connect one set to the Arduino Uno as shown SCL - A5, SDA - A4, VCC - 5V, GND - GND.
step 3. Connect another set to the LCD1602 module as shown SCL - SCL, SDA - SDA, VCC - VCC, GND - GND.
step 4. Get Power Box Battery Holder Box with Cable on with a batteries
step 5. connect the USB power cable to the computer with the Arduino Uno
Just in Time
![IMG-2777.jpg](/proxy/?url=https://content.instructables.com/FQT/NUI0/LGUUMXTM/FQTNUI0LGUUMXTM.jpg&filename=IMG-2777.jpg)
![IMG-2778.jpg](/proxy/?url=https://content.instructables.com/F22/A9QU/LGUUMYL1/F22A9QULGUUMYL1.jpg&filename=IMG-2778.jpg)
step 1. Go to the serial monitor,
step 2. Open the serial monitor
in step 3. Press the letter U
in step 4. Start preparing the time
It Time
![IMG-2456.jpg](/proxy/?url=https://content.instructables.com/FDW/YT04/LGZ4XI5R/FDWYT04LGZ4XI5R.jpg&filename=IMG-2456.jpg)
![IMG-2452.jpg](/proxy/?url=https://content.instructables.com/FN7/KXKU/LGZ4XI6L/FN7KXKULGZ4XI6L.jpg&filename=IMG-2452.jpg)
![IMG-2453.jpg](/proxy/?url=https://content.instructables.com/F5K/0CW6/LGZ4XI7F/F5K0CW6LGZ4XI7F.jpg&filename=IMG-2453.jpg)
![IMG-2454.jpg](/proxy/?url=https://content.instructables.com/FWD/UPD4/LGZ4XI8A/FWDUPD4LGZ4XI8A.jpg&filename=IMG-2454.jpg)
![IMG-2458.jpg](/proxy/?url=https://content.instructables.com/FTN/EBHC/LGZ4XI97/FTNEBHCLGZ4XI97.jpg&filename=IMG-2458.jpg)
![IMG-2459.jpg](/proxy/?url=https://content.instructables.com/FNC/AZ7F/LGZ4XIA4/FNCAZ7FLGZ4XIA4.jpg&filename=IMG-2459.jpg)
complete the following:
- get drill
- get hinges
- get screws
- connect hinges with screws
- drill the screws onto the design
- continue until hinges are screwed onto the design
- using a hot glue gun get popsicle sticks and glue them into the design, or outside product depending on if you altered the original.
- (if original design not altered) drill a hole inside the design so that wires may come out
- (optional) check if the sunny design fits the screen if not sandpaper it into oblivion or just put the screen in front of the sunny design
- (optional ) sunny design to be hot glued onto the design
- put in Arduino, breadboard, and other functions connected to the breadboard,( screen too, depending on if you change/altered the design of the original, if not then make sure wires are connected but the screen doesn't go inside)
Admire Your Work
![IMG-2672.jpg](/proxy/?url=https://content.instructables.com/FOG/9DSA/LGZ4XJYE/FOG9DSALGZ4XJYE.jpg&filename=IMG-2672.jpg)
![IMG-2673.jpg](/proxy/?url=https://content.instructables.com/FFO/5FCE/LGZ4XJZG/FFO5FCELGZ4XJZG.jpg&filename=IMG-2673.jpg)
![IMG-2674.jpg](/proxy/?url=https://content.instructables.com/F7D/ZGW6/LGZ4XK0J/F7DZGW6LGZ4XK0J.jpg&filename=IMG-2674.jpg)
![IMG-2675.jpg](/proxy/?url=https://content.instructables.com/FWS/2027/LGZ4XK1V/FWS2027LGZ4XK1V.jpg&filename=IMG-2675.jpg)
congrats you made it
if your design is similar to this one congrats, if it's better looking kudos to you!!