Ankündigung
Einklappen
Keine Ankündigung bisher.
Openhab + OneWire + iButton
Einklappen
X
-
Hmm, muss ich heute noch Mal mit 6s testen, vielleicht gibt es ja ein Limit nach unten von 5s oder so? Jedenfalls bringt die im github HowTo angegebene timeout_presence von 2s überhaupt nichts.
-
Hallo,
ja das funktioniert, allerdings nur mit dem Eintrag "timeout_presence = 6s" in der /etc/owfs.con ansonsten dauert es 120s.
Einen Kommentar schreiben:
-
Zitat von abodenbe Beitrag anzeigenHallo Dennis,
hat gekplappt. Habe in der owfs.conf derzeit den timeout_presence auf 6s gesetzt.
Also bei mir (openhab 2 + OneWire Binding 1.9.0.RC1) kann ich machen was ich will, das entfernen des iButtons merkt openhab erst nach ziemlich genau 120 Sekunden.
Code:==> /var/log/openhab2/scripts.log <== 2017-06-12 16:17:01.852 [INFO ] [home.model.script.99-DummyTest.rules] - iButton state changed to: XXXXXXXXXXXX 2017-06-12 16:19:00.987 [INFO ] [home.model.script.99-DummyTest.rules] - iButton state changed to: UNDEF
Einen Kommentar schreiben:
-
Hallo,
Thomas hat den PullRequest gemerged.
Er bat darum den Wiki Eintrag anzupassen (mit einem Hinweis auf Release 1.8): https://github.com/openhab/openhab/p...vent-491552100
Kannst Du das erledigen? Sonnst kann ich da auch machen.
Gruß
Dennis
Einen Kommentar schreiben:
-
Hallo Dennis,
hat gekplappt. Habe in der owfs.conf derzeit den timeout_presence auf 6s gesetzt.
Wiki nehme ich mir die nächsten Tage mal vor.
Vielen Dank für deine schnelle Arbeit.
Überlege gerade was ich damit noch alles basteln kann, das ist ein nettes Feature, hatte auch mal iBeacons überlegt, aber das Telefon schleppe ich nicht immer mit rum.
Gruß Ansgar
Einen Kommentar schreiben:
-
Hallo,
ich habe einen PullRequest erstellt: https://github.com/openhab/openhab/pull/3534
Gruß
Dennis
Einen Kommentar schreiben:
-
Hi.
prima. Ich erstelle dann einen PullRequest. Vermutlich morgen Abend. Wenn Du willst kannst Du ja das WiKi schon anpassen, mit dem Hinweis, dass der PullRequest noch nicht in der Nightly enthalten ist und einen Link auf die DropBox Testversion setzen. Wenn der PullRequest gemerged wurde, kann ich den Hinweis dann einfach entfernen.
Das mit dem Parameter timeout_presence klappt auch wie gedacht?
Vielen Dank und Gruß
Dennis
Einen Kommentar schreiben:
-
Hallo Denis,
ja habe es seit zwei Tagen am laufen. Hier ein Auszug aus der Konsole:
16:13:04.514 INFO runtime.busevents[:26] - OneWireKeyRed state updated to Undefined
16:13:06.433 INFO runtime.busevents[:26] - OneWireKeyRed state updated to 00001111111
Vielen Dank.
Doku im Wiki würde ich dich unterstützen, wenn du Interesse hast.
Gruß Ansgar
Einen Kommentar schreiben:
-
Hi,
konntest Du schon testen? Am 16.12. wird wohl CodeFreeze für die 1.8 Version von OpenHab sein. Dann könnte ich noch einen PullRequest mit den Änderungen für das Release machen.
Gruß
Dennis
Einen Kommentar schreiben:
-
Hi Ansgar,
>>>"runtime.busevents" mit der Meldung "status unknown".
Kannst Du da mal eine Zeile aus dem Log File posten. Status unknown ist mir nicht bekannt.
Eigentlich sollte das so aussehen. Im Fehlerfall wird beim Lesen der Typ Undefined für ein Item gesetzt. iButton state updated to Undefined
Um etwas Last vom Bus zu nehmen habe ich auch im Fehlerfall nun das Caching (sofern aktiviert <- default) eingebaut.
Hier eine neue Version: https://www.dropbox.com/s/jrwe67zp2b...72256.jar?dl=0
Gruß
Dennis
Einen Kommentar schreiben:
-
Hallo Dennis,
vielen Dank ich habe das Binding ausprobiert. Das Mapping auf die r_id funktioniert, auch die Fehlerunterdrückung.
Wenn allerdings der iButton nicht präsent ist, ist der Status unknown. Für diesem Fall erscheint ständig (im Sekundentakt) ein "runtime.busevents" mit der Meldung "status unknown".
Gruss Ansgar
Einen Kommentar schreiben:
-
Hi,
ich habe das Unterdrücken von Fehlern beim Lesen von einzelnen Items implementiert.
Hier eine Version des Bindings zum Testen:
https://www.dropbox.com/s/veov5iz412...42124.jar?dl=0
Der neue Parameter heißt: ignoreReadErrors
Also wäre eine Konfiguration:
String OneWireKeyBlack "Schlüssel Schwarz [%s]" <key> {onewire="deviceId=01.234567890000;propertyName=r_ id;refreshinterval=2;ignoreReadErrors"}
Was macht die Einstellung: timeout_presence
Hat das funktioniert?
Gruß
DennisZuletzt geändert von Dennis650; 04.12.2015, 21:59.
Einen Kommentar schreiben:
-
Zitat von ArPa Beitrag anzeigen
Hmm, ob das nicht etwas zu weit geschossen ist? Ich mein, das wäre ja dann so, dass man das Log-Level pro One-Wire Item definieren könnte. Würde ich zwar nicht so machen aber ist ein Ansatz.
was schlägst Du vor?
Aus meiner Sicht wird das ein Parameter, mit dem man gezielt die Fehlermeldungen bei nicht finden der DeviceID umwandelt in DEBUG-Ausgaben. Das ist doch genau das, was benötigt wird, um nicht das Log vollzuschreiben.
Hat man andere OneWireDevices im Bus will man von denen (Default) natürlich die Fehler sehen, wenn ein Device nicht gefunden wird (z.B. Temperatursensoren, Schaltbausteine, ...). Es geht hier um die gezielte Unterdrückung der Exceptions für einzelne Devices, eigentlich nur für iButtons. Das wäre kein großer Aufwand.
Zitat von ArPa Beitrag anzeigenJetzt mal eine andere Frage: Ich bin selbst sehr erfahrener Software Engineer und spiele schon länger mit dem Gedanken direkt an der Entwicklung von Openhab/Bindings mit zu wirken. Im Falle des One-Wire Bindings kann ich Probleme und Fixes praktisch aus erster Hand Analysieren und an Lösungen arbeiten.
Was muss ich tun und was brauche ich, um Dich bei der Entwicklung des Bindings aktiv in Sachen Quellcode zu unterstützen?
Beste Grüße,
Artur
Ich bin noch nicht so ganz warm mit git und github. Da ensteht für micht immer der meiste Aufwand. Die Implementierung von solchen Features / BugFixes ist bei einem Binding ja keine große Arbeit.
Gruß
Dennis
Einen Kommentar schreiben:
-
Zitat von abodenbe Beitrag anzeigenHallo,
wobei ich das Verhalten des uncahced Verzeichnisses nachvollziehen kann.
Die Button ID verschwindet sofort aus dem uncahced Verzeichniss, der Wert der r-ID nicht, der braucht 120s.
Versuche es mal ohne Webroweser direkt mit owdir und owread in der Kommandozeile.
Ansgar
Danke und beste Grüße,
Artur
Einen Kommentar schreiben:
-
Zitat von Dennis650 Beitrag anzeigenHi,
das mit dem uncached war nur ne Idee für eine alternative Lösung. Die bessere, saubere und einfachere Lösung ist einfach den Wert timeout_presence auf die gewünschte Zeit zu setzen :-)
Das mit dem unterdrücken des Error-Loggings müsste konfigurierbar gemacht werden für ein Item. Dann haben auch gleich die anderen User mit instabilen Bus eine Möglichkeit Fehlermeldungen zu unterdrücken, das war hier auch schonmal Thema.
PS: So ein iButton Probe und iButton Holder kosten zusammen nicht mehr als 20€ inkl. Versand
Ich opfere meine Freizeit um Euch was zu programmieren, an dem ich überhaupt kein Interesse habe, soll dafür auch noch 20 EUR ausgeben zum Testen und entsorge das Ding hinterher?
Gruß
Dennis
Und das mit dem Preis für eine Minimalausrüstung eines iButtons war jetzt so gar nicht gemeint. Nicht böse verstehen. Ich hab jetzt nicht gedacht, dass Du das so einschätzt, dass Du Zeit und Geld opferst für etwas an dem Du "überhaupt kein Interesse" hast. Wenn das so ist, würde ich da auch keinen Cent für ausgeben. Alles gut... Dachte nur, wenn jemand an so einem Binding arbeitet, wird er/sie das sicherlich auch im Einsatz haben...
Ich mache mich dann mal auf die Suche, nach dem timeout_presence Wert und schaue wie sich das System da verhält.
Jetzt mal eine andere Frage: Ich bin selbst sehr erfahrener Software Engineer und spiele schon länger mit dem Gedanken direkt an der Entwicklung von Openhab/Bindings mit zu wirken. Im Falle des One-Wire Bindings kann ich Probleme und Fixes praktisch aus erster Hand Analysieren und an Lösungen arbeiten.
Was muss ich tun und was brauche ich, um Dich bei der Entwicklung des Bindings aktiv in Sachen Quellcode zu unterstützen?
Beste Grüße,
Artur
Einen Kommentar schreiben:
Einen Kommentar schreiben: