Pico RTC DS3231

From Waveshare Wiki
Jump to: navigation, search
Pico RTC DS3231
Pico RTC DS3231

Precision RTC Module for Raspberry Pi Pico, Onboard DS3231 Chip
{{{name2}}}

{{{name3}}}

{{{name4}}}

{{{name5}}}

Primary Attribute
Category: OLEDs / LCDs, LCD
{{{userDefinedInfo}}}: {{{userdefinedvalue}}}
Brand: Waveshare
Website
International: Waveshare website
Chinese: 官方中文站点
Onboard Interfaces
Related Products

Overview

The Pico-RTC-DS3231 is an RTC expansion module specialized for Raspberry Pi Pico. It incorporates high precision RTC chip DS3231 and uses an I2C bus for communication. More external sensors are allowed to be connected thanks to the stackable design.

Features

  • Standard Raspberry Pi Pico header, supports Raspberry Pi Pico series
  • Onboard high precision RTC chip DS3231, with backup battery holder
    • Real-Time Clock Counts Seconds, Minutes, Hours, Date of the Month, Month, Day of the Week, and Year with Leap-Year Compensation Valid Up to 2100
    • Optional format: 24-hour OR 12-hour with an AM/PM indicator
    • 2x programable alarm clock

Specification

  • Operating voltage: 3.3V
  • Backup battery voltage: 2.3V~5.5V
  • Operating temperature: -40°C ~ 86°C
  • Power consumption: 100nA(sustains data and clock information)

Pinout

Pico-RTC-DS3231-details-inter.jpg

Setup environment

Please refer to Raspberry Pi's guide: https://www.raspberrypi.org/documentation/pico/getting-started/

Raspberry Pi

1. Open a terminal of Raspberry Pi
2. Download and unzip the demo codes to directory Pico C/C++ SDK

#Note that the directory of SDK may be different for different users, you need to check the actual directory. Generally, it should be ~/pico/.
wget -P ~/pico https://www.waveshare.com/w/upload/2/26/Pico-rtc-ds3231_code.zip
cd ~/pico
unzip Pico-rtc-ds3231_code.zip

c

1. Hold the BOOTSEL button of Pico, and connect the USB interface of Pico to Raspberry Pi then release the button.
2. Compile and run the pico-rtc-ds3231 examples

cd ~/pico/pico-rtc-ds3231_code/c/build/
cmake ..
make
sudo mount /dev/sda1 /mnt/pico && sudo cp rtc.uf2 /mnt/pico/ && sudo sync && sudo umount /mnt/pico && sleep 2 && sudo minicom -b 115200 -o -D /dev/ttyACM0

3. Open a terminal and user minicom to check the sensor's information.
Pico-RTC-DS3231004.jpg

python

1. Refer to Raspberry Pi's guides to setup Micropython firmware for Pico
2. Open the Thonny IDE, and drag the demo to IDE and run on Pico as below.
Pico-10DOF-IMU005.jpg
Pico-RTC-DS3231005.jpg
3. Click the "run" icon to run the MicroPython demo codes.
Pico-RTC-DS3231006.jpg

Windows

  • Download and unzip the demo to your Windows desktop, refer to Raspberry Pi's guides to set up the Windows software environment settings.
  • Press and hold the BOOTSEL button of Pico, connect the USB of Pico to the PC with a MicroUSB cable. Import c or python program into Pico to make it run.
  • Use the serial tool to view the virtual serial port of Pico's USB enumeration to check the print information, the DTR needs to be opened, the baud rate is 115200, as shown in the picture below:
Pico-RTC-DS3231007 (1).jpg

Others

  • The LED light are not used by default, if you need to use it, you can solder a 0R resistor on the R8 position. Click to view the schematic diagram.
  • The INT pin of DS3231 is not used by default. if you need to use it, you can solder the 0R resistor on the R5,R6,R7 positions. Click to view the schematic diagram.
    • Solder the R5 resistor, connect the INT pin to the GP3 pin of Pico, to detect the output status of the DS3231 alarm clock.
    • Solder the R6 resistor, connect the INT pin to the 3V3_EN pin of Pico, to turn off the Pico power when the DS3231 alarm clock outputs low level.
    • Solder the R7 resistor, connect the INT pin to the RUN pin of the Pico, to reset Pico when DS3231 alarm clock outputs low level.

Document

Demo codes

If you require technical support, please go to the Support page and open a tickets.