Commit 1196b4a5 authored by Rousseau Vincent's avatar Rousseau Vincent
Browse files

Add bme280

parent c8875392
No related merge requests found
Showing with 56 additions and 0 deletions
+56 -0
# Créer des nouveaux capteurs
* Copier le dossier 'cpu_load' et renommer avec le nom du capteur voulu.
* Modifier le programme .py pour écrire les données du capteur dans influxdb
* Générer les requirements à la main ou avec 'pipreqs'
* Mettre à jour le Dockerfile
\ No newline at end of file
FROM python:3
RUN mkdir -p /usr/src/app
COPY *.py /usr/src/app
COPY requirements.txt /usr/src/app
WORKDIR /usr/src/app
RUN python3 -m pip install -r requirements.txt
CMD ["python3", "/usr/src/app/bme280.py"]
\ No newline at end of file
import time
import os
import smbus2
import bme280
from influxdb import InfluxDBClient
influx_host = os.getenv('INFLUX_HOST', 'localhost')
influx_dbname = os.getenv('INFLUX_DBNAME', 'multi-sense')
influx_client = InfluxDBClient(host=influx_host, database=influx_dbname)
influx_client.create_database(influx_dbname)
port = 1
address = 0x76
bus = smbus2.SMBus(port)
compensation_params = bme280.load_calibration_params(bus, address)
while True:
data = bme280.sample(bus, address)
measurement = [
{
'measurement': 'temperature',
'fields': {
'value': data.temperature
},
'measurement': 'pressure',
'fields': {
'value': data.pressure
},
'measurement': 'humidity',
'fields': {
'value': data.humidity
}
}
]
influx_client.write_points(measurement)
time.sleep(1)
influxdb==5.2.1
smbus2==0.2.3
RPi.bme280==0.2.2
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment