temperatur_luftfeuchtigkeit_druck
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen der Seite angezeigt.
| Beide Seiten, vorherige ÜberarbeitungVorherige ÜberarbeitungNächste Überarbeitung | Vorherige Überarbeitung | ||
| temperatur_luftfeuchtigkeit_druck [2020/03/21 21:17] – varnholt | temperatur_luftfeuchtigkeit_druck [2021/02/26 17:39] (aktuell) – varnholt | ||
|---|---|---|---|
| Zeile 1: | Zeile 1: | ||
| ===== Temperatur, | ===== Temperatur, | ||
| - | Einige Monate lag der[[https:// | + | Einige Monate lag der[[https:// |
| - | Anschluß nur von 4 Pins und 3.3V (wegen I2C). Man kann ihn auch mit SPI anschliessen. Dafür dann die anderen Pins. Auf meinem Prototype-Hat erst nur Pin ' | + | Anschluß nur von 4 Pins und **3.3V** (wegen I2C). Man kann ihn auch mit SPI anschliessen. Dafür dann die anderen Pins. |
| + | |||
| + | **Fehler**: | ||
| + | **Meine Pins waren belegt. Ich musste mittels Overlay (s.u.) zwei andere Pins nehmen ([[gpio|GPIO27, | ||
| Man muss I2C im Raspberry erst in raspi-config aktivieren, installieren alleine reicht nicht. | Man muss I2C im Raspberry erst in raspi-config aktivieren, installieren alleine reicht nicht. | ||
| Zeile 15: | Zeile 18: | ||
| sudo apt-get install i2c-tools | sudo apt-get install i2c-tools | ||
| - | sudo / | + | sudo nano / |
| dtparam=i2c_arm=on | dtparam=i2c_arm=on | ||
| - | dtoverlay=i2c-gpio, | + | dtoverlay=i2c-gpio, |
| sudo i2cdetect -y 3 | sudo i2cdetect -y 3 | ||
| Zeile 30: | Zeile 33: | ||
| Auslesen mit Python: Man muss entweder smbus oder smbus2 installieren. | Auslesen mit Python: Man muss entweder smbus oder smbus2 installieren. | ||
| + | Mit smbus muss man die Daten erst aufwändig lesen und zusammensetzen. Geht aber schneller! | ||
| < | < | ||
| sudo apt-get install python-smbus | sudo apt-get install python-smbus | ||
| - | + | wget https:// | |
| + | </ | ||
| + | Mit smbus2 geht es in wenigen Zeilen, allerdings mit python3. | ||
| + | < | ||
| sudo pip install smbus2 | sudo pip install smbus2 | ||
| sudo pip install RPi.bme280 | sudo pip install RPi.bme280 | ||
| Sollte ein Fehler (' | Sollte ein Fehler (' | ||
| sudo pip install --user --upgrade setuptools | sudo pip install --user --upgrade setuptools | ||
| - | </ | + | |
| - | Mit smbus muss man die Daten erst aufwändig lesen und zusammensetzen. Mit smbus2 geht es in wenigen Zeilen, allerdings mit python3. | + | |
| - | < | + | |
| sudo python3 bme280_smbus2.py | sudo python3 bme280_smbus2.py | ||
| Zeile 70: | Zeile 74: | ||
| Wie man andere Pins als I2C nutzt (Overlay): | Wie man andere Pins als I2C nutzt (Overlay): | ||
| https:// | https:// | ||
| - | |||
| - | |||
| - | #i2cget -y 0 0x4d 0x00 b | ||
| - | -y to force Yes to the question ask by default | ||
| - | 0 is the i2c bus number | ||
| - | 0x4d is the address of the sensor | ||
| - | 0x00 is the address for the temperature | ||
| - | b is to read a byte | ||
| https:// | https:// | ||
| - | |||
| https:// | https:// | ||
| + | in boot/ | ||
| - | overlay benutzen, um 2 andere Pins her zu nehmen! | + | Ich wollte es aus einem C-Programm aufrufen, |
| - | in boot/conf.txt was eingebaut (damit eeprom Pins gehen) | + | Treiber gibt es hier: https://github.com/ |
| + | gcc | ||
| + | gcc linux_userspace.c ../bme280.c -I ../ -o bme280 | ||
| + | sudo ./bme280 / | ||
| + | geht aber nicht. Kommt immer " | ||
| - | sudo apt install python-smbus | + | Mit dem richtigen Sourcecode, wenn auch nicht vom Original Bosch geht es dann aber: |
| - | damit | + | http://www.netzmafia.de/ |
| - | sudo python bme280.py geht | + | |
| - | Chip ID : 96 | ||
| - | Version | ||
| - | Temperature : 27.47 C | ||
| - | Pressure : 955.338436247 hPa | ||
| - | Humidity : 29.3145882492 % | ||
| - | sudo i2cdump -y 0 0x76 b | ||
| - | muss was anzeigen | ||
temperatur_luftfeuchtigkeit_druck.1584821826.txt.gz · Zuletzt geändert: 2020/03/21 21:17 von varnholt
