Hallo allerseits,
ich bräuchte ein bisschen Unterstützung bei der Fehlersuche - seit einiger Zeit bekomme ich von fast allen Temperatursensoren keine Werte mehr.
Zum Aufbau:
- zahlreiche Temperatursensoren (DS18B20) wurden in Rohren im Estrich eingebracht
- Topologie: hauptsächlich in Reihe, 2-3 Stränge
- die Stränge sind zentral auf einem Patchfeld aufgelegt und zu einem gemeinsamen Bus verbunden
- vom Patchfeld führt 1 Kabel zum Busmaster
- (gleicher Aufbau nochmal mit Außenbereich: 1 Kabel, momentan nur 1 Sensor, 1 separater Busmaster)
- beide Busmaster hängen an einem USB-Hub, der mit dem FHEM-Raspi verbunden ist (Problem besteht aber auch, wenn der Busmaster direkt am Raspi hängt)
Das größte Mysterium ist, dass ein einziger der Sensoren trotzdem regelmäßig den korrekten Wert liefert. Dieser hängt aber am selben Bus wie alle anderen. Das ist auch der Einzige, bei dem ich z.B. die Adresse auslesen kann.
OWServer:
define myOWServer OWServer localhost:4304
attr myOWServer room OWDevice
# DEF localhost:4304
# FUUID 61893999-f33f-e35a-dc3e-1ecc6c675d88095b
# LAST_READ_FAILED 0
# NAME myOWServer
# NOTIFYDEV global
# NR 269
# NTFY_ORDER 50a-myOWServer
# OWNET_VERSION
# OWSERVER_VERSION 3.2p3
# STATE Initialized
# TYPE OWServer
# eventCount 33
# READINGS:
# 2024-09-06 11:35:15 /settings/timeout/directory 60
# 2024-09-06 11:35:15 /settings/timeout/ftp 900
# 2024-09-06 11:35:15 /settings/timeout/ha7 60
# 2024-09-06 11:35:15 /settings/timeout/network 1
# 2024-09-06 11:35:15 /settings/timeout/presence 120
# 2024-09-06 11:35:15 /settings/timeout/serial 5
# 2024-09-06 11:35:15 /settings/timeout/server 10
# 2024-09-06 11:35:15 /settings/timeout/stable 300
# 2024-09-06 11:35:15 /settings/timeout/uncached 0
# 2024-09-06 11:35:15 /settings/timeout/usb 5
# 2024-09-06 11:35:15 /settings/timeout/volatile 15
# 2024-09-06 11:35:15 /settings/timeout/w1 30
# 2024-09-06 11:35:15 /settings/units/pressure_scale mbar
# 2024-09-06 11:35:15 /settings/units/temperature_scale C
# 2024-09-06 11:35:15 state Initialized
# fhem:
# protocol localhost:4304
#
setstate myOWServer 2024-09-06 11:35:15 /settings/timeout/directory 60
setstate myOWServer 2024-09-06 11:35:15 /settings/timeout/ftp 900
setstate myOWServer 2024-09-06 11:35:15 /settings/timeout/ha7 60
setstate myOWServer 2024-09-06 11:35:15 /settings/timeout/network 1
setstate myOWServer 2024-09-06 11:35:15 /settings/timeout/presence 120
setstate myOWServer 2024-09-06 11:35:15 /settings/timeout/serial 5
setstate myOWServer 2024-09-06 11:35:15 /settings/timeout/server 10
setstate myOWServer 2024-09-06 11:35:15 /settings/timeout/stable 300
setstate myOWServer 2024-09-06 11:35:15 /settings/timeout/uncached 0
setstate myOWServer 2024-09-06 11:35:15 /settings/timeout/usb 5
setstate myOWServer 2024-09-06 11:35:15 /settings/timeout/volatile 15
setstate myOWServer 2024-09-06 11:35:15 /settings/timeout/w1 30
setstate myOWServer 2024-09-06 11:35:15 /settings/units/pressure_scale mbar
setstate myOWServer 2024-09-06 11:35:15 /settings/units/temperature_scale C
setstate myOWServer 2024-09-06 11:35:15 state Initialized
Busmaster:
define DS1420_18C131000000 OWDevice 81.18C131000000
attr DS1420_18C131000000 alias OWBusmaster_Haus
attr DS1420_18C131000000 model DS1420
attr DS1420_18C131000000 room OWDevice
# DEF 81.18C131000000
# FUUID 6161961a-f33f-e35a-b1fc-9b3285f4c6deca58
# IODev
# NAME DS1420_18C131000000
# NR 258
# STATE present: 0
# TYPE OWDevice
# eventCount 1
# READINGS:
# 2024-09-06 11:32:01 location absent
# 2024-09-06 11:32:01 present 0
# 2024-09-06 11:32:01 state present: 0
# fhem:
# address 81.18C131000000
# alerting 0
# bus
# interfaces id
# getters:
# address
# crc8
# family
# id
# locator
# r_address
# r_id
# r_locator
# type
# polls:
# id
# setters:
# state:
#
setstate DS1420_18C131000000 present: 0
setstate DS1420_18C131000000 2024-09-06 11:32:01 location absent
setstate DS1420_18C131000000 2024-09-06 11:32:01 present 0
setstate DS1420_18C131000000 2024-09-06 11:32:01 state present: 0
Der funktionierende Sensor:
define OW_12TempIstRaum OWDevice 28.4C40DE030000 60
attr OW_12TempIstRaum disable 0
attr OW_12TempIstRaum model DS18B20
attr OW_12TempIstRaum room OWDevice
attr OW_12TempIstRaum stateFormat {sprintf("%.1f",ReadingsVal($name,"temperature",0))."°C"}
attr OW_12TempIstRaum verbose 3
# DEF 28.4C40DE030000 60
# FUUID 61893e12-f33f-e35a-df46-59d7084132b179b4
# IODev myOWServer
# LAST_READ_FAILED 0
# NAME OW_12TempIstRaum
# NR 270
# STATE 22.9°C
# TYPE OWDevice
# eventCount 18
# READINGS:
# 2024-09-06 11:31:54 IODev myOWServer
# 2024-09-06 11:27:55 address 284C40DE0300000F
# 2024-09-06 11:49:48 alarm 1
# 2024-09-06 11:49:48 state temperature: 22.9375 alarm: 1
# 2024-09-06 11:49:48 temperature 22.9375
# fhem:
# address 28.4C40DE030000
# alerting 1
# bus bus.0
# interfaces temperature
# interval 60
# getters:
# address
# crc8
# family
# fasttemp
# id
# locator
# r_address
# r_id
# r_locator
# temperature
# temperature10
# temperature11
# temperature12
# temperature9
# temphigh
# templow
# type
# polls:
# temperature
# setters:
# temphigh
# templow
# state:
# temperature
#
setstate OW_12TempIstRaum 22.9°C
setstate OW_12TempIstRaum 2024-09-06 11:31:54 IODev myOWServer
setstate OW_12TempIstRaum 2024-09-06 11:27:55 address 284C40DE0300000F
setstate OW_12TempIstRaum 2024-09-06 11:49:48 alarm 1
setstate OW_12TempIstRaum 2024-09-06 11:49:48 state temperature: 22.9375 alarm: 1
setstate OW_12TempIstRaum 2024-09-06 11:49:48 temperature 22.9375
alle anderen Sensoren:
define OW_02TempIstBoden OWDevice 28.DF59DE030000 60
attr OW_02TempIstBoden disable 0
attr OW_02TempIstBoden model DS18B20
attr OW_02TempIstBoden room OWDevice
attr OW_02TempIstBoden stateFormat {sprintf("%.1f",ReadingsVal($name,"temperature",0))."°C"}
attr OW_02TempIstBoden verbose 1
# DEF 28.DF59DE030000 60
# FUUID 61619618-f33f-e35a-a1e2-550b8b9e9d729039
# IODev
# NAME OW_02TempIstBoden
# NR 257
# STATE 0.0°C
# TYPE OWDevice
# eventCount 20
# READINGS:
# 2024-09-06 11:51:15 alarm 0
# 2024-09-06 11:51:15 state temperature: n/a alarm: 0
# fhem:
# address 28.DF59DE030000
# alerting 1
# bus
# interfaces temperature
# interval 60
# getters:
# address
# crc8
# family
# fasttemp
# id
# locator
# r_address
# r_id
# r_locator
# temperature
# temperature10
# temperature11
# temperature12
# temperature9
# temphigh
# templow
# type
# polls:
# temperature
# setters:
# temphigh
# templow
# state:
# temperature
#
setstate OW_02TempIstBoden 0.0°C
setstate OW_02TempIstBoden 2024-09-06 11:51:15 alarm 0
setstate OW_02TempIstBoden 2024-09-06 11:51:15 state temperature: n/a alarm: 0
Ich bin für jeglichen Hinweis dankbar - momentan geht's noch, aber wenn es demnächst doch mal kühler werden sollte, wäre ne funktionierende Heizungssteuerung nicht ganz schlecht ;-)
Vielen Dank!
VG,
Matze
Hallo,
ich verwende OWX mit OWTHERM, so ein Verhalten hatte ich die letzten Jahre 2-3 mal auf dem Bus wenn einer der DS18B20 plötzlich defekt war.
Stöpsel doch mal alle Stränge ab und ergänze dann wieder Stück für Stück, wenn einer defekt wäre findest so den Übeltäter.
Gruß Thomas
Hallo Thomas,
ich hab jetzt mal alle Sensoren an beiden Busmastern abgestöpselt. Einer hängt über den USB-Hub dran, der andere direkt am Raspi.
Nach meinem Verständnis sollten dann zumindest die beiden Busmaster als Online angezeigt werden - tun sie aber nicht. Mit einem eventuell defekten Sensor kann's also eher nix zu tun haben :-(
Hallo zusammen,
ich hab jetzt ein paar neue Erkenntnisse, aber leider immer noch keine Idee, woran das liegt:
- Beide Busmaster hängen wieder am USB-Hub und alle Sensoren sind angeschlossen
- über http://fhem:2121 kann ich auf den OWServer zugreifen, sehe dort beide Busmaster und alle Sensoren (s.u.)
- die Temperaturwerte sind auf dem OWserver verfügbar
Ich würde also mal behaupten: elektrisch und bis zum OWserver läuft alles fehlerfrei; es scheitert also "nur" zwischen OWserver und FHEM - bis auf den einen Sensor "OW_12TempIstRaum", der weiterhin fröhlich Werte liefert. Allerdings hat dieser das Reading "alarm" auf "1"
ein "set myOWserver reopen" liefert:
2024-09-15 10:31:01 OWServer myOWServer DISCONNECTED
2024-09-15 10:31:01 OWServer myOWServer CONNECTED
2024-09-15 10:31:01 OWServer myOWServer /settings/timeout/directory: 60
2024-09-15 10:31:01 OWServer myOWServer /settings/timeout/ftp: 900
2024-09-15 10:31:01 OWServer myOWServer /settings/timeout/ha7: 60
2024-09-15 10:31:01 OWServer myOWServer /settings/timeout/network: 1
2024-09-15 10:31:01 OWServer myOWServer /settings/timeout/presence: 120
2024-09-15 10:31:01 OWServer myOWServer /settings/timeout/serial: 5
2024-09-15 10:31:01 OWServer myOWServer /settings/timeout/server: 10
2024-09-15 10:31:01 OWServer myOWServer /settings/timeout/stable: 300
2024-09-15 10:31:01 OWServer myOWServer /settings/timeout/uncached: 0
2024-09-15 10:31:01 OWServer myOWServer /settings/timeout/usb: 5
2024-09-15 10:31:01 OWServer myOWServer /settings/timeout/volatile: 15
2024-09-15 10:31:01 OWServer myOWServer /settings/timeout/w1: 30
2024-09-15 10:31:01 OWServer myOWServer /settings/units/pressure_scale: mbar
2024-09-15 10:31:01 OWServer myOWServer /settings/units/temperature_scale: C
2024-09-15 10:31:01 OWServer myOWServer Initialized
Die Ausgabe vom OWServer:
owserver2.png
Zwei Sensoren - links der einzige, der funktioniert und rechts meine Außentemperatur:
owserver1.png
Nur eine Frage am Rand. betreibst du mit "Absicht" den "parasitären" Modus?
Bei mir ist Power auf 1
temp.png
Zitat von: wolliballa73 am 15 September 2024, 10:46:52Allerdings hat dieser das Reading "alarm" auf "1"
Natürlich - wenn die Alarmsettings im Sensor entsprechend sind, nämlich low=70 und high=75. Was sollte also daran falsch sein?
pah
Zitat von: LuckyDay am 15 September 2024, 16:48:06Nur eine Frage am Rand. betreibst du mit "Absicht" den "parasitären" Modus?
Bei mir ist Power auf 1
ja - meines Wissens von damals reicht das aus, solange keine Temperaturen > 75 Grad gemessen werden sollen. Das reicht für FBH locker aus ;-)
Alle Sensoren sind also nur an 2 Adern angeschlossen.
Zitat von: Prof. Dr. Peter Henning am 19 September 2024, 09:03:45Zitat von: wolliballa73 am 15 September 2024, 10:46:52Allerdings hat dieser das Reading "alarm" auf "1"
Natürlich - wenn die Alarmsettings im Sensor entsprechend sind, nämlich low=70 und high=75. Was sollte also daran falsch sein?
pah
Vielen Dank für den Hinweis - die Sensor-Einstellungen auf dem OWserver habe ich bisher noch nie beachtet. Vermutlich werden die Sensoren somit schon immer auf Alarm gestanden sein, es hat mich dann aber nicht interessiert, weil es keine negativen Auswirkungen hatte.
Again what learned :-)
Zitat von: wolliballa73 am 09 September 2024, 11:46:56ich hab jetzt mal alle Sensoren an beiden Busmastern abgestöpselt. Einer hängt über den USB-Hub dran, der andere direkt am Raspi.
Nach meinem Verständnis sollten dann zumindest die beiden Busmaster als Online angezeigt werden - tun sie aber nicht. Mit einem eventuell defekten Sensor kann's also eher nix zu tun haben :-(
Das sehe ich auch so. Ich verwende OWFS nicht mehr und bin daher nicht mehr so fit darin. Daher eher etwas geraten: was passiert den, wenn du z.B. nur einen Busmaster direkt an den RasPi anhängst und ein "owdir" auf der Console ausprobiert? Dann sollte er dir diesen einen Busmaster "81.XXX" auflisten. Dann mal probehalber einen Sensor anschliessen und schauen, ob der auch mit "owdir" auftaucht. Dann mit "owread" versuchen, einen entsprechenden Wert zu lesen.
Hallo zusammen,
ich greife mein Thema gerade nochmal auf, weil ich bisher immer noch keine Lösung habe (und in letzter Zeit auch keine Lust hatte).
Aufgrund diverser sonstiger Hinweise habe ich den Umstieg auf OWX in Betracht gezogen. Leider scheitert das wohl an meinen Busmastern, da die vorhandenen DS2490 nur über libusb funktionieren und damit ausscheiden.
Es bleiben also nur die Varianten:
- Fehler finden und korrigieren, wieso die Sensoren, die auf auf dem OWserver unter http://fhem:2121/ alle verfügbar sind, nicht in FHEM ankommen
- alles an einen Arduino, ESP32 etc. hängen und über über ESPeasy an FHEM schicken (so laufen schon meine Aquarien-Sensoren)
Am Liebsten wäre mir die erste Variante, da weniger Umbau nötig wäre.
Hat noch jemand ne Idee?
VG
Matze
Hallo allerseits,
inspiriert durch einen anderen Thread habe ich jetzt diese Versuche unternommen, leider ohne Erfolg:
OWServer-Device gelöscht und neu erstellt:
OWNET_VERSION war auf 3.1p5, obwohl 3.2p3 installiert ist. Ich habe dann nach einer passenden /opt/fhem/FHEM/lib/OWNet-3.2p3.pm gesucht aber nirgendwo gefunden. Deshalb wurde eine Kopie der vorhandenen OWNet-3.1p5.pm umbenannt. Ob das eine gute Idee ist, kann ich leider nicht beurteilen.
Ergebnis: laut Log ein problemloser Start, 3.2p3 wird erkannt, get myOWServer devices zeigt mir (wie bisher auch) alle Sensoren an. Leider liefert immer noch nur 1 von 10 Sensoren einen Wert.
Ich würde momentan vermuten, dass es irgendwas mit der owfs-Version (3.2p3) und der /opt/fhem/FHEM/lib/OWNet.pm zu tun haben könnte. Vermutlich hat es einen Sinn, dass es hier Dateien für unterschiedliche Versionen gibt, sodass meine Kopier-Aktion zwar hübsch aussieht, aber trotzdem in der Kommunikation was anders läuft.
Lösungsansätze wären also:
- ich krieg irgendwo eine OWNet-3.2p3.pm her
- ich downgrade owfs auf 3.1p5
Da meine Linux-Kenntnisse eher rudimentär sind: wie kann ich das Downgrade durchführen?
Vielen Dank für hoffentlich erhellende Hinweise ;-)
define myOWServer OWServer localhost:4304
attr myOWServer room OWDevice
# DEF localhost:4304
# FUUID 67248c73-f33f-e35a-31e2-ec76c404d164d78b
# LAST_READ_FAILED 0
# NAME myOWServer
# NOTIFYDEV global
# NR 443
# NTFY_ORDER 50a-myOWServer
# OWNET_VERSION 3.2p3
# OWSERVER_VERSION 3.2p3
# STATE Initialized
# TYPE OWServer
# eventCount 50
# READINGS:
# 2024-11-01 10:06:17 /settings/timeout/directory 60
# 2024-11-01 10:06:17 /settings/timeout/ftp 900
# 2024-11-01 10:06:17 /settings/timeout/ha7 60
# 2024-11-01 10:06:17 /settings/timeout/network 1
# 2024-11-01 10:06:17 /settings/timeout/presence 120
# 2024-11-01 10:06:17 /settings/timeout/serial 5
# 2024-11-01 10:06:17 /settings/timeout/server 10
# 2024-11-01 10:06:17 /settings/timeout/stable 300
# 2024-11-01 10:06:17 /settings/timeout/uncached 0
# 2024-11-01 10:06:17 /settings/timeout/usb 5
# 2024-11-01 10:06:17 /settings/timeout/volatile 15
# 2024-11-01 10:06:17 /settings/timeout/w1 30
# 2024-11-01 10:06:17 /settings/units/pressure_scale mbar
# 2024-11-01 10:06:17 /settings/units/temperature_scale C
# 2024-11-01 10:06:17 state Initialized
# fhem:
# protocol localhost:4304
#
setstate myOWServer 2024-11-01 10:06:17 /settings/timeout/directory 60
setstate myOWServer 2024-11-01 10:06:17 /settings/timeout/ftp 900
setstate myOWServer 2024-11-01 10:06:17 /settings/timeout/ha7 60
setstate myOWServer 2024-11-01 10:06:17 /settings/timeout/network 1
setstate myOWServer 2024-11-01 10:06:17 /settings/timeout/presence 120
setstate myOWServer 2024-11-01 10:06:17 /settings/timeout/serial 5
setstate myOWServer 2024-11-01 10:06:17 /settings/timeout/server 10
setstate myOWServer 2024-11-01 10:06:17 /settings/timeout/stable 300
setstate myOWServer 2024-11-01 10:06:17 /settings/timeout/uncached 0
setstate myOWServer 2024-11-01 10:06:17 /settings/timeout/usb 5
setstate myOWServer 2024-11-01 10:06:17 /settings/timeout/volatile 15
setstate myOWServer 2024-11-01 10:06:17 /settings/timeout/w1 30
setstate myOWServer 2024-11-01 10:06:17 /settings/units/pressure_scale mbar
setstate myOWServer 2024-11-01 10:06:17 /settings/units/temperature_scale C
setstate myOWServer 2024-11-01 10:06:17 state Initialized
Boris Anleitung
https://forum.fhem.de/index.php?topic=85542.msg784834#msg784834
deine Version bei
https://github.com/owfs/owfs/releases/tag/v3.2p3
OWNet-3.2p3.pm
OWNet-3.2p4.pm
extrahiert und umbenannt und als File angehängt.
ob sie funktioniereb weiß ich nicht.
Vielen Dank - ich hatte zumindest kurzzeitig Hoffnung ;-)
Die Version von dir ist identisch mit der vorhandenen 3.1p5, von der ich schon eine Kopie in 3.2p3 umbenannt habe.
Fun Fact: seit vorgestern liefert auch ein zweiter Sensor wieder Werte bis FHEM -fehlen also nur noch 8 :-(
Zitateinen Arduino, ESP32 etc. hängen und über über ESPeasy an FHEM
Das ist aber im Endeffekt umständlicher, als ein paar neue billige Busmaster zu beschaffen, die nicht die libusb verwenden. Und dann direkt unter OWX zu arbeiten.
LG
pah
Zitat von: Prof. Dr. Peter Henning am 03 November 2024, 11:12:57Das ist aber im Endeffekt umständlicher, als ein paar neue billige Busmaster zu beschaffen, die nicht die libusb verwenden. Und dann direkt unter OWX zu arbeiten.
Das ist natürlich auch noch ne Idee ;-)
Momentan behelfe ich mir mit dem Umweg über HTTPMOD, damit hab ich vor dem Winter zumindest alle Temperaturen, die wichtig sein könnten. Schön machen kann ich das dann, wenn ich Zeit habe ;D
VG
Matze