Moin!
Nachdem die 18B20 jetzt laufen wollte ich noch ein DHT11 einbinden. Laut https://wiki.fhem.de/wiki/RPI_1Wire, Kapitel "Einbindung von DHT11/DHT12 Sensoren" soll
Diese Modul kann entweder direkt von https://github.com/bublath/rpi-dht geclont werden und mit den Befehlen
perl Makefile.PL
make
sudo make install
benutzt werden. Aber schon bei der 1. Zeile gibt es eine Fehlermaldung:
kbw@kbw:/home $ perl Makefile.PL
Can't open perl script "Makefile.PL": No such file or directory
Mir schwant da fehlt ein Pfad. Aber wo? Zielpad zur Installation? Quellpfad zu github? Ich kann leider nur Wort für Wort abtippen, wenn da Infos fehlen erkenne ich das nicht.
Auch die Alternative läuft nicht:
ZitatAlterntiv stehen auch fertige Debian packages zur Verfügung:
Für Raspian Buster: https://github.com/bublath/rpi-dht/blob/main/RPi-DHT-perl_1.0-1_armhf.deb
Für Raspian Bulls Eye: https://github.com/bublath/rpi-dht/blob/main/RPi-DHT-perl_2.0-1_armhf.deb
Installation dann mit "dpkg -I <dateiname>"
dpkg -I RPi-DHT-perl_2.0-1_armhf.deb
dpkg-deb: error: failed to read archive 'RPi-DHT-perl_2.0-1_armhf.deb': No such file or directory
Auch wenn ich statt Dateiname die URI eingeben bekomme ich eine gleiche Fehlermeldung.
erstmal mit wget herunterladen :)
wget https://github.com/bublath/rpi-dht/blob/main/RPi-DHT-perl_2.0-1_armhf.deb
Funktioniert bis zum Download (nur mit sudo), dann wieder Fehler:
kbw@kbw:/home $ dpkg -I RPi-DHT-perl_2.0-1_armhf.deb
dpkg-deb: error: 'RPi-DHT-perl_2.0-1_armhf.deb' is not a Debian format archive
Also zum installieren muss das jedenfalls ein kleines i sein, also dpkg -i. Das Wiki ist an der Stelle falsch.
Ändert aber nichts, denn du würdest auch mit -i die gleiche Fehlermeldung kriegen.
Nehme an, du bist auf bookworm? (Kannst du mit lsb_release -a herausfinden.)
Die prebuilt-Pakete sind ausweislich Wiki und GitHub nur für buster und bullseye, deshalb vermutlich die Fehlermeldung.
Also doch lokal kompilieren:
git clone https://github.com/bublath/rpi-dht
cd rpi-dht
perl Makefile.PL
make
sudo make install
Ob das dann aber tatsächlich auch funktioniert, mag ich nicht vorherzusagen.
Zitat von: passibe am 17 November 2024, 20:55:07Nehme an, du bist auf bookworm?
Ja.
Zitat von: passibe am 17 November 2024, 20:55:07Also doch lokal kompilieren:
Da scheint noch eine weitere Abhängigkeit (wiringpi) nicht zu passen:
kbw@kbw:/home $ sudo git clone https://github.com/bublath/rpi-dht
Cloning into 'rpi-dht'...
remote: Enumerating objects: 52, done.
remote: Counting objects: 100% (52/52), done.
remote: Compressing objects: 100% (39/39), done.
remote: Total 52 (delta 20), reused 22 (delta 5), pack-reused 0 (from 0)
Receiving objects: 100% (52/52), 74.91 KiB | 2.67 MiB/s, done.
Resolving deltas: 100% (20/20), done.
kbw@kbw:/home $ cd rpi-dht
kbw@kbw:/home/rpi-dht $ perl Makefile.PL
wiringPi is not installed, exiting...
Warning (mostly harmless): No library found for -lwiringPi
Generating a Unix-style Makefile
Writing Makefile for RPi::DHT
Unable to open MakeMaker.tmp: Permission denied at /usr/share/perl/5.36/ExtUtils/MakeMaker.pm line 1225.
kbw@kbw:/home/rpi-dht $ make
make: *** No targets specified and no makefile found. Stop.
kbw@kbw:/home/rpi-dht $ sudo apt install wiringpi
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
Package wiringpi is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source
E: Package 'wiringpi' has no installation candidate
Also ich kann erkennen, das es Fehler gab. Aber nicht warum - weil ich die Fehlermeldung mit den Zugriffsrechten nicht kapiere.
ZitatAber nicht warum - weil ich die Fehlermeldung mit den Zugriffsrechten nicht kapiere.
Du solltest überlegen wo du sudo nutzt bzw. nutzen solltest/brauchst und wo NICHT.
Wenn du mit sudo, also "root" clonst, dann ist doch klar, dass du dann als "normaler user" keinen Zugtiff hast...
EDIT: und in welchem Verzeichnis du stehst bei Befehlen... ;)
EDIT: wiringpi wird unter bookworm (wohl) nicht mehr (einfach so) unterstützt...
Gruß, Joachim
Sorry, aber der Link ist einfach falsch, das ist der interaktive Downloadlink :
zweiter Versuch macht kluch :)
wget -O RPi-DHT-perl_2.0-1_armhf.deb https://github.com/bublath/rpi-dht/raw/refs/heads/main/RPi-DHT-perl_2.0-1_armhf.deb
Ohne wiringpi geht keiner der beiden vorgeschlagenen Wege. Nicht einmal das fertige Paket für Bulls Eyes.
Ich habe versucht dem Hinweis
Zitates gibt aber ein Community Projekt unter https://github.com/WiringPi/WiringPi
zu folgen, bin aber nicht viel weiter gekommen:
dpkg-deb: building package 'wiringpi' in 'wiringPi.deb'.
dpkg-name: info: moved 'wiringPi.deb' to './wiringpi_3.10_armhf.deb'
kbw@kbw:/home/rpi-dht/WiringPi $ sudo mv debian-template/wiringpi-3.0-1.deb .
mv: cannot stat 'debian-template/wiringpi-3.0-1.deb': No such file or directory
kbw@kbw:/home/rpi-dht/WiringPi $ sudo apt install ./wiringpi-3.0-1.deb
Reading package lists... Done
E: Unsupported file ./wiringpi-3.0-1.deb given on commandline
Soweit ich verstehe wurde die Datei (oder Paket?) wiringpi_3.10_armhf.deb irgendwo hingepackt, aber dann nicht mehr gefunden.
wegen wiringpi gab es doch hier eine Lösung? https://forum.fhem.de/index.php?topic=139423.0
Ich habe das Gefühl für solche Basteleien inzwischen zu alt zu sein...
Also ich habe laut https://forum.fhem.de/index.php?topic=139423.0 Artikel #10 die Datei wiringpi_3.10_armhf.deb runtergeladen. Dann mit sudo dpkg -i wiringpi_3.10_armhf.deb installiert. Allerdings bekomme ich eine etwas mysteriöse Meldung vom Installationspaket (2. Zeile im Code-Abschnitt):
kbw@kbw:~/Downloads $ sudo dpkg -i wiringpi_3.10_armhf.deb
Selecting previously unselected package wiringpi.
(Reading database ... 143111 files and directories currently installed.)
Preparing to unpack wiringpi_3.10_armhf.deb ...
Unpacking wiringpi (3.10) ...
Setting up wiringpi (3.10) ...
Processing triggers for man-db (2.11.2-2) ...
Kann ich die ignorieren?
Dann
kbw@kbw:~/Downloads $ sudo dpkg -i RPi-DHT-perl_2.0-1_armhf.deb
(Reading database ... 143163 files and directories currently installed.)
Preparing to unpack RPi-DHT-perl_2.0-1_armhf.deb ...
Unpacking rpi-dht-perl (1.0) over (1.0) ...
Setting up rpi-dht-perl (1.0) ...
Soweit sieht ja alles gut aus.
Doch selbst nach Neustart finde ich nur den Busmaster (für DHT11) aber kein Gerät (den eigentlichen Sensor).
Internals:
DEF BUSMASTER DHT11-GPIO017
FUUID 673a34bf-f33f-f8d0-4526-83c31b4abbef25be
NAME DHT
NOTIFYDEV global
NR 47
NTFY_ORDER 50-DHT
STATE Initialized
TYPE RPI_1Wire
devcnt 2
devices 28-000008653ba7 28-0000063727b7
family BUSMASTER
id 1
model BUSMASTER
READINGS:
2024-11-18 15:12:08 state Initialized
2024-11-18 15:12:08 therm_bulk_read off
helper:
duration 0
write
Attributes:
alias DHT-BM[attach id=180505]DHT.jpg[/attach]
Fehlt was? Habe ich was falsch gemacht?
RPI_1Wire nutze ich nicht. Aber muss dafür ein extra Busmaster existieren ?
Und kommt der support DHT nicht ohne wiringpi aus(oder ist das mittlerweile im Standard ?) ?
Egal.
Was steht denn unter /sys/devices/platform/dht11@6 (6 durch den GPIO ersetzen) ?
Grüße
Markus
Zitat von: Thomas24568 am 18 November 2024, 15:24:05Ich habe das Gefühl für solche Basteleien inzwischen zu alt zu sein...
Hallo,
dann sorge vor das beim nächsten neu aufsetzen/Systemwechsel nicht wieder von irgendwas abhängig bist, das Teil bloss per USB einstöpseln und fertig.
Mein Vorschlag, nimm bspw. einen Arduino Nano, passe die seriellen Ausgaben des nächstbesten DHT11-Sketch den Voraussetzungen des KeyValueProtocol (https://fhem.de/commandref_modular.html#KeyValueProtocol)-Modul an und aus die Maus.
Gruß Thomas
Zitat von: KölnSolar am 18 November 2024, 16:49:49Was steht denn unter /sys/devices/platform/dht11@6 (6 durch den GPIO ersetzen) ?
Leider gar nichts...
-bash: cd: /sys/devices/platform/dht11@14: No such file or directory
kbw@kbw:~ $ cd /sys/devices/platform/
kbw@kbw:/sys/devices/platform $ ls
arm-pmu chosen 'Fixed MDIO bus.0' kgdboc phy regulatory.0 timer
cam1_regulator clocks fixedregulator_3v3 leds power snd-soc-dummy uevent
cam_dummy_reg cpufreq-dt fixedregulator_5v0 onewire@0 reg-dummy soc
Dann fehlt wohl was...
Beim Anlegen einen weiteren DHT22ers bekomme ich folgende Fehlermeldung von FHEM:
Module RPi::DHT missing (see https://github.com/bublath/rpi-dht)
Und das, obwohl ich das Modul installiert habe?
Zitat von: TomLee am 18 November 2024, 17:46:22das Teil bloss per USB einstöpseln und fertig.
Das mit USB Einstöpseln hat viele Jahre wunderbar funktioniert, seit längerer Zeit (schätze 2 Jahr +) leider nicht mehr: USB-1Wire-Busmaster. Vermutlich hat die Programiererelite da was geändert und nicht so breitgetreten, das ich das mitbekommen habe.
Zitat von: TomLee am 18 November 2024, 17:46:22Mein Vorschlag, nimm bspw. einen Arduino Nano,
Nein Danke, komplett neu anfangen ist nicht, ich habe vor rund 10 Jahren mit Raspberry angefangen, inzwischen ein 2B, 2 mal 3B, 2 4B hier liegen, viel Literatur dazu gelesen (d.h. VIEL Zeit investiert) und div. Sensoren auf 1Wire und Z-Wave Basis gekauft. Da muß ich jetzt durch, das ist für mich einfacher als mit einen anderem System neu anzufangen.
Nebenbei: Der 2B wird jetzt in einem neuem Projekt "recycelt" um dann noch einige JAhre zu laufen.
Was mir aufgefallen ist: Der Busmaster für den DHT (BM_DHT) enthält Daten der DS18B20 Sensoren. Soll/muss das so sein? (Die devices-Zeile).
Internals:
DEF BUSMASTER DHT11-GPI014
FUUID 673a34bf-f33f-f8d0-4526-83c31b4abbef25be
NAME BM_DHT
NOTIFYDEV global
NR 47
NTFY_ORDER 50-DHT
STATE Initialized
TYPE RPI_1Wire
devcnt 2
devices 28-000008653ba7 28-0000063727b7
family BUSMASTER
id 1
model BUSMASTER
READINGS:
2024-11-18 15:43:40 failreason cleared
2024-11-18 15:43:40 failures 0
2024-11-18 16:36:44 state Initialized
2024-11-18 16:36:44 therm_bulk_read off
helper:
duration 0
write
Attributes:
Hab mal ins RPI_1Wire geguckt. Scheinbar setzt das auf was "anderem" auf, als bei meinem modifizierten GPIO4 (https://forum.fhem.de/index.php?topic=121893.0).
Da brauchts keine downloads etc. Vielleicht einfacher für Dich.
Danke für den Tip. Ich habe versucht das Modul direkt auf den Pi runterzuladen, bekomme aber nur eine Fehlermeldung. Warum geht das nicht?
kbw@kbw:~/Downloads $ wget https://forum.fhem.de/index.php?action=dlattach;attach=153148
--2024-11-18 22:11:19-- https://forum.fhem.de/index.php?action=dlattach
Resolving forum.fhem.de (forum.fhem.de)... 2a01:4f8:221:1b5a::2, 188.40.131.57
Connecting to forum.fhem.de (forum.fhem.de)|2a01:4f8:221:1b5a::2|:443... connected.
HTTP request sent, awaiting response... 404 File Not Found
2024-11-18 22:11:19 ERROR 404: File Not Found.
Weil das kein direkter Downloadlink ist. Du musst die Datei im Browser herunterladen und dann z.B. per scp auf den Raspberry schaffen.
Zitat von: Thomas24568 am 18 November 2024, 18:11:09Was mir aufgefallen ist: Der Busmaster für den DHT (BM_DHT) enthält Daten der DS18B20 Sensoren. Soll/muss das so sein? (Die devices-Zeile).
Internals:
DEF BUSMASTER DHT11-GPI014
FUUID 673a34bf-f33f-f8d0-4526-83c31b4abbef25be
NAME BM_DHT
NOTIFYDEV global
NR 47
NTFY_ORDER 50-DHT
STATE Initialized
TYPE RPI_1Wire
devcnt 2
devices 28-000008653ba7 28-0000063727b7
family BUSMASTER
id 1
model BUSMASTER
READINGS:
2024-11-18 15:43:40 failreason cleared
2024-11-18 15:43:40 failures 0
2024-11-18 16:36:44 state Initialized
2024-11-18 16:36:44 therm_bulk_read off
helper:
duration 0
write
Attributes:
Mal eine Frage an dich
warum schreibe ich für dich "|" dass das "oder " heißt und du wieder die def mit
BUSMASTER DHT11-GPI014
schreibst?
vom wiki kopiert, wo steht da BUSMASTER? und dein kryptisches"GPI014"
define myDHT RPI_1Wire DHT11-6
OT
Zitat von: Otto123 am 18 November 2024, 23:10:35Du musst die Datei im Browser herunterladen ...
Weiß nicht, Betateilchen meinte mal, er hatte den Inhalt eines Anhang "ausgelesen". Hab aber nicht hinterfragt wie. Fuchst mich bis heute ...
Zitat von: LuckyDay am 19 November 2024, 00:49:09warum schreibe ich für dich "|" dass das "oder " heißt und du wieder die def mit
Weil ich die Infos, die ich hier bekomme, sequenziell abarbeite. Leider gibt es ja keine durchgängige Anleitung, und ich muß mir Stück für Stück zusammensuchen und zusammenfragen.Da können mir schon mal Fehler unterlaufen.
Zitat von: LuckyDay am 19 November 2024, 00:49:09und dein kryptisches"GPI014"
In der Commandref steht direkt nichts (in deutscher Sprache) dazu. Es wird auf die englische Version verwiesen. Dort steht ein Link zum deutschsprachigem Wiki. und da wiederrum steht, das der tatsächliche Pin (GPIO) für die DHT-Sensoren mit angegeben werden muß, und ich habe den Sensor eben an Pin 8 = GPIO14 dran. Siehe ziehmlich weit unten in https://wiki.fhem.de/wiki/RPI_1Wire. Also habe ich "korrekt nach Wiki-Vorgabe" gehandelt.
Ich kann ab morgen wieder hier lesen.
Sry, noch einmal OT
Zitat von: TomLee am 19 November 2024, 21:24:25OT
Zitat von: Otto123 am 18 November 2024, 23:10:35Du musst die Datei im Browser herunterladen ...
Weiß nicht, Betateilchen meinte mal, er hatte den Inhalt eines Anhang "ausgelesen". Hab aber nicht hinterfragt wie. Fuchst mich bis heute ...
Hab den Thread wieder gefunden (https://forum.fhem.de/index.php?msg=1212198) ...
Moin! Neuer Versuch: Geht immer noch nicht.
Was ich gemacht habe: 58_GPIO4.pm in den Ordner FHEM gepackt, die Eigentümerrechte angepaßt.
kbw@kbw:/opt/fhem/FHEM $ ls 58_* -al
-rw-r--r-- 1 fhem dialout 14701 Nov 20 23:54 58_GPIO4.pm
Den Pi neu (kalt) gestartet.
Dann
define DHT_BM RPI_1Wire DHT11-014
ausgeführt, aber ich bekomme dann wieder die Fehlermeldung
Module RPi::DHT missing (see https://github.com/bublath/rpi-dht)
. Dabei habe ich mich doch nach der Anleitung gerichtet. Wie kann ich jetzt überprüfen, ob dieses Modul am richtigem Ort liegt (also: Wo soll es liegen? Ist RPI::DHT der Dateiname, falls nicht, wie lautet der?). Oder gibt es irgendwelche Versionkonflickte?
Du musst schon Deine defines an das andere Modul anpassen ::)
define DeinBusmaster GPIO4 BUSMASTER
Bin mir nicht sicher, ob die devices dann bereits über autocreate angelegt werden. Ansonsten noch ein
define DHT_BM GPIO4 DHT11-014
hinterher.
Schon mal versucht die DS18B20 abzuklemmen ob es dann funktioniert.
Kann sein das die nicht am gleichen Pin / Gpio funktionieren.
Zitat von: buec65 am 22 November 2024, 13:52:08Schon mal versucht die DS18B20 abzuklemmen ob es dann funktioniert.
Kann sein das die nicht am gleichen Pin / Gpio funktionieren.
Ich hätte vermutet, das aus den schon genannten Codes erkennbar ist, das 18B20 auf Pin 7 (GPIO4) und DHT auf Pin 8 (GPIO14) liegen.
@buec65: HAbe ich ausprobiert, das Gerät das dann unter der Überschrift GPIO4 erscheint sieht sehr "mager" aus:
Internals:
CFGFN
DEF BUSMASTER
FUUID 6740838f-f33f-f8d0-f0ae-5234e10e9b6f758e
NAME BMDHT
NR 50
NTFY_ORDER 50-BMDHT
STATE Initialized
TYPE GPIO4
Attributes:
Und bei der 2. Codezeile meckert FHEM dann das GPIO4 schon defeniert sei.
Also, neue Marschrichtung für mich:
Da die Messung der Luftfeuchte offenbar extrem kritisch ist und es auch keine ebus-Einbindung für Vissmann Thermen gibt ist das Thema DHT im FHEM Ökosystem gestorben, auch wenn ich für Vorschläge noch wenige Tage empfänglich bin.
Denn Anfang nächster Woche kommt eine Lieferung von Shelly: 5 Shelly 1PM Gen 3 und 5 Shelly Add-On (mit Eingängen für DHT-xx und DS18B20). Da kabel ich dann nur die 10 Sensoren ein, habe eine professionelle Web-Oberfläche und gleichzeitig eine weltweite Interneteinbindung - die ich bei FHEM auch erst über 20 Umwege zusammenbasteln müßte.
Kosten sind kein Problem, weil bei Shelly schon schwarzer Freitag ist und das ganze System in einem Mietshaus (10 Wohnungen) installiert wird (Betriebskosten...).
ZitatUnd bei der 2. Codezeile meckert FHEM dann das GPIO4 schon defeniert sei.
nach Busmaster-device
Zitatdefine BMDHT GPIO4 BUSMASTER
das DHT-device
define DHT_BM GPIO4 DHT11-014
?
Glaube ich nicht....