Table des matières:

Construire un capteur de température Apple HomeKit (BME280) à l'aide d'un RaspberryPI et d'un BME280 : 5 étapes
Construire un capteur de température Apple HomeKit (BME280) à l'aide d'un RaspberryPI et d'un BME280 : 5 étapes

Vidéo: Construire un capteur de température Apple HomeKit (BME280) à l'aide d'un RaspberryPI et d'un BME280 : 5 étapes

Vidéo: Construire un capteur de température Apple HomeKit (BME280) à l'aide d'un RaspberryPI et d'un BME280 : 5 étapes
Vidéo: Dallas DS18B20 - capteur de température étanche avec ESPHome 2024, Juillet
Anonim
Construire un capteur de température Apple HomeKit (BME280) à l'aide d'un RaspberryPI et d'un BME280
Construire un capteur de température Apple HomeKit (BME280) à l'aide d'un RaspberryPI et d'un BME280
Construire un capteur de température Apple HomeKit (BME280) à l'aide d'un RaspberryPI et d'un BME280
Construire un capteur de température Apple HomeKit (BME280) à l'aide d'un RaspberryPI et d'un BME280
Construire un capteur de température Apple HomeKit (BME280) à l'aide d'un RaspberryPI et d'un BME280
Construire un capteur de température Apple HomeKit (BME280) à l'aide d'un RaspberryPI et d'un BME280

