Catégories
Liens
Ceci est une ancienne révision du document !
La Raspberry Pi est un mini-ordinateur très pratique mais il ne possède pas de “temps”. Pour économiser ils n'ont pas installé d'horloge. Si, pour une installation artistique par exemple, on veut allumer ou éteindre notre programme il faut bien savoir à quelle heure .. C'est pourquoi on peut ajouter un petit module qui va enregistrer le temps et le garder en mémoire le temps de décharger la pile (~ 9 ans!). Ce type de module peut aussi être utilisé avec une Arduino.
Sur cette page un comparatif des modules : Offrez une horloge temps réel (RTC) à votre Raspberry Pi
D'abord il faut mettre sa Raspberry à jour en la branchant à Internet pour installer les paquets nécessaires. Ouvrez un terminal.
sudo apt-get update sudo apt-get upgrade sudo apt-get dist-upgrade
Installer ces paquets pour gérer l'I2C (tous ne sont peut-être pas utiles, à vérifier)
sudo apt-get install python-smbus python3-smbus python-dev python3-dev i2c-tools
Ce type de module d'horloge communique en I2C, il faut donc configurer ce moyen de communication sur la Raspberry
sudo raspi-config
Sélectionnez “8 Advanced Options” et “A7 I2C - Enable/Disable automatic loading”. Répondez “Yes” à toutes les questions, sortez et redémarrez la Raspberry.
Activer les protocoles I2C et le SPI sur la Raspbian Wheezy en éditant le fichier “/etc/modprobe.d/raspi-blacklist.conf”. Si le fichier n'existe pas, alors vous pouvez sauter cette étape :
sudo nano /etc/modprobe.d/raspi-blacklist.conf
Commenter ces lignes en ajoutant un “#”
#blacklist spi-bcm2708 #blacklist i2c-bcm2708
Save your changes and exit the nano editor.
Pour les versions récentes de Raspberry (3.18 kernel ou plus) vous devez éditer le fichier “/boot/config.txt”. Pour connaître le numéro du kernel, tapez “uname -a” dans un terminal.
sudo nano /boot/config.txt
Ajoutez ces lignes à la fin du fichier et sauvez le fichier Ctl-x, Ctl-o :
dtparam=i2c1=on dtparam=i2c_arm=on
Démarrer la communication I2C automatiquement en éditant le fichier “/etc/modules” :
sudo nano /etc/modules
Ajoutez ces lignes à la fin et sauver.
i2c-bcm2708 i2c-dev
Pour éviter d'utiliser i2c-tools en tant qu'administrateur root, vous pouvez ajouter “pi” au groupe I2C :
sudo adduser pi i2c
Redémarrez
sudo reboot
Quand la Raspberry va redémarrer, elle supportera dorénavant l'I2C et SMBus Python.
Pour le moment rien de bien compliqué, on pourrait même difficilement faire plus simple, c’est un avantage du bus I²C qui communique sur 2 fils (hors alimentation):
Si vous n’avez pas de pile bouton de 3V sous la main (ce qui est mon cas lors de ce tuto), connectez également 2 piles de 1.5V entre les bornes BAT et GND du module RTC. Sinon, installez la pile bouton dans son logement.
date -s "20 OCT 2016 19:20:20" sudo hwclock -w sudo hwclock -r sudo i2cdetect -y 0 (if using v1 Raspberry Pi or) sudo i2cdetect -y 1 (if using v2 Raspberry Pi or)
Liens en vracs