Arduino Nano: DS1307 Real Time Clock(RTC) With Visuino




DS1307 Real Time Clock are widely available low cost I2C RTC modules. They come with a clock and a small battery, and when connected to Arduino, can keep track of real time even when the Arduino board is not powered.

In this Instructable, I will show you how easy it is to connect DS1307 I2C RTC Module to Arduino, and read the time from it with Visuino. I will use the Tiny RTC Module that I have, but it should be very much the same with any other DS1307 Module.

Teacher Notes

Teachers! Did you use this instructable in your classroom?
Add a Teacher Note to share how you incorporated it into your lesson.

Step 1: Components

  1. One Arduino compatible board (I use Arduino Nano, because I have one, but any other will be just fine)
  2. One DS1307 Real Time Clock Module (I used Tiny RTC Module but any other DS1307 Module will be just fine)
  3. 4 Female-Female jumper wires

Step 2: Connect the Real Time Clock to Arduino

  1. Connect 5V VCC Power(Red wire), Ground(Black wire), SCL(Yellow wire), and SDA(Green wire), to the DS1307 RTC Module (Picture 1)
  2. Connect the other end of the Ground wire(Black wire) to Ground pin of the Arduino board (Picture 2)
  3. Connect the other end of the 5V VCC Power wire(Red wire) to the 5V power pin of the Arduino board (Picture 2)
  4. Connect the other end of the SDA wire(Green wire) to SDA/Analog pin 4 of the Arduino Nano board (Picture 2)
  5. Connect the other end of the SCL wire(Yellow wire) to SCL/Analog pin 5 of the Arduino Nano board (Picture 2)
  6. Picture 3 shows where are the Ground, 5V Power, SDA/Analog pin 4, and SCL/Analog pin 5, pins of the Arduino Nano

Step 3: Start Visuino, and Select the Arduino Board Type

To start programming the Arduino, you will need to have the Arduino IDE installed from here:

Please be aware that there are some critical bugs in Arduino IDE 1.6.6.

Make sure that you install 1.6.7 or higher, otherwise this Instructable will not work!

The Visuino: also needs to be installed.

  1. Start Visuino as shown in the first picture
  2. Click on the "Tools" button on the Arduino component (Picture 1) in Visuino
  3. When the dialog appears, select "Arduino Nano" as shown in Picture 2

Step 4: In Visuino: Add and Connect DS1307 Real Time Clock Component

  1. Type "rtc" in the Filter box of the Component Toolbox then select the "Real Time Clock(RTC) DS1307" component (Picture 1), and drop it in the design area
  2. Connect the "Control" pin of the RealTimeClock1 component (Picture 2) to the to the "In" pin of the I2C channel of the Arduino component (Picture 3)
  3. Connect the "Out" output pin of the RealTimeClock1 component to the "In" input pin of the "Serial[ 0 ]" channel of the Arduino component (Picture 4)

Step 5: Generate, Compile, and Upload the Arduino Code

  1. In Visuino, Press F9 or click on the button shown on Picture 1 to generate the Arduino code, and open the Arduino IDE
  2. In the Arduino IDE, click on the Upload button, to compile and upload the code (Picture 2)

Step 6: And Play...

Congratulations! You have completed the project.

Picture 1 shows the connected and powered up project.

If you open Serial Terminal in the Arduino IDE or Visuino, you will see the date and time from the Clock (Picture 2)

On Picture 3 you can see the complete Visuino diagram.
Also attached is the Visuino project, that I created for this Instructable. You can download and open it in Visuino:

Raspberry Pi Contest 2016

Participated in the
Raspberry Pi Contest 2016

Be the First to Share


    • Made with Math Contest

      Made with Math Contest
    • Multi-Discipline Contest

      Multi-Discipline Contest
    • Robotics Contest

      Robotics Contest

    14 Discussions


    2 years ago

    Could you share the code for those of us that arent interested of installing Visuino?

    5 replies

    Reply 1 year ago

    That's like asking to share a Linux program with you, but you don't want to install a Linux OS :D


    Reply 1 year ago

    Haha! But as I understand Visuiono is an editor with a lot of nice things... and it looks very nice. But I'm only interested in the sketch, the code. I already have Arduino IDE and don't need another editor. :D. So as I can see, its not the same :P


    Reply 1 year ago

    The Visuino code will not work without Visuino installed. It uses it's own Libraries and Namespaces that are specific to Visuino itself.


    Reply 2 years ago

    Thank you DanteM13 !
    If I post the generated code, it will be for specific version of Visuino and the Visuino libraries.
    The Visuino libraries are open source, but I change them all the time, so the posted code will become incompatible soon :-(
    If you generate it with Visuino it will always be compatible with the Visuino libraries of that version.
    I am looking at option of starting a website where you can send Visuino project and it will generate the latest version of the Arduino code, and will send you the necessary libraries, but this is still a future plan :-(


    3 years ago

    plz tell me how to interface seven segment display of in this project using visuino.

    2 replies

    Reply 3 years ago

    I will see to make Instructable for this too ;-)


    Reply 3 years ago

    Thank you! Enjoy :-) Almost ready with the next Instructable too ;-)