DS3231 Real Time Clock Module 3.3V/5V with Battery for Raspberry Pi and Arduino by Atomic Market
We don't know when or if this item will be back in stock.
Additional Details
Customers also viewed these products
AITRIP 3PCS DS3231 Real Time Clock Module RTC Sensor High Precision AT24C32 IIC Timer Alarm Clock for Arduino Raspberry PiAmazon's Choicein Single Board Computers
Looking for specific info?
Product information
| Product Dimensions | 0.55 x 0.47 x 0.55 inches |
|---|---|
| Item Weight | 0.634 ounces |
| Manufacturer | Atomic Market |
| ASIN | B01M105UFC |
| Customer Reviews |
4.1 out of 5 stars |
| Is Discontinued By Manufacturer | No |
| Date First Available | July 28, 2018 |
Feedback
Customer reviews
Customer Reviews, including Product Star Ratings help customers to learn more about the product and decide whether it is the right product for them.
To calculate the overall star rating and percentage breakdown by star, we don’t use a simple average. Instead, our system considers things like how recent a review is and if the reviewer bought the item on Amazon. It also analyzed reviews to verify trustworthiness.
Learn more how customers reviews work on AmazonCustomers say
Customers like the performance, accuracy, ease of installation, and size of the real time clock. For example, they mention it works great as a RTC for a Raspberry Pi, it keeps precise time, and it's easy to configure. Some appreciate the small footprint and that it fits in a case. That said, some complain about the lack of documentation and support.
AI-generated from the text of customer reviews
Customers like the performance of the product. They say it works well as a RTC for a Raspberry Pi, and is a great device. Some customers also mention that it's useful for FLIRC case install and Raspbian setup.
"Works great as a RTC for a Raspberry Pi...." Read more
"Works great in my pixel mega tree driving Pi. It solved my problem of not being able to keep my Pi connected to the internet for time reference." Read more
"Works like a charm. Not all functionality of the chip is supported by the breakout. The alarm pins don’t have headers." Read more
"Works great but blocks pins." Read more
Customers are satisfied with the accuracy of the clock. They mention that it works well, keeps precise time, and is current. Some say that the clock and calendar are correct on start up.
"...When I turned it on the next day, sure enough, the time was current! So, if you are looking for an easy to use RTC for your Pi, get this one...." Read more
"if it works you are good to go, it keeps good time. spent some time figuring out that one board was defective...." Read more
"This RTC board worked fine for about 1 year and 4 months. It kept very good time and was fairly easy to setup...." Read more
"...now the clock and calendar are correct on start up." Read more
Customers find the installation of the product fairly easy. They mention that it's a great device, well designed, and easy to add to their Pi. They also say that configuring it in raspbian was easy.
"Easy to install. Not much of a physical presence so it fits in a case. Confuguring it in raspbian was easy." Read more
"...This unit comes with a battery installed and was plug and play. I set the time in Raspian, shut down the Pi, and unplugged it overnight...." Read more
"...It kept very good time and was fairly easy to setup. I was satisfied with it, until it stopped working a week ago...." Read more
"If you need a realtime clock this one is hard to beat. Easy to install with a few commands to run...." Read more
Customers like the size of the product. They say it has a small footprint, fits in a case, and is a great tiny clock.
"Easy to install. Not much of a physical presence so it fits in a case. Confuguring it in raspbian was easy." Read more
"...RTS version for my Monteino project, but like how this is a small footprint RTC and leaves UART lines open" Read more
"Great tiny clock..." Read more
Customers appreciate the value of the case and RTC for Arduino. They mention that it's inexpensive and doesn't completely break the onboard WiFi.
"...The case is inexpensive and doesn't completely break the onboard WiFi and Bluetooth, while still providing excellent thermal mass for the SoC..." Read more
"Great price and fast shipping!" Read more
"Good and cheap RTC for Arduino..." Read more
Customers are disappointed with the documentation provided with the product. They mention that it lacks documentation and support.
"The unit ships with NO documentation, so either be sure of what you're ordering or be ready to do some research online to get it to work...." Read more
"Sorry but poor documentation and zero support on how to connect to an Arduino Uno...." Read more
"...5 stars, all the while ignoring the frustration of lacking documentation/support." Read more
"no instructions for use reference for instructions (url) is a site with no refernce to this product" Read more
Reviews with images
-
Top reviews
Top reviews from the United States
There was a problem filtering reviews right now. Please try again later.
The first unit sat around nearly a year before I connected it to the Pi2B and its battery died near the end of 2017, so the battery lasted around 18 months after I got it.
When I set it up with the Pi2B I did all the stuff I had read about being necessary, but when I set one up on a PiZero(W) I looked for the minimum necessary to get it working. I did this minimum with several versions of Jessie--the one it came with from Feb 2017, a Jan 2017 version (the last one in which the ADS7846 touchscreen works properly) and a Nov 2015 version (non-"Pixel"). I have the third unit running on a Pi3B with Raspbian Stretch from August 2017; so the same process worked with all of those versions, if that's a concern. It seems that there was one version of Jessie that needed to have 1 or 2 lines in the "modules" file in the /etc directory, so if you have trouble with the RTC not being recognized, try adding i2c-dev and i2c-bcm2708 to that file on separate lines.
It's probably a good idea to check the battery voltage first to make sure it's 3V.
And use raspi-config to set correct locale & Time Zone if not already done.
So here's what I had to do to get the clock running:
a) Install the module on the Pi header to pins 1,3,5,7 & 9 as shown in the Amazon photo.
b) Make sure dtparam=i2c_arm=on is in the config.txt file in the /boot directory of the running system to enable the I2C bus.
c) Add the clock dtoverlay line, dtoverlay=i2c-rtc,ds3231 to that config.txt file. At this point on re-boot rtc0 should be in the /dev directory.
d) Comment out the following 3 lines in the file /lib/udev/hwclock-set, by adding the # to the start of the line:
#if [ -e /run/systemd/system ] ; then
# exit 0
#fi
NOTE: I discovered that a system upgrade can cause this file to get over-written and then the RTC will not work until you re-edit the file. This happened to me in the summer of 2019.
e) Type the command sudo hwclock -r (in a console window if running X) to see if it responds and what it says. If it has not been set yet it will say end of Dec 1999.
f) Set correct date & time using a command like sudo date -s "1 FEB 2018 11:14:00"
then,
g) Write that to the hwclock with the command sudo hwclock -w
h) enter the command sudo hwclock -r again. If it says the correct time, you have success!
There is no need to uninstall or disable the fake hwclock...sure it still writes to the time file on shutdown but it pulls in the correct time from the RTC on boot. And the fake clock file is there in case the real clock dies. It seems to me that this is the way it ought to be--check for real hardware clock & if that's not there check for network time & if neither of those are there use the fake hwclock. And that's the way it happened when the battery died on the Sunfounder unit on the Pi2B; the system used the fake hardware clock. I then noticed that the date & time were off, but they weren't December 31, 1999 like it goes to when there is no clock of any kind.
Nerdy discussion:
I uploaded a schematic as image "A", and, yes they did connect all of those "NC" pins to ground as the data sheet says they "must" be. And let me clarify that the numbers next to the arrows are pin numbers for the 5 pin header on this module, not the pins it plugs into on the Pi. The bypass capacitor is around .1uF and the pullup resistors are 4.3kOhms.
There are several sellers offering these things on Amazon & it seems like for each one someone comes along and claims that the battery is actually a supercap. So I pried the ribbon lead off of the positive terminal of the battery on the latest one I bought (from Atomic Market) to show that it is indeed a battery as you can see in image "B".
Furthermore, the datasheet for the DS3231 chip states in the pin description table under the Vbatt pin that "The device is UL recognized to ensure against reverse charging when used with a primary lithium battery.", so it would not charge the supercap if a supercap was used. So you would have to re-charge it yourself every few days. I therefore seriously doubt ANY of these ever had a supercap on the board, as it would be useless and a waste of the expense. I did find the thing on Jameco's web site claiming that it has a supercap as opposed to the battery on earlier versions. I don't know if that's Jameco's claim or the people they bought the things from, but I don't trust Jameco all that much...
So even if they did put a supercap on there, how well might it work? Supercaps are fantastic in that they provide much higher charge storing capability per unit volume than other types of cpaacitors, but how do they really stack up compared to a little battery? Let's see, the CR927 is said to be a 30mAhr cell, meaning it can supply the equivalent of 30mA (0.03A) of current for one hour before the voltage reaches 2V. So that's 0.03A times 3600 seconds (1 hour) for a total of 108 Coulombs of charge. Now let's consider the supercap. Capacitance is measured in Farads and a 1 Farad capacitor can hold 1 Coulomb of charge per Volt of charge, so a 1 Farad capacitor charged to 3V will hold 3 Coulombs of charge and when you have drained off 1 Coulomb the voltage on the capacitor will be 2V. So how big of a capacitor do we need to be able to supply as much current as that CR927 Lithium cell? How about 108 Farads? How big do you think that would be? I didn't find any supercaps that big rated at 3V but I did find a 3V 50 Farad capacitor that is 18mm x 42mm-- an awful lot bigger than that Lithium battery. The highest capacity supercap I found in a size close to that of the CR927 is a mere 200 milli-Farad in a size 6.8mm x 1.8mm, a bit smaller than the CR927. So this would only last 0.18% as long as the battery--maybe 2 days if the battery would last 3 years. And those parts showed as obsolete on Digikey. So why would a manufacturer install a supercap on there if it would only last 2 days and not be recharged when the Pi is powered? Makes no sense to me.
Reviewed in the United States on September 27, 2018
The first unit sat around nearly a year before I connected it to the Pi2B and its battery died near the end of 2017, so the battery lasted around 18 months after I got it.
When I set it up with the Pi2B I did all the stuff I had read about being necessary, but when I set one up on a PiZero(W) I looked for the minimum necessary to get it working. I did this minimum with several versions of Jessie--the one it came with from Feb 2017, a Jan 2017 version (the last one in which the ADS7846 touchscreen works properly) and a Nov 2015 version (non-"Pixel"). I have the third unit running on a Pi3B with Raspbian Stretch from August 2017; so the same process worked with all of those versions, if that's a concern. It seems that there was one version of Jessie that needed to have 1 or 2 lines in the "modules" file in the /etc directory, so if you have trouble with the RTC not being recognized, try adding i2c-dev and i2c-bcm2708 to that file on separate lines.
It's probably a good idea to check the battery voltage first to make sure it's 3V.
And use raspi-config to set correct locale & Time Zone if not already done.
So here's what I had to do to get the clock running:
a) Install the module on the Pi header to pins 1,3,5,7 & 9 as shown in the Amazon photo.
b) Make sure dtparam=i2c_arm=on is in the config.txt file in the /boot directory of the running system to enable the I2C bus.
c) Add the clock dtoverlay line, dtoverlay=i2c-rtc,ds3231 to that config.txt file. At this point on re-boot rtc0 should be in the /dev directory.
d) Comment out the following 3 lines in the file /lib/udev/hwclock-set, by adding the # to the start of the line:
#if [ -e /run/systemd/system ] ; then
# exit 0
#fi
NOTE: I discovered that a system upgrade can cause this file to get over-written and then the RTC will not work until you re-edit the file. This happened to me in the summer of 2019.
e) Type the command sudo hwclock -r (in a console window if running X) to see if it responds and what it says. If it has not been set yet it will say end of Dec 1999.
f) Set correct date & time using a command like sudo date -s "1 FEB 2018 11:14:00"
then,
g) Write that to the hwclock with the command sudo hwclock -w
h) enter the command sudo hwclock -r again. If it says the correct time, you have success!
There is no need to uninstall or disable the fake hwclock...sure it still writes to the time file on shutdown but it pulls in the correct time from the RTC on boot. And the fake clock file is there in case the real clock dies. It seems to me that this is the way it ought to be--check for real hardware clock & if that's not there check for network time & if neither of those are there use the fake hwclock. And that's the way it happened when the battery died on the Sunfounder unit on the Pi2B; the system used the fake hardware clock. I then noticed that the date & time were off, but they weren't December 31, 1999 like it goes to when there is no clock of any kind.
Nerdy discussion:
I uploaded a schematic as image "A", and, yes they did connect all of those "NC" pins to ground as the data sheet says they "must" be. And let me clarify that the numbers next to the arrows are pin numbers for the 5 pin header on this module, not the pins it plugs into on the Pi. The bypass capacitor is around .1uF and the pullup resistors are 4.3kOhms.
There are several sellers offering these things on Amazon & it seems like for each one someone comes along and claims that the battery is actually a supercap. So I pried the ribbon lead off of the positive terminal of the battery on the latest one I bought (from Atomic Market) to show that it is indeed a battery as you can see in image "B".
Furthermore, the datasheet for the DS3231 chip states in the pin description table under the Vbatt pin that "The device is UL recognized to ensure against reverse charging when used with a primary lithium battery.", so it would not charge the supercap if a supercap was used. So you would have to re-charge it yourself every few days. I therefore seriously doubt ANY of these ever had a supercap on the board, as it would be useless and a waste of the expense. I did find the thing on Jameco's web site claiming that it has a supercap as opposed to the battery on earlier versions. I don't know if that's Jameco's claim or the people they bought the things from, but I don't trust Jameco all that much...
So even if they did put a supercap on there, how well might it work? Supercaps are fantastic in that they provide much higher charge storing capability per unit volume than other types of cpaacitors, but how do they really stack up compared to a little battery? Let's see, the CR927 is said to be a 30mAhr cell, meaning it can supply the equivalent of 30mA (0.03A) of current for one hour before the voltage reaches 2V. So that's 0.03A times 3600 seconds (1 hour) for a total of 108 Coulombs of charge. Now let's consider the supercap. Capacitance is measured in Farads and a 1 Farad capacitor can hold 1 Coulomb of charge per Volt of charge, so a 1 Farad capacitor charged to 3V will hold 3 Coulombs of charge and when you have drained off 1 Coulomb the voltage on the capacitor will be 2V. So how big of a capacitor do we need to be able to supply as much current as that CR927 Lithium cell? How about 108 Farads? How big do you think that would be? I didn't find any supercaps that big rated at 3V but I did find a 3V 50 Farad capacitor that is 18mm x 42mm-- an awful lot bigger than that Lithium battery. The highest capacity supercap I found in a size close to that of the CR927 is a mere 200 milli-Farad in a size 6.8mm x 1.8mm, a bit smaller than the CR927. So this would only last 0.18% as long as the battery--maybe 2 days if the battery would last 3 years. And those parts showed as obsolete on Digikey. So why would a manufacturer install a supercap on there if it would only last 2 days and not be recharged when the Pi is powered? Makes no sense to me.
If you're here just for the RTC software installation, skip down till I shout at you.
My first concern though you can see in my first picture. Those little prongs poking out of the board. That yellow-edged pancake thing is a supercapacitor. It's like a regular capacitor except it can leap tall buildings, etc. (read: It can hold a charge like a battery to keep the chip powered.) The bits poking out of the side of the board look to be the leads that go to the + and - of the supercap, and if they are shorted, well, basically you're going to lose the time stored on your clock. :) Only a problem really because my FLIRC case is metal, in particular this little post for the case screw (pic #2). You can see (pic #3) that those little metal nubs stick out real close to where that screw post is located. Should only be a problem when installing or removing the case, but let's solve that problem: A tiny piece of electrical tape. You could put this over the post just as easily as over the RTC board, but I have fat fingers which is why I've been pointing with a spudger. :)
Apply the heat pad to the case (a little off-center like I've done here is best for the 3B+ in pic #4) and remember that the heat pad has sticker tape on the adhesive side and clear film on the other side (pic #5). Notice the cotton round I used with some 90% isopropyl alcohol—this FLIRC case is being reused with a fresh thermal pad (thinner for the 3B+, both thicknesses come with new FLIRC cases) and I needed to clean the old pad residue off the case. Insert the case HDMI-side first, line everything up as well as you can (pic #6) and put in the screws (#7). I started with the one diagonally opposite of the screw hole you see closest to the RTC/header, followed by that one, then the other two, just to make sure the thing was secure and pushing the board into the thermal pad a bit.
I'll assume you don't really need step-by-step instructions to get Raspbian installed. Either format a microSD card for FAT32 and download NOOBS from the Raspberry Pi website or get Raspbian from that website as a zipped .img file and grab a little program called Etcher. "Yes but I'm a Linux expert and don't need Etcher because I can dd the thing myself…" Good for you, Mr. expert, so can I, on Linux, Mac, BSD, or even on Windows, but I still use Etcher because at 3:30am when I'm writing Amazon reviews for clock chips that include full tutorials for setting them up, I'd rather not blow away the wrong 64GB disk image. Oh, Etcher will warn you that 64GB is awfully big for an SD card, lol.
If you're reading this in the US, you'll probably want to configure your keyboard so \ doesn't generate a #, set your timezone, etc. Do that in raspi-config. And change the password, you know how many botnets people have made out of Raspberry pi's because some idiot left the thing on the internet with user pi, password raspberry? That's especially important if you're gonna enable ssh (which I did). A few other system tweaks so my router knows what IP to give this thing consistently, upgrade packages, reboot, and now we're going to connect via ssh from a Mac with ridiculously large terminal fonts for easy screenshotting.
RTC SOFTWARE INSTALLATION
TL;DR for Mr. Linux expert: Enable i2c in raspi-config, add "dtoverlay=i2c-rtc,ds3231" to the bottom of /boot/config.txt, reboot, "sudo apt-get purge fake-hwclock", "sudo hwclock -w", and "sudo systemctl enable hwclock.sh". Then reboot and make sure it worked. There's more steps below if you wanna know how to know it's not working if it's not.
The first thing we need to do is enable I2C. Run raspi-config as root (sudo raspi-config, pic #8), arrow down to Interfacing Options (#9), and select I2C (#10) and turn it on (#11). If you've never exited out of this thing before, when you get back to the menu, press the right arrow and it'll move from the menu to <Select>. Press again for <Finish>. Press enter and you're back to your $ prompt. Now reboot (sudo reboot) and wait for it to come back up. I'm using Raspbian Lite on a 3B+, so that's really fast. The green LED tells will stop going nuts when it's rebooted.
I'm still using ssh, so I'll reconnect that way and run "sudo apt-get install i2c-tools". It'll want a couple of extra packages (#13), say yes and let it go till you get back to your shell prompt. That will let you run "sudo i2cdetect -y 1" as I did (pic #14) and see this weird matrix output thingy. See that 68? That's your RTC, all there and visible to the system. We could've skipped this step, but we didn't because if you don't see that 68 there, or maybe a UU if you've done the next step already, your RTC isn't working. Since it's there, let's make it work!
Next run "sudo nano /boot/config.txt" and add a line down at the bottom that says "dtoverlay=i2c-rtc,ds3231". I added a comment line above that explaining what this line is for so I don't forget the next time I'm doing something at this hour (pic #15, we'll pretend that's nano.) Hold down the ctrl key and press x, safe the file with the default name of /boot/config.txt, and sudo reboot again.
Remember that "sudo i2cdetect -y 1" command we ran? Pic #16 shows you what happens when we run it with the ds3231 module loaded. We're almost done! I stopped at this point to "sudo apt-get install apt-file" and "sudo apt-file update" so I could do an apt-file search for ntpdate because I can't remember if that's in its own package or part of ntp or what… We might need ntpdate later. (Pic #17, and I'm obviously an idiot, why are you listening to me at this hour for how to do this?)
We need three more commands: "sudo apt-get purge fake-hwclock", "sudo hwclock -w", and "sudo systemctl enable hwclock.sh". (Pic #18)
There are several websites with different instructions for how to enable the normal hwclock after you purge the fake one. Most involve editing /etc/rc.local or editing some file in /lib that'll get overwritten the next time you upgrade the package it's in. Debian systems on the desktop don't need any of that crap and they don't break on upgrades because Debian already has stuff for handling the RTC built into most systems. As soon as Linux knows you have one, you can undo the Raspbian customization (to disable it) and it will just work. I hope.
One way to find out… Reboot and check check the date! Pic #19 is … SUCCESS! We didn't need ntpdate, but I'll probably go use it now to make sure my Pi is synchronized rather than a second or two off of the rest of my computers, watches, dinguses, and other stuff. This process goes a lot faster than this if you've done it more than once before (I hadn't done this particular thing before) and aren't trying to document the process as you go.
If I have any problems with this thing keeping time due to supercap failure or whatever, I'll report back. Otherwise easily a 4 star product. Would've been 5 star if I didn't have to Google for how to set this thing up and then figure out how to actually do it RIGHT since nobody seems to have bothered to look at RPi-Distro/pi-gen to see how they disable the hardware clock script provided by Debian. I did, which is why my last step before the final reboot was to re-enable it rather than bumbling about editing random files.
Reviewed in the United States on June 6, 2018
If you're here just for the RTC software installation, skip down till I shout at you.
My first concern though you can see in my first picture. Those little prongs poking out of the board. That yellow-edged pancake thing is a supercapacitor. It's like a regular capacitor except it can leap tall buildings, etc. (read: It can hold a charge like a battery to keep the chip powered.) The bits poking out of the side of the board look to be the leads that go to the + and - of the supercap, and if they are shorted, well, basically you're going to lose the time stored on your clock. :) Only a problem really because my FLIRC case is metal, in particular this little post for the case screw (pic #2). You can see (pic #3) that those little metal nubs stick out real close to where that screw post is located. Should only be a problem when installing or removing the case, but let's solve that problem: A tiny piece of electrical tape. You could put this over the post just as easily as over the RTC board, but I have fat fingers which is why I've been pointing with a spudger. :)
Apply the heat pad to the case (a little off-center like I've done here is best for the 3B+ in pic #4) and remember that the heat pad has sticker tape on the adhesive side and clear film on the other side (pic #5). Notice the cotton round I used with some 90% isopropyl alcohol—this FLIRC case is being reused with a fresh thermal pad (thinner for the 3B+, both thicknesses come with new FLIRC cases) and I needed to clean the old pad residue off the case. Insert the case HDMI-side first, line everything up as well as you can (pic #6) and put in the screws (#7). I started with the one diagonally opposite of the screw hole you see closest to the RTC/header, followed by that one, then the other two, just to make sure the thing was secure and pushing the board into the thermal pad a bit.
I'll assume you don't really need step-by-step instructions to get Raspbian installed. Either format a microSD card for FAT32 and download NOOBS from the Raspberry Pi website or get Raspbian from that website as a zipped .img file and grab a little program called Etcher. "Yes but I'm a Linux expert and don't need Etcher because I can dd the thing myself…" Good for you, Mr. expert, so can I, on Linux, Mac, BSD, or even on Windows, but I still use Etcher because at 3:30am when I'm writing Amazon reviews for clock chips that include full tutorials for setting them up, I'd rather not blow away the wrong 64GB disk image. Oh, Etcher will warn you that 64GB is awfully big for an SD card, lol.
If you're reading this in the US, you'll probably want to configure your keyboard so \ doesn't generate a #, set your timezone, etc. Do that in raspi-config. And change the password, you know how many botnets people have made out of Raspberry pi's because some idiot left the thing on the internet with user pi, password raspberry? That's especially important if you're gonna enable ssh (which I did). A few other system tweaks so my router knows what IP to give this thing consistently, upgrade packages, reboot, and now we're going to connect via ssh from a Mac with ridiculously large terminal fonts for easy screenshotting.
RTC SOFTWARE INSTALLATION
TL;DR for Mr. Linux expert: Enable i2c in raspi-config, add "dtoverlay=i2c-rtc,ds3231" to the bottom of /boot/config.txt, reboot, "sudo apt-get purge fake-hwclock", "sudo hwclock -w", and "sudo systemctl enable hwclock.sh". Then reboot and make sure it worked. There's more steps below if you wanna know how to know it's not working if it's not.
The first thing we need to do is enable I2C. Run raspi-config as root (sudo raspi-config, pic #8), arrow down to Interfacing Options (#9), and select I2C (#10) and turn it on (#11). If you've never exited out of this thing before, when you get back to the menu, press the right arrow and it'll move from the menu to <Select>. Press again for <Finish>. Press enter and you're back to your $ prompt. Now reboot (sudo reboot) and wait for it to come back up. I'm using Raspbian Lite on a 3B+, so that's really fast. The green LED tells will stop going nuts when it's rebooted.
I'm still using ssh, so I'll reconnect that way and run "sudo apt-get install i2c-tools". It'll want a couple of extra packages (#13), say yes and let it go till you get back to your shell prompt. That will let you run "sudo i2cdetect -y 1" as I did (pic #14) and see this weird matrix output thingy. See that 68? That's your RTC, all there and visible to the system. We could've skipped this step, but we didn't because if you don't see that 68 there, or maybe a UU if you've done the next step already, your RTC isn't working. Since it's there, let's make it work!
Next run "sudo nano /boot/config.txt" and add a line down at the bottom that says "dtoverlay=i2c-rtc,ds3231". I added a comment line above that explaining what this line is for so I don't forget the next time I'm doing something at this hour (pic #15, we'll pretend that's nano.) Hold down the ctrl key and press x, safe the file with the default name of /boot/config.txt, and sudo reboot again.
Remember that "sudo i2cdetect -y 1" command we ran? Pic #16 shows you what happens when we run it with the ds3231 module loaded. We're almost done! I stopped at this point to "sudo apt-get install apt-file" and "sudo apt-file update" so I could do an apt-file search for ntpdate because I can't remember if that's in its own package or part of ntp or what… We might need ntpdate later. (Pic #17, and I'm obviously an idiot, why are you listening to me at this hour for how to do this?)
We need three more commands: "sudo apt-get purge fake-hwclock", "sudo hwclock -w", and "sudo systemctl enable hwclock.sh". (Pic #18)
There are several websites with different instructions for how to enable the normal hwclock after you purge the fake one. Most involve editing /etc/rc.local or editing some file in /lib that'll get overwritten the next time you upgrade the package it's in. Debian systems on the desktop don't need any of that crap and they don't break on upgrades because Debian already has stuff for handling the RTC built into most systems. As soon as Linux knows you have one, you can undo the Raspbian customization (to disable it) and it will just work. I hope.
One way to find out… Reboot and check check the date! Pic #19 is … SUCCESS! We didn't need ntpdate, but I'll probably go use it now to make sure my Pi is synchronized rather than a second or two off of the rest of my computers, watches, dinguses, and other stuff. This process goes a lot faster than this if you've done it more than once before (I hadn't done this particular thing before) and aren't trying to document the process as you go.
If I have any problems with this thing keeping time due to supercap failure or whatever, I'll report back. Otherwise easily a 4 star product. Would've been 5 star if I didn't have to Google for how to set this thing up and then figure out how to actually do it RIGHT since nobody seems to have bothered to look at RPi-Distro/pi-gen to see how they disable the hardware clock script provided by Debian. I did, which is why my last step before the final reboot was to re-enable it rather than bumbling about editing random files.
















