Hallo,
ich habe einen "seltsamen" STATE (blau markiert) bei meinen OWTHERM Devices. Diese "Zufallszeichen" habe ich auch bei meinem zweiten Temperaturfühler.
Zitat
Internals:
ALARM 1
ASYNC 0
DEF DS18B20 F0EBCA040000 60
ERRCOUNT 0
INTERVAL 60
IODev NANO1_D3
NAME Heizraum_DS2
NOTIFYDEV global
NR 294
NTFY_ORDER 50-Heizraum_DS2
OW_FAMILY 28
OW_ID F0EBCA040000
PRESENT ROM_ID 28.F0EBCA040000.7A
STATE T: 19.56 °C ▾
TYPE OWTHERM
owg_cf 12
owg_temp 19.5625
owg_th 75
owg_tl 70
Die Definition im FHEM ist folgende:
define Heizraum_DS2 OWTHERM DS18B20 F0EBCA040000 60
attr Heizraum_DS2 IODev NANO1_D3
attr Heizraum_DS2 model DS1822
attr Heizraum_DS2 resolution 12
attr Heizraum_DS2 room FRM_Nano,Temperaturen
attr Heizraum_DS2 tempHigh 75
attr Heizraum_DS2 tempLow 70
in der Weboberfläche sieht dies dann so aus:
ZitatOWTHERM
Heizraum_DS2 T: 19.69 °C ▾
(blaues Dreieck)
Im Eventmonitor wird die Zeile gelistet:
Zitat2014-11-30 17:38:16 OWTHERM Heizraum_DS2 T: 19.62 °C ▾
Der 1-Wire Bus hängt an einem Arduino Nano und ist per FRM mit einem RasPi verbunden. Probleme bereitet dies nicht, zumindest bis jetzt. Die Temperaturen werden im Plot sauber angezeigt.
Ob das ein Problem meiner Konfiguration, ein Codefehler oder evtl. mit dem DS1822 zusammenhängt, kann ich nicht sagen.
Viele Grüße
Achim
Ändere die Min Temp vo 70 grad auf was Sinnvolles - zb 0 grad und weg ist es
Das ist kein "seltsames Zeichen", schon gar kein "Zufallszeichen", sondern ein Unicode Symbol "Pfeil nach unten", weil die untere Alarmtemperatur unterschritten wurde.
Einfach mit dem Attribut stateAL ein anderes (oder gar kein...) Symbol setzen.
Und künftig mal in der Commandref lesen.
LG
pah
Hallo,
vielen Dank für die Hinweise. Jetzt sieht das Ganze schon anders aus. Und ich werde in Zukunft auch die Commandref auch für vorhandene Devices lesen. Ist ja schon richtig peinlich die Anfrage :-\
Viele Grüße
Achim
Hallo,
noch eine Frage. Ich habe bei allen OWTHERM Devices als Attribut
ZitatAttributes
model DS1822
Bei meinen vergossenen gekauften Fühlern kann ich nicht hineinsehen und habe das "falsche" Modell ignoriert. Nun habe ich einen originalen DS18B20 als neues Device angeschlossen. Auch dort wird als Modell ein DS1822 angezeigt. Obwohl bei den Internals bei DEF DS18B20 steht. Kann OWTHERM den Typ nicht automatisch erkennen und richtig setzen? Und muss ich deshalb das Modell bei der Devicedefinition richtig setzen? Die Internals (Auszug) sind:
ZitatDEF DS18B20 26BA23040000 60
OW_FAMILY 28
OW_ID 26BA23040000
ROM_ID 28.26BA23040000.8E
Und jetzt weiß ich auch, woher die "falschen" Werte für tempHigh (75) und tempLow (70) kommen. Sie werden beim Autocreate des Device angelegt.
Viele Grüße
Achim
Beides falsch. :(
Man braucht weder hineinzusehen, noch den Aufdruck zu lesen - beim Scan des 1-Wire Bus wird die Family ID automatisch erkannt. "28" steht für DS18B20. Wenn jemand das Attribut model=1822 setzt, kann es zu Fehlern kommen. Fehlerhafte Definitionen werden in der Regel beim Einlesen der Konfiguration erkannt und angemault - aber gegen nachträgliche manuelle Fehler hilft keine Medizin.
Und die falschen Werte kommen nicht aus der Intialisierung des Moduls, sondern sind die Defaultwerte der Sensoren.
pah
Hallo,
der Modeltyp Attribut "DS1822" wurde beim "autocreate" angelegt/erkannt. Da habe ich nichts manuell gemacht. Und OWTHERM erkennt gleichzeitig die Fam.Id 28 für den DS18B20. Ein Löschen der Definition und neues "autocreate" ergibt dasselbe Ergebnis (auch bei einem anderen Sensor). Wenn gleichzeitig die Fam.Id für den DS1822 erkannt würde, würde ich ja sagen, ich habe Sensoren mit falschen Aufdruck bekommen. Aber so passt das irgendwie nicht zusammen. Die Temp-Sensoren sind über OWX und Firmata an einem über Ethernet (ENC28J60) angebundenen Nano angeschlossen. In welche Richtung muss ich da das Problem suchen?
Viele Grüße
Achim
Sorry, aber das ist einfach Unsinn.
OWTHERM erkennt gar keinen Sensortyp, sondern das macht das Basismodul OWX.
Ich habe gerade eben noch einmal nachgesehen: Das Basismodul OWX in der Version aus dem SVN hat eine eindeutige Zuordnung 1822 - Fam. Id. 22 sowie 18B20 - Fam. Id. 28
LG
pah
Hallo,
ich glaube ich habe den Fehler gefunden. Im Modul 21_OWTHERM.pm steht in der Zeile 219/220
$fam = "28";
CommandAttr (undef,"$name model DS1822");
Kommt daher der falsche Modell-Eintrag bei der Definition eines neuen Device?
Viele Grüße
Achim
Hm, I stand corrected, mit dem Ausdruck des Bedauerns. :-[
Glaube zwar, dass diese Codezeile nicht von mir stammt, aber die Verantwortung liegt trotzdem bei mir: Typischer Copy and Paste Fehler, dort muss tatsächlich 18B20 stehen. Ist gefixt und eingecheckt.
LG
pah
Hallo,
vielen Dank. Jetzt passt alles zusammen.
Viele Grüße
Achim