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

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 Raspberry 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 Raspberry Pi quelle heure il est. Le Pi vend une telle planche.

100282 medium

Configuration d’I2C

La carte RTC utilise ce que l’on appelle I2C (prononcé «eye squared see») pour communiquer entre lui et le Raspberry Pi. L’I2C permet au Raspberry 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 Raspberry Pi.

Simon Monk a écrit de très bonnes instructions sur la façon de configurer votre Raspberry 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 Raspberry 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 Raspberry Pi pour reconnaître et utiliser la carte.

Allume le Raspberry 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 Raspberry 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 Raspberry Pi ou version ultérieure:

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

Ou si vous avez l’ancienne Rev.1 Raspberry 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 Raspberry 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 Raspberry Bottes Pi. Dans une fenêtre de terminal, exécutez sudo nano /etc/modules et ajouter rtc-ds1307 à la fin du fichier:

1592866808 739 Ajout dune horloge en temps reel a votre Raspberry Pi

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 Raspberry 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 Raspberry Pi, il lira l’heure de l’horloge en temps réel.

  • AZDelivery Real Time Clock RTC I2C Compatible avec DS3231, Horloge en Temps Réel avec Batterie RTC DS3231 I2C, Module d’Horloge Haute Précision Compatible avec Arduino et Raspberry Pi incluant
    ✅ Le cristal d'horloge compatible avec DS3231 de haute précision, utilisé dans l'AZDelivery DS3231 RTC, réduit l'écart à quelques minutes par an! ✅ Grâce à la batterie intégrée, l'heure est stockée même en cas de panne de courant. De plus, cela permet la mise en œuvre de la date en tenant compte des années bissextiles jusqu'à 2100. ✅ Câblage simple via seulement quatre broches grâce à l'interface I2C. ✅ Intégration facile dans les projets grâce à des bibliothèques open source prêtes à l'emploi. Nos horloges en temps réel sont compatibles avec tous les modèles actuels de Raspberry Pi. ✅ Ce produit inclut un E-Book qui fournit des informations utiles sur la façon de commencer votre projet. Il permet une installation rapide et fait gagner du temps sur le processus de configuration. On y trouve une série d'exemples d'applications, des guides d'installation complets et des bibliothèques.
  • AZDelivery 3 x DS1302 Horloge série en Temps réel Horloge RTC Horloge Temps réel Module Compatible avec Arduino et Raspberry Pi y Compris Un eBook
    ✅ Grâce à la batterie intégrée, l'heure est mémorisée même en cas de panne de courant. De plus, cela permet de mettre en œuvre la date en tenant compte des années bissextiles jusqu'en 2100. ✅ Câblage simple via seulement quatre broches avec interface série. ✅ Intégration facile dans les projets grâce à des bibliothèques open source prêtes à l'emploi. Nos horloges en temps réel sont compatibles avec tous les modèles Framboise & Co courants. ✅ Nos horloges en temps réel sont compatibles avec tous les modèles populaires de framboise et Co. ✅ Ce produit inclut un E-Book qui fournit des informations utiles sur la façon de commencer votre projet. Il permet une installation rapide et fait gagner du temps sur le processus de configuration. On y trouve une série d'exemples d'applications, des guides d'installation complets et des bibliothèques.
  • ARCELI Module de mémoire d'horloge RTC Haute précision 4pcs DS pour Arduino Raspberry Pi
    HAUTE PRÉCISION: précision de la synchronisation maintenue à ± 5 ppm (± 0,432 sec / jour). Précision du capteur de température numérique ± 3. FACILE À UTILISER: Le module lui-même peut être adapté aux systèmes 3,3 V et 5 V, aucune conversion de niveau, il est super pratique. FONCTION: Les fonctions complètes du calendrier de l'horloge comprennent les secondes, les minutes, les heures, le jour, la date, le mois et l'année, sont valables jusqu'à la compensation de l'année 2100 de l'année bissextile. FAIBLE CONSOMMATION D'ÉNERGIE: Le module d'horloge RTC présente les caractéristiques suivantes: faible consommation d'énergie, plage de température de -40 ° C à +85 ° C.