Installation d'une horloge matériel.
Matériel : Module horloge en temps réel Raspberry Pi
1/ Insertion de l'horloge dans le 'Pin 1'.
Soit :
Lien : http://pi4j.com/pins/model-3b-rev1.html
2/ Initialisation des modules de temps.
Ouvrir :
/boot/config.txt
Ajouter à la fin :
dtoverlay=i2c-rtc,ds3231
3/ Suppression de l'application de fausse horloge.
pi@minetest:~ $ sudo apt-get purge fake-hwclock
4/ Redémarrage.
pi@minetest:~ $ sudo reboot
5/ Ecriture du temps réel dans l'horloge.
pi@minetest:~ $ sudo hwclock -w --debug
hwclock from util-linux 2.29.2
Using the /dev interface to the clock.
Assuming hardware clock is kept in UTC time.
Waiting for clock tick...
/dev/rtc does not have interrupt functions. Waiting in loop for time from /dev/rtc to change
...got clock tick
Time read from Hardware Clock: 2000/01/01 00:00:45
Hw clock time : 2000/01/01 00:00:45 = 946684845 seconds since 1969
Time since last adjustment is 946684845 seconds
Calculated Hardware Clock drift is 0.000000 seconds
missed it - 1505161116.788261 is too far past 1505161116.500000 (0.288261 > 0.001000)
1505161117.500000 is close enough to 1505161117.500000 (0.000000 < 0.002000)
Set RTC to 1505161117 (1505161116 + 1; refsystime = 1505161116.000000)
Setting Hardware Clock to 20:18:37 = 1505161117 seconds since 1969
ioctl(RTC_SET_TIME) was successful.
Not adjusting drift factor because the --update-drift option was not used.
6/ Vérification.
pi@minetest:~ $ dmesg | grep rtc
[ 3.798097] rtc-ds1307 1-0068: SET TIME!
[ 3.804731] rtc-ds1307 1-0068: rtc core: registered ds3231 as rtc0
7/ Configuration de la timezone.
pi@minetest:~ $ sudo dpkg-reconfigure tzdata
8/ Paramétrage de l'heure à partir de l'horloge.
Ouvrir :
/etc/rc.local
Chercher :
exit 0
Ajouter avant :
/sbin/hwclock -s
9/ Post-configuration.
Ouvrir :
/etc/default/hwclock
Chercher :
#HWCLOCKACCESS=yes
Remplacer par :
HWCLOCKACCESS=no
10/ Suppression du protocole de temps.
pi@minetest:~ $ sudo apt-get purge ntp
pi@minetest:~ $ sudo apt-get install ntpdate
11/ Redémarrage.
pi@minetest:~ $ sudo reboot
12/ Vérification de la présence de l'horloge.
pi@minetest:~ $ cat /proc/driver/rtc
rtc_time : 20:27:07
rtc_date : 2017-09-11
alrm_time : 00:00:00
alrm_date : 1970-01-01
alarm_IRQ : no
alrm_pending : no
update IRQ enabled : no
periodic IRQ enabled : no
periodic IRQ frequency : 1
max user IRQ frequency : 64
24hr : yes
pi@minetest:~ $ dmesg | grep rtc
[ 3.835026] rtc-ds1307 1-0068: rtc core: registered ds3231 as rtc0
13/ Test.
pi@minetest:~ $ date
lundi 11 septembre 2017, 22:28:19 (UTC+0200)
14/ Débrancher le câble réseau, arrêter le Raspeberry Pi 3 pendant quelques minutes puis le rallumer.15/ Test.
pi@minetest:~ $ date
lundi 11 septembre 2017, 22:48:19 (UTC+0200)
16/ Script : Réglage manuel de l'horloge système et matériel.
Ouvrir :
d
Ajouter :
#!/bin/sh
read -p 'Date (MM/DD/AAAA): ' datevar
read -p 'Time (HH:MM:00): ' timevar
echo
echo Date: $datevar Time: $timevar
sudo date -s $datevar
sudo date -s $timevar
sudo hwclock -w -D
date
17/ Lien.
https://trick77.com/adding-ds3231-real-time-clock-raspberry-pi-3/