Introduction: Clock Set Date Time

Picture of Clock Set Date Time

This clock is the basis of many of my projects.

I was inspired by a friend who has published a tutorial in 2012 (link)

It is a simple clock with LCD display, an RTC (real time clock) and 3 buttons.

For convenience and to save pin dell'Arduino, I used a display with I2C module.

The RTC also uses the I2c protocol.

The 3 buttons, connected to a "pull down" circuit, are used to adjust or change the time and date of the watch, without having to reload the Arduino code.

Step 1: Material

Picture of Material
  • Arduino or Arduino standalone
  • RTC DS1307
  • LCD 20x4 I2c
  • 3 buttons
  • 3 Resistor 10k ohm
  • Wires

Step 2: Schematics

Picture of Schematics

The scheme is very simple:

The LCD and RTC communicate with Arduino through the I2C protocol and the library "Wire" and are connected to ARDUINO to Pin A4 and A5.

LCD & RTC---------------------- ARDUINO PIN

SDA ---------------------------------------A4


Step 3: Arduino Code

Picture of Arduino Code

Link libraries:

Wire.h :by Arduino IDE




The code is very simple:
In the loop, check if the "menu" button is pressed, if it is not pressed displays the date and time, otherwise it counts how many times you pressed the button and, through the various sets, adjusts the time. In the end, updates the RTC with the new data entered and displays the Date and Time

Step 4: Work in Progress

Picture of Work in Progress


marsekal (author)2017-02-04

good job

tittiamo68 (author)marsekal2017-02-05

Thank you very much

maewert (author)2017-01-27

Nice Instructible. I suggest eliminating the pull-down resistors on the buttons and use the arduino's internal pull-up resistors instead to reduce parts. Just change the logic and wiring so you get a ground when the button is pressed.

Best Wishes.

tittiamo68 (author)maewert2017-01-27

Thank you for your suggestion.

I take note and I'll do the tests

About This Instructable




More by tittiamo68:ArduRadio AlarmClockLaura: Emotional Compass LampBright Ball IOT
Add instructable to: