debian@beaglebone:~$ uname -a Linux beaglebone 3.8.13-bone72 #1 SMP Tue Jun 16 21:36:04 UTC 2015 armv7l GNU/Linux debian@beaglebone:/dev$ ls -l /dev/rt* crw------- 1 root root 254, 0 Mar 1 15:54 /dev/rtc0 crw------- 1 root root 254, 1 Mar 1 15:54 /dev/rtc1 debian@beaglebone:~$ i2cdetect -r 1 WARNING! This program can confuse your I2C bus, cause data loss and worse! I will probe file /dev/i2c-1 using read byte commands. I will probe address range 0x03-0x77. Continue? [Y/n] y 0 1 2 3 4 5 6 7 8 9 a b c d e f 00: -- -- -- -- -- -- -- -- -- -- -- -- -- 10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 50: -- -- -- -- UU UU UU UU -- -- -- -- -- -- -- -- 60: -- -- -- -- -- -- -- -- UU -- -- -- -- -- -- -- 70: -- -- -- -- -- -- -- -- debian@beaglebone:~$ dmesg | grep -i rtc [ 0.000000] Kernel command line: console=ttyO0,115200n8 root=UUID=221d2a7d-7a07-49ed-99e7-2b6ee530c2a6 ro rootfstype=ext4 rootwait fixrtc quiet init=/lib/systemd/systemd [ 0.748060] omap_rtc 44e3e000.rtc: rtc core: registered 44e3e000.rtc as rtc0 [ 0.748097] 44e3e000.rtc: already running [ 0.973636] [drm] Cannot find any crtc or sizes - going 1024x768 [ 1.045372] omap_rtc 44e3e000.rtc: setting system clock to 2015-03-01 20:54:12 UTC (1425243252) [ 8.803681] rtc-ds1307 1-0068: read error -110 [ 8.897030] rtc-ds1307 1-0068: rtc core: registered ds1307 as rtc1 [ 8.897059] rtc-ds1307 1-0068: 56 bytes nvram [ 81.515378] rtc-ds1307 1-0068: read error -121 [ 83.659916] rtc-ds1307 1-0068: read error -110 [ 84.667708] rtc-ds1307 1-0068: read error -110 [ 85.675542] rtc-ds1307 1-0068: read error -110 [ 91.219865] rtc-ds1307 1-0068: read error -121 [ 92.325929] rtc-ds1307 1-0068: read error -121 [ 94.517347] rtc-ds1307 1-0068: read error -110 [ 95.527095] rtc-ds1307 1-0068: read error -110 [ 96.536883] rtc-ds1307 1-0068: read error -110 [ 98.657958] rtc-ds1307 1-0068: read error -110 [ 99.665777] rtc-ds1307 1-0068: read error -110 [ 100.675540] rtc-ds1307 1-0068: read error -110 [ 102.847413] rtc-ds1307 1-0068: read error -110 [ 103.857160] rtc-ds1307 1-0068: read error -110 [ 104.864996] rtc-ds1307 1-0068: read error -110 [ 106.943131] rtc-ds1307 1-0068: read error -110 [ 107.950935] rtc-ds1307 1-0068: read error -110 [ 108.960702] rtc-ds1307 1-0068: read error -110 [ 110.314174] rtc-ds1307 1-0068: read error -5 root@beaglebone:/dev# hwclock -f /dev/rtc1 -r --debug hwclock from util-linux 2.20.1 Using /dev interface to clock. Last drift adjustment done at 1425242760 seconds after 1969 Last calibration done at 1425242760 seconds after 1969 Hardware clock is on UTC time Assuming hardware clock is kept in UTC time. Waiting for clock tick... /dev/rtc1 does not have interrupt functions. Waiting in loop for time from /dev/rtc1 to change hwclock: ioctl(RTC_RD_TIME) to /dev/rtc1 to read the time failed: Invalid argument ...synchronization failed root@beaglebone:/dev# hwclock -f /dev/rtc1 -r --debug hwclock from util-linux 2.20.1 Using /dev interface to clock. Last drift adjustment done at 1425242760 seconds after 1969 Last calibration done at 1425242760 seconds after 1969 Hardware clock is on UTC time Assuming hardware clock is kept in UTC time. Waiting for clock tick... /dev/rtc1 does not have interrupt functions. Waiting in loop for time from /dev/rtc1 to change ...got clock tick hwclock: ioctl(RTC_RD_TIME) to /dev/rtc1 to read the time failed: Invalid argument root@beaglebone:/dev# hwclock -f /dev/rtc1 -r --debug hwclock from util-linux 2.20.1 Using /dev interface to clock. Last drift adjustment done at 1425242760 seconds after 1969 Last calibration done at 1425242760 seconds after 1969 Hardware clock is on UTC time Assuming hardware clock is kept in UTC time. Waiting for clock tick... /dev/rtc1 does not have interrupt functions. Waiting in loop for time from /dev/rtc1 to change hwclock: ioctl(RTC_RD_TIME) to /dev/rtc1 to read the time failed: Input/output error ...synchronization failed root@beaglebone:/dev# hwclock -f /dev/rtc1 -r --debug hwclock from util-linux 2.20.1 Using /dev interface to clock. Last drift adjustment done at 1425242760 seconds after 1969 Last calibration done at 1425242760 seconds after 1969 Hardware clock is on UTC time Assuming hardware clock is kept in UTC time. Waiting for clock tick... /dev/rtc1 does not have interrupt functions. Waiting in loop for time from /dev/rtc1 to change ...got clock tick Time read from Hardware Clock: 2015/06/25 01:25:36 Hw clock time : 2015/06/25 01:25:36 = 1435195536 seconds since 1969 Wed 24 Jun 2015 09:25:36 PM EDT -0.037086 seconds # /etc/modules: kernel modules to load at boot time. i2c-dev rtc-ds1307 debian@beaglebone:/dev$ lsmod Module Size Used by 8192cu 449033 0 g_multi 50407 2 libcomposite 15028 1 g_multi omap_rng 4062 0 mt7601Usta 458758 0 #!/bin/sh -e # # rc.local echo ds1307 0x68 > /sys/class/i2c-adapter/i2c-1/new_device exit 0