Connexion entre Raspberry Pi et T’REX par I²C
Nous avons déjà vu comment communiquer entre le T’REX et l’Arduino par I²C. Dans ce projet, l’Arduino n’est pas suffisant pour ajouter un camera, communiquer par WiFi etc. Le Raspberry Pi pouvant également communiquer via I²C, l’Arduino ne nous sera plus utile.
Câblage
La communication par I²C entre le Raspberry et le T’REX nécessite 4 câbles :
- GND (Brun) : Masse commune
- SCL – Serial Clock Line (Jaune) : Horloge de synchronisation
- SDA – Serial Data Line (Orange) : Données
- +VI (Rouge) : Tension du contrôleur externe, ici +3.3V
Comme le T’REX intègre une résistance de pullup de 10K, il n’y a pas besoin d’ajouter de résistance.
Source :
https://fr.pinout.xyz/pinout/i2c
Initialisation du bus I²C
Le bus I²C n’est pas activé par défaut sur Raspbian. Pour l’activer, on peut passer par l’interface sudo raspi-config
:
> Interfacing Options > I2C > <Yes>
Source :
https://learn.adafruit.com/adafruits-raspberry-pi-lesson-4-gpio-setup/configuring-i2c
Détection des périphériques I²C
Pour vérifier l’activation du bus I²C et le bon cablâge avec le Raspberry, on va lancer un scan des périphériques. Pour ça, on doit tout d’abord installer le programme i2c-tools
sudo apt-get install i2c-tools
puis lancer la détection avec
sudo i2cdetect -y 1
On voit apparaitre le T’REX à l’adresse 0x07.