Sign inSign up

tobi312/rpi-sensors

By tobi312

•Updated 7 days ago

Raspberry Pi Sensors (DHT22 / AM2302)

Image
Internet of things
Data science
0

5.7K

tobi312/rpi-sensors repository overview

⁠Raspberry Pi Sensors (rpi-sensors)

⁠Description

This application measures temperature and humidity with a DHT22/AM2302⁠ sensor connected to the Raspberry Pi.
The sensor is read out with a Python script and the library Adafruit_CircuitPython_DHT⁠. The measurement data is displayed in the console and can optionally be save to a database (MariaDB) and displayed on a web server.

⁠Requirements

  • Raspberry Pi
  • Raspberry Pi OS (previously called Raspbian), Version: 10 buster / 11 bullseye
  • Sensor: DHT22 (AM2302) (Buy: int.⁠/de⁠)
  • optional: Docker & docker-compose

⁠Installation / Usage

⁠Note:

It use physical PIN7 = GPIO4 (D4)⁠ by default. You can now*⁠ change the GPIO Pin over a env-Variable (see below). The other two cable of AM2302 are connect to 3V (or 5V) and Ground.

⁠First Step:
# Clone Project 
git clone https://github.com/Tob1as/rpi-sensors.git
# change in folder
cd rpi-sensors/
⁠Secend Step:

Use Docker (recommended) or manual installation.

⁠Docker

Requirements:

  • installed Docker⁠
  • installed Docker-Compose⁠
  • Help? Use my install Script⁠ for that.
  • Note: This was developed and tested on a Raspberry Pi 3. On 4 it run when you set PRIVILEGED_MODE_ENABLE=true in .env-File (see below).

Steps:

  1. copy env-File:
    cp example.env .env
    
  2. change settings in .env-File, example Database Password or GPIO Pin. Then optional check config:
    docker-compose config
    
  3. Run:
    docker-compose up -d
    
    or:
    docker-compose up -d mariadb dht22 web
    
  4. [optional] Logs:
    docker-compose logs -f
    
  5. [optional] Stop:
    docker-compose down -v
    
⁠manual installation
  1. Install requirements:
    sudo apt-get update && 
    sudo apt-get install -y build-essential python3-dev libgpiod2 libmariadb-dev  && 
    sudo pip3 install adafruit-circuitpython-dht  && 
    sudo pip3 install mariadb
    
  2. Setup local or external MariaDB/MySQL.
  3. Export Variable in example.env-File or change default value in dht_sensor.py.
  4. Run:
    python3 ./dht_sensor.py
    
  5. Optional: Copy html-Folder into Webserver with installed PHP-Modul and change database settings in php file.
⁠Troubleshooting

If your container (example: web) fails to start with Images that based on Alpine 3.13 on ARM devices like Raspberry with Raspbian Buster (32 bit) then see here⁠ or here⁠ or here⁠ for a possible solution.

⁠This on

Tag summary

Content type

Image

Digest

sha256:2a238cf70…

Size

49.8 MB

Last updated

7 days ago

docker pull tobi312/rpi-sensors:python-debian