DS1307 Based RTC Module

An RTC Module or a Real Time Clock Module helps a system keep track of current time (hour, minutes and seconds). It automatically increments the time without any help from the host (microcontroller). Other benefit is that it has a backup power supply from a small coin cell that help it maintain the time in absence of power. It needs very small power in backup mode so that the coin cell last for years!

One such RTC IC is DS1307. It communicates with the host using I2C serial interface. We have put all the required components in one PCB to make a neat module that we can hook up to our MCUs like PIC or AVR. After the experiment you can put the module safely in your drawer, bring it out after an year and still it will give you the correct time!

DS1307 Module Schematic

ds1307 rtc module

DS1307 Based RTC Module Schematic

DS1307 Module Fabricated !

RTC Module for AVR

DS1307 Based RTC Module


professional ds1307 RTC module

Professional DS1307 RTC module



Connection with MCU

The SCL line of RTC Module will be connected to SCL line of MCU similarly the SDA line will be connected to the MCU’s SDA line. The RTC Module should be powered from the microcontroller development board. Most of our boards have extra 5v output points. Please see their documentation for location of these pins.


JLCPCB Prototype: $2 for 10 pcs PCBs, 48 Hours Quick Turn

China’s Largest PCB Prototype Enterprise, 300,000+ Customers & 10,000+ Online Orders Per Day

Get quote online easily: https://jlcpcb.com/ quote

Facing problem with your embedded, electronics or robotics project? We are here to help!
Post a help request.


Avinash Gupta is solely focused on free and high quality tutorial to make learning embedded system fun !

More Posts - Website

Follow Me:
FacebookLinkedInGoogle Plus


10 thoughts on “DS1307 Based RTC Module

  • By georgetwo - Reply

    I am realy happy to see this,
    I hope to see how to configure the RTC in C.

  • By Sanket Dilip Madhavi - Reply

    I want to interface RTC module DS1307 to 89v51rd2.
    I have tried but unable to access the module.
    Please,give me the c-code for that

  • By Sanjay - Reply

    Hello Avinash,
    I tried to use isl1208 RTC with at91sam7s256 ,i2c is working fine i am able to read and write isl1208 register.But i am having problem in its initialization.Can you guide me if you have some idea about isl1208 rtc.

  • By Avinash - Reply

    yes I can guide if you can pay my fees.

  • By Sanjay - Reply

    @Avinash How much you want ?

    • By Avinash - Reply

      standard US$100 per hour.

  • By Sanjay - Reply

    I did it myself , its working, so a person who get US3$ per hour did this job.

    🙂 stay greedy…

    • By Avinash - Reply


      To kaar le na bhai , kisne roka tujhe ! Hum to yehi charge karte boss.

  • By mojtaba - Reply


    khasteh nabashid

    man irani hastam sayte jalebi darid ….


    Farsi is written as above

    Thanks from web

    Why the Basic programming language binding

    Nmyzaryd project

    I am more to external website

    Thank you
    If you have a basic project again

  • By manoj - Reply

    my simulation is fine but the clock of lcd display is slower than the real seconds…it takes about 80 sec to complete a real 1 minute…what is wrong in my programm?? plzz help!!

Leave a Reply to Sanjay Cancel reply

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

2 + one =

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>