Outils pour utilisateurs

Outils du site


kb:linux:generalites:configurer_une_pi_en_serveur_ntp_avec_un_module_rtc

Configurer une Pi en serveur NTP avec un module RTC

Cette page est basé sur le module RTC DS3231.

L'objectif est de conserver l'heure sur un système embarqué sans internet, pour plusieurs autres systèmes.

Pour commencer il faudra brancher le module comme ceci sur la Pi :

Il faudra ensuite activer le bus I2C, en lançant :

# raspi-config

Puis en allant dans Interfacing Options

Puis I2C :

Puis en activant l'I2C :

Un fois fait, quittez raspi-config. Il faudra installer deux packages :

# apt install python-smbus i2c-tools

Un fois fait, vous devriez être capable de lancer :

# i2cdetect -y 1

Et obtenir un résultat semblable :

     0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f
00:          -- -- -- -- -- -- -- -- -- -- -- -- -- 
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
60: -- -- -- -- -- -- -- -- UU -- -- -- -- -- -- -- 
70: -- -- -- -- -- -- -- -- 

Maintenant, on va configurer le service permettant d'initialiser le module RTC. Pour cela, on va créer le fichier suivant :

/etc/systemd/system/rtcmodule.service
[Unit]
Description=Load RTC module
 
[Service]
Type=oneshot
ExecStart=/bin/bash -c '/bin/echo ds3231 0x68 > /sys/class/i2c-adapter/i2c-1/new_device'
ExecStart=/sbin/hwclock -s
 
[Install]
WantedBy=multi-user.target

Puis on recharge la configuration systemd :

# systemctl daemon-reload

Puis on active au démarrage le nouveau service créé:

# systemctl enable rtcmodule.service

On va maintenant charger manuellement module :

# echo ds3231 0x68 > /sys/class/i2c-adapter/i2c-1/new_device

A partir de là, vous devriez être capable de récupérer l'heure du module avec :

# hwclock
2000-01-01 01:20:36.825654+01:00

On va maintenant définir la date au module.

Si votre système n'est actuellement pas a l'heure vous pouvez définir manuellement avec la commande suivante :

# date -s "2019-10-25 13:00:00"

Il faudra écrire la date dans le module :

# hwclock -w

Il ne restera plus qu'a installer notre serveur NTP :

# apt install ntp

et a configurer nos clients a utiliser ce serveur.

kb/linux/generalites/configurer_une_pi_en_serveur_ntp_avec_un_module_rtc.txt · Dernière modification: 2019/10/25 23:51 de beu