RasPi – podpora RTC DS3231 (hodiny reálného času)

Pokud není RasPi připojeno do internetu a tím pádem nevidí na NTP servery, které mu dodají přesný čas, můžeme použít RTC modul.

Modul DS3231 prodávají na AliExpressu za 1€, např. zde nebo zde

Konfigurace Raspbian

  • instalace potřebných tools – sudo apt-get install -y i2c-tools
  • povolení modulu v /etc/modules přidáme následující řádky
modules
i2c-bcm2835

i2c-dev

rtc-ds1307

  • přidáme informace do /etc/rc.local. Tím vysvětlíme kernelu, že máme na I2C sběrnici 0 zařízení 68 – RTC zdroj časomíry.
rc.local
echo ds1307 0x68 > /sys/class/i2c-adapter/i2c-1/new_device

hwclock -s

  • restartujeme RasPi
  • zapojení pinů z DS3231 na GPIO
GPIO
DS1307 Pi GPIO
GND pin 14 (GND)
Vcc pin 17 (3.3V)
SDA pin 3 (I2C SDA)
SCL pin 5 (I2C SCL)
  • otestování, že vidíme modul provedeme příkazem sudo i2cdetect -y 1
  • pokud vidíme toto, máme modul k dispozici (#68 je hex adresa RTC modulu na I2C sběrnici)
  • přes sudo raspi-config nastavíme správný timezone ( Europe/Prague )

 

  • nyní již můžeme nastavit aktuální datum a čas do systému : sudo date -s „19 NOV 2017 23:00:00“ nebo přes NTP server ntptime -s ntp.nic.cz
  • zapsat aktuální datum a čas do RTC : sudo hwclock -w
  • zkontrolovat stav v RTC : sudo hwclock -r
  • restartujeme RasPi a zkontrolovat datum a čas v systému po spuštění – date; hwclock -r

 

Permanent link to this article: https://www.elvisek.cz/2017/11/raspi-podpora-rtc-ds3231-hodiny-realneho-casu/