J'ai joué avec des appareils IOT au cours des derniers mois et j'ai déployé environ 10 capteurs différents pour surveiller les conditions autour de ma maison et de mon chalet. Et j'avais initialement commencé à utiliser le capteur d'humidité tempérée AOSONG DHT22, mais j'ai constaté qu'après quelques mois, les valeurs du capteur d'humidité étaient majoritairement désactivées. Je regarderais l'humidité et elle afficherait 40% ou plus de plus que les conditions réelles. J'ai donc regardé autour de moi et j'ai découvert que le capteur de température/pression/humidité Bosch BME280 avait une très bonne réputation de précision (https://www.kandrsmith.org/RJS/Misc/Hygrometers/ca…). Donc, dans cette instructable, nous allons connecter un Bosch BME280 au Raspberry PI Model 2 et mettre les informations à la disposition d'Apple HomeKit via Homebridge.

Étape 1: Récupérez les pièces dont vous avez besoin

Collectez les pièces dont vous avez besoin
Collectez les pièces dont vous avez besoin
Collectez les pièces dont vous avez besoin
Collectez les pièces dont vous avez besoin
Collectez les pièces dont vous avez besoin
Collectez les pièces dont vous avez besoin

Pour les pièces, rendez-vous dans votre magasin de pièces préféré et achetez.

  • 1 pièces GY-BME280 3.3 module de capteur de pression atmosphérique BME280 altimètre de précision

    Il existe de nombreuses variantes de ces tableaux de dérivation. Le circuit que j'utilise était basé sur la carte de dérivation GY-BME/P280, mais fonctionnerait également avec d'autres

  • Câble de connecteur DuPont femelle à femelle 50 cm 5 broches

J'avais déjà le RaspberryPI, donc je n'ai pas eu besoin de l'acheter.

Pour un étui pour le BME280, j'ai utilisé un ancien support de carte mémoire SD que j'avais en train de taper. Vous voudrez peut-être regarder autour de vous et voir ce que vous pouvez trouver de similaire.

Étape 2: Câblage du capteur

Câblage du capteur
Câblage du capteur
Câblage du capteur
Câblage du capteur
Câblage du capteur
Câblage du capteur

Pour connecter le capteur, nous allons utiliser une extrémité du câble dupont femelle/femelle 5 broches pour connecter au RaspberryPI et l'autre au capteur. Cela nécessitera de la soudure;-)

  1. Coupez le câble dupont femelle/femelle à 5 broches environ en deux, et nous utiliserons une extrémité pour la connexion au capteur. L'autre extrémité est de rechange et pourrait être utilisée pour un deuxième capteur.
  2. Coupez les extrémités coupées du fil d'environ 3 mm et étamez les extrémités.
  3. En suivant le schéma ci-joint, soudez les extrémités des fils aux connexions appropriées sur le BME280.
  • Connecteur Dupont (RPI) Pin 1 (3.3 VCC) se connecte à Pin 1 - (VCC) sur le capteur
  • Connecteur Dupont (RPI) La broche 2 (SDA1) se connecte à la broche 4 - (SDA) sur le capteur
  • Connecteur Dupont (RPI) La broche 3 (SCL1) se connecte à la broche 4 - (SCL) sur le capteur
  • La broche 4 (GPIO4) du connecteur Dupont (RPI) n'est pas utilisée et le fil doit être coupé à l'extrémité du connecteur dupont.
  • Connecteur Dupont (RPI) La broche 5 (GND) se connecte à la broche 4 - (GND) sur le capteur

Les broches 5 (CSB) et 6 (SDO) ne sont pas utilisées côté capteur

Étape 3: Connectez le capteur au RaspberryPI

Connectez le capteur au RaspberryPI
Connectez le capteur au RaspberryPI
Connectez le capteur au RaspberryPI
Connectez le capteur au RaspberryPI

Pour connecter le capteur au RaspberryPI, veuillez éteindre votre PI. Et connectez le connecteur dupont au connecteur GPIO 40 broches, en alignant les broches comme suit. Cela correspondra au côté gauche de l'en-tête à 40 broches, en commençant par le haut.

1. Connexion du capteur

  • Le connecteur Dupont Pin 1 (3.3 VCC) se connecte au RPI Pin 1
  • Le connecteur Dupont Pin 2 (SDA1) se connecte au RPI Pin 3
  • Le connecteur Dupont Pin 3 (SCL1) se connecte à RPI Pin 5
  • Le connecteur Dupont Pin 4 (GPIO4) se connecte à RPI Pin 7
  • Le connecteur Dupont Pin 5 (GND) se connecte à RPI Pin 9

2. Allumez votre RaspberryPI

Étape 4: Configurez votre RaspberryPI pour qu'il se connecte au capteur

Pour ces étapes, nous avons besoin de votre RaspberryPI sous tension et vous devez vous y connecter.

1. Voyez si vous pouvez voir le capteur via le bus i2c

sudo i2cdetect -y 1

Et la sortie devrait ressembler à ceci, la partie importante de cette sortie est le 76 dans la rangée 70:. C'est ton capteur

0 1 2 3 4 5 6 7 8 9 a b c d e f

00: -- -- -- -- -- -- -- -- -- -- -- -- -- 10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 70: -- -- -- -- -- -- 76 --

Dans le cas où vous obtenez une commande introuvable ou d'autres erreurs, veuillez suivre les étapes ici.

Adafruit - Configurer I2C

Pour tous mes RaspberryPI, je devais suivre ces étapes.

2. Ajoutez des autorisations au compte à partir duquel vous exécuterez homebridge pour vous connecter au bus i2c sur le RaspberryPI. Faites-le en tant qu'utilisateur à partir duquel vous exécuterez homebridge.

sudo adduser $ USER i2c

Étape 5: Installez le plugin Homebridge-bme280

Installez le plugin Homebridge-bme280
Installez le plugin Homebridge-bme280
Installez le plugin Homebridge-bme280
Installez le plugin Homebridge-bme280
Installez le plugin Homebridge-bme280
Installez le plugin Homebridge-bme280

Je vais supposer que vous avez déjà installé homebridge et que vous travaillez sur le RaspberryPI, et si vous n'avez pas de nombreux guides sur Internet pour le faire fonctionner sur le RaspberryPI.

1. Installez homebridge-bme280 avec la commande

sudo npm install -g NorthernMan54/homebridge-bme280 --unsafe-perm

Si cela échoue avec cette erreur

npm ERR ! code 128npm ERR ! Échec de la commande: /usr/bin/git clone -q git://github.com/NorthernMan54/homebridge-bme280.git /var/root/.npm/_cacache/tmp/git-clone-7237d51c npm ERR ! fatal: impossible de créer les répertoires principaux de '/var/root/.npm/_cacache/tmp/git-clone-7237d51c': autorisation refusée npm ERR !

Essaye ça

sudo su -

npm install -g NorthernMan54/homebridge-bme280 --unsafe-perm

2. Créez votre fichier config.json dans ~/.homebridge avec les éléments suivants:

{

"pont": {

"nom": "Homebridge",

"nom d'utilisateur": "CC:22:3D:E3:CE:30", "port": 51826,

"épingle": "031-45-154"

},

"description": "Ceci est un exemple de fichier de configuration avec un faux accessoire et une fausse plate-forme. Vous pouvez l'utiliser comme modèle pour créer votre propre fichier de configuration contenant les appareils que vous possédez réellement.",

"accessoires": [

{

"accessoire": "BME280",

"nom": "Capteur", "name_temperature": "Température",

"name_humidity": "Humidité", "options": {

"i2cBusNo": 1, "i2cAdresse": "0x76"

}

}

], "plateformes": [

]

}

3. Démarrez homebridge, la sortie devrait ressembler à ceci.

[2016-11-12, 6:25:29 AM] Plugin chargé: homebridge-bme280[2016-11-12, 6:25:29 AM] Enregistrement de l'accessoire 'homebridge-bme280. BME280' [2016-11-12, 6:25:29] --- [2016-11-12, 6:25:30] config.json chargé avec 1 accessoires et 0 plates-formes. [2016-11-12, 6:25:30] --- [2016-11-12, 6:25:30] Chargement 0 plateformes… [2016-11-12, 6:25:30] Chargement 1 accessoires… [2016-11-12, 6:25:30] [Capteur] Initialisation de l'accessoire BME280… [2016-11-12, 6:25:30] [Capteur] Options du capteur BME280: {"i2cBusNo": 1, "i2cAddress":118} ID de puce BME280 trouvé 0x60 sur l'adresse bus i2c-1 0x76 [2016-11-12, 06:25:31 AM] [Capteur] Initialisation BME280 réussie [2016-11-12, 06:25:31 AM] [Sensor] data(temp) = { "temperature_C": 18.23, "humidité": 39.1710189421353, "pressure_hPa": 1016.8910377944043 } Scannez ce code avec votre application HomeKit sur votre appareil iOS pour coupler avec Homebridge: ^

4. Associez votre instance homebridge à votre iPhone si nécessaire.

5. Profitez

Veuillez noter que le capteur de pression barométrique n'est visible que dans les applications homekit tierces, et non dans "Home", 6. Crédits

  • Merci à Robert X. Seger pour le plugin homebridge-bme280.
  • Merci à Skylar Stein pour le module node.js bme280-sensor
  • Adafruit pour la publication du guide de configuration I2C.

Conseillé: