Skip to content

jingl3s/raspberry_pi_DHT21-AM2301

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Raspberry Pi et AM2301

Ceci est une simple histoire de mise en oeuvre d'un capteur de température et humidité avec un RaspberryPi 1B.

Important

Ce depots est basé sur https://github.com/kporembinski/DHT21-AM2301 avec mes notes et ajout pour fonctionner avec mes tests et attentes

Commencement

Le capteur est un AM2301 qui est semblable à un DHT22 mais vous verrez qu'il ne fonctionne pas tout à fait de la même manière.

AM2301

Lors de son achat en 2016, il ne fonctionnait pas avec le Rpi1 avec des tests par défaut. En 2018, la mise en place d'un OrangePi zéro H2+ avec ce capteur a permit de le faire fonctionner (lien).

Pour faire court :

  • La résistance de tirage est déjà présente
  • Avec un petit peu d'huile de coude et heure, le dépôt suivant avec du code Pythons a fonctionné.
  • Le code a ensuite été intégré dans quelques autre projets sur OrangePi et un affichage ssd 1306 en i2c lien

Mais avec le mise en place de home-assistant sur un netbook et un capteur DS18B20, il fallait bien se rendre à l'évidence que le taux d'humidité en plus serait pas mal.

Nous y voila en 2021 en train de bricoler ce capteur avec un Rpi1 pour ensuite le mettre sur le Rpi associé à home-assistant.

Investigations

Rpi1B_investigation

Voici la liste des différents tests effectués.

Solution

  • apt install wiringpi
  • gpio readall
 +-----+-----+---------+------+---+-Model B1-+---+------+---------+-----+-----+
 | BCM | wPi |   Name  | Mode | V | Physical | V | Mode | Name    | wPi | BCM |
 +-----+-----+---------+------+---+----++----+---+------+---------+-----+-----+
 |     |     |    3.3v |      |   |  1 || 2  |   |      | 5v      |     |     |
 |   2 |   8 |   SDA.1 | ALT0 | 1 |  3 || 4  |   |      | 5v      |     |     |
 |   3 |   9 |   SCL.1 | ALT0 | 1 |  5 || 6  |   |      | 0v      |     |     |
 |   4 |   7 | GPIO. 7 |   IN | 1 |  7 || 8  | 1 | ALT0 | TxD     | 15  | 14  |
 |     |     |      0v |      |   |  9 || 10 | 1 | ALT0 | RxD     | 16  | 15  |
 |  17 |   0 | GPIO. 0 |   IN | 0 | 11 || 12 | 1 | OUT  | GPIO. 1 | 1   | 18  |
 | ...
 +-----+-----+---------+------+---+----++----+---+------+---------+-----+-----+
  • Utilisation du Physicak 12 et donc dans WiringPi 1
  • Changements et compilation
cd src/am2301
nano am2301.c
# Changer _pin_am2301 = avec le numero dans WiringPi
make
  • Lancement de la commande ./am2301
  • Attente car il y a quand meme des pertes
t=23.8
rh=23.6

\o/

La suite

  • Modifier le code C pour retourner les valeurs dans un format simili JSON
    • Temperature
    • Humidite
    • Success ou echec
    • Nombre d'essais avant d'avoir la valeur

About

AM2301 polling example for Raspberry PI

Topics

Resources

Stars

Watchers

Forks

Languages

  • C 85.0%
  • Makefile 15.0%