Ajout d’une horloge en temps réel à votre Raspberry Pi

Lorsque vous allumez votre PC ou Mac, devez-vous changer son heure? Hautement improbable! Devez-vous le faire sur votre Raspberry Pi? Peut-être.

Chaque fois que votre Framboise Pi démarre, il se connecte à ce qu’on appelle un NTP – Protocole de temps réseau – serveur et lui demande l’heure. Mais que se passe-t-il si votre Pi n’est pas connecté à Internet? Vous n’avez pas de chance (ou est-ce le moment?). Votre Pi n’a aucun moyen de savoir quelle heure il est.

Mais il existe une solution sous la forme d’une «horloge en temps réel» ou d’une carte RTC. Ces cartes d’extension bon marché se branchent sur les broches GPIO de votre Pi et contiennent une puce d’horloge et une batterie qui indiquent Framboise Pi quelle heure il est. Le Pi Hut vend une telle planche.

blank

Configuration d’I2C

La carte RTC utilise ce que l’on appelle I2C (prononcé «eye squared see») pour communiquer entre lui et le Framboise Pi. L’I2C permet au Framboise Pi pour communiquer avec un grand nombre d’appareils différents en même temps qui sont également connectés aux mêmes broches I2C sur le Framboise Pi.

Simon Monk a écrit de très bonnes instructions sur la façon de configurer votre Framboise Pi pour pouvoir utiliser i2c sur le Site d’Adafruit. Suivez les instructions complètes, notamment en vérifiant que tout a fonctionné en suivant également les instructions du manuel.

Brancher la carte

Il est toujours préférable de Framboise Pi off avant de brancher quoi que ce soit sur les broches GPIO. Faites toujours cela en utilisant le sudo halt ou sudo shutdown -h now commandes.

Branchez maintenant la carte sur vos broches GPIO du Raspberry Pi dans le coin intérieur, la carte RTC pointant vers l’intérieur, comme illustré ci-dessous.

Brancher le RTC sur le Raspberry Pi

Configuration du RTC

Vous devez maintenant configurer votre Framboise Pi pour reconnaître et utiliser la carte.

Allume le Framboise Pi et vérifiez que la carte est vue en exécutant sudo i2cdetect -y 1 sur la ligne de commande. Vous devriez voir l’ID # 68 apparaître (l’adresse I2C de la puce d’horloge en temps réel DS1307):

Détection de périphérique I2C

Si vous avez une ancienne Rev.1 Framboise Pi, tu devras courir sudo i2cdetect -y 0 car l’adresse du bus I2C est passée de 0 à 1 à partir de la révision 2.

Réglage de l’horloge RTC

Le module RTC doit être chargé par le noyau en exécutant:

sudo modprobe rtc-ds1307

Vous devez maintenant exécuter en tant que super utilisateur; tapez:

sudo bash

puis, si vous avez une Rev.2 Framboise Pi ou version ultérieure:

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

Ou si vous avez l’ancienne Rev.1 Framboise Pi, utilisez:

echo ds1307 0x68 > /sys/class/i2c-adapter/i2c-0/new_device

Type exit pour ne plus être l’utilisateur “root”.

Vérifiez l’heure sur l’appareil RTC en utilisant:

sudo hwclock -r

Si c’est la première fois que le module est utilisé, il fera rapport le 1er janvier 2000 et vous devrez régler l’heure sur l’heure actuelle.

Le moyen le plus simple est de le connecter à Ethernet ou Wifi. Il réglera automatiquement l’heure à partir du réseau. Vous pouvez vérifier l’heure en utilisant le date commander:

Date

Courir sudo hwclock -w pour écrire l’heure du système sur la carte RTC.

Vous pouvez ensuite le vérifier avec sudo hwclock -r:

Réglage de l'horloge RTC

Alors maintenant, l’horloge RTC est réglée, c’est ça? Et bien non. La prochaine fois que vous démarrerez votre Pi, il ne saura pas qu’il doit lire l’horloge du RTC, donc s’il n’est pas connecté à Internet, il affichera à nouveau le mauvais moment.

Faire votre Framboise Pi Utiliser l’horloge en temps réel

Vous devrez ajouter le module du noyau RTC au fichier /etc/modules il est donc chargé lorsque le Framboise Bottes Pi. Dans une fenêtre de terminal, exécutez sudo nano /etc/modules et ajouter rtc-ds1307 à la fin du fichier:

blank

Ensuite, vous devrez ajouter la création du périphérique DS1307 au démarrage en modifiant le /etc/rc.local fichier en exécutant

sudo nano /etc/rc.local

et ajoutez les lignes suivantes au fichier:

echo ds1307 0x68 > /sys/class/i2c-adapter/i2c-1/new_device
sudo hwclock -s

date

Juste avant le exit 0. Remarque: Si vous avez une Rev 1 Framboise Pi, remplacer i2c-1 par i2c-0 au dessus de.

Définition du RTC au démarrage

Pour enregistrer le fichier, appuyez sur Ctrl + X, Y puis revenez.

Pour tester cela, arrêtez votre Raspberry Pi, débranchez tout câble Ethernet ou dongle wifi, puis rallumez le Raspberry Pi. Utilisez la commande suivante dans une fenêtre de terminal pour vérifier que la date est toujours définie:

date

Maintenant, la prochaine fois que vous redémarrerez votre Framboise Pi, il lira l’heure de l’horloge en temps réel.

Articles similaires

Bouton retour en haut de la page
Fermer