Rtc
First, the i2c-bcm2708 i2c driver needs to be loaded. As far as I know, in the first few months of the raspberry pi being available, the module was blacklisted and didn't load automatically. Nowadays "raspi-config" will already give you the option to enable the driver.
What "raspi-config" does (but you can also do by hand) is remove the drivers from /etc/modprobe.d/raspi-blacklist.conf .
If the driver isn't loaded on your system start with:
sudo modprobe i2c-bcm2708
Then load the I2C and RTC drivers as root:
sudo -s modprobe i2c-dev modprobe i2c:mcp7941x echo mcp7941x 0x6f > /sys/class/i2c-dev/i2c-0/device/new_device # For rev1 RPi echo mcp7941x 0x6f > /sys/class/i2c-dev/i2c-1/device/new_device # For rev2 RPi
To write the system time to the RTC (you might need to run this command twice, when you use the RTC for the first time):
hwclock -w
Read out the RTC, and print the date and time to your console:
hwclock
Read out the RTC, and adjust system time:
hwclock -s
To automatically do this on startup, add the following lines to /etc/rc.local
modprobe i2c-dev modprobe i2c:mcp7941x echo mcp7941x 0x6f > /sys/class/i2c-dev/i2c-0/device/new_device # For rev1 RPi echo mcp7941x 0x6f > /sys/class/i2c-dev/i2c-1/device/new_device # For rev2 RPi hwclock -s