====== Ajout de capteurs I2C externes ====== La carte Kniwwelino dispose d'un connecteur à 4 pins qui utilise le protocole I2C ([[wp> I²C]]). Ce protocole te permet de connecter différents capteurs (jusqu'à 127 en même temps) ===== Connecte le capteur ===== Le connecteur I2C sur le Kniwwelino ainsi que tous les capteurs I2C pris en charge ont les quatre pins suivants: * ** VCC ** 3.3V fourni par la carte Kniwwelino pour alimenter les capteurs. * ** GND ** prise de terre * ** SDA ** Ligne de données série * ** SCL ** Ligne d'horloge série Ces 4 broches doivent être connectées un à un entre la carte Kniwwelino et le capteur. {{:en:extensions:i2c_1.jpg?direct&400|}}{{:en:extensions:i2c_2.jpg?direct&400|}} D'autres capteurs peuvent être connectés en parallèle en les connectant de la même manière soit sur la carte Kniwwelino, soit sur l'un des capteurs connectés. Pour faciliter la connexion, un [[https://www.seeedstudio.com/Grove-I2C-Hub-p-851.html|I2C hub]] peut être utilisé. {{:en:extensions:i2c_3.jpg?direct&400|}} ===== Capteurs supportés ===== ==== BME-280 ==== * ** Valeurs disponibles :** * Température en °C * Humidité en % * Pression en hPa * Hauteur en m * ** Librairie utilisée :** Adafruit BME280 Library 1.0.7 https://github.com/adafruit/Adafruit_BME280_Library * **Adresse I2C :** 0x76 ==== BME-680 ==== * ** Valeurs disponibles :** * Température en °C * Humidité en % * Pression en hPa * Hauteur en m * Gaz: composés organiques volatils (COV) en Ohm * **Librairie utilisée :** Adafruit BME680 Library 1.0.5 https://github.com/adafruit/Adafruit_BME680 * **Adresse I2C :** 0x77 * ==== SHT-30 ==== * ** Valeurs disponibles :** * Température en °C * Humidité en % * **Librairie utilisée :** Librairie WEMOS SHT30 modifiée : https://github.com/derFrickler/WEMOS_SHT3x_Arduino_Library * **Adresse I2C :** 0x45 ==== HTU21D ==== * ** Valeurs disponibles :** * Température en °C * Humidité en % * **Librairie utilisée :** Librairie Adafruit HTU21D : https://github.com/adafruit/Adafruit_HTU21DF_Library * **Adresse I2C :** **0x40** ==== BH1750 ==== * ** Valeurs disponibles:** * Niveau de lumière en lux * **Librairie utilisée :** Librairie BH1750 1.1.3 https://github.com/claws/BH1750 * **Adresse I2C :** 0x23 ==== ADPS9960 ==== * ** Valeurs disponibles:** * Proximité 0=loin to 255=proche * Gestes EN HAUT=1 EN BAS=2 A GAUCHE=3 A DROITE=4 * Composition de la lumière (blanc, rouge, vert, bleu) * **Librairie utilisée :** Librairie Adafruit_APDS9960 modifiée : https://github.com/derFrickler/Adafruit_APDS9960 * **Adresse I2C :** 0x39 ===== Programmer les capteurs i2c ===== Tu peux lire les données du capteur et les utiliser dans ton application en utilisant les blocs suivants, listés dans la section ''Entrée/Sortie'' : {{:fr:extensions:capteursi2c.png?250|}} Choisis le bloc avec le même numéro que ton capteur et sélectionne la valeur que tu veux lire. Par exemple pour lire la température avec un capteur SHT30 toutes les 5 secondes et écrire la valeur sur la matrice, tu peux utiliser les blocs suivants : {{:fr:extensions:exemplecodecapteursi2c.png?400|}}