Get with the times, already! This SparkFun Real Time Clock (RTC) Module is a Qwiic-enabled breakout board for the RV-1805 chipset. The RTC is ultra-low power (running at only about 22nA in its lowest power setting) so it can use a supercapacitor for backup power instead of a normal battery. This means you get plenty of charge and discharge cycles without any degradation to the “battery." To make it even easier to get your readings, all communication is enacted exclusively via I2C, utilizing our handy Qwiic system so no soldering is required to connect it to the rest of your system. However, we still have broken out 0.1"-spaced pins in case you prefer to use a breadboard.
This RTC module's built in RV-1805 has not one, but two internal oscillators: a 32.768kHz tuning fork crystal and a low power RC based oscillator and can automatically switch between the two using the more precise crystal to correct the RC oscillator every few minutes. This feature allows the module to maintain a very accurate date and time with the worst case being +/- about three minutes over a year. The RV-1805 also has a built in trickle charger so as soon as the RTC is connected to power the it will be fully charged in under 10 minutes and has the ability to switch power to other systems allowing it to directly turn on or off a power hungry device such as a microcontroller or RF engine.
There is also the option to add a battery to the board if the supercapacitor just isn’t going keep your project powered long enough (keep in mind, the supercap can hypothetically make the board keep time for around 35 days), you can solder on an external battery. That means you can let board sit with no power or connection to the outside world and the current hour/minute/second/date will be maintained.
Note: The I2C address of the RV-1805 is 0x69 and is hardware defined. A multiplexer/Mux is required to communicate to multiple RV-1805 sensors on a single bus. If you need to use more than one RV-1805 sensor consider using the Qwiic Mux Breakout.
The SparkFun Qwiic connect system is an ecosystem of I2C sensors, actuators, shields and cables that make prototyping faster and less prone to error. All Qwiic-enabled boards use a common 1mm pitch, 4-pin JST connector. This reduces the amount of required PCB space, and polarized connections mean you can’t hook it up wrong.
If a board needs code or communicates somehow, you're going to need to know how to program or interface with it. The programming skill is all about communication and code.
Skill Level: Competent - The toolchain for programming is a bit more complex and will examples may not be explicitly provided for you. You will be required to have a fundamental knowledge of programming and be required to provide your own code. You may need to modify existing libraries or code to work with your specific hardware. Sensor and hardware interfaces will be SPI or I2C.
See all skill levels
If it requires power, you need to know how much, what all the pins do, and how to hook it up. You may need to reference datasheets, schematics, and know the ins and outs of electronics.
Skill Level: Rookie - You may be required to know a bit more about the component, such as orientation, or how to hook it up, in addition to power requirements. You will need to understand polarized components.
See all skill levels
Based on 3 ratings:
1 of 1 found this helpful:
I'm using this with a Redboard to provide the time clock for a simple sprinkler timer. Setting the clock is very easy as you can use the provided library to set the time at compile time, meaning it will be within seconds of the host computer's system clock at the time of flashing the Arduino. I've not noticed any significant drift that would be a cause for concern - it was still within seconds of the host computer's clock long after a month. The on-board super-capacitor does a good job of maintaining the time. I'm using the board indoors in a stable temperature environment so that likely helps with drift.
0 of 1 found this helpful:
Drifts, even with the battery. Difficult to set to correct time
It was easy to follow the code in the examples to get this configured and running. It wasn't super accurate in the default configuration. But maybe i need to work on switching to the crystal. Nice tutorial!