FHEM Forum

FHEM - Hausautomations-Systeme => 1Wire => Thema gestartet von: ntruchsess am 30 Juni 2013, 00:55:59

Titel: OWX asynchron überarbeitet
Beitrag von: ntruchsess am 30 Juni 2013, 00:55:59
wie schon in Arduino/FRM-bezogenen Threads angekündigt, habe ich das OWX-Modul dahingehend überarbeitet, das es den 1-Wire-bus asynchron bedienen kann. D.h. das Scannen des Busses und Auslesen der Werte aus den 1-Wire devices findet in der Regel im Hintergrund statt, so dass z.B. das Web-interface unabhängig von der Aktivität auf dem 1-Wire bus nicht ausgebremst wird.

Der aktuelle Stand findet sich hier auf Github (//github.com/ntruchsess/fhem_owx/tree/refactoring_async/fhem/FHEM)

Für die asynchrone Verarbeitung portiert und von mir getestet sind aktuell der code für Arduino und serielle Busmaster (DS2480 oder passives Serielles Interface), dazu noch die Module OWTHERM und OWCOUNT.
Was ich nicht testen kann ist der Code für den CUNO. Der läuft jetzt zwar noch nicht asynchron musste aber natürlich an den überarbeiteten OWX-code angepasst werden. Auch die anderen OWxxxx-module sind noch unverändert (weil mir die passende Hardware zum testen fehlt).

Ich würde das ganze jetzt gerne mal stabilisieren und zu Ende bringen um es in den svn-trunk überführen zu können damit alle was davon haben. Ich würde mich daher freuen, wenn Ihr den aktuellen Stand mal testen würdet, insbesonders auch jemand, der einen CUNO oder weitere 1-Wire Devices besitzt.

Gruß,

Norbert
Titel: Aw: OWX asynchron überarbeitet
Beitrag von: Prof. Dr. Peter Henning am 30 Juni 2013, 19:39:30
Die Module für die anderen Sensoren / Devices (also OWSWITCH, OWAD, OWMULTI, OWID OWLCD) sollten davon gar nichts merken.

Bei einem OWX-Zugang über USB habe ich bisher keinen negativen Effekt gefunden - allerdings auch keinen Vorteil bemerkt.

Beim CUNO aber taucht das Problem auf, dass das CUL-Modul den CUNO bedient und OWX auf das CUL-Modul zugreift. Und, pardon: Bisher hat das CUL-Modul Schwierigkeiten mit dem CUNO gemacht.

LG

pah

Titel: Aw: OWX asynchron überarbeitet
Beitrag von: det. am 01 Juli 2013, 18:28:12
Habe es gestern kurz auf meinem Produktivsystem RPI mit OWX über 2 USB Adapter DS2480 getestet. Die 17 OWTHERM lieferten Werte wie gewünscht und der Aufbau der Web Oberfläche ging gefühlt etwas schneller. Allerdings funktionierte OWSWITCH und OWLCD nicht und schrieb das LOG mit Fehlermeldungen voll:
2013.06.30 12:45:06 3: OWSWITCH: Could not get values from device OWSWITCHBoden, reason not accessible in reading
2013.06.30 12:45:08 3: OWSWITCH: Could not get values from device OWX_Vaillant, reason not accessible in reading
2013.06.30 12:45:09 3: set OWSWITCHBoden output A OFF : OWSWITCH: Could not set device OWSWITCHBoden, reason: not accessible in readingdevice 12.15AF7B000000.51 not accessible in writing
2013.06.30 12:45:09 3: tempNotify return value: OWSWITCH: Could not set device OWSWITCHBoden, reason: not accessible in readingdevice 12.15AF7B000000.51 not accessible in writing
2013.06.30 12:45:10 3: OWSWITCH: Could not get values from device OWSWITCHB, reason not accessible in reading
2013.06.30 12:45:11 3: W_LCD11 return value: OWLCD: Device FF.C90700000100.9A not accessible for writing
2013.06.30 12:45:12 3: W_LCD01 return value: OWLCD: Device FF.8E0700000100.6A not accessible for writing
2013.06.30 12:45:12 3: W_LCD01 return value: OWLCD: Device FF.8E0700000100.6A not accessible for writing
2013.06.30 12:45:12 3: W_LCD02 return value: OWLCD: Device FF.8E0700000100.6A not accessible for writing
2013.06.30 12:45:12 3: W_LCD02 return value: OWLCD: Device FF.8E0700000100.6A not accessible for writing

OWMULTI erzeugte keine LOG Einträge, lieferte aber auch keine Messwerte, also schnell wieder bisherige Module zurückgespielt.
Der Test RPI mit OWX über FIRMATA läuft mit OWSWITCH und OWTHERM dagegen prima.
Titel: Aw: OWX asynchron überarbeitet
Beitrag von: ntruchsess am 01 Juli 2013, 23:34:45
Zitat von: det. schrieb am Mo, 01 Juli 2013 18:28Habe es gestern kurz auf meinem Produktivsystem RPI mit OWX über 2 USB Adapter DS2480 getestet. Die 17 OWTHERM lieferten Werte wie gewünscht und der Aufbau der Web Oberfläche ging gefühlt etwas schneller. Allerdings funktionierte OWSWITCH und OWLCD nicht und schrieb das LOG mit Fehlermeldungen voll:[...]
Der Test RPI mit OWX über FIRMATA läuft mit OWSWITCH und OWTHERM dagegen prima.

Danke für das Feedback, schade dass die OWSWITCH und OWLCD-devices nicht gehen. Aber Danke für das Log, das bringt mich schon einen Schritt weiter. Ich muss mir aber wohl doch noch ein paar andere 1-Wire Devices zulegen um das zu Ende refactoren zu können...

Aber freut mich doch sehr, dass die Teile mit der Firmata schon mal laufen :-)

Ich habe grade ein Update auf GitHub committet, jetzt erkennt (bzw. soll erkennen) das OWX-Modul selbsttätig, ob die verwendete Perl-version threads unterstützt und der dazu passende code verwendet. Zusätzlich kann man diesen Background-thread mit dem Attribute 'async' des OWX-moduls für Serielle Busmaster und CUNO abschalten. Firmata verwendet keinen separaten perl-Thread, da läuft die asynchrone bearbeitung ja auf dem Arduino per se eigenständig.

Zitat von: Prof. Dr. Peter Henning. schrieb am So, 30 Juni 2013 19:39Bei einem OWX-Zugang über USB habe ich bisher keinen negativen Effekt gefunden - allerdings auch keinen Vorteil bemerkt.

Einen Vorteil sieht man dann, wenn der 1-Wire-Bus gut ausgelastet wird - also wenn man das refreshintervall für DS18B20 auf 2 Sekunden stellt oder so... Wenn auf dem Bus alles rund läuft und man nicht zu schnell pollt, dann merkt man keinen wirklichen Unterschied.

ZitatBeim CUNO aber taucht das Problem auf, dass das CUL-Modul den CUNO bedient und OWX auf das CUL-Modul zugreift. Und, pardon: Bisher hat das CUL-Modul Schwierigkeiten mit dem CUNO gemacht.

Nun, mit dem CUNO bin ich was 1-Wire angeht auch noch nicht so ganz im Reinen. Den kann ich nicht asynchron in einem eigenen Thread bedienen, wenn noch andere Kommunikation über das CUL-modul läuft. Deshalb ist dieser für das OWX_CCC-submodul per default abgeschaltet (kann aber zu testen mit dem 'async'-attribut angestellt werden. Aber auch ohne eigenen Thread wird z.B. das Delay zwischen der Konvertierung und dem Auslesen im OWTHERM nicht einfach in einem select gewartet, sondern die Kontrolle zwischendurch an den fhem-mainloop zurückgegeben, so dass auch ein CUNO bei kürzeren Refreshraten das System nicht so sehr bremsen sollte. (In der Theorie... ich hab ja keinen zum Testen...)

Gruß,

Norbert
Titel: Aw: OWX asynchron überarbeitet
Beitrag von: ntruchsess am 02 Juli 2013, 10:31:13
Zitat von: det. schrieb am Mo, 01 Juli 2013 18:28Device FF.C90700000100.9A not accessible for writing

Hi Detlev,

War eigentlich nur eine Kleinigkeit, ich hab dafür gerade einen Fix commitet.
Falls Du Zeit hast, kannst Du das jeweils mit dem OWX-Attribute 'async 1' und 'async 0' testen?

Gruß,

Norbert
Titel: Aw: OWX asynchron überarbeitet
Beitrag von: Prof. Dr. Peter Henning am 04 Juli 2013, 11:53:58
Ich bin ja Willens, das auch mit den anderen Devices zu testen. Aber im Moment (und das schon seit Monaten ...) am Anschlag mit meiner Zeit. Mal sehen, ob jetzt im Sommer etwas Muße ist, dann können wir das etwas weiter treiben.

LG

pah

Titel: Aw: OWX asynchron überarbeitet
Beitrag von: ntruchsess am 04 Juli 2013, 15:37:47
Zitat von: Prof. Dr. Peter Henning schrieb am Do, 04 Juli 2013 11:53Ich bin ja Willens, das auch mit den anderen Devices zu testen.

Kein Problem, mal hat man Zeit und mal eben nicht. So ist das bei Open-source-projekten.
Ich hab mir jedenfalls grade einen Schwung fehlender 1-Wire chips bestellt um selber mit dem Thema weiterzukommen.

Gruß,

Norbert
Titel: Aw: OWX asynchron überarbeitet
Beitrag von: ergerd am 04 Juli 2013, 18:38:39
Hallo zusammen,

ich habe am 29.06.2013 ein Update gemacht und unter anderem auch 21_OWCOUNT.pm mit folgender Kennung bekommen:
# $Id: 21_OWCOUNT.pm 3253 2013-06-06 22:15:14Z ntruchsess $
Mit dieser OWCOUNT läuft mein System ab Datumswechsel um 24 Uhr mit 100% CPU-Last und FHEM stellt die Arbeit ein.
Ich habe aus dem Backup die alte Version des OWCOUNT restauriert, Kennung:
# $Id: 21_OWCOUNT.pm 3337 2013-06-26 14:03:43Z pahenning $
Damit läuft es wieder vernünftig. Vielleicht helfen euch diese Infos beim Bugfixing.

Viele Grüße
 Rainer
Titel: Aw: OWX asynchron überarbeitet
Beitrag von: ergerd am 06 Juli 2013, 15:22:05
Zu dumm, ich habe die Versionen durcheinander geworfen.
Die Version vom 26.06.2013 läuft bei mir nicht, beim Tageswechsel geht die CPU auf 100% Last und FHEM stellt die Arbeit ein.
Ich bin wieder auf die Version vom 6.06. zurück gegangen.
Grüße
Rainer
Titel: Aw: OWX asynchron überarbeitet
Beitrag von: Prof. Dr. Peter Henning am 07 Juli 2013, 07:45:25
Mit welchem Interface denn ? Was sagt das Logfile um Mitternacht ?

LG

pah
Titel: Aw: OWX asynchron überarbeitet
Beitrag von: ergerd am 07 Juli 2013, 08:31:43
Hallo pah,

im Logfile ist nur der letzte Eintrag zu sehen:
2013.06.03 23:19:25 3: update get http://fhem.de/fhemupdate4/svn/controls_fhem.txt (//fhem.de/fhemupdate4/svn/controls_fhem.txt)
danach wird bis zum Neustart von FHEM nichts mehr geschrieben.

Hier meine fhem.cfg:
define myOWFS OWServer localhost:4304
attr myOWFS nonblocking 1
attr myOWFS room 40_keller
define myOWFS_C1 OWCOUNT DS2423 2BD20D000000 300
attr myOWFS_C1 AFactor 0.001
attr myOWFS_C1 AMode daily
attr myOWFS_C1 AName Stromverbrauch1|energy
attr myOWFS_C1 APeriod hour
attr myOWFS_C1 AUnit kWh|kWh
attr myOWFS_C1 BFactor 0.001
attr myOWFS_C1 BMode daily
attr myOWFS_C1 BName Stromverbrauch2|energy
attr myOWFS_C1 BPeriod hour
attr myOWFS_C1 BUnit kWh|kWh
attr myOWFS_C1 LogM FileLog_myOWFS_C_M
attr myOWFS_C1 fp_Erdgeschoss 820,200,0,
attr myOWFS_C1 model DS2423
attr myOWFS_C1 room 40_keller
define myOWFS_C2 OWCOUNT DS2423 404C0F000000 300
attr myOWFS_C2 AFactor 0.001
attr myOWFS_C2 AMode daily
attr myOWFS_C2 AName Stromverbrauch3|energy
attr myOWFS_C2 APeriod hour
attr myOWFS_C2 AUnit kWh|kWh
attr myOWFS_C2 BFactor 0.001
attr myOWFS_C2 BMode daily
attr myOWFS_C2 BName Stromverbrauch4|energy
attr myOWFS_C2 BPeriod hour
attr myOWFS_C2 BUnit kWh|kWh
attr myOWFS_C2 LogM FileLog_myOWFS_C_M
attr myOWFS_C2 fp_Erdgeschoss 830,200,0,
attr myOWFS_C2 model DS2423
attr myOWFS_C2 room 40_keller
define FileLog_myOWFS_C FileLog /volumeUSB1/usr/local/FHEM/var/log/myOWFS_C-%Y-%m.log (myOWFS_C1|myOWFS_C2).*(kWh).*
attr FileLog_myOWFS_C room 40_keller
define wl_FileLog_myOWFS_C_1 weblink fileplot FileLog_myOWFS_C:wl_FileLog_myOWFS_C_1:CURRENT
attr wl_FileLog_myOWFS_C_1 room 40_keller
define FileLog_myOWFS_C_M FileLog /volumeUSB1/usr/local/FHEM/var/log/myOWFS_C_M-%Y-%m.log (myOWFS_C1|myOWFS_C2):day.*
attr FileLog_myOWFS_C_M room 40_keller

Grüße
Rainer
Titel: Aw: OWX asynchron überarbeitet
Beitrag von: ntruchsess am 07 Juli 2013, 12:00:20
Zitat von: ergerd schrieb am Sa, 06 Juli 2013 15:22Zu dumm, ich habe die Versionen durcheinander geworfen.
Die Version vom 26.06.2013 läuft bei mir nicht, beim Tageswechsel geht die CPU auf 100% Last und FHEM stellt die Arbeit ein.
Ich bin wieder auf die Version vom 6.06. zurück gegangen.
Grüße
Rainer

bitte diskutiere das im passenden Thread, meine für asynchrone Verarbeitung überarbeitete OWX-Version ist noch nicht über 'update development' installierbar, da noch nicht ins FHEM-SVN eingecheckt sondern (ausschließlich) von Github herunterlad- und manuel installierbar.

Gruß,

Norbert
Titel: OWID, OWSWITCH, OWMULTI und OWAD jetzt auch asynchron
Beitrag von: ntruchsess am 07 Juli 2013, 12:14:17
so, es gab ja mit den Modulen OWSWITCH und OWMULTI noch Schwierigkeiten im asynchronen Modus, was unter anderem daran lag, das sie noch gar nicht überarbeitet waren und sozusagen im 'Kompatibilitätsmodus' liefen.

Nachdem die Chips gestern gekommen sind, konnte ich die vorher schon 'blind' angepassten Module 21_OWID.pm, 21_OWSWITCH.pm, 12_OWMULTI.pm und 21_OWAD.pm jetzt mal testen und initial zum laufen kriegen. OWAD wirft ohne definierte Alarmschwellen noch einen Haufen Meldungen wie 'Use of uninitialized value in numeric eq (==)'. (Das ist mit der originalen OWAD-version aber wohl auch so, da werde ich aber noch nachschäfen). Der Rest ist hier bei mir unauffällig.

Ein Dauertest mit je ein DS2401, DS2406, DS2408, DS2413, DS2438, DS2450 und 2 DS18B20 an einem DS2480 seriellen Busmaster, alle Module auf 5-Sekunden Aktualisierungsinterval eingestellt, läuft gerade seit 1 Stunde. Bis jetzt ist das Webinterface immer noch gut bedienbar :-)

21_OWLCD.pm fehlt noch.

Alle Module wie bisher auf Github (//github.com/ntruchsess/fhem_owx/tree/refactoring_async/fhem/FHEM).

Gruß,

Norbert
Titel: Aw: OWX asynchron überarbeitet
Beitrag von: ergerd am 07 Juli 2013, 12:15:55
Geht klar. Allerdings bin ich jetzt verunsichert. Ich gebe in meinem FHEM immer nur "update" bzw. "update check" ein, ich habe auch noch nie etwas von github heruntergeladen. Wie bin ich dann an die Version gekommen?
Grüße
Rainer
Titel: Aw: OWX asynchron überarbeitet
Beitrag von: ntruchsess am 07 Juli 2013, 12:28:00
Zitat von: ergerd schrieb am So, 07 Juli 2013 12:15Wie bin ich dann an die Version gekommen?

gar nicht.

am 06.06. hatte ich halt einen Bug im bisherigen OWCOUNT (das man über das update bekommt) gefixed. Der hatte aber nichts mit der hier diskutierten asynchronen Überarbeitung zu tun.

Da Du OWSERVER verwendest, würdest Du von dieser Überarbeitung auch nicht profitierten (bzw. diese gar nicht benötigen).

Gruß,

Norbert
Titel: Aw: OWX asynchron überarbeitet
Beitrag von: ergerd am 07 Juli 2013, 12:32:50
Dann habe ich mein Problem in einem falschen Zusammenhang gesehen.
Nichts für ungut.
Grüße
Rainer
Titel: Aw: OWX asynchron überarbeitet
Beitrag von: Prof. Dr. Peter Henning am 08 Juli 2013, 10:04:29
Guten Morgen,

Hast Du die Sachen schon auf dec ICe-Repository eingecheckt ?

LG

pah
Titel: Aw: OWX asynchron überarbeitet
Beitrag von: ntruchsess am 08 Juli 2013, 11:07:28
nein, mit Deinem svn-umzug hat es meinen Git-mirror 'abgehängt', ich schaue mal, wie man das wieder synchron bekomme. Die Git-svn tools können leider keinen 'svn relocate' :-(

Gruß,

Norbert

Titel: Aw: OWX asynchron überarbeitet
Beitrag von: Prof. Dr. Peter Henning am 08 Juli 2013, 13:40:01
Oh übel.

Der Umzug ist nur ein logischer Umzug - der Server ist gehackt worden, das erforderte eine Neuorganisation der Virtual Hosts. Ist leider weder rückgängig zu machen, noch zu umgehen.

LG

pah

Titel: Aw: OWX asynchron überarbeitet
Beitrag von: ntruchsess am 09 Juli 2013, 07:55:29
na so schlimm ist es auch nicht, Du hast im branch 'async (//svn.ice-karlsruhe.de/FHEM/branches/async/fhem/FHEM/)' ja nichts commited, ich habe grade den aktuellen Stand grade hochgeladen. Hier (http://forum.fhem.de/index.php?topic=10744.msg85339#msg85339) habe ich gestern was dazu geschrieben, was eigentlich in diesen Thread gehört hätte...

Gruß,

Norbert
Titel: Aw: OWX asynchron überarbeitet
Beitrag von: Tobias am 30 August 2013, 19:40:20
Hi,
gibt es eigentlich hier neue Neuigkeiten?
Ich bin schon ganz "heiß" auf die Erweiterung da bei meiner fhem-installation mit 35 Devices die Verzögerung gut merkbar ist.
 OWAD            : 5
  OWCOUNT         : 1
  OWMULTI         : 1
  OWSWITCH        : 14
  OWTHERM         : 12
  OWX             : 2

  OWAD            : DS2450
  OWCOUNT         : DS2423
  OWMULTI         : DS2438
  OWSWITCH        : DS2406,DS2408,DS2413
  OWTHERM         : DS1822
Titel: Aw: OWX asynchron überarbeitet
Beitrag von: ntruchsess am 01 September 2013, 21:01:14
Zitat von: Tobias schrieb am Fr, 30 August 2013 19:40gibt es eigentlich hier neue Neuigkeiten?

im Prinzip ist der Stand so, wie bei meinem letzten Beitrag:

mit einem DS2480-basiertem Busmaster funktioniert es bei eigentlich prima (vorrausgesetzt, dass die verwendete Plattform perl-threads unterstützt). Mit einem passiven seriellen Interface sollte es eigentlich genauso laufen, das habe ich aber (mangels Interface) nicht getestet. Über Feedback, ob sich der Stand 'im Feld' bewährt, würde ich mich sehr freuen.

Mit einem Arduino gehen die Devices im Prinzip auch, bei mir gibt es aber Probleme, sobald ein paar mehr Devices am Bus hängen. Mir ist nicht ganz klar, woran das genau liegt - die OneWire-library, die arduinoseitig verwendet wird, kommt da eventuell nicht mit dem Timing klar. Das hat nichts mit der asynchronen Überarbeitung zu tun, das ist mit der 'klassischen', synchronen Implementierung genauso. Vieleicht liegt es auch einfach daran, dass der Pullup über einen einfachen Wiederstand am 1-Wire-bus zu langsam passiert, wenn mehr Devices dranhängen. Von der Softwareseite her ist das schwer zu debuggen. Der Plan ist, in die Firmata Unterstützung für einen DS2482 I2C-Busmaster einzubauen. Damit könnte man den Arduino dann z.B. als 1-Wire/IP-Gateway einsetzen. Nur habe ich im Moment erst mal eine andere 'größere' Baustelle (echte TCP/IP-unterstützung für ENC28J60-arduino-ethernet-shields). Wobei - wenn letzteres richtig läuft, dann kommt das natürlich all denen zu Gute, die z.B. den Arduino Nano über Netzwerk verwenden wollen (für den Nano gibt's keine WIZ5100-basierten Shields)...

Gruß,

Norbert
Titel: Aw: OWX asynchron überarbeitet
Beitrag von: Tobias am 02 September 2013, 09:52:14
Ok,
bei Neuigkeiten meinte ich den Stand der Überlegung alles ins SVN zu commiten bzw der Stand der Stabilität.

Dazu noch eine Frage: ist da auch schon der automatische Reconnect bei kurzzeitiger USB-Unterbrechung mit drin?
Titel: Aw: OWX asynchron überarbeitet
Beitrag von: ntruchsess am 02 September 2013, 14:56:09
ins SVN commited wird, wenn es von den Testern für gut befunden ist. (Ein bischen ein Henne/Ei Problem, wenn alle nur darauf warten, das es stabil und fertig ist...) Wobei ich vermutlich erst in ca. 2 Wochen wieder Zeit habe mich drum zu kümmern (bin seit Anfang August bis inkl. nächstes WE noch in Urlaub und die 1-Wire-hardware liegt zu Hause).

Gruß,

Norbert
Titel: Aw: OWX asynchron überarbeitet
Beitrag von: Prof. Dr. Peter Henning am 02 September 2013, 19:16:28
Ich muss zugeben, dass ich den Test und die konsensuelle Freigabe seit Monaten vor mir herschiebe.
Zuviel zu tun im Hauptjob - und derzeit noch im Urlaub. Mal sehen, imOktoberkönnte das was werden.

LG

pah
Titel: Aw: OWX asynchron überarbeitet
Beitrag von: Tobias am 17 September 2013, 13:20:12
Kurze Frage hierzu: habt ihr zufällig auch das automatische Reconnect eingebaut?

Wenn ich zb. den USB-Stecker ziehe an dem der 1wireBusmaster hängt, muss ich immer fhem neu starten :(
Titel: Antw:Aw: OWX asynchron überarbeitet
Beitrag von: Tobias am 15 Oktober 2013, 07:52:27
Zitat von: Tobias am 17 September 2013, 13:20:12
Kurze Frage hierzu: habt ihr zufällig auch das automatische Reconnect eingebaut?
Wenn ich zb. den USB-Stecker ziehe an dem der 1wireBusmaster hängt, muss ich immer fhem neu starten :(
Nochmal kurze Nachfrage hierzu. Sehe ich zZ bie mir als größtes Problem...
Äußert sich dann im Log so:OWX: Reset failure on bus 1wireMp00202
oder so:Use of uninitialized value $m in addition (+) at ./FHEM/00_OWX.pm line 1457.
Use of uninitialized value $string_part in concatenation (.) or string at ./FHEM/00_OWX.pm line 1459.
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 15 Oktober 2013, 09:26:27
Zitat von: Tobias am 15 Oktober 2013, 07:52:27
Nochmal kurze Nachfrage hierzu. Sehe ich zZ bie mir als größtes Problem...
Äußert sich dann im Log so:OWX: Reset failure on bus 1wireMp00202
oder so:Use of uninitialized value $m in addition (+) at ./FHEM/00_OWX.pm line 1457.
Use of uninitialized value $string_part in concatenation (.) or string at ./FHEM/00_OWX.pm line 1459.


hab grade ein größeres Projekt erfolgreich zuende implementiert (Arduino-Ethernet library für ENC28J60 boards, kann jetzt auch im Ethernetfirmata-sketch verwendet werden), jetzt sollte wieder Zeit sein mich um das asynchrone OWX zu kümmern. Viel fehlt da nicht mehr um das stabil zu kriegen.

Gruß,

Norbert
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: Tobias am 15 Oktober 2013, 13:50:33
Hallo Norbert,

das hört sich gut an... wäre auf jedenfalls echt toll wenn diese dumme reconnect-Sache implementiert wird :) :)
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: Joachim am 08 Dezember 2013, 13:10:14
Moin Norbert,

nachdem ich mich heute auch mal gewagt habe, die asynchrone Variante zu nutzen,

kurze erste Rückmeldung:
geht mit Raspberry und LinkUSBi, überlebt aber keinen reboot.
gibt einen CRC-Fehler nach dem reboot und es werden  nur noch die
Zitat2013-12-08 12:31:42.500 OWTHERM OWX_28_295FBA030000 PRESENT: 1
ausgelesen.
erst ein neues
Zitatget <name> devices
sorgt wieder dafür, dass auch die restlichen Werte ausgelesen werden.

Auszug fhem.cfg:
Zitat
define 1_Wire OWX /dev/ttyUSB1
attr 1_Wire room OWX

define OWX_28_295FBA030000 OWTHERM DS18B20 295FBA030000
attr OWX_28_295FBA030000 IODev 1_Wire
attr OWX_28_295FBA030000 model DS1822
attr OWX_28_295FBA030000 room OWX
attr OWX_28_295FBA030000 tempHigh 25
attr OWX_28_295FBA030000 tempLow 10
Auszug wenn es nicht geht aus fhem.log:
Zitat2013.12.08 12:32:13.553 5: Triggering OWX_28_295FBA030000 (1 changes)
2013.12.08 12:32:13.556 5: Notify loop for OWX_28_295FBA030000 PRESENT: 1
2013.12.08 12:32:13.708 4: OWX_AfterExecute [28.295FBA030000.00]: invalid CRC
Auszug wenn es geht aus fhem.log:
Zitat2013.12.08 13:03:16.679 5: Triggering OWX_28_295FBA030000 (1 changes)
2013.12.08 13:03:16.680 5: Notify loop for OWX_28_295FBA030000 PRESENT: 1
2013.12.08 13:03:17.002 3: temperatur 17.3125
2013.12.08 13:03:17.005 5: Triggering OWX_28_295FBA030000 (2 changes)
2013.12.08 13:03:17.006 5: Notify loop for OWX_28_295FBA030000 temperature: 17.3125
2013.12.08 13:03:17.020 5: Triggering OWX_28_295FBA030000 (1 changes)
2013.12.08 13:03:17.022 5: Notify loop for OWX_28_295FBA030000 PRESENT: 1

Irgendwo geht die CRC-Prüfsumme baden:
Zitat2013.12.08 12:32:00.236 5: OWX_SER::Search: new device found 28.295FBA030000.AA

gruß Joachim
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: Joachim am 08 Dezember 2013, 16:23:54
Moin @ all, moin Norbert,

Es liegt definitiv an der fehlenden CRC-Prüfsumme.
Häßlicher würg-around von jemandem, der keine Ahnung von Perl hat.

- fhem starten mit folgendem OWX-Eintrag in der fhem.cfg

define 1_Wire OWX /dev/ttyUSB<NUMMER>
attr 1_Wire room OWX

- get <name> devices
- CRC-Summe von jedem 1-Wire device merken (steht bei Internals --> ROM_ID, diese hier: 28.1FB08704000.EF
- sace config
- FHEM stoppen
- in der fhem.cfg die gemerkte CRC  im define anfügen und speichern
"define Temp_Sensor_Badezimmer OWTHERM DS18B20 7556BA0300000A 300"
- in der Datei 21_OWTHERM.pm ab Zeile 188 bis 212 folgende Änderungen durchführen:

#-- model, 14 characters
  } elsif(  $a3 =~ m/^[0-9|a-f|A-F]{14}$/ ) {
    $model         = $a[2];
    $id            = substr($a[3],0,11);
    $crc           = substr($a[3],12,2);
    if(int(@a)>=5) { $interval = $a[4]; }
    if( $model eq "DS1820" ){
      $fam = "10";
      CommandAttr (undef,"$name model DS1820");
    }elsif( $model eq "DS1822" ){
      $fam = "22";
      CommandAttr (undef,"$name model DS1822");
    }elsif( $model eq "DS18B20" ){
      $fam = "28";
      CommandAttr (undef,"$name model DS1822");
    }else{
      return "OWTHERM: Wrong 1-Wire device model $model";
    }
  } else {   
    return "OWTHERM: $a[0] ID $a[2] invalid, specify a 12 or 2.12 digit value";
  }
 
  #-- determine CRC Code
  #$crc = defined($hash->{IODev}->{INTERFACE}) ?  sprintf("%02x",OWX_CRC($fam.".".$id."00")) : "00";

FHEM neu starten, und die Temperatursensoren werden erkannt und liefern Temperaturen.

Gruß Joachim
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 08 Dezember 2013, 18:31:00
danke Joachim,

das war mir noch nicht bekannt/bewusst. Den equivalenten Fehler habe ich im synchronen Strang schon behoben, werde ich tunlichst mal in den Asynchronen Branch mergen.

Gruß,

Norbert
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: Joachim am 08 Dezember 2013, 18:44:00
Moin Norbert,

Danke ersteinmal für Deine Rückmeldung.
soll ich mir die Fehlerbehebung ersteinmal aus dem Syncronen Strang klauen, damit ich weitertesten kann?
Da läuft noch einiges nicht so ganz rund, und heute habe ich noch etwas Zeit.

Gruß Joachim
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: Joachim am 08 Dezember 2013, 19:10:15
Moin Norbert,

nächste Fehlermeldungen:
1.)

2013.12.08 18:50:55.344 5: OWX_SER::Search: new alarm device found 28.212772040000.07
2013.12.08 18:50:57.004 1:  Alarms = 28.212772040000.07

ein "get Temp_Sensor_Kuehltruhe alarm" liefert:

OWTHERM: Temp_Sensor_Kuehltruhe.alarm => L 0 H 50

als Attributes sind eingetragen:

tempHigh -18
tempLow  -25


2.)
Die Scrollfenster für get bieten alle Möglichkeiten auf einmal, siehe Anhang.

Gruß Joachim
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 08 Dezember 2013, 21:28:58
kurze Nachfrage:

verwendest Du den code von https://github.com/ntruchsess/fhem_owx
oder von https://github.com/ntruchsess/fhem-mirror/tree/owx_async
?

Das obere Repository (fhem_owx) hat den Stand von vor 5 Monaten, das untere ist mein fhem-mirror, in dem ich die OWX-fixes der letzten Zeit schon alle in den asynchronen Zweig gemerged habe (mergen geht repository-übergreifend nur 'zu Fuß')

- Norbert
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: Joachim am 08 Dezember 2013, 21:34:52
Den hier:
https://github.com/ntruchsess/fhem_owx/tree/refactoring_async/fhem/FHEM
war nach meiner meinung der aktuellste
Zitatim Prinzip ist der Stand so, wie bei meinem letzten Beitrag:
ZitatAlle Module wie bisher auf Github.

dann nehme ich mal den anderen.

Danke Joachim
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: Joachim am 08 Dezember 2013, 21:56:58
So, ist installiert, und meine Sensoren werden alle erkannt.
DropDown-Menues sind auch in ordnung,
allerdings immer noch der Alarm bei negativen Temperaturen.
Hier das Define:

define Temp_Sensor_Kuehltruhe OWTHERM DS18B20 212772040000 300
attr Temp_Sensor_Kuehltruhe IODev 1_Wire
attr Temp_Sensor_Kuehltruhe model DS18B22
attr Temp_Sensor_Kuehltruhe room Kueche
attr Temp_Sensor_Kuehltruhe tempHigh -18
attr Temp_Sensor_Kuehltruhe tempLow -25
attr Temp_Sensor_Kuehltruhe event-min-interval temperature:600
attr Temp_Sensor_Kuehltruhe event-on-change-reading temperature
attr Temp_Sensor_Kuehltruhe icon icoKLIMA
attr Temp_Sensor_Kuehltruhe stateFormat {sprintf("%.1f",ReadingsVal("$name","temperature",0))."°C"}

und hier der Alarm aus dem Log:

2013.12.08 21:51:32.502 1:  Alarms = 28.212772040000.07


Gruß Joachim
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 08 Dezember 2013, 22:02:21
prima, ich wußte doch, dass ich da vor 5 Wochen schon einiges gefixed hatte. Danke für's testen!
Der Fehler mit dem CRC sollte da auch schon behoben sein.

dann schau ich mir das mit den Alarmen gleich mal an.

- Norbert
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: Joachim am 08 Dezember 2013, 22:03:17
Moin Norbert,

Die Konsole wirft auch noch eine Fehlermeldung:

pi@FHEM-SERVER ~ $ cd /opt/fhem
pi@FHEM-SERVER /opt/fhem $ sudo perl fhem.pl fhem.cfg
pi@FHEM-SERVER /opt/fhem $ Scalar value @dataThroughput[0] better written as $dataThroughput[0] at ./FHEM/42_SYSMON.pm line 564, <> line 2.
Scalar value @dataThroughput[0] better written as $dataThroughput[0] at ./FHEM/42_SYSMON.pm line 564, <> line 2.
Use of uninitialized value in string ne at fhem.pl line 3464.
Use of uninitialized value in string ne at fhem.pl line 3464.
Use of uninitialized value in string ne at fhem.pl line 3464.
Use of uninitialized value in string ne at fhem.pl line 3464.
Use of uninitialized value in string ne at fhem.pl line 3464.
Use of uninitialized value in string ne at fhem.pl line 3464.
Use of uninitialized value in string ne at fhem.pl line 3464.
Use of uninitialized value in string ne at fhem.pl line 3464.
Use of uninitialized value in string ne at fhem.pl line 3464.
Use of uninitialized value in string ne at fhem.pl line 3464.
Use of uninitialized value in string ne at fhem.pl line 3464.
Use of uninitialized value in string ne at fhem.pl line 3464.
Use of uninitialized value in string ne at fhem.pl line 3464.
Use of uninitialized value in string ne at fhem.pl line 3464.
Use of uninitialized value in string ne at fhem.pl line 3464.
Use of uninitialized value in string ne at fhem.pl line 3464.
pi@FHEM-SERVER /opt/fhem $


Gruß Joachim
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 08 Dezember 2013, 22:06:51
hast Du jetzt den ganzen Branch (https://github.com/ntruchsess/fhem-mirror/tree/owx_async) ausgecheckt, oder nur die OWX-module? (müsste ich wg. des fhem.pl-standes wissen)
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: Joachim am 08 Dezember 2013, 22:13:09
Aus Faulheit habe ich den ganzen ZIP-Ordner genommen, aber nur die OWX-Module in meine Installation übernommen.

$Id: fhem.pl 4323 2013-12-03 21:06:40Z rudolfkoenig $

Gruß Joachim
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 08 Dezember 2013, 22:18:46
danke, passt schon, ich merge mir eh gleich mal den aktuellen fhem-Stand in den branch.
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: Joachim am 08 Dezember 2013, 22:35:52
Jetzt habe ich nocheinmal eine bescheidene Frage,

Um OWX asyncron zu bekommen, welche Einträge sind die richtigen, verstehe die englische Erklärung nicht wirklich.


define 1_Wire OWX /dev/ttyUSB1
attr 1_Wire room OWX
attr 1_Wire async 1         <------ asynchon einschalten?
attr 1_Wire dokick 1      <------ OWX startet die Temperaturwandlung?

muss dann auch in OWTHERM das attr tempConv gesetzt werden, also so:

define Temp_Sensor_Kuehltruhe OWTHERM DS18B20 212772040000 300
attr Temp_Sensor_Kuehltruhe IODev 1_Wire
attr Temp_Sensor_Kuehltruhe model DS18B22
attr Temp_Sensor_Kuehltruhe tempConv onkick      <----------
attr Temp_Sensor_Kuehltruhe room Kueche
attr Temp_Sensor_Kuehltruhe tempHigh -18
attr Temp_Sensor_Kuehltruhe tempLow -25
attr Temp_Sensor_Kuehltruhe event-min-interval temperature:600
attr Temp_Sensor_Kuehltruhe event-on-change-reading temperature
attr Temp_Sensor_Kuehltruhe icon icoKLIMA
attr Temp_Sensor_Kuehltruhe stateFormat {sprintf("%.1f",ReadingsVal("$name","temperature",0))."°C"}

und müssen dann alle Sensoren im gleichen Abstand ausgelesen werden?

Joachim
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 09 Dezember 2013, 00:24:48
dokick sorgt dafür, dass OWX die Temperaturwandlung für alle DS18B20 gleichzeitig startet (funktioniert nur bei aktiv, also nicht parasitär spannungsversorgten Devices), das Auslesen ist allerdings nicht automatisch darauf abgestimmt, wenn man die DS28B20 häufger als das owx intervall abfragt bekommt man mehrfach die gleichen Werte).
async=0 schaltet den asynchronen modus aus (beim DS2480 oder LinkUSBi ist als default async angeschaltet, auch wenn man kein attr async sieht).
Wenn man nicht alle DS18B20 mit dem gleichen Interval abfragen will, dann setzt man kein dokick. Ist im asynchronen Modus auch nicht wirklich nützlich, da das FHEM ja während der Sekunde Wartezeit nicht blockiert wird.

- Norbert
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: Joachim am 09 Dezember 2013, 22:42:22
Moin Norbert,
Danke für die Erklärung.

Erste kurze Rückmeldung, OWX ist 24 Stunden sauber durchgelaufen, System scheint insgesamt weniger Freezes zu haben, allerdings scheint mir die Last des Moduls relativ hoch. Hier werde ich noch einige Tests und Vergleiche machen, und mich dann wieder melden.
Wenn ich von Deiner Seite aus noch irgendetwas ausprobieren kann, sag bescheid.

Gruß Joachim
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: Joachim am 12 Dezember 2013, 09:43:15
Moin Norbert,

ich habe mal weitere Tests gemacht.
Grundlage:
- Frisch installierter Pi mit allen Updates
- FHEM mit allen Updates Stand 1.12.13
- nur 1-Wire, bis auf das globale Log keine Filelogs
- LinkUSBi als Busmaster
- 16 Temperatursensoren, 2x DS1820, 14x DS18B20
- 1 Multisensor DS2438
- 1 OWID2401
- zusätzlich auf dem Pi den RPI-Monitor zur Performanceüberwachung

1. Test von 12:52 bis 16:18
Original OWX, folgende fhem.cfg

#OWX LinkUSBi (FTDI-Chip)
define LinkUSBi OWX /dev/ttyUSB0
attr LinkUSBi buspower real
define OWX_10_9AEB01020800 OWTHERM DS1820 9AEB01020800
attr OWX_10_9AEB01020800 IODev LinkUSBi
attr OWX_10_9AEB01020800 model DS1820
attr OWX_10_9AEB01020800 room OWX
attr OWX_10_9AEB01020800 tempHigh 30
attr OWX_10_9AEB01020800 tempLow 10
define OWX_10_8FEF01020800 OWTHERM DS1820 8FEF01020800
attr OWX_10_8FEF01020800 IODev LinkUSBi
attr OWX_10_8FEF01020800 model DS1820
attr OWX_10_8FEF01020800 room OWX
attr OWX_10_8FEF01020800 tempHigh 30
attr OWX_10_8FEF01020800 tempLow 10
define OWX_28_9848BA030000 OWTHERM DS18B20 9848BA030000
attr OWX_28_9848BA030000 IODev LinkUSBi
attr OWX_28_9848BA030000 model DS1822
attr OWX_28_9848BA030000 room OWX
attr OWX_28_9848BA030000 tempHigh 25
attr OWX_28_9848BA030000 tempLow 10
define OWX_28_B449BA030000 OWTHERM DS18B20 B449BA030000
attr OWX_28_B449BA030000 IODev LinkUSBi
attr OWX_28_B449BA030000 model DS1822
attr OWX_28_B449BA030000 room OWX
attr OWX_28_B449BA030000 tempHigh 25
attr OWX_28_B449BA030000 tempLow 0
define OWX_28_0C2E88040000 OWTHERM DS18B20 0C2E88040000
attr OWX_28_0C2E88040000 IODev LinkUSBi
attr OWX_28_0C2E88040000 model DS1822
attr OWX_28_0C2E88040000 room OWX
attr OWX_28_0C2E88040000 tempHigh 10
attr OWX_28_0C2E88040000 tempLow 0
define OWX_28_161ABA030000 OWTHERM DS18B20 161ABA030000
attr OWX_28_161ABA030000 IODev LinkUSBi
attr OWX_28_161ABA030000 model DS1822
attr OWX_28_161ABA030000 room OWX
attr OWX_28_161ABA030000 tempHigh 25
attr OWX_28_161ABA030000 tempLow 10
define OWX_28_2E1BBA030000 OWTHERM DS18B20 2E1BBA030000
attr OWX_28_2E1BBA030000 IODev LinkUSBi
attr OWX_28_2E1BBA030000 model DS1822
attr OWX_28_2E1BBA030000 room OWX
attr OWX_28_2E1BBA030000 tempHigh 25
attr OWX_28_2E1BBA030000 tempLow 15
define OWX_28_212772040000 OWTHERM DS18B20 212772040000
attr OWX_28_212772040000 IODev LinkUSBi
attr OWX_28_212772040000 model DS1822
attr OWX_28_212772040000 room OWX
attr OWX_28_212772040000 tempHigh -18
attr OWX_28_212772040000 tempLow -25
define OWX_28_295FBA030000 OWTHERM DS18B20 295FBA030000
attr OWX_28_295FBA030000 IODev LinkUSBi
attr OWX_28_295FBA030000 model DS1822
attr OWX_28_295FBA030000 room OWX
attr OWX_28_295FBA030000 tempHigh 25
attr OWX_28_295FBA030000 tempLow 10
define OWX_28_198B72040000 OWTHERM DS18B20 198B72040000
attr OWX_28_198B72040000 IODev LinkUSBi
attr OWX_28_198B72040000 model DS1822
attr OWX_28_198B72040000 room OWX
attr OWX_28_198B72040000 tempHigh 10
attr OWX_28_198B72040000 tempLow 0
define OWX_28_B930BA030000 OWTHERM DS18B20 B930BA030000
attr OWX_28_B930BA030000 IODev LinkUSBi
attr OWX_28_B930BA030000 model DS1822
attr OWX_28_B930BA030000 room OWX
attr OWX_28_B930BA030000 tempHigh 25
attr OWX_28_B930BA030000 tempLow 0
define OWX_28_559E87040000 OWTHERM DS18B20 559E87040000
attr OWX_28_559E87040000 IODev LinkUSBi
attr OWX_28_559E87040000 model DS1822
attr OWX_28_559E87040000 room OWX
attr OWX_28_559E87040000 tempHigh 25
attr OWX_28_559E87040000 tempLow 0
define OWX_28_7556BA030000 OWTHERM DS18B20 7556BA030000
attr OWX_28_7556BA030000 IODev LinkUSBi
attr OWX_28_7556BA030000 model DS1822
attr OWX_28_7556BA030000 room OWX
attr OWX_28_7556BA030000 tempHigh 22
attr OWX_28_7556BA030000 tempLow 15
define OWX_28_8B49BA030000 OWTHERM DS18B20 8B49BA030000
attr OWX_28_8B49BA030000 IODev LinkUSBi
attr OWX_28_8B49BA030000 model DS1822
attr OWX_28_8B49BA030000 room OWX
attr OWX_28_8B49BA030000 tempHigh 25
attr OWX_28_8B49BA030000 tempLow 15
define OWX_28_2F4ABA030000 OWTHERM DS18B20 2F4ABA030000
attr OWX_28_2F4ABA030000 IODev LinkUSBi
attr OWX_28_2F4ABA030000 model DS1822
attr OWX_28_2F4ABA030000 room OWX
attr OWX_28_2F4ABA030000 tempHigh 25
attr OWX_28_2F4ABA030000 tempLow 10
define OWX_28_1FB087040000 OWTHERM DS18B20 1FB087040000
attr OWX_28_1FB087040000 IODev LinkUSBi
attr OWX_28_1FB087040000 model DS1822
attr OWX_28_1FB087040000 room OWX
attr OWX_28_1FB087040000 tempHigh 25
attr OWX_28_1FB087040000 tempLow 15
define OWX_26_930C6A010000 OWMULTI DS2438 930C6A010000
attr OWX_26_930C6A010000 IODev LinkUSBi
attr OWX_26_930C6A010000 model DS2438
attr OWX_26_930C6A010000 room OWX
define OWX_01_AB6F73140000 OWID 01 AB6F73140000
attr OWX_01_AB6F73140000 IODev LinkUSBi
attr OWX_01_AB6F73140000 model DS2401
attr OWX_01_AB6F73140000 room OWX

Systemload dauerhaft bei ca. 0,07, siehe Anhang,
Logauszug:
2013.12.11 12:54:07.949 1: Including fhem.cfg
2013.12.11 12:54:08.317 3: telnetPort: port 7072 opened
2013.12.11 12:54:08.697 3: WEB: port 8083 opened
2013.12.11 12:54:08.871 2: eventTypes: loaded 72 events from ./log/eventTypes.txt
2013.12.11 12:54:09.214 3: Opening LinkUSBi device /dev/ttyUSB0
2013.12.11 12:54:09.222 3: Setting LinkUSBi baudrate to 9600
2013.12.11 12:54:09.242 3: LinkUSBi device opened
2013.12.11 12:54:09.242 1: OWX: Serial device /dev/ttyUSB0 defined
2013.12.11 12:54:09.396 1: OWX: 1-Wire bus LinkUSBi: interface master DS2480 re-detected
2013.12.11 12:54:09.400 1: Including ./log/fhem.save
2013.12.11 12:54:09.477 1: statefile: Please define OWX_01_AB6F73140000 first
Please define OWX_10_8FEF01020800 first
Please define OWX_10_8FEF01020800 first
Please define OWX_10_8FEF01020800 first
Please define OWX_10_9AEB01020800 first
Please define OWX_10_9AEB01020800 first
Please define OWX_10_9AEB01020800 first
Please define OWX_26_930C6A010000 first
Please define OWX_26_930C6A010000 first
Please define OWX_26_930C6A010000 first
Please define OWX_26_930C6A010000 first
Please define OWX_26_930C6A010000 first
Please define OWX_28_0C2E88040000 first
Please define OWX_28_0C2E88040000 first
Please define OWX_28_0C2E88040000 first
Please define OWX_28_161ABA030000 first
Please define OWX_28_161ABA030000 first
Please define OWX_28_161ABA030000 first
Please define OWX_28_198B72040000 first
Please define OWX_28_198B72040000 first
Please define OWX_28_198B72040000 first
Please define OWX_28_1FB087040000 first
Please define OWX_28_1FB087040000 first
Please define OWX_28_1FB087040000 first
Please define OWX_28_212772040000 first
Please define OWX_28_212772040000 first
Please define OWX_28_212772040000 first
Please define OWX_28_295FBA030000 first
Please define OWX_28_295FBA030000 first
Please define OWX_28_295FBA030000 first
Please define OWX_28_2E1BBA030000 first
Please define OWX_28_2E1BBA030000 first
Please define OWX_28_2E1BBA030000 first
Please define OWX_28_2F4ABA030000 first
Please define OWX_28_2F4ABA030000 first
Please define OWX_28_2F4ABA030000 first
Please define OWX_28_559E87040000 first
Please define OWX_28_559E87040000 first
Please define OWX_28_559E87040000 first
Please define OWX_28_7556BA030000 first
Please define OWX_28_7556BA030000 first
Please define OWX_28_7556BA030000 first
Please define OWX_28_8B49BA030000 first
Please define OWX_28_8B49BA030000 first
Please define OWX_28_8B49BA030000 first
Please define OWX_28_9848BA030000 first
Please define OWX_28_9848BA030000 first
Please define OWX_28_9848BA030000 first
Please define OWX_28_B449BA030000 first
Please define OWX_28_B449BA030000 first
Please define OWX_28_B449BA030000 first
Please define OWX_28_B930BA030000 first
Please define OWX_28_B930BA030000 first
Please define OWX_28_B930BA030000 first
2013.12.11 12:54:09.486 0: Server started with 6 defined entities (version $Id: fhem.pl 4351 2013-12-09 21:17:25Z rudolfkoenig $, os linux, user fhem, pid 16904)
2013.12.11 12:54:33.704 3: OWTHERM: Device OWX_10_9AEB01020800 defined.
2013.12.11 12:54:33.828 3: OWTHERM: Device OWX_10_8FEF01020800 defined.
2013.12.11 12:54:33.953 3: OWTHERM: Device OWX_28_9848BA030000 defined.
2013.12.11 12:54:34.077 3: OWTHERM: Device OWX_28_B449BA030000 defined.
2013.12.11 12:54:34.201 3: OWTHERM: Device OWX_28_0C2E88040000 defined.
2013.12.11 12:54:34.327 3: OWTHERM: Device OWX_28_161ABA030000 defined.
2013.12.11 12:54:34.452 3: OWTHERM: Device OWX_28_2E1BBA030000 defined.
2013.12.11 12:54:34.577 3: OWTHERM: Device OWX_28_212772040000 defined.
2013.12.11 12:54:34.702 3: OWTHERM: Device OWX_28_295FBA030000 defined.
2013.12.11 12:54:34.827 3: OWTHERM: Device OWX_28_198B72040000 defined.
2013.12.11 12:54:34.953 3: OWTHERM: Device OWX_28_B930BA030000 defined.
2013.12.11 12:54:35.078 3: OWTHERM: Device OWX_28_559E87040000 defined.
2013.12.11 12:54:35.204 3: OWTHERM: Device OWX_28_7556BA030000 defined.
2013.12.11 12:54:35.332 3: OWTHERM: Device OWX_28_8B49BA030000 defined.
2013.12.11 12:54:35.458 3: OWTHERM: Device OWX_28_2F4ABA030000 defined.
2013.12.11 12:54:35.584 3: OWTHERM: Device OWX_28_1FB087040000 defined.
2013.12.11 12:54:35.840 3: OWMULTI: Device OWX_26_930C6A010000 defined.
2013.12.11 12:54:36.027 3: OWID: Device OWX_01_AB6F73140000 defined.
2013.12.11 12:54:36.148 1: OWX: 1-Wire devices found on bus LinkUSBi (OWX_10_9AEB01020800,OWX_10_8FEF01020800,OWX_28_9848BA030000,OWX_28_B449BA030000,OWX_28_0C2E88040000,OWX_28_161ABA030000,OWX_28_2E1BBA030000,OWX_28_212772040000,OWX_28_295FBA030000,OWX_28_198B72040000,OWX_28_B930BA030000,OWX_28_559E87040000,OWX_28_7556BA030000,OWX_28_8B49BA030000,OWX_28_2F4ABA030000,OWX_28_1FB087040000,OWX_26_930C6A010000,OWX_01_AB6F73140000)
2013.12.11 12:58:47.623 0: Server shutdown
2013.12.11 12:58:50.699 1: Including fhem.cfg
2013.12.11 12:58:51.065 3: telnetPort: port 7072 opened
2013.12.11 12:58:51.450 3: WEB: port 8083 opened
2013.12.11 12:58:51.624 2: eventTypes: loaded 76 events from ./log/eventTypes.txt
2013.12.11 12:58:52.022 3: Opening LinkUSBi device /dev/ttyUSB0
2013.12.11 12:58:52.030 3: Setting LinkUSBi baudrate to 9600
2013.12.11 12:58:52.049 3: LinkUSBi device opened
2013.12.11 12:58:52.049 1: OWX: Serial device /dev/ttyUSB0 defined
2013.12.11 12:58:52.204 1: OWX: 1-Wire bus LinkUSBi: interface master DS2480 re-detected
2013.12.11 12:58:52.286 3: OWTHERM: Device OWX_10_9AEB01020800 defined.
2013.12.11 12:58:52.296 3: OWTHERM: Device OWX_10_8FEF01020800 defined.
2013.12.11 12:58:52.307 3: OWTHERM: Device OWX_28_9848BA030000 defined.
2013.12.11 12:58:52.318 3: OWTHERM: Device OWX_28_B449BA030000 defined.
2013.12.11 12:58:52.328 3: OWTHERM: Device OWX_28_0C2E88040000 defined.
2013.12.11 12:58:52.339 3: OWTHERM: Device OWX_28_161ABA030000 defined.
2013.12.11 12:58:52.349 3: OWTHERM: Device OWX_28_2E1BBA030000 defined.
2013.12.11 12:58:52.360 3: OWTHERM: Device OWX_28_212772040000 defined.
2013.12.11 12:58:52.371 3: OWTHERM: Device OWX_28_295FBA030000 defined.
2013.12.11 12:58:52.381 3: OWTHERM: Device OWX_28_198B72040000 defined.
2013.12.11 12:58:52.392 3: OWTHERM: Device OWX_28_B930BA030000 defined.
2013.12.11 12:58:52.403 3: OWTHERM: Device OWX_28_559E87040000 defined.
2013.12.11 12:58:52.414 3: OWTHERM: Device OWX_28_7556BA030000 defined.
2013.12.11 12:58:52.425 3: OWTHERM: Device OWX_28_8B49BA030000 defined.
2013.12.11 12:58:52.436 3: OWTHERM: Device OWX_28_2F4ABA030000 defined.
2013.12.11 12:58:52.447 3: OWTHERM: Device OWX_28_1FB087040000 defined.
2013.12.11 12:58:52.530 3: OWMULTI: Device OWX_26_930C6A010000 defined.
2013.12.11 12:58:52.573 3: OWID: Device OWX_01_AB6F73140000 defined.
2013.12.11 12:58:52.579 1: Including ./log/fhem.save
2013.12.11 12:58:52.646 0: Server started with 24 defined entities (version $Id: fhem.pl 4351 2013-12-09 21:17:25Z rudolfkoenig $, os linux, user fhem, pid 17160)
2013.12.11 12:59:38.089 1: OWX: 1-Wire devices found on bus LinkUSBi (OWX_10_9AEB01020800,OWX_10_8FEF01020800,OWX_28_9848BA030000,OWX_28_B449BA030000,OWX_28_0C2E88040000,OWX_28_161ABA030000,OWX_28_2E1BBA030000,OWX_28_212772040000,OWX_28_295FBA030000,OWX_28_198B72040000,OWX_28_B930BA030000,OWX_28_559E87040000,OWX_28_7556BA030000,OWX_28_8B49BA030000,OWX_28_2F4ABA030000,OWX_28_1FB087040000,OWX_26_930C6A010000,OWX_01_AB6F73140000)
2013.12.11 14:03:03.540 0: Server shutdown
2013.12.11 14:03:06.599 1: Including fhem.cfg
2013.12.11 14:03:06.956 2: Perfmon: ready to watch out for delays greater than one second
2013.12.11 14:03:07.030 3: telnetPort: port 7072 opened
2013.12.11 14:03:07.413 3: WEB: port 8083 opened
2013.12.11 14:03:07.587 2: eventTypes: loaded 77 events from ./log/eventTypes.txt
2013.12.11 14:03:07.932 3: Opening LinkUSBi device /dev/ttyUSB0
2013.12.11 14:03:07.941 3: Setting LinkUSBi baudrate to 9600
2013.12.11 14:03:07.960 3: LinkUSBi device opened
2013.12.11 14:03:07.961 1: OWX: Serial device /dev/ttyUSB0 defined
2013.12.11 14:03:08.115 1: OWX: 1-Wire bus LinkUSBi: interface master DS2480 re-detected
2013.12.11 14:03:08.197 3: OWTHERM: Device OWX_10_9AEB01020800 defined.
2013.12.11 14:03:08.208 3: OWTHERM: Device OWX_10_8FEF01020800 defined.
2013.12.11 14:03:08.219 3: OWTHERM: Device OWX_28_9848BA030000 defined.
2013.12.11 14:03:08.230 3: OWTHERM: Device OWX_28_B449BA030000 defined.
2013.12.11 14:03:08.240 3: OWTHERM: Device OWX_28_0C2E88040000 defined.
2013.12.11 14:03:08.251 3: OWTHERM: Device OWX_28_161ABA030000 defined.
2013.12.11 14:03:08.262 3: OWTHERM: Device OWX_28_2E1BBA030000 defined.
2013.12.11 14:03:08.273 3: OWTHERM: Device OWX_28_212772040000 defined.
2013.12.11 14:03:08.284 3: OWTHERM: Device OWX_28_295FBA030000 defined.
2013.12.11 14:03:08.296 3: OWTHERM: Device OWX_28_198B72040000 defined.
2013.12.11 14:03:08.307 3: OWTHERM: Device OWX_28_B930BA030000 defined.
2013.12.11 14:03:08.318 3: OWTHERM: Device OWX_28_559E87040000 defined.
2013.12.11 14:03:08.329 3: OWTHERM: Device OWX_28_7556BA030000 defined.
2013.12.11 14:03:08.340 3: OWTHERM: Device OWX_28_8B49BA030000 defined.
2013.12.11 14:03:08.351 3: OWTHERM: Device OWX_28_2F4ABA030000 defined.
2013.12.11 14:03:08.363 3: OWTHERM: Device OWX_28_1FB087040000 defined.
2013.12.11 14:03:08.446 3: OWMULTI: Device OWX_26_930C6A010000 defined.
2013.12.11 14:03:08.488 3: OWID: Device OWX_01_AB6F73140000 defined.
2013.12.11 14:03:08.494 1: Including ./log/fhem.save
2013.12.11 14:03:08.564 0: Server started with 24 defined entities (version $Id: fhem.pl 4351 2013-12-09 21:17:25Z rudolfkoenig $, os linux, user fhem, pid 20717)
2013.12.11 14:03:08.590 1: Perfmon: possible freeze starting at 14:03:07, delay is 1.59
2013.12.11 14:03:38.791 1: Perfmon: possible freeze starting at 14:03:18, delay is 20.79
2013.12.11 14:03:54.018 1: OWX: 1-Wire devices found on bus LinkUSBi (OWX_10_9AEB01020800,OWX_10_8FEF01020800,OWX_28_9848BA030000,OWX_28_B449BA030000,OWX_28_0C2E88040000,OWX_28_161ABA030000,OWX_28_2E1BBA030000,OWX_28_212772040000,OWX_28_295FBA030000,OWX_28_198B72040000,OWX_28_B930BA030000,OWX_28_559E87040000,OWX_28_7556BA030000,OWX_28_8B49BA030000,OWX_28_2F4ABA030000,OWX_28_1FB087040000,OWX_26_930C6A010000,OWX_01_AB6F73140000)
2013.12.11 14:03:54.020 1: Perfmon: possible freeze starting at 14:03:39, delay is 15.02
2013.12.11 14:08:19.114 1: Perfmon: possible freeze starting at 14:08:18, delay is 1.113
2013.12.11 14:08:22.461 1: Perfmon: possible freeze starting at 14:08:21, delay is 1.46
2013.12.11 14:08:27.458 1: Perfmon: possible freeze starting at 14:08:26, delay is 1.458
2013.12.11 14:08:29.115 1: Perfmon: possible freeze starting at 14:08:28, delay is 1.115
2013.12.11 14:08:32.114 1: Perfmon: possible freeze starting at 14:08:31, delay is 1.114
2013.12.11 14:08:35.461 1: Perfmon: possible freeze starting at 14:08:34, delay is 1.46
2013.12.11 14:13:24.114 1: Perfmon: possible freeze starting at 14:13:23, delay is 1.114
2013.12.11 14:13:26.345 1: Perfmon: possible freeze starting at 14:13:25, delay is 1.344
2013.12.11 14:13:29.114 1: Perfmon: possible freeze starting at 14:13:28, delay is 1.114
2013.12.11 14:13:32.114 1: Perfmon: possible freeze starting at 14:13:31, delay is 1.113
2013.12.11 14:13:37.114 1: Perfmon: possible freeze starting at 14:13:36, delay is 1.114
2013.12.11 14:13:39.345 1: Perfmon: possible freeze starting at 14:13:38, delay is 1.345
2013.12.11 14:18:19.114 1: Perfmon: possible freeze starting at 14:18:18, delay is 1.114
2013.12.11 14:18:21.365 1: Perfmon: possible freeze starting at 14:18:20, delay is 1.365
2013.12.11 14:18:27.459 1: Perfmon: possible freeze starting at 14:18:26, delay is 1.458
2013.12.11 14:18:32.113 1: Perfmon: possible freeze starting at 14:18:31, delay is 1.113
2013.12.11 14:18:35.464 1: Perfmon: possible freeze starting at 14:18:34, delay is 1.463
2013.12.11 14:18:38.230 1: Perfmon: possible freeze starting at 14:18:37, delay is 1.229
2013.12.11 14:23:20.236 1: Perfmon: possible freeze starting at 14:23:19, delay is 1.236
2013.12.11 14:23:22.489 1: Perfmon: possible freeze starting at 14:23:21, delay is 1.489
2013.12.11 14:23:25.235 1: Perfmon: possible freeze starting at 14:23:24, delay is 1.234
2013.12.11 14:23:29.112 1: Perfmon: possible freeze starting at 14:23:28, delay is 1.112
2013.12.11 14:23:32.112 1: Perfmon: possible freeze starting at 14:23:31, delay is 1.111
2013.12.11 14:23:34.359 1: Perfmon: possible freeze starting at 14:23:33, delay is 1.358
2013.12.11 14:23:37.112 1: Perfmon: possible freeze starting at 14:23:36, delay is 1.112
2013.12.11 14:28:20.236 1: Perfmon: possible freeze starting at 14:28:19, delay is 1.236
2013.12.11 14:28:24.112 1: Perfmon: possible freeze starting at 14:28:23, delay is 1.112
2013.12.11 14:28:26.359 1: Perfmon: possible freeze starting at 14:28:25, delay is 1.359
2013.12.11 14:28:29.113 1: Perfmon: possible freeze starting at 14:28:28, delay is 1.113
2013.12.11 14:28:32.112 1: Perfmon: possible freeze starting at 14:28:31, delay is 1.112
2013.12.11 14:28:35.489 1: Perfmon: possible freeze starting at 14:28:34, delay is 1.488
2013.12.11 14:28:37.112 1: Perfmon: possible freeze starting at 14:28:36, delay is 1.112
2013.12.11 14:33:21.360 1: Perfmon: possible freeze starting at 14:33:20, delay is 1.36
2013.12.11 14:33:25.256 1: Perfmon: possible freeze starting at 14:33:24, delay is 1.256
2013.12.11 14:33:29.113 1: Perfmon: possible freeze starting at 14:33:28, delay is 1.112
2013.12.11 14:33:33.235 1: Perfmon: possible freeze starting at 14:33:32, delay is 1.235
2013.12.11 14:33:37.112 1: Perfmon: possible freeze starting at 14:33:36, delay is 1.112
2013.12.11 14:38:21.359 1: Perfmon: possible freeze starting at 14:38:20, delay is 1.358
2013.12.11 14:38:25.235 1: Perfmon: possible freeze starting at 14:38:24, delay is 1.235
2013.12.11 14:38:29.113 1: Perfmon: possible freeze starting at 14:38:28, delay is 1.112
2013.12.11 14:38:35.482 1: Perfmon: possible freeze starting at 14:38:34, delay is 1.481
2013.12.11 14:38:38.236 1: Perfmon: possible freeze starting at 14:38:37, delay is 1.235
2013.12.11 14:43:19.113 1: Perfmon: possible freeze starting at 14:43:18, delay is 1.112
2013.12.11 14:43:25.235 1: Perfmon: possible freeze starting at 14:43:24, delay is 1.235
2013.12.11 14:43:30.842 1: Perfmon: possible freeze starting at 14:43:29, delay is 1.842
2013.12.11 14:43:32.112 1: Perfmon: possible freeze starting at 14:43:31, delay is 1.112
2013.12.11 14:43:35.483 1: Perfmon: possible freeze starting at 14:43:34, delay is 1.483
2013.12.11 14:43:38.235 1: Perfmon: possible freeze starting at 14:43:37, delay is 1.235
2013.12.11 14:48:21.370 1: Perfmon: possible freeze starting at 14:48:20, delay is 1.369
2013.12.11 14:48:24.112 1: Perfmon: possible freeze starting at 14:48:23, delay is 1.112
2013.12.11 14:48:26.360 1: Perfmon: possible freeze starting at 14:48:25, delay is 1.359
2013.12.11 14:48:29.113 1: Perfmon: possible freeze starting at 14:48:28, delay is 1.113
2013.12.11 14:48:33.236 1: Perfmon: possible freeze starting at 14:48:32, delay is 1.236
2013.12.11 14:48:35.484 1: Perfmon: possible freeze starting at 14:48:34, delay is 1.484
2013.12.11 14:48:37.113 1: Perfmon: possible freeze starting at 14:48:36, delay is 1.112
2013.12.11 14:48:39.361 1: Perfmon: possible freeze starting at 14:48:38, delay is 1.36
2013.12.11 14:53:19.113 1: Perfmon: possible freeze starting at 14:53:18, delay is 1.112
2013.12.11 14:53:21.362 1: Perfmon: possible freeze starting at 14:53:20, delay is 1.361
2013.12.11 14:53:25.236 1: Perfmon: possible freeze starting at 14:53:24, delay is 1.236
2013.12.11 14:53:27.483 1: Perfmon: possible freeze starting at 14:53:26, delay is 1.483
2013.12.11 14:53:32.113 1: Perfmon: possible freeze starting at 14:53:31, delay is 1.112
2013.12.11 14:53:34.360 1: Perfmon: possible freeze starting at 14:53:33, delay is 1.36
2013.12.11 14:53:37.112 1: Perfmon: possible freeze starting at 14:53:36, delay is 1.112
2013.12.11 14:53:39.367 1: Perfmon: possible freeze starting at 14:53:38, delay is 1.367
2013.12.11 14:58:19.121 1: Perfmon: possible freeze starting at 14:58:18, delay is 1.12
2013.12.11 14:58:24.112 1: Perfmon: possible freeze starting at 14:58:23, delay is 1.112
2013.12.11 14:58:29.113 1: Perfmon: possible freeze starting at 14:58:28, delay is 1.113
2013.12.11 14:58:32.112 1: Perfmon: possible freeze starting at 14:58:31, delay is 1.111
2013.12.11 14:58:35.482 1: Perfmon: possible freeze starting at 14:58:34, delay is 1.482
2013.12.11 15:03:19.113 1: Perfmon: possible freeze starting at 15:03:18, delay is 1.113
2013.12.11 15:03:21.360 1: Perfmon: possible freeze starting at 15:03:20, delay is 1.36
2013.12.11 15:03:24.114 1: Perfmon: possible freeze starting at 15:03:23, delay is 1.113
2013.12.11 15:03:32.114 1: Perfmon: possible freeze starting at 15:03:31, delay is 1.113
2013.12.11 15:03:35.484 1: Perfmon: possible freeze starting at 15:03:34, delay is 1.484
2013.12.11 15:03:37.113 1: Perfmon: possible freeze starting at 15:03:36, delay is 1.112
2013.12.11 15:03:39.372 1: Perfmon: possible freeze starting at 15:03:38, delay is 1.372
2013.12.11 15:08:19.114 1: Perfmon: possible freeze starting at 15:08:18, delay is 1.113
2013.12.11 15:08:21.362 1: Perfmon: possible freeze starting at 15:08:20, delay is 1.361
2013.12.11 15:08:27.484 1: Perfmon: possible freeze starting at 15:08:26, delay is 1.483
2013.12.11 15:08:29.113 1: Perfmon: possible freeze starting at 15:08:28, delay is 1.113
2013.12.11 15:08:32.113 1: Perfmon: possible freeze starting at 15:08:31, delay is 1.112
2013.12.11 15:08:37.113 1: Perfmon: possible freeze starting at 15:08:36, delay is 1.113
2013.12.11 15:13:20.236 1: Perfmon: possible freeze starting at 15:13:19, delay is 1.236
2013.12.11 15:13:22.483 1: Perfmon: possible freeze starting at 15:13:21, delay is 1.483
2013.12.11 15:13:24.113 1: Perfmon: possible freeze starting at 15:13:23, delay is 1.112
2013.12.11 15:13:27.483 1: Perfmon: possible freeze starting at 15:13:26, delay is 1.483
2013.12.11 15:13:29.113 1: Perfmon: possible freeze starting at 15:13:28, delay is 1.112
2013.12.11 15:13:32.113 1: Perfmon: possible freeze starting at 15:13:31, delay is 1.112
2013.12.11 15:13:37.112 1: Perfmon: possible freeze starting at 15:13:36, delay is 1.112
2013.12.11 15:18:19.113 1: Perfmon: possible freeze starting at 15:18:18, delay is 1.113
2013.12.11 15:18:24.113 1: Perfmon: possible freeze starting at 15:18:23, delay is 1.112
2013.12.11 15:18:26.360 1: Perfmon: possible freeze starting at 15:18:25, delay is 1.36
2013.12.11 15:18:29.112 1: Perfmon: possible freeze starting at 15:18:28, delay is 1.112
2013.12.11 15:18:35.482 1: Perfmon: possible freeze starting at 15:18:34, delay is 1.482
2013.12.11 15:18:38.236 1: Perfmon: possible freeze starting at 15:18:37, delay is 1.236
2013.12.11 15:23:19.113 1: Perfmon: possible freeze starting at 15:23:18, delay is 1.112
2013.12.11 15:23:22.483 1: Perfmon: possible freeze starting at 15:23:21, delay is 1.483
2013.12.11 15:23:29.112 1: Perfmon: possible freeze starting at 15:23:28, delay is 1.112
2013.12.11 15:23:32.112 1: Perfmon: possible freeze starting at 15:23:31, delay is 1.112
2013.12.11 15:23:37.112 1: Perfmon: possible freeze starting at 15:23:36, delay is 1.112
2013.12.11 15:23:39.360 1: Perfmon: possible freeze starting at 15:23:38, delay is 1.359
2013.12.11 15:28:20.236 1: Perfmon: possible freeze starting at 15:28:19, delay is 1.235
2013.12.11 15:28:26.358 1: Perfmon: possible freeze starting at 15:28:25, delay is 1.357
2013.12.11 15:28:29.113 1: Perfmon: possible freeze starting at 15:28:28, delay is 1.113
2013.12.11 15:28:34.359 1: Perfmon: possible freeze starting at 15:28:33, delay is 1.358
2013.12.11 15:28:37.112 1: Perfmon: possible freeze starting at 15:28:36, delay is 1.112
2013.12.11 15:33:19.113 1: Perfmon: possible freeze starting at 15:33:18, delay is 1.113
2013.12.11 15:33:22.498 1: Perfmon: possible freeze starting at 15:33:21, delay is 1.498
2013.12.11 15:33:25.236 1: Perfmon: possible freeze starting at 15:33:24, delay is 1.236
2013.12.11 15:33:30.845 1: Perfmon: possible freeze starting at 15:33:29, delay is 1.845
2013.12.11 15:33:33.236 1: Perfmon: possible freeze starting at 15:33:32, delay is 1.235
2013.12.11 15:33:37.112 1: Perfmon: possible freeze starting at 15:33:36, delay is 1.112
2013.12.11 15:33:39.359 1: Perfmon: possible freeze starting at 15:33:38, delay is 1.359
2013.12.11 15:38:21.359 1: Perfmon: possible freeze starting at 15:38:20, delay is 1.359
2013.12.11 15:38:25.235 1: Perfmon: possible freeze starting at 15:38:24, delay is 1.235
2013.12.11 15:38:27.483 1: Perfmon: possible freeze starting at 15:38:26, delay is 1.483
2013.12.11 15:38:29.113 1: Perfmon: possible freeze starting at 15:38:28, delay is 1.112
2013.12.11 15:38:32.112 1: Perfmon: possible freeze starting at 15:38:31, delay is 1.112
2013.12.11 15:38:37.113 1: Perfmon: possible freeze starting at 15:38:36, delay is 1.112
2013.12.11 15:38:39.360 1: Perfmon: possible freeze starting at 15:38:38, delay is 1.36
2013.12.11 15:43:19.113 1: Perfmon: possible freeze starting at 15:43:18, delay is 1.113
2013.12.11 15:43:21.360 1: Perfmon: possible freeze starting at 15:43:20, delay is 1.359
2013.12.11 15:43:26.359 1: Perfmon: possible freeze starting at 15:43:25, delay is 1.359
2013.12.11 15:43:29.113 1: Perfmon: possible freeze starting at 15:43:28, delay is 1.112
2013.12.11 15:43:32.112 1: Perfmon: possible freeze starting at 15:43:31, delay is 1.111
2013.12.11 15:43:38.235 1: Perfmon: possible freeze starting at 15:43:37, delay is 1.235
2013.12.11 15:48:20.236 1: Perfmon: possible freeze starting at 15:48:19, delay is 1.236
2013.12.11 15:48:25.236 1: Perfmon: possible freeze starting at 15:48:24, delay is 1.236
2013.12.11 15:48:29.112 1: Perfmon: possible freeze starting at 15:48:28, delay is 1.112
2013.12.11 15:48:32.112 1: Perfmon: possible freeze starting at 15:48:31, delay is 1.112
2013.12.11 15:48:37.113 1: Perfmon: possible freeze starting at 15:48:36, delay is 1.112
2013.12.11 15:48:39.366 1: Perfmon: possible freeze starting at 15:48:38, delay is 1.365
2013.12.11 15:53:22.483 1: Perfmon: possible freeze starting at 15:53:21, delay is 1.482
2013.12.11 15:53:27.482 1: Perfmon: possible freeze starting at 15:53:26, delay is 1.482
2013.12.11 15:53:32.113 1: Perfmon: possible freeze starting at 15:53:31, delay is 1.112
2013.12.11 15:53:34.360 1: Perfmon: possible freeze starting at 15:53:33, delay is 1.359
2013.12.11 15:58:21.359 1: Perfmon: possible freeze starting at 15:58:20, delay is 1.359
2013.12.11 15:58:25.236 1: Perfmon: possible freeze starting at 15:58:24, delay is 1.235
2013.12.11 15:58:29.113 1: Perfmon: possible freeze starting at 15:58:28, delay is 1.112
2013.12.11 15:58:35.481 1: Perfmon: possible freeze starting at 15:58:34, delay is 1.481
2013.12.11 15:58:38.235 1: Perfmon: possible freeze starting at 15:58:37, delay is 1.235
2013.12.11 16:03:20.247 1: Perfmon: possible freeze starting at 16:03:19, delay is 1.247
2013.12.11 16:03:24.113 1: Perfmon: possible freeze starting at 16:03:23, delay is 1.113
2013.12.11 16:03:26.360 1: Perfmon: possible freeze starting at 16:03:25, delay is 1.36
2013.12.11 16:03:34.359 1: Perfmon: possible freeze starting at 16:03:33, delay is 1.358
2013.12.11 16:03:37.112 1: Perfmon: possible freeze starting at 16:03:36, delay is 1.112
2013.12.11 16:08:19.114 1: Perfmon: possible freeze starting at 16:08:18, delay is 1.114
2013.12.11 16:08:21.362 1: Perfmon: possible freeze starting at 16:08:20, delay is 1.361
2013.12.11 16:08:27.481 1: Perfmon: possible freeze starting at 16:08:26, delay is 1.481
2013.12.11 16:08:29.112 1: Perfmon: possible freeze starting at 16:08:28, delay is 1.112
2013.12.11 16:08:32.112 1: Perfmon: possible freeze starting at 16:08:31, delay is 1.112
2013.12.11 16:08:35.482 1: Perfmon: possible freeze starting at 16:08:34, delay is 1.482
2013.12.11 16:08:37.112 1: Perfmon: possible freeze starting at 16:08:36, delay is 1.112
2013.12.11 16:13:19.115 1: Perfmon: possible freeze starting at 16:13:18, delay is 1.114
2013.12.11 16:13:21.362 1: Perfmon: possible freeze starting at 16:13:20, delay is 1.362
2013.12.11 16:13:26.358 1: Perfmon: possible freeze starting at 16:13:25, delay is 1.357
2013.12.11 16:13:29.113 1: Perfmon: possible freeze starting at 16:13:28, delay is 1.113
2013.12.11 16:13:33.235 1: Perfmon: possible freeze starting at 16:13:32, delay is 1.235
2013.12.11 16:18:19.113 1: Perfmon: possible freeze starting at 16:18:18, delay is 1.113
2013.12.11 16:18:25.238 1: Perfmon: possible freeze starting at 16:18:24, delay is 1.237
2013.12.11 16:18:30.846 1: Perfmon: possible freeze starting at 16:18:29, delay is 1.846
2013.12.11 16:18:33.248 1: Perfmon: possible freeze starting at 16:18:32, delay is 1.248
2013.12.11 16:18:35.499 1: Perfmon: possible freeze starting at 16:18:34, delay is 1.498
2013.12.11 16:18:37.113 1: Perfmon: possible freeze starting at 16:18:36, delay is 1.112
2013.12.11 16:18:39.360 1: Perfmon: possible freeze starting at 16:18:38, delay is 1.359


2. Test von 16:22 bis 09:04 folgetag
OWXasync, folgende fhem.cfg
#OWX LinkUSBi (FTDI-Chip)
define LinkUSBi OWX /dev/ttyUSB0
attr LinkUSBi async 1

define OWX_10_9AEB01020800 OWTHERM DS1820 9AEB01020800
attr OWX_10_9AEB01020800 IODev LinkUSBi
attr OWX_10_9AEB01020800 model DS1820
attr OWX_10_9AEB01020800 room OWX

define OWX_10_8FEF01020800 OWTHERM DS1820 8FEF01020800
attr OWX_10_8FEF01020800 IODev LinkUSBi
attr OWX_10_8FEF01020800 model DS1820
attr OWX_10_8FEF01020800 room OWX

define OWX_28_9848BA030000 OWTHERM DS18B20 9848BA030000
attr OWX_28_9848BA030000 IODev LinkUSBi
attr OWX_28_9848BA030000 model DS1822
attr OWX_28_9848BA030000 room OWX

define OWX_28_B449BA030000 OWTHERM DS18B20 B449BA030000
attr OWX_28_B449BA030000 IODev LinkUSBi
attr OWX_28_B449BA030000 model DS1822
attr OWX_28_B449BA030000 room OWX

define OWX_28_0C2E88040000 OWTHERM DS18B20 0C2E88040000
attr OWX_28_0C2E88040000 IODev LinkUSBi
attr OWX_28_0C2E88040000 model DS1822
attr OWX_28_0C2E88040000 room OWX

define OWX_28_161ABA030000 OWTHERM DS18B20 161ABA030000
attr OWX_28_161ABA030000 IODev LinkUSBi
attr OWX_28_161ABA030000 model DS1822
attr OWX_28_161ABA030000 room OWX

define OWX_28_2E1BBA030000 OWTHERM DS18B20 2E1BBA030000
attr OWX_28_2E1BBA030000 IODev LinkUSBi
attr OWX_28_2E1BBA030000 model DS1822
attr OWX_28_2E1BBA030000 room OWX

define OWX_28_212772040000 OWTHERM DS18B20 212772040000
attr OWX_28_212772040000 IODev LinkUSBi
attr OWX_28_212772040000 model DS1822
attr OWX_28_212772040000 room OWX

define OWX_28_295FBA030000 OWTHERM DS18B20 295FBA030000
attr OWX_28_295FBA030000 IODev LinkUSBi
attr OWX_28_295FBA030000 model DS1822
attr OWX_28_295FBA030000 room OWX

define OWX_28_198B72040000 OWTHERM DS18B20 198B72040000
attr OWX_28_198B72040000 IODev LinkUSBi
attr OWX_28_198B72040000 model DS1822
attr OWX_28_198B72040000 room OWX

define OWX_28_B930BA030000 OWTHERM DS18B20 B930BA030000
attr OWX_28_B930BA030000 IODev LinkUSBi
attr OWX_28_B930BA030000 model DS1822
attr OWX_28_B930BA030000 room OWX

define OWX_28_559E87040000 OWTHERM DS18B20 559E87040000
attr OWX_28_559E87040000 IODev LinkUSBi
attr OWX_28_559E87040000 model DS1822
attr OWX_28_559E87040000 room OWX

define OWX_28_7556BA030000 OWTHERM DS18B20 7556BA030000
attr OWX_28_7556BA030000 IODev LinkUSBi
attr OWX_28_7556BA030000 model DS1822
attr OWX_28_7556BA030000 room OWX

define OWX_28_8B49BA030000 OWTHERM DS18B20 8B49BA030000
attr OWX_28_8B49BA030000 IODev LinkUSBi
attr OWX_28_8B49BA030000 model DS1822
attr OWX_28_8B49BA030000 room OWX

define OWX_28_2F4ABA030000 OWTHERM DS18B20 2F4ABA030000
attr OWX_28_2F4ABA030000 IODev LinkUSBi
attr OWX_28_2F4ABA030000 model DS1822
attr OWX_28_2F4ABA030000 room OWX

define OWX_28_1FB087040000 OWTHERM DS18B20 1FB087040000
attr OWX_28_1FB087040000 IODev LinkUSBi
attr OWX_28_1FB087040000 model DS1822
attr OWX_28_1FB087040000 room OWX

define OWX_26_930C6A010000 OWMULTI DS2438 930C6A010000
attr OWX_26_930C6A010000 IODev LinkUSBi
attr OWX_26_930C6A010000 model DS2438
attr OWX_26_930C6A010000 room OWX

define OWX_01_AB6F73140000 OWID DS2401 AB6F73140000
attr OWX_01_AB6F73140000 IODev LinkUSBi
attr OWX_01_AB6F73140000 model DS2401
attr OWX_01_AB6F73140000 room OWX
attr OWX_01_AB6F73140000 stateFormat {ReadingsVal($name,"present",0) ? "present" : "not present"}

Systemload dauerhaft bei ca. 0,37, siehe Anhang,
Logauszug:
2013.12.11 16:24:02.669 1: Including ./log/fhem.save
2013.12.11 16:24:02.750 0: Server started with 24 defined entities (version $Id: fhem.pl 4351 2013-12-09 21:17:25Z rudolfkoenig $, os linux, user fhem, pid 28515)
2013.12.11 16:24:03.001 3: Opening LinkUSBi device /dev/ttyUSB0
2013.12.11 16:24:03.020 3: Setting LinkUSBi baudrate to 9600
2013.12.11 16:24:03.046 3: LinkUSBi device opened
2013.12.11 16:24:03.047 1: OWX_SER: Serial device /dev/ttyUSB0@9600 defined
2013.12.11 16:24:03.207 1: OWX_SER::Detect 1-Wire bus LinkUSBi: interface master DS2480 re-detected
2013.12.11 16:24:19.401 1: Perfmon: possible freeze starting at 16:24:14, delay is 5.4
2013.12.11 16:29:07.002 1:  Alarms = 28.212772040000.07 28.1FB087040000.EF
2013.12.11 16:34:07.002 1:  Alarms = 28.212772040000.07 28.1FB087040000.EF
2013.12.11 16:39:07.002 1:  Alarms = 28.212772040000.07 28.1FB087040000.EF
2013.12.11 16:44:07.002 1:  Alarms = 28.212772040000.07 28.1FB087040000.EF
2013.12.11 16:49:07.002 1:  Alarms = 28.212772040000.07 28.1FB087040000.EF
2013.12.11 16:54:07.002 1:  Alarms = 28.212772040000.07
2013.12.11 16:59:07.002 1:  Alarms = 28.212772040000.07
2013.12.11 17:04:07.002 1:  Alarms = 28.212772040000.07
2013.12.11 17:09:07.002 1:  Alarms = 28.212772040000.07
2013.12.11 17:14:07.002 1:  Alarms = 28.212772040000.07
2013.12.11 17:19:07.002 1:  Alarms = 28.212772040000.07
2013.12.11 17:24:07.002 1:  Alarms = 28.212772040000.07
2013.12.11 17:29:07.002 1:  Alarms = 28.212772040000.07
2013.12.11 17:34:07.002 1:  Alarms = 28.212772040000.07
2013.12.11 17:39:07.002 1:  Alarms = 28.212772040000.07
2013.12.11 17:44:07.002 1:  Alarms = 28.212772040000.07
2013.12.11 17:49:07.002 1:  Alarms = 28.212772040000.07
2013.12.11 17:54:07.002 1:  Alarms = 28.212772040000.07
2013.12.11 17:59:07.002 1:  Alarms = 28.212772040000.07
2013.12.11 18:04:07.002 1:  Alarms = 28.212772040000.07
2013.12.11 18:09:07.002 1:  Alarms = 28.212772040000.07
2013.12.11 18:14:07.002 1:  Alarms = 28.212772040000.07
2013.12.11 18:19:07.002 1:  Alarms = 28.212772040000.07
2013.12.11 18:24:07.002 1:  Alarms = 28.212772040000.07
2013.12.11 18:29:07.002 1:  Alarms = 28.212772040000.07
2013.12.11 18:34:07.002 1:  Alarms = 28.212772040000.07
2013.12.11 18:39:07.002 1:  Alarms = 28.212772040000.07
2013.12.11 18:44:07.002 1:  Alarms = 28.212772040000.07
2013.12.11 18:49:07.002 1:  Alarms = 28.212772040000.07
2013.12.11 18:54:07.003 1:  Alarms = 28.212772040000.07
2013.12.11 18:59:07.002 1:  Alarms = 28.212772040000.07
2013.12.11 19:04:07.002 1:  Alarms = 28.212772040000.07
2013.12.11 19:09:07.002 1:  Alarms = 28.212772040000.07
2013.12.11 19:14:07.002 1:  Alarms = 28.212772040000.07
2013.12.11 19:19:07.002 1:  Alarms = 28.212772040000.07
2013.12.11 19:24:07.002 1:  Alarms = 28.212772040000.07
2013.12.11 19:29:07.002 1:  Alarms = 28.212772040000.07
2013.12.11 19:34:07.002 1:  Alarms = 28.212772040000.07
2013.12.11 19:39:07.002 1:  Alarms = 28.212772040000.07
2013.12.11 19:44:07.002 1:  Alarms = 28.212772040000.07
2013.12.11 19:49:07.002 1:  Alarms = 28.212772040000.07
2013.12.11 19:54:07.002 1:  Alarms = 28.212772040000.07


Die Systemfreezes sind weg, OWXasync läft stabil, aber um welchen Preis?
ca 7% Last allerdings mit Freezes auf 37% Last ohne Freezes.
Wenn weitere Module auf dem Pi dazukommen, dann kommt der Kleine schnell an seine Grenze.

Ich hoffe diese erste kurzanalyse hilft Dir weiter.

Gruß Joachim
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 12 Dezember 2013, 12:55:13
danke für den eingehenden Test.
passe mal bitte testweise in der Datei 11_OWX_Executor.pm (https://github.com/ntruchsess/fhem-mirror/blob/owx_async/fhem/FHEM/11_OWX_Executor.pm#L201), Zeile 201 mal das usleep-delay an.
z.B. von 1000 auf 10000.

- Norbert
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: Joachim am 12 Dezember 2013, 15:09:26
Moin, Norbert,

habe heute morgen mal die Konfig auf dokick geändert
#OWX LinkUSBi (FTDI-Chip)
define LinkUSBi OWX /dev/ttyUSB0
attr LinkUSBi async 1
attr LinkUSBi dokick 1

define OWX_10_9AEB01020800 OWTHERM DS1820 9AEB01020800
attr OWX_10_9AEB01020800 IODev LinkUSBi
attr OWX_10_9AEB01020800 model DS1820
attr OWX_10_9AEB01020800 room OWX
attr OWX_10_9AEB01020800 tempConv onkick

define OWX_10_8FEF01020800 OWTHERM DS1820 8FEF01020800
attr OWX_10_8FEF01020800 IODev LinkUSBi
attr OWX_10_8FEF01020800 model DS1820
attr OWX_10_8FEF01020800 room OWX
attr OWX_10_8FEF01020800 tempConv onkick

define OWX_28_9848BA030000 OWTHERM DS18B20 9848BA030000
attr OWX_28_9848BA030000 IODev LinkUSBi
attr OWX_28_9848BA030000 model DS1822
attr OWX_28_9848BA030000 room OWX
attr OWX_28_9848BA030000 tempConv onkick

define OWX_28_B449BA030000 OWTHERM DS18B20 B449BA030000
attr OWX_28_B449BA030000 IODev LinkUSBi
attr OWX_28_B449BA030000 model DS1822
attr OWX_28_B449BA030000 room OWX
attr OWX_28_B449BA030000 tempConv onkick

define OWX_28_0C2E88040000 OWTHERM DS18B20 0C2E88040000
attr OWX_28_0C2E88040000 IODev LinkUSBi
attr OWX_28_0C2E88040000 model DS1822
attr OWX_28_0C2E88040000 room OWX
attr OWX_28_0C2E88040000 tempConv onkick

define OWX_28_161ABA030000 OWTHERM DS18B20 161ABA030000
attr OWX_28_161ABA030000 IODev LinkUSBi
attr OWX_28_161ABA030000 model DS1822
attr OWX_28_161ABA030000 room OWX
attr OWX_28_161ABA030000 tempConv onkick

define OWX_28_2E1BBA030000 OWTHERM DS18B20 2E1BBA030000
attr OWX_28_2E1BBA030000 IODev LinkUSBi
attr OWX_28_2E1BBA030000 model DS1822
attr OWX_28_2E1BBA030000 room OWX
attr OWX_28_2E1BBA030000 tempConv onkick

define OWX_28_212772040000 OWTHERM DS18B20 212772040000
attr OWX_28_212772040000 IODev LinkUSBi
attr OWX_28_212772040000 model DS1822
attr OWX_28_212772040000 room OWX
attr OWX_28_212772040000 tempConv onkick

define OWX_28_295FBA030000 OWTHERM DS18B20 295FBA030000
attr OWX_28_295FBA030000 IODev LinkUSBi
attr OWX_28_295FBA030000 model DS1822
attr OWX_28_295FBA030000 room OWX
attr OWX_28_295FBA030000 tempConv onkick

define OWX_28_198B72040000 OWTHERM DS18B20 198B72040000
attr OWX_28_198B72040000 IODev LinkUSBi
attr OWX_28_198B72040000 model DS1822
attr OWX_28_198B72040000 room OWX
attr OWX_28_198B72040000 tempConv onkick

define OWX_28_B930BA030000 OWTHERM DS18B20 B930BA030000
attr OWX_28_B930BA030000 IODev LinkUSBi
attr OWX_28_B930BA030000 model DS1822
attr OWX_28_B930BA030000 room OWX
attr OWX_28_B930BA030000 tempConv onkick

define OWX_28_559E87040000 OWTHERM DS18B20 559E87040000
attr OWX_28_559E87040000 IODev LinkUSBi
attr OWX_28_559E87040000 model DS1822
attr OWX_28_559E87040000 room OWX
attr OWX_28_559E87040000 tempConv onkick

define OWX_28_7556BA030000 OWTHERM DS18B20 7556BA030000
attr OWX_28_7556BA030000 IODev LinkUSBi
attr OWX_28_7556BA030000 model DS1822
attr OWX_28_7556BA030000 room OWX
attr OWX_28_7556BA030000 tempConv onkick

define OWX_28_8B49BA030000 OWTHERM DS18B20 8B49BA030000
attr OWX_28_8B49BA030000 IODev LinkUSBi
attr OWX_28_8B49BA030000 model DS1822
attr OWX_28_8B49BA030000 room OWX
attr OWX_28_8B49BA030000 tempConv onkick

define OWX_28_2F4ABA030000 OWTHERM DS18B20 2F4ABA030000
attr OWX_28_2F4ABA030000 IODev LinkUSBi
attr OWX_28_2F4ABA030000 model DS1822
attr OWX_28_2F4ABA030000 room OWX
attr OWX_28_2F4ABA030000 tempConv onkick

define OWX_28_1FB087040000 OWTHERM DS18B20 1FB087040000
attr OWX_28_1FB087040000 IODev LinkUSBi
attr OWX_28_1FB087040000 model DS1822
attr OWX_28_1FB087040000 room OWX
attr OWX_28_1FB087040000 tempConv onkick

define OWX_26_930C6A010000 OWMULTI DS2438 930C6A010000
attr OWX_26_930C6A010000 IODev LinkUSBi
attr OWX_26_930C6A010000 model DS2438
attr OWX_26_930C6A010000 room OWX

define OWX_01_AB6F73140000 OWID DS2401 AB6F73140000
attr OWX_01_AB6F73140000 IODev LinkUSBi
attr OWX_01_AB6F73140000 model DS2401
attr OWX_01_AB6F73140000 room OWX
attr OWX_01_AB6F73140000 stateFormat {ReadingsVal($name,"present",0) ? "present" : "not present"}

un seitdem wieder freezes:
2013.12.12 09:24:42.963 1: Including ./log/fhem.save
2013.12.12 09:24:43.056 0: Server started with 24 defined entities (version $Id: fhem.pl 4351 2013-12-09 21:17:25Z rudolfkoenig $, os linux, user pi, pid 18018)
2013.12.12 09:24:43.058 1: Perfmon: possible freeze starting at 09:24:42, delay is 1.057
2013.12.12 09:24:44.002 3: Opening LinkUSBi device /dev/ttyUSB0
2013.12.12 09:24:44.013 3: Setting LinkUSBi baudrate to 9600
2013.12.12 09:24:44.039 3: LinkUSBi device opened
2013.12.12 09:24:44.040 1: OWX_SER: Serial device /dev/ttyUSB0@9600 defined
2013.12.12 09:24:44.200 1: OWX_SER::Detect 1-Wire bus LinkUSBi: interface master DS2480 re-detected
2013.12.12 09:24:59.922 1: Perfmon: possible freeze starting at 09:24:55, delay is 4.921
2013.12.12 09:29:47.108 1:  Alarms = 28.212772040000.07
2013.12.12 09:34:47.057 1:  Alarms = 28.212772040000.07
2013.12.12 09:39:47.106 1:  Alarms = 28.212772040000.07
2013.12.12 09:44:47.106 1:  Alarms = 28.212772040000.07
2013.12.12 09:49:47.107 1:  Alarms = 28.212772040000.07
2013.12.12 09:54:47.107 1:  Alarms = 28.212772040000.07
2013.12.12 09:59:47.108 1:  Alarms = 28.212772040000.07
2013.12.12 10:04:47.110 1:  Alarms = 28.212772040000.07
2013.12.12 10:09:47.106 1:  Alarms = 28.212772040000.07
2013.12.12 10:14:47.106 1:  Alarms = 28.212772040000.07
2013.12.12 10:19:47.107 1:  Alarms = 28.212772040000.07
2013.12.12 10:24:47.106 1:  Alarms = 28.212772040000.07
2013.12.12 10:29:47.106 1:  Alarms = 28.212772040000.07
2013.12.12 10:34:47.106 1:  Alarms = 28.212772040000.07
2013.12.12 10:39:47.158 1:  Alarms = 28.212772040000.07
2013.12.12 10:44:47.156 1:  Alarms = 28.212772040000.07
2013.12.12 10:49:47.157 1:  Alarms = 28.212772040000.07
2013.12.12 10:54:47.156 1:  Alarms = 28.212772040000.07
2013.12.12 10:59:47.157 1:  Alarms = 28.212772040000.07
2013.12.12 11:04:47.157 1:  Alarms = 28.212772040000.07
2013.12.12 11:09:47.156 1:  Alarms = 28.212772040000.07
2013.12.12 11:14:47.155 1:  Alarms = 28.212772040000.07
2013.12.12 11:19:47.158 1:  Alarms = 28.212772040000.07
2013.12.12 11:24:47.208 1:  Alarms = 28.212772040000.07
2013.12.12 11:29:47.157 1:  Alarms = 28.212772040000.07
2013.12.12 11:34:47.156 1:  Alarms = 28.212772040000.07
2013.12.12 11:39:47.157 1:  Alarms = 28.212772040000.07
2013.12.12 11:44:47.162 1:  Alarms = 28.212772040000.07
2013.12.12 11:49:47.208 1:  Alarms = 28.212772040000.07
2013.12.12 11:54:47.163 1:  Alarms = 28.212772040000.07
2013.12.12 11:59:47.211 1:  Alarms = 28.212772040000.07
2013.12.12 11:59:48.019 1: Perfmon: possible freeze starting at 11:59:47, delay is 1.018
2013.12.12 12:04:47.208 1:  Alarms = 28.212772040000.07
2013.12.12 12:04:48.014 1: Perfmon: possible freeze starting at 12:04:47, delay is 1.013
2013.12.12 12:09:47.163 1:  Alarms = 28.212772040000.07
2013.12.12 12:09:48.026 1: Perfmon: possible freeze starting at 12:09:47, delay is 1.025
2013.12.12 12:14:47.208 1:  Alarms = 28.212772040000.07
2013.12.12 12:14:48.029 1: Perfmon: possible freeze starting at 12:14:47, delay is 1.028
2013.12.12 12:19:47.208 1:  Alarms = 28.212772040000.07
2013.12.12 12:19:48.013 1: Perfmon: possible freeze starting at 12:19:47, delay is 1.012
2013.12.12 12:24:47.208 1:  Alarms = 28.212772040000.07
2013.12.12 12:29:47.208 1:  Alarms = 28.212772040000.07
2013.12.12 12:29:48.013 1: Perfmon: possible freeze starting at 12:29:47, delay is 1.012
2013.12.12 12:34:47.208 1:  Alarms = 28.212772040000.07
2013.12.12 12:39:47.208 1:  Alarms = 28.212772040000.07
2013.12.12 12:44:47.208 1:  Alarms = 28.212772040000.07
2013.12.12 12:49:47.208 1:  Alarms = 28.212772040000.07
2013.12.12 12:49:48.018 1: Perfmon: possible freeze starting at 12:49:47, delay is 1.018
2013.12.12 12:54:47.208 1:  Alarms = 28.212772040000.07
2013.12.12 12:59:47.209 1:  Alarms = 28.212772040000.07
2013.12.12 13:04:47.259 1:  Alarms = 28.212772040000.07
2013.12.12 13:09:47.259 1:  Alarms = 28.212772040000.07
2013.12.12 13:14:47.258 1:  Alarms = 28.212772040000.07
2013.12.12 13:19:47.262 1:  Alarms = 28.212772040000.07
2013.12.12 13:24:47.258 1:  Alarms = 28.212772040000.07
2013.12.12 13:29:47.259 1:  Alarms = 28.212772040000.07
2013.12.12 13:34:47.258 1:  Alarms = 28.212772040000.07
2013.12.12 13:34:48.064 1: Perfmon: possible freeze starting at 13:34:47, delay is 1.063
2013.12.12 13:39:47.259 1:  Alarms = 28.212772040000.07
2013.12.12 13:44:47.259 1:  Alarms = 28.212772040000.07
2013.12.12 13:49:47.258 1:  Alarms = 28.212772040000.07
2013.12.12 13:54:47.258 1:  Alarms = 28.212772040000.07
2013.12.12 13:54:48.062 1: Perfmon: possible freeze starting at 13:54:47, delay is 1.061
2013.12.12 13:59:47.258 1:  Alarms = 28.212772040000.07
2013.12.12 13:59:48.063 1: Perfmon: possible freeze starting at 13:59:47, delay is 1.062
2013.12.12 14:04:47.260 1:  Alarms = 28.212772040000.07
2013.12.12 14:09:47.259 1:  Alarms = 28.212772040000.07
2013.12.12 14:14:47.259 1:  Alarms = 28.212772040000.07
2013.12.12 14:14:48.063 1: Perfmon: possible freeze starting at 14:14:47, delay is 1.062
2013.12.12 14:19:47.259 1:  Alarms = 28.212772040000.07
2013.12.12 14:24:47.314 1:  Alarms = 28.212772040000.07
2013.12.12 14:29:47.308 1:  Alarms = 28.212772040000.07
2013.12.12 14:29:48.114 1: Perfmon: possible freeze starting at 14:29:47, delay is 1.113
2013.12.12 14:34:47.308 1:  Alarms = 28.212772040000.07
2013.12.12 14:34:48.115 1: Perfmon: possible freeze starting at 14:34:47, delay is 1.114

Systemlast hat sich nicht verändert.

Neuert Test:
wie vorgeschlagen
Zitatpasse mal bitte testweise in der Datei 11_OWX_Executor.pm, Zeile 201 mal das usleep-delay an.
10000 eingestellt, dokick und onkick in der fhem.cfg entfernt, also fhem.cfg wie 2. Test.
Sieht auf den ersten Blick gut aus:
Loads: 0.01 [1min] - 0.08 [5min] - 0.20 [15min]
CPU frequency: 700MHz Voltage: 1.20V
Scaling governor: ondemand

Heute abend gibts ein Langzeitwert.

Was mir noch aufgehallen ist:
FHEM stürzt ab, wenn die fhem.cfg im Web-Interface gespeichert wird, bzw. bei einem shutdown restart im WebIF.

Gruß Joachim
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: Joachim am 12 Dezember 2013, 16:01:50
Hier noch einmal ein Bild

Gruß Joachim
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 12 Dezember 2013, 16:35:45
der rechte Rand im Bild ist mit 10000ms u_sleep?

Abstürze beim restart des Asynchronen Threads kriege ich auch, bei mir steigt dabei perl so richtig hart mit einem segmentation-fault aus wenn der Thread beendet und irgendwas beim Speicheraufräumen schiefgeht. Ist das bei Dir auch so, oder liegt das an meiner perl-version?

Ich hab deshalb neulich angefangen so eine Art mini-framework für Asynchrone Devices auf Fork-basis zu schreiben (AsyncDevice.pm (https://github.com/ntruchsess/fhem-mirror/blob/async_device/fhem/FHEM/AsyncDevice.pm)). Beim Forken gibt's kein shared-memory, das sollte in der Beziehung robuster sein. AsyncDevice.pm ist aber noch nicht stabil, da brauch ich mal wieder ein paar ruhige Stunden ;-)

Der prinzipielle Aufbau des Asynchronen OWX würde sich damit nicht ändern, deshalb sind Deine Tests für mich auch mit der aktuellen Version recht wertvoll!

- Norbert




Titel: Antw:OWX asynchron überarbeitet
Beitrag von: Joachim am 12 Dezember 2013, 17:07:04
Moin,
Zitatder rechte Rand im Bild ist mit 10000ms u_sleep?
Ja, usleep(10000); also 10 000 Mikrosekunden oder 10 Millisekunden
Verständnissfrage dazu: Verstehe ich diese Zeile richtig, dass der ausgelagerte Prozess (fork? tread?) für diese Zeit schläft, wenn für ihn keine Arbeit anliegt? Der Elternprozess aber ungehindert weiterläuft?
Erwarten mich Probleme, wenn ich auf 100 Millisekunden hochgehe? Also
usleep(100000);

ZitatAbstürze beim restart des Asynchronen Threads kriege ich auch, bei mir steigt dabei perl so richtig hart mit einem segmentation-fault aus wenn der Thread beendet und irgendwas beim Speicheraufräumen schiefgeht. Ist das bei Dir auch so, oder liegt das an meiner perl-version?
Es erfolgen zumindest keine Logeinträge, alles andere noch nicht getestet/gesucht.
Das wollte ich erst dann machen, wenn die freezes im laufenden Programm weg sind, und die Systemlast im akzeptablen Bereich liegt.

Gruß Joachim
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 12 Dezember 2013, 17:39:00
ja, das verstehst Du richtig, der Kindthread schläft für diese Zeit bis er das nächste mal nachschaut, ob es was zu tun gibt - der Elternthread (das eigentliche FHEM) läuft ungehindert weiter. Im Prinzip könnte man auch blockiernd auf Items in der Queue warten - allerdings habe ich die Möglichkeit eingebaut, dass items mit einem Delay verzögert ausgeführt werden (damit startet FHEM mit einem Item die Temperaturwandlung und mit einem zweiten - per Delay getrennt - das eigentliche Auslesen, wobei das Schedulen dieses 2. Items komplett in Kindthread erfolgt. An der Stelle könnte ich das noch verbessern und die usleep-Zeit dynamisch an die aktuelle Delay-zeit anpassen oder das ganze auf 2 Threads verteilen - einer der einfach nur auf die Queue reagiert, einer, der die zeitverzögerten Items einsteuert. Wobei ich nicht so recht weiß, ob es sich der Aufwand tatsächlich lohnt.

wirkliche Probleme wird es nicht machen, wenn man da auf 100ms hochgeht. Das wäre dann die maximale (zusätzliche) Verzögerung im FHEM bei denen OWX
synchron auf Antwort des asynchronen Threads warten muss (wenn man z.B. im WebUI Werte per 'get' abfragt). Zusätzlich kann sich die Verzögerung zwischen Trigger der Temperaturmessung und Eintreffen des eigentlichen Ergebnisses um bis zu 100ms verlängern (was im FHEM-Elternprozess beim automatischen Abfragen der DS18B20 nicht wirklich stören sollte, weil das ja im asynchronen Thread passiert, während der FHEM-hauptthread andere Dinge tun kann).
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: Joachim am 12 Dezember 2013, 22:21:20
so, OWXasync bleibt jetzt mit der Einstellung usleep(10000); seit Stunden bei einem Load von ca. 0,1. Es sind auch keine feezes aufgetreten. Damit kann ich erst einmal leben.

Aber mal eine generelle Frage, machen wir uns das Leben mit dem Forken nicht unnötig schwer?
Das 1-Wire Timing wird doch beim DS2480B und DS9097U im Chip gemacht, und es erfolgt danach eine einfache Serielle Kommunikation
Mal aus Sicht von FHEM gesehen:

Sending out        0xe3 0xc5    # Umschalten in Komandomodus
Receiving in       0xdd         # Rückmeldung vom DS2480B
Sending out        0xe1         # Umschalten in den Datenmodus
Sending out        0x55 0x28 0x5b 0x82 0x44 0x05 0x00 0x00 0x5b 0xbe 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff  #Sensor direkt ansprechen
Receiving in       0x55 0x28 0x5b 0x82 0x44 0x05 0x00 0x00 0x5b 0xbe 0x66 0x03 0x4b 0x46 0x5f 0xff 0x0a 0x10 0x27  #Antwort von Sensor

Würde es nicht reichen, aktiv nur auszusenden, und der globalen FHEM-Schleife den Empfang zu übelassen, und dann OWX_Read die Daten zu übergeben

sub OWX_Read($)
{
my ($hash) = @_;
my $name = $hash->{NAME};
my ( $data, $crc );
my $buf = DevIo_SimpleRead($hash);
my $tn  = TimeNow();
my ( $key, $val ) = ( "key", "val" );
###### Daten der seriellen Schnittstelle holen, in RAW umwandeln, und an $buf1 anhaengen
return "" if ( !defined($buf) );
$buf = unpack( 'H*', $buf );
$buf1 .= $buf;
#--> dann weitere Aufbereitung

hätte den Vorteil, das das Forken entfällt.
Oder Denke ich hier zu naiv?

Gruß Joachim
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 12 Dezember 2013, 23:28:49
Habe ich auch schon darüber nachgedacht. Wenn man es irgendwie hinkriegt die asynchron gelesenen Daten dem zugehörigen Request (bzw. dem Device) eindeutig zuzuordnen, dann wäre das deutlich eleganter. Jedenfalls bei einem aktiven DS2480-interface. Bei einem passiven Seriellen interface geht das nicht.
Der schreibende Zugriff muss dafür gegenüber dem Lesen dahingehend synchronisiert sein, dass kein OWX-device auf die Schnittstelle schreiben kann solange eine ausstehende Anwort nicht sicher vollständig empfangen ist um die Verarbeitung des aktuellen Kommandos nicht zu unterbrechen. Dabei muss es ausreichend fehlertollerant sein und damit klarkommen, dass ggf. mehr oder weniger Bytes als angefordert ankommen.
Naiv ist das nicht, aber auch nicht trivial.
Beim Arduino als Busmaster läuft das so - da wird die Trennung und eindeutige Zuordnung der Nachrichten aber vom Firmata-protokoll selbst unterstützt.

- Norbert
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: Joachim am 13 Dezember 2013, 00:24:37
Beim Schreiben in 11_OWX_SER (sub Query_2480) Flag setzen (--> in Komandomodus geschaltet), beim Lesen Flag überprüfen.

Aber das asyncrone Modul läuft ja, also ersteinmal die aktuellen Kleinigkeiten beseitigen.
Ich habe jetzt nocheinmal das usleep(50000); auf 50 Millisekunden gesetzt.
Mal schauen, was heute Nacht passiert.
Dabei ist mir aufgefallen, dass FHEM ein save config und auch mehrere shutdown restarts ohne Absturz überstanden hat.
Wie kannich Dir beim Testen noch helfen?

Gruß Joachim
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 13 Dezember 2013, 08:50:50
ein Flag allein wird nicht reichen, sonst blockiert man andere OWX-Devices bis die jeweilige Antwort da ist (bzw. nach einem Timeout als unvollständig verworfen werden kann), man müsste zusätzlich noch die zu Schreibenden kommandos queuen und asynchron zum Aufruf rausschreiben, wenn das jeweilige vorherige Kommando abgearbeitet ist. (das kann die aktuelle Implementierung im Prinzip schon alles, man müsste es nur geeignet anders 'verdrahten'. Na mal schauen wann ich damit mal praktisch rumspiele (geistert bei mir im Kopf schon seit längerem rum, bin mit der threadding-implementierung auch nicht so ganz glücklich).

Wie Du mir sonst noch helfen kannst? Einen CUNO hast Du nicht zufällig? Der würde zwar nicht asynchron laufen, ich habe aber keinen und weiß daher nicht, ob der mit den ganzen Änderungen jetzt überhaupt noch funktioniert.

Und falls Du noch mehr 1-Wire devices besitzt, dann häng die doch alle mal auf den Bus.

- Norbert
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: Joachim am 13 Dezember 2013, 09:10:16
Moin Norbert,

COC/CUL/CUNO sind nicht vorhanden.
Was allerdings vorhanden ist, ist ein Rs-Pi ds2482-800 9 Kanal 1-Wire Board basieren auf einem DS2482-100 und einem DS2482-800
angeschlossen über i2c
http://www.pridopia.co.uk/pi-2482-800.html
Wenn Du mir sagst, wie ich den mit OWX ins Spiel bekomme, lasse ich den auch laufen.
Bei den 1-Wire Devices kann ich noch diverse DS18B20 und DS2438 auf den Bus bringen.

Gruß Joachim
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 13 Dezember 2013, 11:03:10
i2c geht mit OWX nur über OWServer und owfs, das macht (aus OWX-Sicht) keinen Unterschied, welcher Busmaster vom owfs letztendlich benutzt wird - d.h. da sollte das gleiche rauskommen wie bei meinen Tests mit DS2480 über owfs->OWServer->OWX am Rs-Pi und da hat's funktioniert. Wobei der Zugriff über OWServer im OWX weiterhin synchron läuft.

Wg. der Abwicklung der Lesevorgänge über die FHEM-mainloop: da mache ich mir grade Gedanken, wie (bzw. ob) die Suche nach Devices da sinnvoll abbildbar ist.

Gruß,

Norbert
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: Joachim am 13 Dezember 2013, 17:25:15
Moin Norbert,

nur weil ich es gerade sehe,
Beim Speichern der fhem.cfg nach dem Bearbeiten steigt FHEM mit folgender Fehlermeldung aus:
*** glibc detected *** /usr/bin/perl: corrupted double-linked list: 0x01d62d08 ***

Gruß Joachim
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 13 Dezember 2013, 18:08:10
genau so einen crash kriege ich auch. Das passiert regelmäßig, wenn sich der Kind-thread beendet, das ist ein bug im Perl selbst - ich weiß nur nicht, was den triggert. Den Kind thread beende ich bei Konfigurationsänderungen um einfach mit neuer Konfig durchzustarten.
Ein Grund mehr entweder richtig zu forken oder ohne parallelen Thread/prozess auszukommen.

Gruß,

Norbert
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: Joachim am 13 Dezember 2013, 18:30:51
Moin Norbert,

Zitat
Und falls Du noch mehr 1-Wire devices besitzt, dann häng die doch alle mal auf den Bus.

OWX: 1-Wire devices found on bus LinkUSBi
10.9AEB01020800      DS18S20/DS1920 TS_SZ
10.8FEF01020800      DS18S20/DS1920 TS_Kue
28.9848BA030000      DS18B20        TS_WZ
28.B449BA030000      DS18B20        TS_WHR960_Sole_in
28.0C2E88040000      DS18B20        TS_WHR960_Luft_in
28.161ABA030000      DS18B20        TS_KG_Verteilung
28.2E1BBA030000      DS18B20        TS_EG_Flur
28.7E43BA030000      DS18B20        FS_TS_Feuchte2
28.212772040000      DS18B20        TS_Gefriertschrank
28.A1E265040000      DS18B20        FS_TS_Feuchte4
28.295FBA030000      DS18B20        TS_GaesteWC
28.198B72040000      DS18B20        TS_Kuehlschrank
28.B930BA030000      DS18B20        TS_WHR960_Sole_out
28.559E87040000      DS18B20        TS_KG_gross
28.7556BA030000      DS18B20        TS_Bad
28.ED3788040000      DS18B20        TS_Test1
28.8B49BA030000      DS18B20        TS_Bue
28.2F4ABA030000      DS18B20        TS_GZ
28.1FB087040000      DS18B20        TS_Bue_Zuluft
26.680C6A010000      DS2438         FS_FS_Feuchte4
26.8E0C6A010000      DS2438         FS_FS_Feuchte2
26.930C6A010000      DS2438         FS_Bue_Zuluft
01.AB6F73140000      DS2401/DS1990A ID_LinkUSBi

mehr ist nicht zu wollen, danach wird der Bus instabil. (Die Verkabelung ist allerdings auch sternförmig mit ca. 50m länge, längster Strang ca.15m).
Habe jetzt mal alles auf 30 Sekunden Abfrageintervall gesetzt, mit usleep(50000); mal abwarten, wie das läuft.
Wenn Du mir noch verraten könnterst, wie ich den Alarm bei meinem Gefrierschrank wegbekomme, wäre das super.
2013.12.13 18:27:54 1:  Alarms = 28.212772040000.07

Gruß Joachim
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: Joachim am 15 Dezember 2013, 01:48:34
Moin Norbert,
Hier nocheinmal einige Rückmeldungen:

Die nervige Alarmmeldung habe ich jetzt ersteinmal mit Ändern des Loglevels beseitigt.
Der Stresstest ist sauber durchgelaufen, da wäre sogar noch Platz nach unten gewesen, keine freezes mehr.
Mit usleep(50000); bisher kein beobachtetes Abstürzen von FHEM beim shutdown restart, leider immer noch Abstürze beim save config.
Für eine Freigabe des Moduls ist es noch zu früh (FHEM-Absturz beim save config).
Ich werde jetzt ersteinmal mein FHEM wieder mit allen anderen Sensoren/Aktoren/at's usw. ausstatten, und das Langzeiterhalten beobachten.
Wenn dabei Auffälligkeiten auftreten melde ich mich wieder.

Gruß Joachim
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: Prof. Dr. Peter Henning am 16 Dezember 2013, 20:48:07
Hallo,

Heute habe ich ===> endlich <=== mal Zeit zum testengehabt - und prompt fällt FHEM auf die Nase. Jedes OW-Modul wird deaktiviert mit Fehlermeldungen à la

Unrecognized character \xC2; marked by <-- HERE after ing_async <-- HERE near column 67 at /usr/share/fhem/FHEM/21_OWAD.pm line 9, <> line 105.

2013.12.16 20:39:04 0: Unrecognized character \xC2; marked by <-- HERE after ing_async <-- HERE near column 67 at /usr/share/fhem/FHEM...

LG

pah
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 16 Dezember 2013, 22:30:40
äh, wie hast Du die Module denn eingespielt? \0xC2 deutet darauf hin, dass bei Dir irgendwie UTF-8 character in den Sourcecode gekommen sind (c2 a0 ist ein nonbreakable space in utf-8).
Wenn ich in der 21_OWAD.pm von hier (https://raw.github.com/ntruchsess/fhem-mirror/owx_async/fhem/FHEM/21_OWAD.pm) oder hier (https://raw.github.com/ntruchsess/fhem_owx/refactoring_async/fhem/FHEM/21_OWAD.pm) mit einem hex-editor nach dem Byte c2 suche werde ich nicht fündig.

Gruß,

Norbert
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 17 Dezember 2013, 13:01:24
Zitat von: Joachim am 15 Dezember 2013, 01:48:34Für eine Freigabe des Moduls ist es noch zu früh (FHEM-Absturz beim save config).

Da bin ich ganz Deiner Meinung. Das ist mit der primäre Grund, warum ich es noch nicht released habe. Ich untersuche grade, wie ich das sauber im FHEM-hauptthread (so wie schon diskutiert mit Aufruf einer ReadFn aus der main-loop) unterbringe ohne allzuviel code umstellen zu müssen.

- Norbert
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: Joachim am 20 Dezember 2013, 19:43:41
Moin Norbert,

nach einigen Tagen mal eine Rückmeldung.
OWID bremst noch OWX aus.
                                name                  function    max  count    total  average param Max call
                  tmr-OWID_GetValues            HASH(0x835e00)   5254      8    41567  5195.88 HASH
                              WHR960               WHR960_Read   1559  70380   115271     1.64 HASH
                             myDbLog                 DbLog_Log   1493    192     3052    15.90 HASH
                            LinkUSBi                  OWX_Poll    246  98628     8552     0.09 HASH
         FHEMWEB:172.16.19.100:52690                   FW_Read    219      8      237    29.62 HASH
                       FS_Bue_Zuluft     OWXMULTI_AfterExecute     93     88      438     4.98 HASH
                   TS_Gefrierschrank      OWTHERM_AfterExecute     66     16      307    19.19 HASH
                         TS_GaesteWC      OWTHERM_AfterExecute     63     16      170    10.62 HASH
               tmr-OWMULTI_GetValues            HASH(0x8af978)     58      8      232    29.00 HASH
                          FS_KG_Flur     OWXMULTI_AfterExecute     52     88      376     4.27 HASH
                    TS_KG_Verteilung      OWTHERM_AfterExecute     48     16      123     7.69 HASH
                              TS_Bue      OWTHERM_AfterExecute     38     16      208    13.00 HASH
                               TS_SZ      OWTHERM_AfterExecute     37     16      207    12.94 HASH
                              TS_Bad      OWTHERM_AfterExecute     36     16      177    11.06 HASH
                             TS_Flur      OWTHERM_AfterExecute     36     16      177    11.06 HASH
                               TS_GZ      OWTHERM_AfterExecute     36     16      208    13.00 HASH
                          TS_KG_Flur      OWTHERM_AfterExecute     36     16      206    12.88 HASH
                   TS_WHR960_Luft_in      OWTHERM_AfterExecute     36     16      141     8.81 HASH
                         TS_KG_gross      OWTHERM_AfterExecute     35     16      201    12.56 HASH
                     TS_Kuehlschrank      OWTHERM_AfterExecute     35     16      207    12.94 HASH
                  TS_WHR960_Sole_out      OWTHERM_AfterExecute     35     16      172    10.75 HASH

2013.12.20 18:52:42.964 1: OWX_SER: Serial device /dev/ttyUSB20@9600 defined
2013.12.20 18:52:43.118 1: OWX_SER::Detect 1-Wire bus LinkUSBi: interface master DS2480 re-detected
2013.12.20 18:52:44.500 3: OWX_Worker started device DS2480
2013.12.20 18:52:59.934 1: Perfmon: possible freeze starting at 18:52:54, delay is 5.933
2013.12.20 18:57:46.004 3: OWID_GetValues beginn
2013.12.20 18:57:51.258 3: OWID_GetValues ende
2013.12.20 18:57:51.260 1: Perfmon: possible freeze starting at 18:57:46, delay is 5.26
2013.12.20 19:02:46.071 3: OWID_GetValues beginn
2013.12.20 19:02:51.203 3: OWID_GetValues ende
2013.12.20 19:02:51.214 1: Perfmon: possible freeze starting at 19:02:47, delay is 4.214
2013.12.20 19:07:46.003 3: OWID_GetValues beginn
2013.12.20 19:07:51.192 3: OWID_GetValues ende
2013.12.20 19:07:51.458 1: Perfmon: possible freeze starting at 19:07:47, delay is 4.458
2013.12.20 19:12:46.005 3: OWID_GetValues beginn
2013.12.20 19:12:51.199 3: OWID_GetValues ende
2013.12.20 19:12:51.201 1: Perfmon: possible freeze starting at 19:12:46, delay is 5.201
2013.12.20 19:17:46.008 3: OWID_GetValues beginn
2013.12.20 19:17:51.192 3: OWID_GetValues ende
2013.12.20 19:17:51.323 1: Perfmon: possible freeze starting at 19:17:47, delay is 4.322
2013.12.20 19:22:46.001 3: OWID_GetValues beginn
2013.12.20 19:22:51.182 3: OWID_GetValues ende
2013.12.20 19:22:51.184 1: Perfmon: possible freeze starting at 19:22:46, delay is 5.184
2013.12.20 19:27:46.005 3: OWID_GetValues beginn
2013.12.20 19:27:51.193 3: OWID_GetValues ende
2013.12.20 19:27:51.195 1: Perfmon: possible freeze starting at 19:27:46, delay is 5.194
2013.12.20 19:32:46.045 3: OWID_GetValues beginn
2013.12.20 19:32:51.283 3: OWID_GetValues beginn
2013.12.20 19:32:51.286 1: Perfmon: possible freeze starting at 19:32:46, delay is 5.285


Die Logeinträge
OWID_GetValues beginn
OWID_GetValues beginn
sind von mir in 21_OWID.pm zeile 307 und 329 eingefügt worden.

Gruß Joachim
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 19 Januar 2014, 00:22:27
Zitat von: ntruchsess am 17 Dezember 2013, 13:01:24Ich untersuche grade, wie ich das sauber im FHEM-hauptthread (so wie schon diskutiert mit Aufruf einer ReadFn aus der main-loop) unterbringe ohne allzuviel code umstellen zu müssen.

... so, bin hier einen Schritt weiter gekommen und habe erst mal ein kleines Framework für 'local continuations' (aka protothreads) (https://github.com/ntruchsess/perl-protothreads) geschrieben, damit kann man auf echte Threads verzichten und trotzdem code quasiparallel ablaufen lassen (mit kooperativem Multitasking). Ist zwar kein echtes Multithreading, sondern nur eine Statemachine die es erlaubt methoden vorzeitig zu verlassen und beim nächsten Aufruf an gleicher Stelle weiterzumachen, aber in der Verwendung syntaktisch recht elegant gelöst. Den Worker der OWX_Executor-klasse habe ich damit mal refactored (https://github.com/ntruchsess/fhem-mirror/blob/owx_async_nothread/fhem/FHEM/11_OWX_Executor.pm#L73). Das Ergebniss läuft schon mal (synchron). Ich muss jetzt nur noch das Empfangen der seriellen Daten aus den einzelnen OWX-methoden herausgelöst und von der eigentlichen Verarbeitung abtrennen, damit das richtig asynchron läuft.

Stay tuned...

- Norbert
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: Prof. Dr. Peter Henning am 19 Januar 2014, 06:18:18
Ah, langsam wird es benutzbar. :)

Mal sehen was ich in den Frontend-Modulen noch an Unterstützung leisten kann.

LG

pah
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 24 Januar 2014, 19:01:25
so, bin einen großen Schritt weiter:
die seriellen Busmaster DS2480 und DS9097 laufen jetzt ohne Hintergrundthread asynchron. (Beim Arduino/FRM ging es schon vorher ohne).
Die Files liegen wie immer auf Github, im Branch owx_async_nothread (https://github.com/ntruchsess/fhem-mirror/archive/owx_async_nothread.zip)
oder zum einzel downloaden:
00_OWX.pm (https://github.com/ntruchsess/fhem-mirror/raw/owx_async_nothread/fhem/FHEM/00_OWX.pm)
11_OWX_DS2480.pm (https://github.com/ntruchsess/fhem-mirror/raw/owx_async_nothread/fhem/FHEM/11_OWX_DS2480.pm)
11_OWX_DS9097.pm (https://github.com/ntruchsess/fhem-mirror/raw/owx_async_nothread/fhem/FHEM/11_OWX_DS9097.pm)
11_OWX_Executor.pm (https://github.com/ntruchsess/fhem-mirror/raw/owx_async_nothread/fhem/FHEM/11_OWX_Executor.pm)
11_OWX_FRM.pm (https://github.com/ntruchsess/fhem-mirror/raw/owx_async_nothread/fhem/FHEM/11_OWX_FRM.pm)
11_OWX_SER.pm (https://github.com/ntruchsess/fhem-mirror/raw/owx_async_nothread/fhem/FHEM/11_OWX_SER.pm)
lib/ProtoThreads.pm (https://github.com/ntruchsess/fhem-mirror/raw/owx_async_nothread/fhem/FHEM/lib/ProtoThreads.pm)
Devices, die schon mal grundsätzlich asynchron laufen:
21_OWAD.pm (https://github.com/ntruchsess/fhem-mirror/raw/owx_async_nothread/fhem/FHEM/21_OWAD.pm)
21_OWCOUNT.pm (https://github.com/ntruchsess/fhem-mirror/raw/owx_async_nothread/fhem/FHEM/21_OWCOUNT.pm)
21_OWID.pm (https://github.com/ntruchsess/fhem-mirror/raw/owx_async_nothread/fhem/FHEM/21_OWID.pm)
21_OWMULTI.pm (https://github.com/ntruchsess/fhem-mirror/raw/owx_async_nothread/fhem/FHEM/21_OWMULTI.pm)
21_OWSWITCH.pm (https://github.com/ntruchsess/fhem-mirror/raw/owx_async_nothread/fhem/FHEM/21_OWSWITCH.pm)
21_OWTHERM.pm (https://github.com/ntruchsess/fhem-mirror/raw/owx_async_nothread/fhem/FHEM/21_OWTHERM.pm)
21_OWLCD.pm habe ich noch nicht angepasst, 21_OWTEMP.pm werde ich nicht mehr anpassen.
CCC/CUNO muss ich noch an das geänderte Interface anpassen, kann ich nur leider selber nicht testen :-(

Das ganze ist noch etwas 'Work in progress' und braucht Feinschliff. Daher wäre Feedback sehr hilfreich!

Gruß, Norbert

Titel: Antw:OWX asynchron überarbeitet
Beitrag von: Joachim am 24 Januar 2014, 19:43:38
Moin Norbert,

Test läuft.
FHEM Startet ohne Probleme, allerdings noch folgende Fehlermeldungen:

pi@FHEM-SERVER ~ $ sudo /etc/init.d/fhem start
Starting fhem...
pi@FHEM-SERVER ~ $ Subroutine HandleTimeout redefined at ./FHEM/apptime.pm line 23.
Subroutine CallFn redefined at ./FHEM/apptime.pm line 57.
Use of uninitialized value in substr at ./FHEM/00_OWX.pm line 749.
Use of uninitialized value in substr at ./FHEM/00_OWX.pm line 749.
Use of uninitialized value in substr at ./FHEM/00_OWX.pm line 749.
Use of uninitialized value in substr at ./FHEM/00_OWX.pm line 749.
Use of uninitialized value in substr at ./FHEM/00_OWX.pm line 749.
Use of uninitialized value in substr at ./FHEM/00_OWX.pm line 749.
Use of uninitialized value in substr at ./FHEM/00_OWX.pm line 749.
Use of uninitialized value in substr at ./FHEM/00_OWX.pm line 749.
Use of uninitialized value in substr at ./FHEM/00_OWX.pm line 749.
Use of uninitialized value in substr at ./FHEM/00_OWX.pm line 749.
Use of uninitialized value in substr at ./FHEM/00_OWX.pm line 749.

Logauszug nach dem Starten:
2014.01.24 19:22:26.346 1: Including fhem.cfg
2014.01.24 19:22:26.812 2: Perfmon: ready to watch out for delays greater than one second
2014.01.24 19:22:26.888 3: telnetPort: port 7072 opened
2014.01.24 19:22:27.300 3: WEB: port 8083 opened
2014.01.24 19:22:27.523 2: eventTypes: loaded 806 events from ./log/eventTypes.txt
2014.01.24 19:22:27.525 1: Including ./FHEM/OWXasync.cfg
2014.01.24 19:22:35.954 3: OWID: Device ID_LinkUSBi defined.
2014.01.24 19:22:35.967 3: OWID: Device ID_DS9097U_4D628A07 defined.
2014.01.24 19:22:36.217 3: OWTHERM: Device TS_Bad defined.
2014.01.24 19:22:36.292 3: OWMULTI: Device FS_Bad defined.
2014.01.24 19:22:36.310 3: OWTHERM: Device TS_Bue defined.
2014.01.24 19:22:36.324 3: OWTHERM: Device TS_Bue_Zuluft defined.
2014.01.24 19:22:36.339 3: OWMULTI: Device FS_Bue_Zuluft defined.
2014.01.24 19:22:36.358 3: OWTHERM: Device TS_Flur defined.
2014.01.24 19:22:36.373 3: OWTHERM: Device TS_GaesteWC defined.
2014.01.24 19:22:36.389 3: OWTHERM: Device TS_GZ defined.
2014.01.24 19:22:36.405 3: OWTHERM: Device TS_KG_Verteilung defined.
2014.01.24 19:22:36.445 3: OWTHERM: Device TS_KG_gross defined.
2014.01.24 19:22:36.461 3: OWTHERM: Device TS_Gefrierschrank defined.
2014.01.24 19:22:36.476 3: OWTHERM: Device TS_Kue defined.
2014.01.24 19:22:36.491 3: OWTHERM: Device TS_Kuehlschrank defined.
2014.01.24 19:22:36.508 3: OWTHERM: Device TS_SZ defined.
2014.01.24 19:22:36.524 3: OWTHERM: Device TS_WHR960_Luft_in defined.
2014.01.24 19:22:36.543 3: OWTHERM: Device TS_WHR960_Sole_in defined.
2014.01.24 19:22:36.579 3: OWTHERM: Device TS_WHR960_Sole_out defined.
2014.01.24 19:22:36.616 3: OWTHERM: Device TS_WZ defined.
2014.01.24 19:22:36.649 3: OWMULTI: Device FS_WZ defined.
2014.01.24 19:22:36.684 1: Including ./FHEM/WHR960.cfg
2014.01.24 19:22:36.722 3: Opening WHR960 device /dev/ttyUSB3
2014.01.24 19:22:36.731 3: Setting WHR960 baudrate to 9600
2014.01.24 19:22:36.739 3: WHR960 device opened
2014.01.24 19:22:36.746 1: Including ./FHEM/DBLog.cfg
2014.01.24 19:22:37.189 3: Connecting to database SQLite:dbname=/opt/fhem/fhem.db with user
2014.01.24 19:22:37.261 3: Connection to db SQLite:dbname=/opt/fhem/fhem.db established for pid 30404
2014.01.24 19:22:37.281 3: Connection to db SQLite:dbname=/opt/fhem/fhem.db established
2014.01.24 19:22:37.726 1: Including ./log/fhem.save
2014.01.24 19:22:37.980 3: Busmaster: Opening connection to OWServer localhost:4304...
2014.01.24 19:22:37.981 3: Busmaster: Successfully connected to localhost:4304.
2014.01.24 19:22:40.935 0: Server started with 48 defined entities (version $Id: fhem.pl 4709 2014-01-21 18:00:07Z rudolfkoenig $, os linux, user pi, pid 30404)
2014.01.24 19:22:40.938 1: Perfmon: possible freeze starting at 19:22:27, delay is 13.937
2014.01.24 19:22:40.941 3: Opening LinkUSBi device /dev/ttyUSB20
2014.01.24 19:22:40.952 3: Setting LinkUSBi baudrate to 9600
2014.01.24 19:22:40.981 3: LinkUSBi device opened
2014.01.24 19:22:40.994 1: OWX_SER: Serial device /dev/ttyUSB20@9600 defined
2014.01.24 19:22:48.707 3: Opening DS9097U_4D628A07 device /dev/ttyUSB0
2014.01.24 19:22:48.716 3: Setting DS9097U_4D628A07 baudrate to 9600
2014.01.24 19:22:48.725 3: DS9097U_4D628A07 device opened
2014.01.24 19:22:48.725 1: OWX_SER: Serial device /dev/ttyUSB0@9600 defined
2014.01.24 19:22:49.745 1: Perfmon: possible freeze starting at 19:22:41, delay is 8.744
2014.01.24 19:22:51.037 1: Perfmon: possible freeze starting at 19:22:50, delay is 1.036
2014.01.24 19:23:05.091 1: Perfmon: possible freeze starting at 19:22:59, delay is 6.09
2014.01.24 19:23:05.888 3: OWX: Unknown family code '09' found
2014.01.24 19:23:05.893 2: OWX: 1-Wire devices found on bus DS9097U_4D628A07 (TS_GaesteWC,TS_KG_Verteilung,ID_DS9097U_4D628A07)
2014.01.24 19:24:10.060 3: Connecting to database SQLite:dbname=/opt/fhem/fhem.db with user
2014.01.24 19:24:10.022 3: Connecting to database SQLite:dbname=/opt/fhem/fhem.db with user
2014.01.24 19:24:10.072 3: Connection to db SQLite:dbname=/opt/fhem/fhem.db established for pid 30621
2014.01.24 19:24:10.089 3: Connecting to database SQLite:dbname=/opt/fhem/fhem.db with user
2014.01.24 19:24:10.119 3: Connection to db SQLite:dbname=/opt/fhem/fhem.db established for pid 30622
2014.01.24 19:24:10.147 3: Connection to db SQLite:dbname=/opt/fhem/fhem.db established for pid 30623
2014.01.24 19:24:10.114 3: Connecting to database SQLite:dbname=/opt/fhem/fhem.db with user
2014.01.24 19:24:10.172 3: Connection to db SQLite:dbname=/opt/fhem/fhem.db established for pid 30624
2014.01.24 19:24:10.232 3: Connecting to database SQLite:dbname=/opt/fhem/fhem.db with user
2014.01.24 19:24:10.280 3: Connection to db SQLite:dbname=/opt/fhem/fhem.db established for pid 30625
2014.01.24 19:24:11.119 3: Connecting to database SQLite:dbname=/opt/fhem/fhem.db with user
2014.01.24 19:24:11.188 3: Connection to db SQLite:dbname=/opt/fhem/fhem.db established for pid 30626
2014.01.24 19:24:11.243 3: Connecting to database SQLite:dbname=/opt/fhem/fhem.db with user
2014.01.24 19:24:11.322 3: Connection to db SQLite:dbname=/opt/fhem/fhem.db established for pid 30627
2014.01.24 19:24:11.422 3: Connecting to database SQLite:dbname=/opt/fhem/fhem.db with user
2014.01.24 19:24:11.502 3: Connection to db SQLite:dbname=/opt/fhem/fhem.db established for pid 30628
2014.01.24 19:24:14.060 3: Connecting to database SQLite:dbname=/opt/fhem/fhem.db with user
2014.01.24 19:24:14.102 3: Connection to db SQLite:dbname=/opt/fhem/fhem.db established for pid 30629
2014.01.24 19:24:14.114 3: Connecting to database SQLite:dbname=/opt/fhem/fhem.db with user
2014.01.24 19:24:14.182 3: Connection to db SQLite:dbname=/opt/fhem/fhem.db established for pid 30630
2014.01.24 19:24:14.469 3: Connecting to database SQLite:dbname=/opt/fhem/fhem.db with user
2014.01.24 19:24:14.520 3: Connection to db SQLite:dbname=/opt/fhem/fhem.db established for pid 30631
2014.01.24 19:24:46.292 1: Perfmon: possible freeze starting at 19:24:45, delay is 1.291
2014.01.24 19:26:47.264 1: Perfmon: possible freeze starting at 19:26:46, delay is 1.263
2014.01.24 19:28:16.012 1: Perfmon: possible freeze starting at 19:28:15, delay is 1.012
2014.01.24 19:28:48.073 1: Perfmon: possible freeze starting at 19:28:47, delay is 1.072
2014.01.24 19:30:49.069 1: Perfmon: possible freeze starting at 19:30:48, delay is 1.068
2014.01.24 19:32:51.454 1: Perfmon: possible freeze starting at 19:32:50, delay is 1.453
2014.01.24 19:34:52.068 1: Perfmon: possible freeze starting at 19:34:51, delay is 1.067
2014.01.24 19:36:53.062 1: Perfmon: possible freeze starting at 19:36:52, delay is 1.061
2014.01.24 19:37:47.086 1: Perfmon: possible freeze starting at 19:37:46, delay is 1.084
2014.01.24 19:38:54.093 1: Perfmon: possible freeze starting at 19:38:53, delay is 1.092
2014.01.24 19:39:49.880 3: OWX_Disconnect
2014.01.24 19:39:50.067 3: OWX_Disconnect
2014.01.24 19:39:50.257 1: Including fhem.cfg
2014.01.24 19:39:50.300 3: telnetPort: port 7072 opened
2014.01.24 19:39:50.307 3: WEB: port 8083 opened
2014.01.24 19:39:50.386 2: eventTypes: loaded 806 events from ./log/eventTypes.txt
2014.01.24 19:39:50.390 1: Including ./FHEM/OWXasync.cfg
2014.01.24 19:39:50.407 3: OWID: Device ID_LinkUSBi defined.
2014.01.24 19:39:50.427 3: OWID: Device ID_DS9097U_4D628A07 defined.
2014.01.24 19:39:50.467 3: OWTHERM: Device TS_Bad defined.
2014.01.24 19:39:50.490 3: OWMULTI: Device FS_Bad defined.
2014.01.24 19:39:50.516 3: OWTHERM: Device TS_Bue defined.
2014.01.24 19:39:50.539 3: OWTHERM: Device TS_Bue_Zuluft defined.
2014.01.24 19:39:50.561 3: OWMULTI: Device FS_Bue_Zuluft defined.
2014.01.24 19:39:50.589 3: OWTHERM: Device TS_Flur defined.
2014.01.24 19:39:50.613 3: OWTHERM: Device TS_GaesteWC defined.
2014.01.24 19:39:50.637 3: OWTHERM: Device TS_GZ defined.
2014.01.24 19:39:50.661 3: OWTHERM: Device TS_KG_Verteilung defined.
2014.01.24 19:39:50.722 3: OWTHERM: Device TS_KG_gross defined.
2014.01.24 19:39:50.747 3: OWTHERM: Device TS_Gefrierschrank defined.
2014.01.24 19:39:50.771 3: OWTHERM: Device TS_Kue defined.
2014.01.24 19:39:50.794 3: OWTHERM: Device TS_Kuehlschrank defined.
2014.01.24 19:39:50.819 3: OWTHERM: Device TS_SZ defined.
2014.01.24 19:39:50.844 3: OWTHERM: Device TS_WHR960_Luft_in defined.
2014.01.24 19:39:50.868 3: OWTHERM: Device TS_WHR960_Sole_in defined.
2014.01.24 19:39:50.892 3: OWTHERM: Device TS_WHR960_Sole_out defined.
2014.01.24 19:39:50.917 3: OWTHERM: Device TS_WZ defined.
2014.01.24 19:39:50.943 3: OWMULTI: Device FS_WZ defined.
2014.01.24 19:39:50.969 1: Including ./FHEM/WHR960.cfg
2014.01.24 19:39:50.972 3: Opening WHR960 device /dev/ttyUSB3
2014.01.24 19:39:50.981 3: Setting WHR960 baudrate to 9600
2014.01.24 19:39:50.991 3: WHR960 device opened
2014.01.24 19:39:50.999 1: Including ./FHEM/DBLog.cfg
2014.01.24 19:39:51.008 3: Connecting to database SQLite:dbname=/opt/fhem/fhem.db with user
2014.01.24 19:39:51.015 3: Connection to db SQLite:dbname=/opt/fhem/fhem.db established for pid 30404
2014.01.24 19:39:51.032 3: Connection to db SQLite:dbname=/opt/fhem/fhem.db established
2014.01.24 19:39:51.123 1: Including ./log/fhem.save
2014.01.24 19:39:51.494 3: Opening DS9097U_4D628A07 device /dev/ttyUSB0
2014.01.24 19:39:51.505 3: Setting DS9097U_4D628A07 baudrate to 9600
2014.01.24 19:39:51.515 3: DS9097U_4D628A07 device opened
2014.01.24 19:39:51.516 1: OWX_SER: Serial device /dev/ttyUSB0@9600 defined
2014.01.24 19:39:51.539 2: OWX: Error initializing DS9097U_4D628A07: OWX_Init failed: Can't call method "write" on an undefined value at ./FHEM/11_OWX_DS2480.pm line 131.

2014.01.24 19:39:51.545 3: Opening LinkUSBi device /dev/ttyUSB20
2014.01.24 19:39:51.556 3: Setting LinkUSBi baudrate to 9600
2014.01.24 19:39:51.591 3: LinkUSBi device opened
2014.01.24 19:39:51.592 1: OWX_SER: Serial device /dev/ttyUSB20@9600 defined
2014.01.24 19:39:51.610 2: OWX: Error initializing LinkUSBi: OWX_Init failed: Can't call method "write" on an undefined value at ./FHEM/11_OWX_DS2480.pm line 131.

2014.01.24 19:39:51.617 1: Perfmon: possible freeze starting at 19:39:49, delay is 2.614
2014.01.24 19:39:51.636 3: Opening DS9097U_4D628A07 device /dev/ttyUSB0
2014.01.24 19:39:51.643 3: Setting DS9097U_4D628A07 baudrate to 9600
2014.01.24 19:39:51.663 3: DS9097U_4D628A07 device opened
2014.01.24 19:39:51.666 1: OWX_SER: Serial device /dev/ttyUSB0@9600 defined
2014.01.24 19:39:51.700 3: Opening LinkUSBi device /dev/ttyUSB20
2014.01.24 19:39:51.705 3: Setting LinkUSBi baudrate to 9600
2014.01.24 19:39:51.736 3: LinkUSBi device opened
2014.01.24 19:39:51.739 1: OWX_SER: Serial device /dev/ttyUSB20@9600 defined
2014.01.24 19:40:02.494 3: OWX: Unknown family code '09' found
2014.01.24 19:40:02.501 2: OWX: 1-Wire devices found on bus DS9097U_4D628A07 (TS_GaesteWC,TS_KG_Verteilung,ID_DS9097U_4D628A07)
2014.01.24 19:40:08.856 1: Perfmon: possible freeze starting at 19:40:03, delay is 5.855


Apptime siehe Anlage

Save Config bringt keinen Absturz meh.

Was soll ich noch testen?

Gruß Joachim
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: Joachim am 24 Januar 2014, 20:52:27
Und Absturz:
2014.01.24 20:32:33.087 1: Perfmon: possible freeze starting at 20:32:32, delay is 1.086
2014.01.24 20:37:03.068 1: Perfmon: possible freeze starting at 20:37:02, delay is 1.067
2014.01.24 20:39:04.059 1: Perfmon: possible freeze starting at 20:39:03, delay is 1.059
2014.01.24 20:41:05.069 1: Perfmon: possible freeze starting at 20:41:04, delay is 1.069
2014.01.24 20:42:27.086 3: OWX_SER::Search_2480 2nd return has wrong parameter with length = 9
2014.01.24 20:48:34.366 1: Including fhem.cfg


Habe jetzt mal verbose auf 5 gesetzt, mal schaun, ob die Meldung dann aussegekräftiger ist.

Gruß Joachim
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 24 Januar 2014, 21:17:22
Zitat von: Joachim am 24 Januar 2014, 19:43:38
FHEM Startet ohne Probleme, allerdings noch folgende Fehlermeldungen:

Use of uninitialized value in substr at ./FHEM/00_OWX.pm line 749.

ist das reproduzierbar? Das sollte passieren, wenn Du ein Device vom Type 'OW*' aber ohne ROMID hast.
hat vieleicht hiermit zu tun:
Zitat von: Joachim am 24 Januar 2014, 19:43:38
2014.01.24 19:22:26.346 1: Including fhem.cfg
2014.01.24 19:23:05.888 3: OWX: Unknown family code '09' found


und dann:
Zitat von: Joachim am 24 Januar 2014, 19:43:38
2014.01.24 19:39:49.880 3: OWX_Disconnect
2014.01.24 19:39:50.067 3: OWX_Disconnect
[...]
2014.01.24 19:39:51.494 3: Opening DS9097U_4D628A07 device /dev/ttyUSB0
2014.01.24 19:39:51.505 3: Setting DS9097U_4D628A07 baudrate to 9600
2014.01.24 19:39:51.515 3: DS9097U_4D628A07 device opened
2014.01.24 19:39:51.516 1: OWX_SER: Serial device /dev/ttyUSB0@9600 defined
2014.01.24 19:39:51.539 2: OWX: Error initializing DS9097U_4D628A07: OWX_Init failed: Can't call method "write" on an undefined value at ./FHEM/11_OWX_DS2480.pm line 131.
[/code]
was ist hier passiert? Hast du den Adapter abgezogen und wieder angesteckt?

Zitat
2014.01.24 20:42:27.086 3: OWX_SER::Search_2480 2nd return has wrong parameter with length = 9
oups, mal sehen, was ich dazu rausfinde...

Danke schon mal,

Gruß,

Norbert
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: Joachim am 24 Januar 2014, 22:49:19
So Norbert,
Dir zuliebe mal aufgeräumt.
1. Test:
aktiver 1-Wire Adapter: LinkUSBi mit ID-Chip, alle anderen 1-Wire Adapter deaktiviert.
http://www.fuchs-shop.com/de/shop/17/1/13372210/

Keine Fehlermeldung beim Starten von FHEM
log:

2014.01.24 21:46:18.361 1: Including fhem.cfg
2014.01.24 21:46:18.741 2: Perfmon: ready to watch out for delays greater than one second
2014.01.24 21:46:18.819 3: telnetPort: port 7072 opened
2014.01.24 21:46:19.241 3: WEB: port 8083 opened
2014.01.24 21:46:19.470 2: eventTypes: loaded 806 events from ./log/eventTypes.txt
2014.01.24 21:46:19.473 1: Including ./FHEM/OWXasync.cfg
2014.01.24 21:46:27.967 3: OWID: Device ID_LinkUSBi defined.
2014.01.24 21:46:28.042 3: OWTHERM: Device TS_Bad defined.
2014.01.24 21:46:28.121 3: OWMULTI: Device FS_Bad defined.
2014.01.24 21:46:28.139 3: OWTHERM: Device TS_Bue defined.
2014.01.24 21:46:28.155 3: OWTHERM: Device TS_Bue_Zuluft defined.
2014.01.24 21:46:28.170 3: OWMULTI: Device FS_Bue_Zuluft defined.
2014.01.24 21:46:28.189 3: OWTHERM: Device TS_Flur defined.
2014.01.24 21:46:28.204 3: OWTHERM: Device TS_GZ defined.
2014.01.24 21:46:28.220 3: OWTHERM: Device TS_KG_gross defined.
2014.01.24 21:46:28.236 3: OWTHERM: Device TS_Gefrierschrank defined.
2014.01.24 21:46:28.252 3: OWTHERM: Device TS_Kue defined.
2014.01.24 21:46:28.267 3: OWTHERM: Device TS_Kuehlschrank defined.
2014.01.24 21:46:28.283 3: OWTHERM: Device TS_SZ defined.
2014.01.24 21:46:28.298 3: OWTHERM: Device TS_WHR960_Luft_in defined.
2014.01.24 21:46:28.314 3: OWTHERM: Device TS_WHR960_Sole_in defined.
2014.01.24 21:46:28.329 3: OWTHERM: Device TS_WHR960_Sole_out defined.
2014.01.24 21:46:28.345 3: OWTHERM: Device TS_WZ defined.
2014.01.24 21:46:28.360 3: OWMULTI: Device FS_WZ defined.
2014.01.24 21:46:28.378 1: Including ./FHEM/DBLog.cfg
2014.01.24 21:46:28.747 3: Connecting to database SQLite:dbname=/opt/fhem/fhem.db with user
2014.01.24 21:46:28.808 3: Connection to db SQLite:dbname=/opt/fhem/fhem.db established for pid 3248
2014.01.24 21:46:28.822 3: Connection to db SQLite:dbname=/opt/fhem/fhem.db established
2014.01.24 21:46:29.191 1: Including ./log/fhem.save
2014.01.24 21:46:29.374 0: Server started with 39 defined entities (version $Id: fhem.pl 4709 2014-01-21 18:00:07Z rudolfkoenig $, os linux, user pi, pid 3248)
2014.01.24 21:46:29.376 1: Perfmon: possible freeze starting at 21:46:19, delay is 10.375
2014.01.24 21:46:29.379 3: Opening LinkUSBi device /dev/ttyUSB20
2014.01.24 21:46:29.387 3: Setting LinkUSBi baudrate to 9600
2014.01.24 21:46:29.407 3: LinkUSBi device opened
2014.01.24 21:46:29.407 1: OWX_SER: Serial device /dev/ttyUSB20@9600 defined
2014.01.24 21:46:36.490 1: Perfmon: possible freeze starting at 21:46:30, delay is 6.489
2014.01.24 21:46:37.192 0: Server shutdown
2014.01.24 21:46:54.281 1: Including fhem.cfg
2014.01.24 21:46:54.649 2: Perfmon: ready to watch out for delays greater than one second
2014.01.24 21:46:54.724 3: telnetPort: port 7072 opened
2014.01.24 21:46:55.134 3: WEB: port 8083 opened
2014.01.24 21:46:55.354 2: eventTypes: loaded 806 events from ./log/eventTypes.txt
2014.01.24 21:46:55.357 1: Including ./FHEM/OWXasync.cfg
2014.01.24 21:47:03.725 3: OWID: Device ID_LinkUSBi defined.
2014.01.24 21:47:03.796 3: OWTHERM: Device TS_Bad defined.
2014.01.24 21:47:03.872 3: OWMULTI: Device FS_Bad defined.
2014.01.24 21:47:03.889 3: OWTHERM: Device TS_Bue defined.
2014.01.24 21:47:03.903 3: OWTHERM: Device TS_Bue_Zuluft defined.
2014.01.24 21:47:03.919 3: OWMULTI: Device FS_Bue_Zuluft defined.
2014.01.24 21:47:03.937 3: OWTHERM: Device TS_Flur defined.
2014.01.24 21:47:03.952 3: OWTHERM: Device TS_GZ defined.
2014.01.24 21:47:03.968 3: OWTHERM: Device TS_KG_gross defined.
2014.01.24 21:47:03.984 3: OWTHERM: Device TS_Gefrierschrank defined.
2014.01.24 21:47:03.998 3: OWTHERM: Device TS_Kue defined.
2014.01.24 21:47:04.013 3: OWTHERM: Device TS_Kuehlschrank defined.
2014.01.24 21:47:04.028 3: OWTHERM: Device TS_SZ defined.
2014.01.24 21:47:04.044 3: OWTHERM: Device TS_WHR960_Luft_in defined.
2014.01.24 21:47:04.059 3: OWTHERM: Device TS_WHR960_Sole_in defined.
2014.01.24 21:47:04.074 3: OWTHERM: Device TS_WHR960_Sole_out defined.
2014.01.24 21:47:04.090 3: OWTHERM: Device TS_WZ defined.
2014.01.24 21:47:04.105 3: OWMULTI: Device FS_WZ defined.
2014.01.24 21:47:04.122 1: Including ./FHEM/DBLog.cfg
2014.01.24 21:47:04.482 3: Connecting to database SQLite:dbname=/opt/fhem/fhem.db with user
2014.01.24 21:47:04.542 3: Connection to db SQLite:dbname=/opt/fhem/fhem.db established for pid 3288
2014.01.24 21:47:04.555 3: Connection to db SQLite:dbname=/opt/fhem/fhem.db established
2014.01.24 21:47:04.915 1: Including ./log/fhem.save
2014.01.24 21:47:05.180 0: Server started with 39 defined entities (version $Id: fhem.pl 4709 2014-01-21 18:00:07Z rudolfkoenig $, os linux, user pi, pid 3288)
2014.01.24 21:47:05.181 1: Perfmon: possible freeze starting at 21:46:55, delay is 10.181
2014.01.24 21:47:05.185 3: Opening LinkUSBi device /dev/ttyUSB20
2014.01.24 21:47:05.193 3: Setting LinkUSBi baudrate to 9600
2014.01.24 21:47:05.213 3: LinkUSBi device opened
2014.01.24 21:47:12.076 1: Perfmon: possible freeze starting at 21:47:06, delay is 6.076
2014.01.24 21:47:28.006 1: Perfmon: possible freeze starting at 21:47:23, delay is 5.006
2014.01.24 21:48:05.063 5: OWX_SER::Search: new device found 10.9AEB01020800.99
2014.01.24 21:48:05.134 5: OWX_SER::Search: new device found 10.8FEF01020800.36
2014.01.24 21:48:05.193 5: OWX_SER::Search: new device found 28.B449BA030000.B1
2014.01.24 21:48:05.253 5: OWX_SER::Search: new device found 28.0C2E88040000.62
2014.01.24 21:47:05.214 1: OWX_SER: Serial device /dev/ttyUSB20@9600 defined
2014.01.24 21:48:05.311 5: OWX_SER::Search: new device found 28.2E1BBA030000.D9
2014.01.24 21:48:05.374 5: OWX_SER::Search: new device found 28.2118BA030000.B3
2014.01.24 21:48:05.422 5: OWX_SER::Search: new device found 28.212772040000.07
2014.01.24 21:48:05.472 5: OWX_SER::Search: new device found 28.A1E265040000.A3
2014.01.24 21:48:05.522 5: OWX_SER::Search: new device found 28.198B72040000.59
2014.01.24 21:48:05.571 5: OWX_SER::Search: new device found 28.B930BA030000.65
2014.01.24 21:48:05.620 5: OWX_SER::Search: new device found 28.559E87040000.0F
2014.01.24 21:48:05.670 5: OWX_SER::Search: new device found 28.8B49BA030000.78
2014.01.24 21:48:05.718 5: OWX_SER::Search: new device found 28.2F4ABA030000.B6
2014.01.24 21:48:05.768 5: OWX_SER::Search: new device found 28.1FB087040000.EF
2014.01.24 21:48:05.817 5: OWX_SER::Search: new device found 26.680C6A010000.02
2014.01.24 21:48:05.866 5: OWX_SER::Search: new device found 26.890C6A010000.1C
2014.01.24 21:48:05.916 5: OWX_SER::Search: new device found 26.930C6A010000.88
2014.01.24 21:48:05.966 5: OWX_SER::Search: new device found 01.2C5987150000.B0
2014.01.24 21:50:28.903 3: Connecting to database SQLite:dbname=/opt/fhem/fhem.db with user
2014.01.24 21:50:28.920 3: Connection to db SQLite:dbname=/opt/fhem/fhem.db established for pid 3479
2014.01.24 21:52:37.060 5: OWX_SER::Search: new alarm device found 10.9AEB01020800.99
2014.01.24 21:58:23.059 3: Connecting to database SQLite:dbname=/opt/fhem/fhem.db with user
2014.01.24 21:58:23.078 3: Connection to db SQLite:dbname=/opt/fhem/fhem.db established for pid 3897
2014.01.24 22:04:12.490 3: Connecting to database SQLite:dbname=/opt/fhem/fhem.db with user
2014.01.24 22:04:12.503 3: Connection to db SQLite:dbname=/opt/fhem/fhem.db established for pid 4213
2014.01.24 22:04:14.004 3: OWX_SER::Search_2480 2nd return has wrong parameter with length = 13
2014.01.24 22:04:41.687 3: Connecting to database SQLite:dbname=/opt/fhem/fhem.db with user
2014.01.24 22:04:41.702 3: Connection to db SQLite:dbname=/opt/fhem/fhem.db established for pid 4242


Apptime:

                                name                  function    max  count    total  average param Max call
               tmr-OWMULTI_GetValues            HASH(0xb393a8)     29      2       56    28.00 HASH
               tmr-OWMULTI_GetValues            HASH(0xb9f660)     28      1       28    28.00 HASH
               tmr-OWMULTI_GetValues            HASH(0xb70c60)     28      2       51    25.50 HASH
               tmr-OWTHERM_GetValues            HASH(0xb97830)     24      1       24    24.00 HASH
                               TS_SZ              OWTHERM_Attr     18      1       18    18.00 set;
                         tmr-at_Exec            HASH(0xde2fa8)     20      9      157    17.44 HASH
                               alive                 dummy_Set     15      9      103    11.44 HASH
               tmr-OWTHERM_GetValues            HASH(0xb9eaa0)     10      1       10    10.00 HASH
               tmr-OWTHERM_GetValues            HASH(0xa07890)     11      2       18     9.00 HASH
               tmr-OWTHERM_GetValues            HASH(0xb71890)      7      2       14     7.00 HASH
               tmr-OWTHERM_GetValues            HASH(0xb9c5c0)      7      2       13     6.50 HASH
               tmr-OWTHERM_GetValues            HASH(0xb9e638)      6      1        6     6.00 HASH
                             myDbLog                 DbLog_Log      9     11       60     5.45 HASH
               tmr-OWTHERM_GetValues            HASH(0xb71158)      4      2        8     4.00 HASH
               tmr-OWTHERM_GetValues            HASH(0xb96e10)      4      1        4     4.00 HASH
               tmr-OWTHERM_GetValues            HASH(0xb9ccf8)      4      2        8     4.00 HASH
               tmr-OWTHERM_GetValues            HASH(0xb9df00)      4      1        4     4.00 HASH
               tmr-OWTHERM_GetValues            HASH(0xb9efd0)      4      1        4     4.00 HASH
                        tmr-OWX_Kick            HASH(0x8593e0)      4      1        4     4.00 HASH
               tmr-OWTHERM_GetValues            HASH(0xb960e8)      3      1        3     3.00 HASH
               tmr-OWTHERM_GetValues            HASH(0xb96760)      3      1        3     3.00 HASH


2. Test:
aktiver 1-Wire Adapter: DS9097U-009 mit ID-Chip, alle anderen 1-Wire Adapter sind deaktiviert
http://www.fuchs-shop.com/de/shop/17/1/13372015/

Keine Fehlermeldung beim Starten von FHEM
log:

014.01.24 22:14:40.731 1: Including fhem.cfg
2014.01.24 22:14:41.101 2: Perfmon: ready to watch out for delays greater than one second
2014.01.24 22:14:41.177 3: telnetPort: port 7072 opened
2014.01.24 22:14:41.673 3: WEB: port 8083 opened
2014.01.24 22:14:41.894 2: eventTypes: loaded 806 events from ./log/eventTypes.txt
2014.01.24 22:14:41.897 1: Including ./FHEM/DBLog.cfg
2014.01.24 22:14:42.257 3: Connecting to database SQLite:dbname=/opt/fhem/fhem.db with user
2014.01.24 22:14:42.333 3: Connection to db SQLite:dbname=/opt/fhem/fhem.db established for pid 4792
2014.01.24 22:14:42.348 3: Connection to db SQLite:dbname=/opt/fhem/fhem.db established
2014.01.24 22:14:51.359 3: OWID: Device ID_DS9097U_4D628A07 defined.
2014.01.24 22:14:51.431 3: OWTHERM: Device TS_GaesteWC defined.
2014.01.24 22:14:51.447 3: OWTHERM: Device TS_KG_Verteilung defined.
2014.01.24 22:14:51.459 1: Including ./log/fhem.save
2014.01.24 22:14:52.232 0: Server started with 24 defined entities (version $Id: fhem.pl 4709 2014-01-21 18:00:07Z rudolfkoenig $, os linux, user pi, pid 4792)
2014.01.24 22:14:52.234 1: Perfmon: possible freeze starting at 22:14:42, delay is 10.233
2014.01.24 22:14:52.238 3: Opening DS9097U_4D628A07 device /dev/ttyUSB1
2014.01.24 22:14:52.251 3: Setting DS9097U_4D628A07 baudrate to 9600
2014.01.24 22:14:52.265 3: DS9097U_4D628A07 device opened
2014.01.24 22:14:52.266 1: OWX_SER: Serial device /dev/ttyUSB1@9600 defined
2014.01.24 22:14:59.302 1: Perfmon: possible freeze starting at 22:14:53, delay is 6.302
2014.01.24 22:15:10.033 3: OWX: Unknown family code '09' found
2014.01.24 22:15:10.035 2: OWX: 1-Wire devices found on bus DS9097U_4D628A07 (TS_GaesteWC,TS_KG_Verteilung,ID_DS9097U_4D628A07)


Event Monitor:

Events:
2014-01-24 22:15:01.062 OWTHERM TS_KG_Verteilung Temperatur: 12.4
2014-01-24 22:15:02.068 OWTHERM TS_KG_Verteilung Temperatur: 12.5
2014-01-24 22:15:02.145 OWTHERM TS_GaesteWC Temperatur: 15.6
2014-01-24 22:15:10.017 OWID ID_DS9097U_4D628A07 present: 1
2014-01-24 22:15:42.721 dummy alive 0
2014-01-24 22:16:42.725 dummy alive 1
2014-01-24 22:17:42.731 dummy alive 0
2014-01-24 22:18:42.724 dummy alive 1
2014-01-24 22:19:42.723 dummy alive 0
2014-01-24 22:19:59.067 OWTHERM TS_GaesteWC Temperatur: 15.5
2014-01-24 22:20:42.712 dummy alive 1
2014-01-24 22:21:42.714 dummy alive 0
2014-01-24 22:22:42.714 dummy alive 1
2014-01-24 22:23:42.714 dummy alive 0
2014-01-24 22:24:42.711 dummy alive 1
2014-01-24 22:25:42.717 dummy alive 0
2014-01-24 22:26:42.718 dummy alive 1
2014-01-24 22:27:42.715 dummy alive 0
2014-01-24 22:28:42.717 dummy alive 1
2014-01-24 22:29:42.719 dummy alive 0
2014-01-24 22:30:42.713 dummy alive 1
2014-01-24 22:31:42.715 dummy alive 0
2014-01-24 22:32:42.715 dummy alive 1
2014-01-24 22:33:42.715 dummy alive 0
2014-01-24 22:34:42.715 dummy alive 1
2014-01-24 22:35:42.713 dummy alive 0


fhem.cfg:

define alive dummy
attr alive room Alive
attr alive setList 0 1

define at_alive at +*00:01:00 {if ("$value{alive}" == 0) {fhem("set alive 1")} else {fhem("set alive 0")}}
attr at_alive room Alive

define SVG_Log_alive_1 SVG myDbLog:SVG_Log_alive_1:current
attr SVG_Log_alive_1 plotsize 1050,200
attr SVG_Log_alive_1 room Alive

define DS9097U_4D628A07 OWX /dev/ttyUSB1
attr DS9097U_4D628A07 room OWX

define ID_DS9097U_4D628A07 OWID 09 4D628A070000 3600
attr ID_DS9097U_4D628A07 model DS2401
attr ID_DS9097U_4D628A07 room OWX
attr ID_DS9097U_4D628A07 stateFormat {ReadingsVal($name,"present",0) ? "present" : "not present"}
attr ID_DS9097U_4D628A07 verbose 5

define TS_GaesteWC OWTHERM DS18B20 295FBA030000 296
attr TS_GaesteWC IODev DS9097U_4D628A07
attr TS_GaesteWC event-min-interval Temperatur:600
attr TS_GaesteWC event-on-change-reading Temperatur
attr TS_GaesteWC icon icoKLIMA
attr TS_GaesteWC model DS1822
attr TS_GaesteWC room GaesteWC
attr TS_GaesteWC stateFormat {sprintf("%.1f",ReadingsVal("TS_GaesteWC","temperature",0))." °C"}
attr TS_GaesteWC tempHigh 25

define TS_KG_Verteilung OWTHERM DS18B20 ED3788040000 301
attr TS_KG_Verteilung IODev DS9097U_4D628A07
attr TS_KG_Verteilung event-min-interval Temperatur:600
attr TS_KG_Verteilung event-on-change-reading Temperatur
attr TS_KG_Verteilung icon icoKLIMA
attr TS_KG_Verteilung model DS1822
attr TS_KG_Verteilung room Keller
attr TS_KG_Verteilung stateFormat {sprintf("%.1f",ReadingsVal("TS_KG_Verteilung","temperature",0))." °C"}
attr TS_KG_Verteilung tempHigh 75
attr TS_KG_Verteilung tempLow 0
attr TS_KG_Verteilung userReadings Temperatur { int ( 10 * ReadingsVal("TS_KG_Verteilung","temperature",0) + 0.5 ) / 10 }
attr TS_GaesteWC tempLow 0
attr TS_GaesteWC userReadings Temperatur { int ( 10 * ReadingsVal("TS_GaesteWC","temperature",0) + 0.5 ) / 10 }

FHEM läuft, aber das Device wird nicht wie vorgegeben alle 5 (10) Minuten abgefragt.

Apptime:

                                name                  function    max  count    total  average param Max call
                         tmr-at_Exec           HASH(0x2764818)     32     15      269    17.93 HASH
                               alive                 dummy_Set     24     15      184    12.27 HASH
                         TS_GaesteWC      OWTHERM_AfterExecute     22      2       22    11.00 HASH
                             myDbLog                 DbLog_Log     12     16      105     6.56 HASH
               tmr-OWTHERM_GetValues           HASH(0x293a010)      9      3       17     5.67 HASH
                        tmr-OWX_Kick           HASH(0x2785760)      8      3       13     4.33 HASH
               tmr-OWTHERM_GetValues           HASH(0x2a05cb8)      5      3       12     4.00 HASH
                    DS9097U_4D628A07                  OWX_Poll     31 227702   322847     1.42 HASH
                                 WEB                   FW_Read      2     14       15     1.07 HASH
              tmr-FW_closeOldClients                                6     15       13     0.87
         FHEMWEB:172.16.19.103:54337                 FW_Notify      1     16        2     0.12 HASH
                             dew_all           dewpoint_Notify      1     16        1     0.06 HASH
                    DS9097U_4D628A07                 OWX_Ready      8 114007      164     0.00 HASH
            tmr-perfmon_ProcessTimer           HASH(0x21f85d0)      1    866        1     0.00 HASH
         FHEMWEB:172.16.19.103:54496                   FW_Read      0      1        0     0.00
                             Logfile               FileLog_Log      0     16        0     0.00
                         TS_GaesteWC               OWTHERM_Set      0      2        0     0.00
                                 WEB                 FW_Notify      0     16        0     0.00
                          eventTypes         eventTypes_Notify      0     16        0     0.00


Weitere Tests mit bezug auf die Fehlermeldungen mache ich morgen, wäre schön, wenn Du weitere debugging Ausgaben einbauen könntest.

Gruß Joachim
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 24 Januar 2014, 23:34:40
ah, jetzt bin ich ein bischen schlauer:

Die Meldungen vom ersten Test:
Use of uninitialized value in substr at ./FHEM/00_OWX.pm line 749.
kommen daher, das auf Deinem 9097-Adapter ein DS2502 sitzt. Der hat den Family-code 09
siehe auch:
define ID_DS9097U_4D628A07 OWID 09 4D628A070000 3600
und wird von OWX/OWID nicht unterstützt:
2014.01.24 22:15:10.033 3: OWX: Unknown family code '09' found
OWID kommt mit dem DS2502 natürlich trotzdem zurecht - es ließt ja außer der ID nichts aus.

diese Meldungen sollten mit dem synchronen OWX eigentlich alle auch auftreten.

Aber prima, das der code für den DS9097 auch prinziell erst mal läuft, den kann ich selber nämlich gar nicht testen - da habe ich den code 'blind' umgeschrieben.

Mit dem 'Absturz' bin ich erst mal nicht schlauer geworden. Hat Perl da noch was auf die Console geschrieben? Laut log scheint nach der Ausgabe 2014.01.24 20:42:27.086 3: OWX_SER::Search_2480 2nd return has wrong parameter with length = 9 das fhem ja neu gestartet worden zu sein. Hast Du da einen Watchdog? Passierte das beim Hochfahren (das war bei einem Bus-Search)?

Gruß,

Norbert

Titel: Antw:OWX asynchron überarbeitet
Beitrag von: Joachim am 25 Januar 2014, 09:37:26
Guten Morgen Norbert,
habe mal versucht, OWX über nacht laufen zu lassen.
Erstmal Deine Fragen beantworten.
Zitatdas fhem ja neu gestartet worden zu sein. Hast Du da einen Watchdog? Passierte das beim Hochfahren (das war bei einem Bus-Search)?
Ich habe keinen Watchdog oder ähnliches. FHEM auf einem Pi, mit putty ssh-Konsole geöffnet. FHEM aus der WEB-Oberfläche gestoppt.
Konfigdateien bearbeitet, und dann FHEM auf der Konsole ganz normal mit
sudo /etc/init.d/fhem start
gestartet. Die Fehlermeldungen vom Anfang konnte ich bisher nicht reproduzieren, befürchte aber dass mir udev einen Streich gespielt hat. Auch wenn ich keinen Adapter abgezogen habe. Wenn ich heute Abend Zeit habe, werde ich dem Veracht mal nachgehen.
Über den Bus-Search ist er hinausgekommen.
Jetzt zu meinen Test über Nacht:
Um 23:06:28:231 FHEM mit dem LinkUSBi und den DS9097U-009 gestartet
Keine Fehlermeldungen auf der Konsole
hier das log:
2
014.01.24 23:06:28.231 1: Including fhem.cfg
2014.01.24 23:06:28.588 2: Perfmon: ready to watch out for delays greater than one second
2014.01.24 23:06:28.663 3: telnetPort: port 7072 opened
2014.01.24 23:06:29.070 3: WEB: port 8083 opened
2014.01.24 23:06:29.292 2: eventTypes: loaded 806 events from ./log/eventTypes.txt
2014.01.24 23:06:29.295 1: Including ./FHEM/OWXasync.cfg
2014.01.24 23:06:37.631 3: OWID: Device ID_LinkUSBi defined.
2014.01.24 23:06:37.703 3: OWTHERM: Device TS_Bad defined.
2014.01.24 23:06:37.778 3: OWMULTI: Device FS_Bad defined.
2014.01.24 23:06:37.795 3: OWTHERM: Device TS_Bue defined.
2014.01.24 23:06:37.810 3: OWTHERM: Device TS_Bue_Zuluft defined.
2014.01.24 23:06:37.824 3: OWMULTI: Device FS_Bue_Zuluft defined.
2014.01.24 23:06:37.843 3: OWTHERM: Device TS_Flur defined.
2014.01.24 23:06:37.858 3: OWTHERM: Device TS_GZ defined.
2014.01.24 23:06:37.873 3: OWTHERM: Device TS_KG_gross defined.
2014.01.24 23:06:37.888 3: OWTHERM: Device TS_Gefrierschrank defined.
2014.01.24 23:06:37.903 3: OWTHERM: Device TS_Kue defined.
2014.01.24 23:06:37.917 3: OWTHERM: Device TS_Kuehlschrank defined.
2014.01.24 23:06:37.932 3: OWTHERM: Device TS_SZ defined.
2014.01.24 23:06:37.947 3: OWTHERM: Device TS_WHR960_Luft_in defined.
2014.01.24 23:06:37.962 3: OWTHERM: Device TS_WHR960_Sole_in defined.
2014.01.24 23:06:37.977 3: OWTHERM: Device TS_WHR960_Sole_out defined.
2014.01.24 23:06:37.992 3: OWTHERM: Device TS_WZ defined.
2014.01.24 23:06:38.007 3: OWMULTI: Device FS_WZ defined.
2014.01.24 23:06:38.023 1: Including ./FHEM/WHR960.cfg
2014.01.24 23:06:38.055 3: Opening WHR960 device /dev/ttyUSB4
2014.01.24 23:06:38.064 3: Setting WHR960 baudrate to 9600
2014.01.24 23:06:38.072 3: WHR960 device opened
2014.01.24 23:06:38.078 1: Including ./FHEM/DBLog.cfg
2014.01.24 23:06:38.515 3: Connecting to database SQLite:dbname=/opt/fhem/fhem.db with user
2014.01.24 23:06:38.587 3: Connection to db SQLite:dbname=/opt/fhem/fhem.db established for pid 7649
2014.01.24 23:06:38.604 3: Connection to db SQLite:dbname=/opt/fhem/fhem.db established
2014.01.24 23:06:39.045 3: OWID: Device ID_DS9097U_4D628A07 defined.
2014.01.24 23:06:39.056 3: OWTHERM: Device TS_GaesteWC defined.
2014.01.24 23:06:39.074 3: OWTHERM: Device TS_KG_Verteilung defined.
2014.01.24 23:06:39.088 1: Including ./log/fhem.save
2014.01.24 23:06:39.324 0: Server started with 44 defined entities (version $Id: fhem.pl 4709 2014-01-21 18:00:07Z rudolfkoenig $, os linux, user fhem, pid 7649)
2014.01.24 23:06:39.326 1: Perfmon: possible freeze starting at 23:06:29, delay is 10.325
2014.01.24 23:06:39.331 3: Opening DS9097U_4D628A07 device /dev/ttyUSB1
2014.01.24 23:06:39.340 3: Setting DS9097U_4D628A07 baudrate to 9600
2014.01.24 23:06:39.348 3: DS9097U_4D628A07 device opened
2014.01.24 23:06:39.349 1: OWX_SER: Serial device /dev/ttyUSB1@9600 defined
2014.01.24 23:06:46.546 3: Opening LinkUSBi device /dev/ttyUSB20
2014.01.24 23:06:46.554 3: Setting LinkUSBi baudrate to 9600
2014.01.24 23:06:46.574 3: LinkUSBi device opened
2014.01.24 23:06:46.575 1: OWX_SER: Serial device /dev/ttyUSB20@9600 defined
2014.01.24 23:06:47.599 1: Perfmon: possible freeze starting at 23:06:40, delay is 7.598
2014.01.24 23:06:56.745 5: OWX_SER::Search: new device found 28.295FBA030000.AA
2014.01.24 23:06:56.925 5: OWX_SER::Search: new device found 28.ED3788040000.F3
2014.01.24 23:06:57.104 5: OWX_SER::Search: new device found 09.4D628A070000.D9
2014.01.24 23:06:57.324 3: OWX: Unknown family code '09' found
2014.01.24 23:06:57.328 2: OWX: 1-Wire devices found on bus DS9097U_4D628A07 (TS_GaesteWC,TS_KG_Verteilung,ID_DS9097U_4D628A07)
2014.01.24 23:06:59.750 5: OWX_SER::Search: new device found 10.9AEB01020800.99
2014.01.24 23:06:59.935 5: OWX_SER::Search: new device found 10.8FEF01020800.36
2014.01.24 23:07:00.118 5: OWX_SER::Search: new device found 28.B449BA030000.B1
2014.01.24 23:07:00.305 5: OWX_SER::Search: new device found 28.0C2E88040000.62
2014.01.24 23:07:00.488 5: OWX_SER::Search: new device found 28.2E1BBA030000.D9
2014.01.24 23:07:00.672 5: OWX_SER::Search: new device found 28.2118BA030000.B3
2014.01.24 23:07:00.857 5: OWX_SER::Search: new device found 28.212772040000.07
2014.01.24 23:07:01.044 5: OWX_SER::Search: new device found 28.A1E265040000.A3
2014.01.24 23:07:01.227 5: OWX_SER::Search: new device found 28.198B72040000.59
2014.01.24 23:07:01.413 5: OWX_SER::Search: new device found 28.B930BA030000.65
2014.01.24 23:07:01.600 5: OWX_SER::Search: new device found 28.559E87040000.0F
2014.01.24 23:07:01.793 5: OWX_SER::Search: new device found 28.8B49BA030000.78
2014.01.24 23:07:01.978 5: OWX_SER::Search: new device found 28.2F4ABA030000.B6
2014.01.24 23:07:02.162 5: OWX_SER::Search: new device found 28.1FB087040000.EF
2014.01.24 23:07:02.363 5: OWX_SER::Search: new device found 26.680C6A010000.02
2014.01.24 23:07:02.559 5: OWX_SER::Search: new device found 26.890C6A010000.1C
2014.01.24 23:07:02.744 5: OWX_SER::Search: new device found 26.930C6A010000.88
2014.01.24 23:07:02.927 5: OWX_SER::Search: new device found 01.2C5987150000.B0
2014.01.24 23:07:03.320 2: OWX: 1-Wire devices found on bus LinkUSBi (TS_SZ,TS_Kue,TS_WHR960_Sole_in,TS_WHR960_Luft_in,TS_Flur,TS_Bad,TS_Gefrierschrank,TS_WZ,TS_Kuehlschrank,TS_WHR960_Sole_out,TS_KG_gross,TS_Bue,TS_GZ,TS_Bue_Zuluft,FS_WZ,FS_Bad,FS_Bue_Zuluft,ID_LinkUSBi)
2014.01.24 23:07:03.332 1: Perfmon: possible freeze starting at 23:06:58, delay is 5.331
2014.01.24 23:11:46.917 5: OWX_SER::Search: new alarm device found 28.ED3788040000.F3
2014.01.24 23:11:47.406 1: /dev/ttyUSB4 disconnected, waiting to reappear
2014.01.24 23:11:47.683 3: Setting WHR960 baudrate to 9600
2014.01.24 23:11:47.692 1: /dev/ttyUSB4 reappeared (WHR960)
2014.01.24 23:11:48.046 5: OWX_SER::Search: new alarm device found 10.9AEB01020800.99
2014.01.24 23:12:33.830 1: /dev/ttyUSB4 disconnected, waiting to reappear
2014.01.24 23:12:34.035 3: Setting WHR960 baudrate to 9600
2014.01.24 23:12:34.139 1: /dev/ttyUSB4 reappeared (WHR960)
2014.01.24 23:12:36.008 3: OWX_SER::Search_2480 2nd return has wrong parameter with length = 13
2014.01.24 23:12:39.320 3: OWX_SER::Search_2480 2nd return has wrong parameter with length = 5
2014.01.24 23:12:41.889 3: OWX_SER::Search_2480 2nd return has wrong parameter with length = 15
2014.01.24 23:17:43.741 3: OWX_SER::Search_2480 2nd return has wrong parameter with length = 10
2014.01.24 23:17:50.366 3: OWX_SER::Search_2480 2nd return has wrong parameter with length = 14
2014.01.24 23:33:19.669 3: OWX_SER::Search_2480 2nd return has wrong parameter with length = 15
2014.01.25 00:06:48.243 1: Perfmon: possible freeze starting at 00:06:42, delay is 6.242
2014.01.25 00:06:54.551 1: Perfmon: possible freeze starting at 00:06:49, delay is 5.55
2014.01.25 01:06:48.216 1: Perfmon: possible freeze starting at 01:06:42, delay is 6.216
2014.01.25 01:06:54.519 1: Perfmon: possible freeze starting at 01:06:49, delay is 5.519
2014.01.25 02:06:48.338 1: Perfmon: possible freeze starting at 02:06:43, delay is 5.338
2014.01.25 02:06:54.471 1: Perfmon: possible freeze starting at 02:06:49, delay is 5.47
2014.01.25 03:06:48.257 1: Perfmon: possible freeze starting at 03:06:42, delay is 6.256
2014.01.25 03:06:54.538 1: Perfmon: possible freeze starting at 03:06:49, delay is 5.537
2014.01.25 04:06:48.327 1: Perfmon: possible freeze starting at 04:06:43, delay is 5.326
2014.01.25 04:06:54.522 1: Perfmon: possible freeze starting at 04:06:49, delay is 5.521
2014.01.25 05:06:48.349 1: Perfmon: possible freeze starting at 05:06:43, delay is 5.348
2014.01.25 05:06:54.606 1: Perfmon: possible freeze starting at 05:06:49, delay is 5.606
2014.01.25 06:06:48.348 1: Perfmon: possible freeze starting at 06:06:43, delay is 5.347
2014.01.25 06:06:54.564 1: Perfmon: possible freeze starting at 06:06:49, delay is 5.563
2014.01.25 07:06:48.187 1: Perfmon: possible freeze starting at 07:06:43, delay is 5.187
2014.01.25 07:06:54.324 1: Perfmon: possible freeze starting at 07:06:49, delay is 5.323
2014.01.25 08:06:48.245 1: Perfmon: possible freeze starting at 08:06:43, delay is 5.244
2014.01.25 08:06:54.355 1: Perfmon: possible freeze starting at 08:06:49, delay is 5.354
2014.01.25 08:40:34.071 3: OWX_SER::Search_2480 2nd return has wrong parameter with length = 11
2014.01.25 09:04:09.557 3: OWX_SER::Search_2480 2nd return has wrong parameter with length = 7
2014.01.25 09:06:48.210 1: Perfmon: possible freeze starting at 09:06:43, delay is 5.209
2014.01.25 09:06:54.300 1: Perfmon: possible freeze starting at 09:06:49, delay is 5.299
2014.01.25 09:09:29.005 1: Perfmon: possible freeze starting at 09:09:27, delay is 2.005
2014.01.25 09:09:34.095 1: Perfmon: possible freeze starting at 09:09:33, delay is 1.095

bis ca 23:20 die Konsole und FHEM beobachtet, bemerkt, das OWX readings immer seltener Wurden
Dann Konsole geschlossen, PC heruntergefahren Schlafen gegeangen.
un 8:30 PC gestartet, mit FHEM verbunden.
FHEM läuft noch, ist bedienbar, allerdings hat OWX seit ca 00:06 kein Wert mehr in DbLog geschrieben.
hier mal der Eventmonitor von heute morgen:

2014-01-25 08:40:39.051 dummy alive 0
2014-01-25 08:41:39.058 dummy alive 1
2014-01-25 08:42:39.063 dummy alive 0
2014-01-25 08:43:39.047 dummy alive 1
2014-01-25 08:44:39.044 dummy alive 0
2014-01-25 08:45:39.046 dummy alive 1
2014-01-25 08:46:39.049 dummy alive 0
2014-01-25 08:47:39.049 dummy alive 1
2014-01-25 08:48:39.049 dummy alive 0
2014-01-25 08:49:39.050 dummy alive 1
2014-01-25 08:50:39.058 dummy alive 0
2014-01-25 08:51:39.043 dummy alive 1
2014-01-25 08:52:39.044 dummy alive 0
2014-01-25 08:53:39.064 dummy alive 1
2014-01-25 08:54:39.048 dummy alive 0
2014-01-25 08:55:39.066 dummy alive 1
2014-01-25 08:56:39.069 dummy alive 0
2014-01-25 08:57:39.048 dummy alive 1
2014-01-25 08:58:39.060 dummy alive 0
2014-01-25 08:59:39.053 dummy alive 1
2014-01-25 09:00:39.055 dummy alive 0
2014-01-25 09:01:39.050 dummy alive 1
2014-01-25 09:02:39.057 dummy alive 0
2014-01-25 09:03:39.043 dummy alive 1
2014-01-25 09:04:39.061 dummy alive 0
2014-01-25 09:05:39.051 dummy alive 1
2014-01-25 09:06:39.052 dummy alive 0
2014-01-25 09:07:39.053 dummy alive 1
2014-01-25 09:08:39.055 dummy alive 0
2014-01-25 09:09:39.049 dummy alive 1
2014-01-25 09:10:39.053 dummy alive 0

hier Apptime:

                                name                  function    max  count    total  average param Max call
                  tmr-OWID_GetValues           HASH(0x14b7470)   6286     10    62149  6214.90 HASH
                  tmr-OWID_GetValues           HASH(0x1830538)   6157     10    60948  6094.80 HASH
                             myDbLog                 DbLog_Get   1638     21     6195   295.00 HASH
         FHEMWEB:172.16.19.103:49946                   FW_Read   1061      7     1075   153.57 HASH
                              WHR960              WHR960_Ready    237      2      268   134.00 HASH
               tmr-OWMULTI_GetValues           HASH(0x1583228)     75    125     3920    31.36 HASH
               tmr-OWMULTI_GetValues           HASH(0x154d5f0)    117    127     3934    30.98 HASH
               tmr-OWMULTI_GetValues           HASH(0x15b1c00)     69    119     3672    30.86 HASH
                              TS_Bad      OWTHERM_AfterExecute     54      2       54    27.00 HASH
                              WHR960               WHR960_Read    998  74758  1517956    20.30 HASH
                         tmr-at_Exec           HASH(0x1809ea0)     58    617    10263    16.63 HASH
                               alive                 dummy_Set     43    673     6060     9.00 HASH
                         TS_KG_gross      OWTHERM_AfterExecute     16      2       16     8.00 HASH
               tmr-OWTHERM_GetValues           HASH(0x15a87c0)     23    123      853     6.93 HASH
               tmr-OWTHERM_GetValues           HASH(0x141a0d8)     28    127      868     6.83 HASH
               tmr-OWTHERM_GetValues           HASH(0x15b0bd8)     25    120      807     6.72 HASH
               tmr-OWTHERM_GetValues           HASH(0x1830df8)     17    123      812     6.60 HASH
                             myDbLog                 DbLog_Log    921   1079     6995     6.48 HASH
               tmr-OWTHERM_GetValues           HASH(0x15af478)     24    126      816     6.48 HASH
               tmr-OWTHERM_GetValues           HASH(0x15b1040)     16    120      774     6.45 HASH
               tmr-OWTHERM_GetValues           HASH(0x15aed40)     18    126      805     6.39 HASH

hier ein Auszg aus DbLog:


2014-01-24 23:06:39 global GLOBAL INITIALIZED state INITIALIZED
2014-01-24 23:06:47 TS_KG_gross OWTHERM Temperatur: 12.9 Temperatur 12.9
2014-01-24 23:06:47 TS_Bue_Zuluft OWTHERM Temperatur: 13.1 Temperatur 13.1
2014-01-24 23:06:47 FS_Bue_Zuluft OWMULTI Temperatur: 13.1 Temperatur 13.1 °C
2014-01-24 23:06:47 FS_Bue_Zuluft OWMULTI Feuchte: 45.5 Feuchte 45.5
2014-01-24 23:06:47 FS_Bue_Zuluft OWMULTI dewpoint: 1.6 dewpoint 1.6
2014-01-24 23:06:47 FS_Bue_Zuluft OWMULTI absFeuchte: 4.1 absFeuchte 4.1
2014-01-24 23:06:47 TS_KG_gross OWTHERM Temperatur: 13 Temperatur 13
2014-01-24 23:06:47 FS_Bad OWMULTI Temperatur: 18.1 Temperatur 18.1 °C
2014-01-24 23:06:47 FS_Bad OWMULTI Feuchte: 46.3 Feuchte 46.3
2014-01-24 23:06:47 FS_Bad OWMULTI dewpoint: 6.4 dewpoint 6.4
2014-01-24 23:06:47 FS_Bad OWMULTI absFeuchte: 6.0 absFeuchte 6.0
2014-01-24 23:06:48 TS_WHR960_Sole_in OWTHERM Temperatur: 7.6 Temperatur 7.6
2014-01-24 23:06:48 FS_WZ OWMULTI Temperatur: 15.2 Temperatur 15.2 °C
2014-01-24 23:06:48 FS_WZ OWMULTI Feuchte: 46.1 Feuchte 46.1
2014-01-24 23:06:48 FS_WZ OWMULTI dewpoint: 3.7 dewpoint 3.7
2014-01-24 23:06:48 FS_WZ OWMULTI absFeuchte: 4.9 absFeuchte 4.9
2014-01-24 23:06:48 TS_WHR960_Sole_out OWTHERM Temperatur: 3.8 Temperatur 3.8
2014-01-24 23:06:49 TS_KG_Verteilung OWTHERM Temperatur: 12.6 Temperatur 12.6
2014-01-24 23:06:49 TS_WHR960_Luft_in OWTHERM Temperatur: -4.3 Temperatur -4.3
2014-01-24 23:06:49 TS_KG_Verteilung OWTHERM Temperatur: 12.5 Temperatur 12.5
2014-01-24 23:06:49 TS_GaesteWC OWTHERM Temperatur: 15.6 Temperatur 15.6
2014-01-24 23:06:49 WHR960 WHR960 Frischluft: 7.5 Frischluft 7.5
2014-01-24 23:06:49 WHR960 WHR960 Zuluft: 15 Zuluft 15
2014-01-24 23:06:49 WHR960 WHR960 Abluft: 16 Abluft 16
2014-01-24 23:06:49 WHR960 WHR960 Fortluft: 8 Fortluft 8
2014-01-24 23:06:49 WHR960 WHR960 ErdWT: -3.5 ErdWT -3.5
2014-01-24 23:06:49 TS_Kue OWTHERM Temperatur: 15.3 Temperatur 15.3
2014-01-24 23:06:49 TS_Bue OWTHERM Temperatur: 21 Temperatur 21
2014-01-24 23:06:49 TS_Flur OWTHERM Temperatur: 15.3 Temperatur 15.3
2014-01-24 23:06:50 TS_Gefrierschrank OWTHERM Temperatur: -22.6 Temperatur -22.6
2014-01-24 23:06:50 TS_Gefrierschrank OWTHERM Temperatur: -22.8 Temperatur -22.8
2014-01-24 23:06:50 TS_Kuehlschrank OWTHERM Temperatur: 6.6 Temperatur 6.6
2014-01-24 23:06:50 TS_Kuehlschrank OWTHERM Temperatur: 6.4 Temperatur 6.4
2014-01-24 23:06:50 TS_SZ OWTHERM Temperatur: 16.3 Temperatur 16.3
2014-01-24 23:06:53 FS_Bue_Zuluft OWMULTI VDD: 5.14 VDD 5.14
2014-01-24 23:06:53 FS_Bue_Zuluft OWMULTI Feuchte: 44.7 Feuchte 44.7
2014-01-24 23:06:53 FS_Bue_Zuluft OWMULTI dewpoint: 1.4 dewpoint 1.4
2014-01-24 23:06:53 FS_Bue_Zuluft OWMULTI absFeuchte: 4.0 absFeuchte 4.0
2014-01-24 23:06:53 TS_Bad OWTHERM Temperatur: 18.1 Temperatur 18.1
2014-01-24 23:06:53 TS_WZ OWTHERM Temperatur: 15.2 Temperatur 15.2
2014-01-24 23:06:54 TS_GZ OWTHERM Temperatur: 14.3 Temperatur 14.3
2014-01-24 23:06:56 FS_Bad OWMULTI VDD: 5.14 VDD 5.14
2014-01-24 23:06:56 FS_Bad OWMULTI Temperatur: 18 Temperatur 18 °C
2014-01-24 23:06:56 FS_Bad OWMULTI Feuchte: 46.1 Feuchte 46.1
2014-01-24 23:06:56 FS_Bad OWMULTI dewpoint: 6.3 dewpoint 6.3
2014-01-24 23:06:56 FS_Bad OWMULTI absFeuchte: 5.9 absFeuchte 5.9
2014-01-24 23:06:57 ID_DS9097U_4D628A07 OWID present: 1 present 1
2014-01-24 23:06:59 FS_WZ OWMULTI VDD: 5.14 VDD 5.14
2014-01-24 23:06:59 FS_WZ OWMULTI Feuchte: 45.8 Feuchte 45.8
2014-01-24 23:06:59 FS_WZ OWMULTI dewpoint: 3.6 dewpoint 3.6
2014-01-24 23:06:59 FS_WZ OWMULTI absFeuchte: 4.8 absFeuchte 4.8
2014-01-24 23:07:03 ID_LinkUSBi OWID present: 1 present 1
2014-01-24 23:07:39 alive DUMMY 1 state 1
2014-01-24 23:08:39 alive DUMMY 0 state 0
2014-01-24 23:09:39 alive DUMMY 1 state 1
2014-01-24 23:10:39 alive DUMMY 0 state 0
2014-01-24 23:11:37 TS_Bad OWTHERM Temperatur: 18 Temperatur 18
2014-01-24 23:11:39 alive DUMMY 1 state 1
2014-01-24 23:11:47 FS_Bue_Zuluft OWMULTI VDD: 5.13 VDD 5.13
2014-01-24 23:11:47 FS_Bue_Zuluft OWMULTI Feuchte: 44.6 Feuchte 44.6
2014-01-24 23:11:47 FS_Bue_Zuluft OWMULTI dewpoint: 1.3 dewpoint 1.3
2014-01-24 23:11:47 FS_Bue_Zuluft OWMULTI absFeuchte: 3.9 absFeuchte 3.9
2014-01-24 23:11:47 WHR960 WHR960 DISCONNECTED state DISCONNECTED
2014-01-24 23:11:47 WHR960 WHR960 CONNECTED state CONNECTED
2014-01-24 23:11:47 TS_KG_gross OWTHERM Temperatur: 12.9 Temperatur 12.9
2014-01-24 23:12:33 WHR960 WHR960 DISCONNECTED state DISCONNECTED
2014-01-24 23:12:34 WHR960 WHR960 CONNECTED state CONNECTED
2014-01-24 23:12:39 alive DUMMY 0 state 0
2014-01-24 23:13:39 alive DUMMY 1 state 1
2014-01-24 23:14:39 alive DUMMY 0 state 0
2014-01-24 23:15:39 alive DUMMY 1 state 1
2014-01-24 23:16:39 alive DUMMY 0 state 0
2014-01-24 23:16:51 WHR960 WHR960 Frischluft: 7.5 Frischluft 7.5
2014-01-24 23:16:51 WHR960 WHR960 Zuluft: 15 Zuluft 15
2014-01-24 23:16:51 WHR960 WHR960 Abluft: 16 Abluft 16
2014-01-24 23:16:51 WHR960 WHR960 Fortluft: 8 Fortluft 8
2014-01-24 23:16:51 WHR960 WHR960 ErdWT: -3.5 ErdWT -3.5
2014-01-24 23:17:39 alive DUMMY 1 state 1
2014-01-24 23:18:39 alive DUMMY 0 state 0
2014-01-24 23:19:39 alive DUMMY 1 state 1
2014-01-24 23:20:39 alive DUMMY 0 state 0
2014-01-24 23:21:39 alive DUMMY 1 state 1
2014-01-24 23:22:39 alive DUMMY 0 state 0
2014-01-24 23:23:39 alive DUMMY 1 state 1
2014-01-24 23:24:39 alive DUMMY 0 state 0
2014-01-24 23:25:39 alive DUMMY 1 state 1
2014-01-24 23:26:39 alive DUMMY 0 state 0
2014-01-24 23:26:55 WHR960 WHR960 Frischluft: 7.5 Frischluft 7.5
2014-01-24 23:26:55 WHR960 WHR960 Zuluft: 15 Zuluft 15
2014-01-24 23:26:55 WHR960 WHR960 Abluft: 16 Abluft 16
2014-01-24 23:26:55 WHR960 WHR960 Fortluft: 8 Fortluft 8
2014-01-24 23:26:55 WHR960 WHR960 ErdWT: -3.5 ErdWT -3.5
2014-01-24 23:27:39 alive DUMMY 1 state 1
2014-01-24 23:28:39 alive DUMMY 0 state 0
2014-01-24 23:29:39 alive DUMMY 1 state 1
2014-01-24 23:30:39 alive DUMMY 0 state 0
2014-01-24 23:31:39 alive DUMMY 1 state 1
2014-01-24 23:32:39 alive DUMMY 0 state 0
2014-01-24 23:33:39 alive DUMMY 1 state 1
2014-01-24 23:34:39 alive DUMMY 0 state 0
2014-01-24 23:35:39 alive DUMMY 1 state 1
2014-01-24 23:36:39 alive DUMMY 0 state 0
2014-01-24 23:36:57 WHR960 WHR960 Frischluft: 7.5 Frischluft 7.5
2014-01-24 23:36:57 WHR960 WHR960 Zuluft: 15 Zuluft 15
2014-01-24 23:36:57 WHR960 WHR960 Abluft: 16 Abluft 16
2014-01-24 23:36:57 WHR960 WHR960 Fortluft: 8 Fortluft 8
2014-01-24 23:36:57 WHR960 WHR960 ErdWT: -3.5 ErdWT -3.5
2014-01-24 23:37:39 alive DUMMY 1 state 1
2014-01-24 23:38:39 alive DUMMY 0 state 0
2014-01-24 23:39:39 alive DUMMY 1 state 1
2014-01-24 23:40:39 alive DUMMY 0 state 0
2014-01-24 23:41:39 alive DUMMY 1 state 1
2014-01-24 23:42:39 alive DUMMY 0 state 0
2014-01-24 23:43:39 alive DUMMY 1 state 1
2014-01-24 23:44:39 alive DUMMY 0 state 0
2014-01-24 23:45:39 alive DUMMY 1 state 1
2014-01-24 23:46:39 alive DUMMY 0 state 0
2014-01-24 23:46:58 WHR960 WHR960 Frischluft: 7.5 Frischluft 7.5
2014-01-24 23:46:58 WHR960 WHR960 Zuluft: 15 Zuluft 15
2014-01-24 23:46:58 WHR960 WHR960 Abluft: 16 Abluft 16
2014-01-24 23:46:58 WHR960 WHR960 Fortluft: 8 Fortluft 8
2014-01-24 23:46:58 WHR960 WHR960 ErdWT: -3.5 ErdWT -3.5
2014-01-24 23:47:39 alive DUMMY 1 state 1
2014-01-24 23:48:39 alive DUMMY 0 state 0
2014-01-24 23:49:39 alive DUMMY 1 state 1
2014-01-24 23:50:39 alive DUMMY 0 state 0
2014-01-24 23:51:39 alive DUMMY 1 state 1
2014-01-24 23:52:39 alive DUMMY 0 state 0
2014-01-24 23:53:39 alive DUMMY 1 state 1
2014-01-24 23:54:39 alive DUMMY 0 state 0
2014-01-24 23:55:39 alive DUMMY 1 state 1
2014-01-24 23:56:39 alive DUMMY 0 state 0
2014-01-24 23:57:03 WHR960 WHR960 Frischluft: 7.5 Frischluft 7.5
2014-01-24 23:57:03 WHR960 WHR960 Zuluft: 15 Zuluft 15
2014-01-24 23:57:03 WHR960 WHR960 Abluft: 16 Abluft 16
2014-01-24 23:57:03 WHR960 WHR960 Fortluft: 8 Fortluft 8
2014-01-24 23:57:03 WHR960 WHR960 ErdWT: -3.5 ErdWT -3.5
2014-01-24 23:57:39 alive DUMMY 1 state 1
2014-01-24 23:58:39 alive DUMMY 0 state 0
2014-01-24 23:59:39 alive DUMMY 1 state 1
2014-01-25 00:00:39 alive DUMMY 0 state 0
2014-01-25 00:01:39 alive DUMMY 1 state 1
2014-01-25 00:02:39 alive DUMMY 0 state 0
2014-01-25 00:03:39 alive DUMMY 1 state 1
2014-01-25 00:04:39 alive DUMMY 0 state 0
2014-01-25 00:05:39 alive DUMMY 1 state 1
2014-01-25 00:06:39 alive DUMMY 0 state 0
2014-01-25 00:06:48 ID_LinkUSBi OWID present: 0 present 0
2014-01-25 00:06:54 ID_DS9097U_4D628A07 OWID present: 0 present 0
2014-01-25 00:07:10 WHR960 WHR960 Frischluft: 7.5 Frischluft 7.5
2014-01-25 00:07:10 WHR960 WHR960 Zuluft: 15 Zuluft 15
2014-01-25 00:07:10 WHR960 WHR960 Abluft: 16 Abluft 16
2014-01-25 00:07:10 WHR960 WHR960 Fortluft: 8 Fortluft 8
2014-01-25 00:07:10 WHR960 WHR960 ErdWT: -3.5 ErdWT -3.5

Ab 00:06:54 keine Meldungen mehr von OWX

Wenn Du weitere Infos brauchst, sag welche.

Gruß Joachim
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 25 Januar 2014, 13:33:42
hmm irgendwie schlägt hier die 1-Wire-Search immer wieder mal fehl:
2014.01.24 23:12:36.008 3: OWX_SER::Search_2480 2nd return has wrong parameter with length = 13
2014.01.24 23:12:39.320 3: OWX_SER::Search_2480 2nd return has wrong parameter with length = 5
2014.01.24 23:12:41.889 3: OWX_SER::Search_2480 2nd return has wrong parameter with length = 15
2014.01.24 23:17:43.741 3: OWX_SER::Search_2480 2nd return has wrong parameter with length = 10
2014.01.24 23:17:50.366 3: OWX_SER::Search_2480 2nd return has wrong parameter with length = 14
2014.01.24 23:33:19.669 3: OWX_SER::Search_2480 2nd return has wrong parameter with length = 15

Wenn zu viele Fehler auftreten stellt sich das Interval der Devices auf quasi unendlich, ab da gibt's dann keine neuen Werte mehr. Scheint aber nur mit dem DS2480 Busmaster zu passieren, bei dem ist das Timing mit dem neuen OWX aber auch kritischer, weil zwischen derm Bus-Reset und der Ausführung eines Queries Rechenzeit abgegeben wird und damit die Zeitspanne zwischen Reset und Query nicht mehr vom Modul selbst, sondern davon, was sonst noch im FHEM läuft bestimmt wird. Vieleicht sollte ich die Abfolge Reset->Command doch besser synchron laufen lassen und nur zwischen vollständigen Kommandos asynchron rausgehen.

wenn Du das fhem von der Kommandozeile startest, kannst Du die Konsole einfach verbunden lassen, damit man die Ausgaben des Perl-prozesses sehen kann? (geht z.B. auch mit dem 'screen'-kommando, aber eventuell loggt das auf dem Pi auch ins syslog?)

- Norbert
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: Joachim am 25 Januar 2014, 22:30:34
Moin Norbert,

hab da mal ein Log für Dich.
Irgendwie verschluckt er sich:
2014.01.25 21:32:25.010 1: Including fhem.cfg
2014.01.25 21:32:25.059 2: Perfmon: ready to watch out for delays greater than one second
2014.01.25 21:32:25.069 3: telnetPort: port 7072 opened
2014.01.25 21:32:25.120 3: WEB: port 8083 opened
2014.01.25 21:32:25.143 2: eventTypes: loaded 41 events from ./log/eventTypes.txt
2014.01.25 21:32:26.277 3: OWTHERM: Device OWX_28_ED3788040000 defined.
2014.01.25 21:32:26.283 3: OWID: Device OWX_09_4D628A070000 defined.
2014.01.25 21:32:26.284 1: Including ./log/fhem.save
2014.01.25 21:32:26.286 0: Server started with 8 defined entities (version $Id: fhem.pl 4709 2014-01-21 18:00:07Z rudolfkoenig $, os linux, user joachim, pid 8691)
2014.01.25 21:32:27.000 3: Opening DS9097U_4D628A07 device /dev/ttyUSB0
2014.01.25 21:32:27.009 3: Setting DS9097U_4D628A07 baudrate to 9600
2014.01.25 21:32:27.010 3: DS9097U_4D628A07 device opened
2014.01.25 21:32:27.010 1: OWX_SER: Serial device /dev/ttyUSB0@9600 defined
2014.01.25 21:32:27.639 3: OWX_SER::Query_2480 Sending out        0xc1
2014.01.25 21:32:28.639 3: OWX_SER::Query_2480 Sending out        0x17 0x45 0x5b 0x0f 0x91
2014.01.25 21:32:28.647 1: Perfmon: possible freeze starting at 21:32:27, delay is 1.647
2014.01.25 21:32:36.001 3: OWX_SER::Query_2480 Sending out        0xe3 0xc5
2014.01.25 21:32:36.007 3: OWX_SER::Complex: Sending out 0x55 0x28 0xed 0x37 0x88 0x04 0x00 0x00 0xf3 0x44
2014.01.25 21:32:36.007 3: OWX_SER::Query_2480 Sending out        0xe1 0x55 0x28 0xed 0x37 0x88 0x04 0x00 0x00 0xf3 0x44
2014.01.25 21:32:36.022 3: OWX_SER::Complex: Receiving   0x55 0x28 0xed 0x37 0x88 0x04 0x00 0x00 0xf3 0x44
2014.01.25 21:32:37.001 3: OWX_SER::Query_2480 Sending out        0xe3 0xc5
2014.01.25 21:32:37.007 3: OWX_SER::Complex: Sending out 0x55 0x28 0xed 0x37 0x88 0x04 0x00 0x00 0xf3 0xbe 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff
2014.01.25 21:32:37.007 3: OWX_SER::Query_2480 Sending out        0xe1 0x55 0x28 0xed 0x37 0x88 0x04 0x00 0x00 0xf3 0xbe 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff
2014.01.25 21:32:37.031 3: OWX_SER::Complex: Receiving   0x55 0x28 0xed 0x37 0x88 0x04 0x00 0x00 0xf3 0xbe 0x50 0x01 0x4b 0x46 0x7f 0xff 0x10 0x10 0x49
2014.01.25 21:32:38.648 3: OWX_SER::Query_2480 Sending out        0xe3 0xc5
2014.01.25 21:32:38.699 3: OWX_SER::Query_2480 Sending out        0xe1 0xf0 0xe3 0xb5
2014.01.25 21:32:38.750 3: OWX_SER::Query_2480 Sending out        0xe1 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0xe3 0xa5
2014.01.25 21:32:38.801 3: OWX_SER::Query_2480 Sending out        0xe3 0xc5
2014.01.25 21:32:38.851 3: OWX_SER::Query_2480 Sending out        0xe1 0xf0 0xe3 0xb5
2014.01.25 21:32:38.902 3: OWX_SER::Query_2480 Sending out        0xe1 0x02 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0xe3 0xa5
2014.01.25 21:32:38.953 3: OWX_SER::Query_2480 Sending out        0xe3 0xc5
2014.01.25 21:32:39.003 3: OWX_SER::Query_2480 Sending out        0xe1 0xf0 0xe3 0xb5
2014.01.25 21:32:39.054 3: OWX_SER::Query_2480 Sending out        0xe1 0x02 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0xe3 0xa5
2014.01.25 21:32:39.106 3: OWX: Unknown family code '09' found
2014.01.25 21:32:39.106 2: OWX: 1-Wire devices found on bus DS9097U_4D628A07 (OWX_28_ED3788040000,OWX_09_4D628A070000)
2014.01.25 21:33:31.001 3: OWX_SER::Query_2480 Sending out        0xe3 0xc5
2014.01.25 21:33:31.052 3: OWX_SER::Query_2480 Sending out        0xe1 0xf0 0xe3 0xb5
2014.01.25 21:33:31.102 3: OWX_SER::Query_2480 Sending out        0xe1 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0xe3 0xa5
2014.01.25 21:33:35.001 3: OWX_SER::Query_2480 Sending out        0xe3 0xc5
2014.01.25 21:33:35.007 3: OWX_SER::Complex: Sending out 0x55 0x28 0xed 0x37 0x88 0x04 0x00 0x00 0xf3 0x44
2014.01.25 21:33:35.008 3: OWX_SER::Query_2480 Sending out        0xe1 0x55 0x28 0xed 0x37 0x88 0x04 0x00 0x00 0xf3 0x44
2014.01.25 21:33:35.022 3: OWX_SER::Complex: Receiving   0x55 0x28 0xed 0x37 0x88 0x04 0x00 0x00 0xf3 0x44
2014.01.25 21:33:36.001 3: OWX_SER::Query_2480 Sending out        0xe3 0xc5
2014.01.25 21:33:36.007 3: OWX_SER::Complex: Sending out 0x55 0x28 0xed 0x37 0x88 0x04 0x00 0x00 0xf3 0xbe 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff
2014.01.25 21:33:36.007 3: OWX_SER::Query_2480 Sending out        0xe1 0x55 0x28 0xed 0x37 0x88 0x04 0x00 0x00 0xf3 0xbe 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff
2014.01.25 21:33:36.031 3: OWX_SER::Complex: Receiving   0x55 0x28 0xed 0x37 0x88 0x04 0x00 0x00 0xf3 0xbe 0x50 0x01 0x4b 0x46 0x7f 0xff 0x10 0x10 0x49
2014.01.25 21:34:30.001 3: OWX_SER::Query_2480 Sending out        0xe3 0xc5
2014.01.25 21:34:30.052 3: OWX_SER::Query_2480 Sending out        0xe1 0xf0 0xe3 0xb5
2014.01.25 21:34:30.103 3: OWX_SER::Query_2480 Sending out        0xe1 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0xe3 0xa5
2014.01.25 21:34:34.001 3: OWX_SER::Query_2480 Sending out        0xe3 0xc5
2014.01.25 21:34:34.007 3: OWX_SER::Complex: Sending out 0x55 0x28 0xed 0x37 0x88 0x04 0x00 0x00 0xf3 0x44
2014.01.25 21:34:34.008 3: OWX_SER::Query_2480 Sending out        0xe1 0x55 0x28 0xed 0x37 0x88 0x04 0x00 0x00 0xf3 0x44
2014.01.25 21:34:34.022 3: OWX_SER::Complex: Receiving   0x55 0x28 0xed 0x37 0x88 0x04 0x00 0x00 0xf3 0x44
2014.01.25 21:34:35.001 3: OWX_SER::Query_2480 Sending out        0xe3 0xc5
2014.01.25 21:34:35.007 3: OWX_SER::Complex: Sending out 0x55 0x28 0xed 0x37 0x88 0x04 0x00 0x00 0xf3 0xbe 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff
2014.01.25 21:34:35.008 3: OWX_SER::Query_2480 Sending out        0xe1 0x55 0x28 0xed 0x37 0x88 0x04 0x00 0x00 0xf3 0xbe 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff
2014.01.25 21:34:35.031 3: OWX_SER::Complex: Receiving   0x55 0x28 0xed 0x37 0x88 0x04 0x00 0x00 0xf3 0xbe 0x50 0x01 0x4b 0x46 0x7f 0xff 0x10 0x10 0x49
2014.01.25 21:35:29.001 3: OWX_SER::Query_2480 Sending out        0xe3 0xc5
2014.01.25 21:35:29.052 3: OWX_SER::Query_2480 Sending out        0xe1 0xf0 0xe3 0xb5
2014.01.25 21:35:29.103 3: OWX_SER::Query_2480 Sending out        0xe1 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0xe3 0xa5
2014.01.25 21:35:33.001 3: OWX_SER::Query_2480 Sending out        0xe3 0xc5
2014.01.25 21:35:33.008 3: OWX_SER::Complex: Sending out 0x55 0x28 0xed 0x37 0x88 0x04 0x00 0x00 0xf3 0x44
2014.01.25 21:35:33.008 3: OWX_SER::Query_2480 Sending out        0xe1 0x55 0x28 0xed 0x37 0x88 0x04 0x00 0x00 0xf3 0x44
2014.01.25 21:35:33.022 3: OWX_SER::Complex: Receiving   0x55 0x28 0xed 0x37 0x88 0x04 0x00 0x00 0xf3 0x44
2014.01.25 21:35:34.001 3: OWX_SER::Query_2480 Sending out        0xe3 0xc5
2014.01.25 21:35:34.007 3: OWX_SER::Complex: Sending out 0x55 0x28 0xed 0x37 0x88 0x04 0x00 0x00 0xf3 0xbe 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff
2014.01.25 21:35:34.008 3: OWX_SER::Query_2480 Sending out        0xe1 0x55 0x28 0xed 0x37 0x88 0x04 0x00 0x00 0xf3 0xbe 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff
2014.01.25 21:35:34.031 3: OWX_SER::Complex: Receiving   0x55 0x28 0xed 0x37 0x88 0x04 0x00 0x00 0xf3 0xbe 0x50 0x01 0x4b 0x46 0x7f 0xff 0x10 0x10 0x49
2014.01.25 21:36:28.001 3: OWX_SER::Query_2480 Sending out        0xe3 0xc5
2014.01.25 21:36:28.052 3: OWX_SER::Query_2480 Sending out        0xe1 0xf0 0xe3 0xb5
2014.01.25 21:36:28.102 3: OWX_SER::Query_2480 Sending out        0xe1 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0xe3 0xa5
2014.01.25 21:36:32.001 3: OWX_SER::Query_2480 Sending out        0xe3 0xc5
2014.01.25 21:36:32.007 3: OWX_SER::Complex: Sending out 0x55 0x28 0xed 0x37 0x88 0x04 0x00 0x00 0xf3 0x44
2014.01.25 21:36:32.007 3: OWX_SER::Query_2480 Sending out        0xe1 0x55 0x28 0xed 0x37 0x88 0x04 0x00 0x00 0xf3 0x44
2014.01.25 21:36:32.022 3: OWX_SER::Complex: Receiving   0x55 0x28 0xed 0x37 0x88 0x04 0x00 0x00 0xf3 0x44
2014.01.25 21:36:33.001 3: OWX_SER::Query_2480 Sending out        0xe3 0xc5
2014.01.25 21:36:33.008 3: OWX_SER::Complex: Sending out 0x55 0x28 0xed 0x37 0x88 0x04 0x00 0x00 0xf3 0xbe 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff
2014.01.25 21:36:33.008 3: OWX_SER::Query_2480 Sending out        0xe1 0x55 0x28 0xed 0x37 0x88 0x04 0x00 0x00 0xf3 0xbe 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff
2014.01.25 21:36:33.031 3: OWX_SER::Complex: Receiving   0x55 0x28 0xed 0x37 0x88 0x04 0x00 0x00 0xf3 0xbe 0x51 0x01 0x4b 0x46 0x7f 0xff 0x0f 0x10 0xfe
2014.01.25 21:37:27.001 3: OWX_SER::Query_2480 Sending out        0xe3 0xc5
2014.01.25 21:37:27.052 3: OWX_SER::Query_2480 Sending out        0xe1 0xf0 0xe3 0xb5
2014.01.25 21:37:27.103 3: OWX_SER::Query_2480 Sending out        0xe1 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0xe3 0xa5
2014.01.25 21:37:28.648 3: OWX_SER::Query_2480 Sending out        0xe3 0xc5
2014.01.25 21:37:28.654 3: OWX_SER::Query_2480 Sending out        0xe1 0xf0 0xe3 0xb5
2014.01.25 21:37:28.659 3: OWX_SER::Query_2480 Sending out        0xe1 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0xe3 0xa5
2014.01.25 21:37:29.000 3: OWX_SER::Query_2480 Sending out        0xe3 0xc5
2014.01.25 21:37:29.005 3: OWX_SER::Query_2480 Sending out        0xe1 0xec 0xe3 0xb5
2014.01.25 21:37:29.010 3: OWX_SER::Query_2480 Sending out        0xe1 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0xe3 0xa5
2014.01.25 21:37:29.032 3: OWX_SER::Query_2480 Sending out        0xe1 0xec 0xe3 0xb5
2014.01.25 21:37:29.036 3: OWX_SER::Query_2480 Sending out        0xe1 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0xe3 0xa5
2014.01.25 21:37:29.058 3: OWX_SER::Query_2480 Sending out        0xe1 0xec 0xe3 0xb5
2014.01.25 21:37:29.062 3: OWX_SER::Query_2480 Sending out        0xe1 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0xe3 0xa5
2014.01.25 21:37:29.084 3: OWX_SER::Query_2480 Sending out        0xe1 0xec 0xe3 0xb5
2014.01.25 21:37:29.088 3: OWX_SER::Query_2480 Sending out        0xe1 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0xe3 0xa5
2014.01.25 21:37:29.110 3: OWX_SER::Query_2480 Sending out        0xe1 0xec 0xe3 0xb5
2014.01.25 21:37:29.114 3: OWX_SER::Query_2480 Sending out        0xe1 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0xe3 0xa5
2014.01.25 21:37:29.136 3: OWX_SER::Query_2480 Sending out        0xe1 0xec 0xe3 0xb5
2014.01.25 21:37:29.140 3: OWX_SER::Query_2480 Sending out        0xe1 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0xe3 0xa5
2014.01.25 21:37:29.162 3: OWX_SER::Query_2480 Sending out        0xe1 0xec 0xe3 0xb5
2014.01.25 21:37:29.166 3: OWX_SER::Query_2480 Sending out        0xe1 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0xe3 0xa5
2014.01.25 21:37:29.188 3: OWX_SER::Query_2480 Sending out        0xe1 0xec 0xe3 0xb5
2014.01.25 21:37:29.192 3: OWX_SER::Query_2480 Sending out        0xe1 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0xe3 0xa5
2014.01.25 21:37:29.214 3: OWX_SER::Query_2480 Sending out        0xe1 0xec 0xe3 0xb5
2014.01.25 21:37:29.218 3: OWX_SER::Query_2480 Sending out        0xe1 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0xe3 0xa5
2014.01.25 21:37:29.240 3: OWX_SER::Query_2480 Sending out        0xe1 0xec 0xe3 0xb5
2014.01.25 21:37:29.244 3: OWX_SER::Query_2480 Sending out        0xe1 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0xe3 0xa5
2014.01.25 21:37:29.266 3: OWX_SER::Query_2480 Sending out        0xe1 0xec 0xe3 0xb5

der untere Teil geht dann ewig so weiter.

Gruß Joachim
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 25 Januar 2014, 22:48:14
Danke Dir Joachim, da habe ich jetzt erst mal was zu lesen :-) Mit verbose 5 sieht man ja einiges...
Ich komm aber erst morgen abend dazu wieder am code zu arbeiten.

- Gruß,

Norbert
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: Joachim am 25 Januar 2014, 23:03:37
Kein Stress
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 01 April 2014, 01:46:16
So ich bin einen Riesenschritt weiter. Ich habe alles asynchrone in ein neues Modul OWX_ASYNC gepackt, dieses hat keine Konflikte mit dem synchronen OWX mehr. Man kann zwischen synchronem und asynchronem OWX einfach wählen, indem man das passende Modul im define auswählt. Bisher wird ausschließlich Arduino mit Firmata (FRM) unterstützt.

Pah war ja so nett und hat die Clientmodule nach bestem Wissen und Gewissen so refactored, dass sie sowohl mit synchronem, als auch asynchronem OWX laufen. Ich hab heute abend einige kleinere Fehler im Zusammenspiel mit der asynchronen Schnittstelle ausgebessert. Unter anderem erkennen die Module selber, mit welchem OWX-modus sie laufen sollen:

folgende Clientmodule laufen bei mir (asynchron mit FRM) so wie sie aktuell im SVN-trunk liegen:
21_OWAD.pm
21_OWMULTI.pm
21_OWSWITCH.pm
21_OWTHERM.pm
21_OWID.pm

soweit gefixed, aber noch nicht in den SVN-trunk committed, weil ich nur einen emulierten DS2423 (Dougie-counter) habe und damit die midnight-werte nicht testen kann:
21_OWCOUNT.pm (https://github.com/ntruchsess/fhem-mirror/raw/owx_async_nothread/fhem/FHEM/21_OWCOUNT.pm)
Da wäre ich froh, wenn das mal jemand der einen echten DS2423 hat, testen könnte. Wer kein FRM benutzt kann das auch einfach mit dem synchronen OWX tun, geht bei der Verarbeitung der 1-Wire-Daten intern auf die gleiche Methode. Mit FRM sollte es auch asynchron gehen.

Edit 01.04,15:30 Uhr:
Vorabversion von 21_OWLCD.pm (https://github.com/ntruchsess/fhem-mirror/raw/owx_async_nothread/fhem/FHEM/21_OWLCD.pm) liegt auch schon dort. Testen wie immer auf eigene Gefahr ;-)

Zur Installation:

Einfach statt 'define owx OWX' ein 'define owx OWX_ASYNC' in die fhem.cfg eintragen, der Rest sollte sich selber finden. Wer OWCOUNT drin hat, bitte noch unbedingt die o.g. 21_OWCOUNT.pm von Github herunterladen (https://github.com/ntruchsess/fhem-mirror/raw/owx_async_nothread/fhem/FHEM/21_OWCOUNT.pm) (die im SVN bleibt mit dem OWX_ASYNC gnadenlos hängen).

Gruß,

Norbert
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: larsberghahn am 01 April 2014, 22:19:49
Hallo,
bei FRM über Ethernet steht nach einem reradcfg immer:
Init Failed: Arduino_OW_Temp2, Arduino2 is not connected

Das ist auch so wenn ich allein OWX an dem Arduino definiere.
Wenn ich zusätzlich FRM_OUTs definiere und dort den Status verändere gehen sie auch auf "not connected"
Der Status des FRM Device ist aber stehts Initialized

wenn ich FHEM neu starte verbindet sich der Arduino.
Beim OWX_ASYNC DS18B20 steht die Temperatur zuerst bei 85Grad, wird danach aber richtig eingelesen.

Ich lasse das erstmal über Nacht so laufen, mal gucken was passiert...

MFG Lars
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 01 April 2014, 23:21:56
Zitat von: lars am 01 April 2014, 22:19:49
bei FRM über Ethernet steht nach einem reradcfg immer:
Init Failed: Arduino_OW_Temp2, Arduino2 is not connected

danke für die Rückmeldung, Rereadcfg für NetworkFirmata ist gefixed (https://github.com/ntruchsess/fhem-mirror/commit/77a6c218505c429c988a78591cfb6fb8c37bd6fd). Hatte ich wohl nur mit Firmata über USB getestet.

Gruß,

Norbert
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 03 April 2014, 00:22:45
Zitat von: lars am 01 April 2014, 22:19:49
Beim OWX_ASYNC DS18B20 steht die Temperatur zuerst bei 85Grad, wird danach aber richtig eingelesen.

Danke auch für diesen Hinweis, ich bin dem mal nachgegangen und hab einen subtilen Bug im asynchronen Delay zwischen Temperaturwandlung und Auslesen gefunden und behoben (und ins SVN committet). Mit dem Fehler wurde immer der Temperaturwert von einer Wandlung voher ausgelesen (das fällt nur beim allerersten Auslesen oder bei einer schnellen Temperaturänderung auf...)

Gruß,

Norbert
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: fhem-challenge am 04 April 2014, 13:14:26
OW TempSensoren laufen bei mir nun gut.

Siehe dazu meine Probleme vorher (Timing): http://forum.fhem.de/index.php/topic,21770.0.html (http://forum.fhem.de/index.php/topic,21770.0.html)

Ich habe gestern , neben meinen Haupt-Fhem Server, der auf einem Laptop läuft, nun einen weiteren FHEM Server vollkommen neu aufgesetzt (auf einem cubietruck). Hier lief zunächst (ohne Deine Modifikationen an den Modulen), alles auch nicht erfolgreich. Erst wieder bei "sampling-interval << 300".

Ich bin daher meiner damaligen Vermutung nachgegangen (Timingproblem, abhängig von CPU Speed). Bei mir liefen OWX/OWTHERM in Verbindung mit Arduino <-> FHEM (Laptop) auch auf zwei unterschiedlichen FHEM-Servern nicht. Lediglich auf meinem Raspi lief OWX/OWTHERM erfolgreich (auch bei geringen sampling-interval). Ich vermutete schlicht, das mein Haupt-FHEM Server sowie der "Cubitruck" schlicht zu "schnell" sind. Der Raspi ist dagegen "langsam" genug.

Ich habe dann den Cubitruck von 1080 MHz auf sehr geringe Werte (< 200 Mhz) heruntergetaktet. Un exakt dann funktionierte auch OWX/OWTHEM <-> Arduino wieder korrekt.

Erfolg:

Mit den "modifizierten" Modulen läuft nun auch alles auf dem Cubiboard bei normaler CPU Speed. Sowie auch auf meinem Laptop. Damit scheint das Problem behoben zu sein.

Viele Grüße!

Andreas




Titel: Antw:OWX asynchron überarbeitet -> Support für DS2480 ohne Hintergrundthread
Beitrag von: ntruchsess am 04 April 2014, 23:15:50
den asynchronen Support für DS2480-Busmaster ohne Hintergrundtread hab ich jetzt so refactored, dass das Timing passt. Findet sich ab jetzt im SVN. Einfach OWX_ASYNC anstelle von OWX benutzen.

Läuft mit allen OWX-Clients, die auch schon mit FRM laufen (OWTHERM, OWSWITCH, OWMULTI, OWAD und OWID)

wer OWCOUNT und OWLCD testen will muss diese beiden Module aktuell noch aus meinem Github-repository runterladen, der Stand im SVN-trunk läuft nicht(!) damit.
21OWCOUNT.pm (https://github.com/ntruchsess/fhem-mirror/raw/owx_async_nothread/fhem/FHEM/21_OWCOUNT.pm)
21OWLCD.pm (https://github.com/ntruchsess/fhem-mirror/raw/owx_async_nothread/fhem/FHEM/21_OWLCD.pm)

Hab hier 2*OWTHERM, 1*OWAD, 3*OWSWITCH, 1*OWMULTI, 1*OWCOUNT und 1*OWID mit jeweils 5 Sekunden poll-interval am DS2480 laufen und die Weboberfläche läßt sich noch flüssig bedienen  :)

Gruß,

Norbert

@Andreas: prima, das freut mich :-)
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 05 April 2014, 20:46:34
Heute ist der DS2423 von Tobias gekommen, gleich mal angeschlossen und getestet. Läuft prima mit OWX_ASYNC (und meiner gefixten OWCOUNT-version auf Github). Midnight-werte und memmory-schreiben/lesen scheint auch zu tun.
Leider erst mal nur mit FRM, mein DS2480-Busmaster ist mir gestern abend beim umstecken abgeraucht, muss mich da erst mal um Ersatz kümmern :-(

Gruß,

Norbert
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 07 April 2014, 00:37:40
Es gab mit dem echtem DS2423 doch noch eine Racecondition beim Schreiben über die asynchrone API.
Neuer Stand von 21_OWCOUNT.pm (https://github.com/ntruchsess/fhem-mirror/raw/owx_async_nothread/fhem/FHEM/21_OWCOUNT.pm) (Version 5.13) weiterhin erst mal noch im Github, wird aber langsam 'releasefertig', bräuchte dazu noch Feedback von Installationen mit anderen Busmastern als FRM (Kann aktuell nix anderes Testen, Ersatz für den defekten DS2480 ist aber schon auf dem Weg).

Gruß,

Norbert
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: det. am 13 April 2014, 15:02:43
Hallo Norbert,
habe heute versucht auf meinem Produktiv FHEM einen der zwei Busmaster (DS2480 seriell über USB, Eigenbau, am Cubie2) auf OWX_ASYNC umzustellen. Das geht paar Minuten gut, dann kommt auf der Konsole Folgendes:
ZitatUse of uninitialized value $data in concatenation (.) or string at ./FHEM/21_OWCOUNT.pm line 1738.
Use of uninitialized value in left bitshift (<<) at ./FHEM/21_OWSWITCH.pm line 717.
Can't call method "baudrate" on an undefined value at ./FHEM/00_OWX.pm line 1457.
und direkt danach stirbt FHEM - (mehrmals nachvollziehbar probiert). IM LOG steht nichts.
An dem Busmaster hängen folgende Devices:
ZitatOWX: 1-Wire devices found on bus 1wire_1
10.1CA40B020800      DS18S20/DS1920 OWX_BS_A_005
10.1A700B020800      DS18S20/DS1920 BueroTemp_KG
10.897D0B020800      DS18S20/DS1920 OWX_BS_A_050
10.99B60B020800      DS18S20/DS1920 OWX_BS_A_000
10.39B80B020800      DS18S20/DS1920 OWX_BS_A_100
10.B5AF0B020800      DS18S20/DS1920 OWX_BS_A_010
10.23790B020800      DS18S20/DS1920 OWX_BS_A_020
10.93920B020800      DS18S20/DS1920 Keller_KG
28.0720DD030000      DS18B20        TKS_KG
28.271DDD030000      DS18B20        Flur_UG
12.96AE7B000000      DS2406/DS2507  OWSWITCHB
26.934D27010000      DS2438         OWX_26_934D27010000
01.56EA4E0E0000      DS2401/DS1990A Tuer_Buero
1D.6DD80F000000      DS2423         OWCOUNT_KG
FF.8E0700000100      LCD            OWX_LCD

Was brauchst Du noch für Infos, um damit was anfangen zu können?
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 14 April 2014, 12:29:23
Zitat von: det. am 13 April 2014, 15:02:43
Was brauchst Du noch für Infos, um damit was anfangen zu können?

Hast Du das 21_OWLCD.pm (https://github.com/ntruchsess/fhem-mirror/raw/owx_async_nothread/fhem/FHEM/21_OWLCD.pm) aus meinem 'owx_async_nothread'-Github-branch hergenommen? das ist im FHEM-svn nämlich noch auf dem alten (nicht an Async angepassten) Stand und würde den 'Can't call method "baudrate" on an undefined value at ./FHEM/00_OWX.pm line 1457.'-Fehler (und damit auch dem Abbruch) erklären.

Die OWCOUNT und OWSWITCH-errors schau im mir gleich näher an und melde mich, wenn ich noch mehr Info bräuchte. OWCOUNT ist seit Freitag mit den asynchronen Anpassungen im SVN.

Gruß,

Norbert
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 14 April 2014, 13:23:34
Für den 'Use of uninitialized value in left bitshift (<<) at ./FHEM/21_OWSWITCH.pm line 717.' habe ich gerade einen Fix (https://github.com/ntruchsess/fhem-mirror/commit/333b84ec2cab11100145eb40aa0ef4d463b865f4) ins SVN committed.

Gruß,

Norbert
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: det. am 14 April 2014, 14:16:17
Hallo Norbert,
Vielen Dank, dass Du Dich so schnell mit der Sache beschäftigst. Da ich derzeit auf Arbeit bin, nur über Fernzugang auf Webinterface - OWLCD zeigt bei Version 3.35. Bin mir nicht sicher, ob ich die Datei auf dem Produktivsystem getauscht habe. Auf dem Test Cubietruck hatte ich es getan und mal kurz ein Display dran. Da ging es. Ich teste heute Abend.
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 14 April 2014, 15:18:48
OWLCD 3.35 ist schon die asynchrone Version. Na dann mache ich mich mal auf die Suche, welches Modul im asynchronen Modus noch einen synchroner Aufruf ins OWX macht.
Wäre nett, wenn Du das OWLCD asynchron mal sorgfältig durchtestest, bei mir wollte es nämlich nicht (d.h. gar nicht, weder synchron noch asynchron auch mit der 3.34, es blieb einfach dunkel).

Gruß,

Norbert
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: det. am 14 April 2014, 18:19:38
Hallo Norbert,
hatte zwischenzeitlich die Module fehlerhaft runtergeladen... Jetzt aber den asynchronen Zwischenstand:
FHEM startet nicht mit definiertem OWX_ASYNC... also Busmaster abgezogen, reset am Cubie  .. Start FHEM ... OWX ohne ASYNC definiert  . Busmaster angesteckt shutdown restart im Webinterface - läuft:
ZitatOWX: 1-Wire devices found on bus 1wire_0
20.70C707000000      DS2450     OWX_20_70C707000000
20.B7CB07000000      DS2450     OWX_20_B7CB07000000
28.F213DD030000      DS18B20    OWX_28_F213DD030000
28.76B82A040000      DS18B20    OWX_28_76B82A040000
28.EE81DA030000      DS18B20    OWX_28_EE81DA030000
28.A5A5DA030000      DS18B20    OWX_28_A5A5DA030000
28.1B7BDA030000      DS18B20    OWX_28_1B7BDA030000
12.4EF17B000000      DS2406     OWX_12_4EF17B000000
26.CCDB16000000      DS2438     OWX_26_CCDB16000000
29.565713000000      DS2408     OWX_29_565713000000
FF.430800000100      LCD        OWX_FF_430800000100
über edit files - fhem.cfg Definition in OWX_ASYNC geändert - save fhem.cfg = > jetzt läuft OWX asynchron und viel schneller - allerdings ohne LCD, das hatte ich offenbar nur im synchronen Modus gesehen. Da es die letzten Zeichen einfaach weiter anzeigt, fällt das nicht gleich auf. Praktikabel ist diese Methode nicht wirklich, auch wenn die Sache nachdem man sie so umständlich gestartet hat flüssig alle Sensoren im 5s Intervall abruft. Einen Filelog habe ich nicht definiert, aber man kann über longpoll sehr schön die Veränderung der Daten sehen.
Da die Sensoren und der Cubietruck unnütz bei mir im Homeoffice rumliegen, kannst Du gern schreiben, was ich daran wie noch testen soll. Das Produktivsystem werde ich erst mal nicht mit den Änderungen quälen.
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 14 April 2014, 18:43:52
Zitat von: ntruchsess am 14 April 2014, 15:18:48
Na dann mache ich mich mal auf die Suche, welches Modul im asynchronen Modus noch einen synchroner Aufruf ins OWX macht.

Bingo :-) (https://github.com/ntruchsess/fhem-mirror/commit/5a52468ba83831a70d7ab139b5f2b6768fbd37e7), bin in der methode 'OWID_GetValues' fündig geworden.

noch nicht im SVN, sondern erst mal auf Github (branch owx_async_nothread): 21_OWID.pm (https://github.com/ntruchsess/fhem-mirror/raw/owx_async_nothread/fhem/FHEM/21_OWID.pm). Muss selber erst noch mit 'echter Hardware' testen.

Gruß,

Norbert
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: det. am 14 April 2014, 21:45:40
...die asynchrone Variante schaltet die OWSWITCHs nicht, nach Änderung auf synchron geht es - kommt bei asynchon PRESENT 0 und es ändert sich der STATE bei set output A on etc. nicht - Versionen sind jeweils die aktuellen von heute aus diesem Beitrag.
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 15 April 2014, 01:16:11
die heutigen Änderungen (OWID, OWSWITCH) habe ich ins SVN commitet. OWSWITCH output hat hier mit einem DS2406 mal funktiont, dann wieder nicht. Input war kein Problem. Da bin ich aktuell noch am Untersuchen.
Warum der initiale Bus-search mit Autocreate der Devices mit einem DS2480 Busmaster nicht tut, bin ich auch noch am untersuchen. Mit einem Arduino über Ethernet geht das, der ruft OWX_ASYNC_Init auf, sobald er verbindet, beim DS2480 wird das über die NotifyFn gemacht, wenn global init fertig ist, nur da passiert nix. Naja, ich werds schon finden, nur jetzt ists mir zu spät für heute...

Gruß,

Norbert
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: det. am 15 April 2014, 22:38:38
Hallo Norbert,
habe heute Abend nach update auf beiden Systemen noch mal getestet. OWX synchron - es funktioniert OWID, OWCOUNT, OWSWITCH, etc. wie gewünscht. Auf dem Testsystem mit OWX_ASYNC - rennt im 5s Takt OWAD, OWMULTI und OWTHERM. OWSWITCH funktioniert noch nicht (nur direkt nach dem Start mal kurz, danach present 0). Die Performance ist irre mit 10 Sensoren trotz dokick im 5s Takt. Ich freue mich schon drauf, das bei wesentlich mehr Devices im Produktivsystem bald einzusetzen. Ich kann gern auch das Display noch testen, hab davon noch 2 rumliegen, nur bisher geht es ja async überhaupt nicht.
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 15 April 2014, 23:25:58
Hallo Detlef,

ja, Performance ist schon mal schick. Das zeigt doch, dass ich damit auf dem richtigen Weg bin. Die Devices, auf die lesend zugegriffen werden, scheinen ganz brauchbar zu funktionieren. Schwierigkeiten machen die Funktionen, bei denen mehrere 1-Wire Befehle unmittelbar hintereinander (und voneinander abhängig) ausgeführt werden. Also so was wie Schreiben -> Lesen (für Prüfsumme) -> Prüfsumme schreiben. Da kann bei der asynchronen Ausführung dann etwas dazwischenrutschen, was die Befehlsfolge stört. (Deshalb geht z.B. die Erkennung der DS2423-Varianten noch nicht, da wird der Speicher gelesen, mit einem anderen Wert überschrieben, wieder gelesen und anschließend der ursprüngliche Wert wieder hineingeschrieben). Da muss ich konzeptionell noch etwas wie eine transaktionale Klammer oder eine Art Lock implementieren, damit für ein Device während einer asynchron ausgeführten Befehlsfolge nachfolgende Aufrufe nicht zwischenrein gemischt werden können. Also im Prinzip weiß ich schon, was es können muss, ich will es aber sauber und nicht als Hack machen, sonst versteht es hinterher keiner mehr.

Wg. dem OWLCD: hab grade 21_OWLCD.pm Versioni 3.35 (https://github.com/ntruchsess/fhem-mirror/raw/owx_async_nothread/fhem/FHEM/21_OWLCD.pm) (aus meinem Github) sowohl mit dem normalen OWX, als auch mit OWX_ASYNC getestet, alles an einem DS2480 Busmaster. Im Prinzip scheint beides zu gehen. Jedenfalls macht es mit meinem LCD das gleiche, wie die Version 3.34 aus dem FHEM-SVN, auch wenn das ziemlicher Murks ist. Eigentlich kann ich nur in Zeile 0 vernünftig schreiben. Alle anderen Zeilen produzieren entweder gar nichts, oder an der falschen Stelle. Irgendwie scheinen meine beiden Displays (ein 2004 und ein 1602) nicht zur Pinbelegung des OWLCD-controllers zu passen. Backlight on/off, LCD on/off und die GPIOs gehen jeweils einwandfrei. Vieleicht kannst Du ja mal abtesten, wie das bei Dir ist...

Gruß,

Norbert
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: det. am 15 April 2014, 23:44:07
@ Norbert,
Genau so, lass Dir Zeit. Es geht ja inzwischen synchron alles. Die LCD teste ich morgen gern - nach der Arbeit....
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: det. am 16 April 2014, 16:26:30
hallo Norbert,
neue Meldungen auf der Konsole nach Neustart, restart über FHEMWEB ging nicht:
root@cubie3:~# service fhem status
fhem is not running
root@cubie3:~# service fhem start
jetzt startet fhem...
root@cubie3:~# Use of uninitialized value in concatenation (.) or string at ./FH                                              EM/OWX_Executor.pm line 216.
Use of uninitialized value in concatenation (.) or string at ./FHEM/OWX_Executor.pm line 216.
Use of uninitialized value in concatenation (.) or string at ./FHEM/OWX_Executor.pm line 216.
Use of uninitialized value in concatenation (.) or string at ./FHEM/OWX_Executor.pm line 216.
Use of uninitialized value in concatenation (.) or string at ./FHEM/OWX_Executor.pm line 216.
Use of uninitialized value in concatenation (.) or string at ./FHEM/OWX_Executor.pm line 216.
Use of uninitialized value in concatenation (.) or string at ./FHEM/OWX_Executor.pm line 216.
Use of uninitialized value in concatenation (.) or string at ./FHEM/OWX_Executor.pm line 216.
root@cubie3:~# Use of uninitialized value in concatenation (.) or string at ./FHEM/OWX_Executor.pm line 216.
Use of uninitialized value in concatenation (.) or string at ./FHEM/OWX_Executor.pm line 216.
Use of uninitialized value in concatenation (.) or string at ./FHEM/OWX_Executor.pm line 216.
Use of uninitialized value in concatenation (.) or string at ./FHEM/OWX_Executor.pm line 216.
Use of uninitialized value in concatenation (.) or string at ./FHEM/OWX_Executor.pm line 216.
Use of uninitialized value in concatenation (.) or string at ./FHEM/OWX_Executor.pm line 216.
Use of uninitialized value in concatenation (.) or string at ./FHEM/OWX_Executor.pm line 216.
Use of uninitialized value in concatenation (.) or string at ./FHEM/OWX_Executor.pm line 216.
Use of uninitialized value in concatenation (.) or string at ./FHEM/OWX_Executor.pm line 216.
Use of uninitialized value in concatenation (.) or string at ./FHEM/OWX_Executor.pm line 216.
Use of uninitialized value in concatenation (.) or string at ./FHEM/OWX_Executor.pm line 216.
Use of uninitialized value in concatenation (.) or string at ./FHEM/OWX_Executor.pm line 216.
Use of uninitialized value in concatenation (.) or string at ./FHEM/OWX_Executor.pm line 216.

get 1_wire_0 devices   - geht asynchron nicht, das angesteckte Display wird nicht gefunden.
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: det. am 16 April 2014, 16:47:08
oh, ist das System empfindlich,
habe zum Test von den ehemals 10 Sensoren nur ein Thermometer und das Display dran gelassen und FHEM über Konsole neu gestartet:

OWX: 1-Wire devices found on bus 1wire_0
28.F213DD030000      DS18B20   OWX_28_F213DD030000
FF.430800000100       LCD          OWX_FF_430800000100

nach lcd off und anschliessendem lcd on schreibt es bei lcd test alle 4 Zeilen des Testtextes von pah, allerdings sterbend langsam. Da gibt es offenbar noch ein Problem, was auch die OWSWITCH irgendwann schalten lässt, nur nicht unmittelbar nachdem man das ausgelöst hat.
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 16 April 2014, 18:13:03
Zitat von: det. am 16 April 2014, 16:47:08
schreibt es bei lcd test alle 4 Zeilen des Testtextes von pah, allerdings sterbend langsam.
Danke für's testen. Funktioniert OWLCD Version 3.35 denn mit dem normalen OWX, oder macht es da auch solche Probleme? Das mit der 'sterbend langsamen' Ausführung gehe ich gleich mal an, ich denke, ich weiß, woran das liegt.

Gruß,

Norbert
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: det. am 16 April 2014, 20:20:00
Zitat von: ntruchsess am 16 April 2014, 18:13:03
Funktioniert OWLCD Version 3.35 denn mit dem normalen OWX?
Damit geht es perfekt, 5 Thermometer und 2 x OWAD dran, 20s Abfrageintervall - 4x Temperatur auf dem Display angezeigt - ein Sensor in die Schreibtischleuchte gesteckt - klettert systematisch und wird ohne Verzögerung angezeigt - jetzt schon auf 67,6°C
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 16 April 2014, 22:24:49
danke Dir ;-)

hab OWLCD 3.35 grade ins SVN committet. Die schlechte Performance beim Schreiben liegt nicht am Modul selbst, das kommt vom asynchronen Scheduling in der OWX_Executor.pm. Da arbeite ich jetzt dran. Stay tuned...

Gruß,

Norbert
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: det. am 16 April 2014, 22:29:45
gern, das ist ja das Mindeste und leider auch Einzige, was ich dazu beitragen kann.
Die Sensoren gehen offensichtlich alle prima mir der asynchronen Variante. Die Aktoren zicken (noch) rum.
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: det. am 18 April 2014, 11:34:15
Zitat von: ntruchsess am 16 April 2014, 22:24:49
hab OWLCD 3.35 grade ins SVN committet. Die schlechte Performance beim Schreiben liegt nicht am Modul selbst, das kommt vom asynchronen Scheduling in der OWX_Executor.pm. Da arbeite ich jetzt dran. Stay tuned...

Gruß,

Norbert
habe gerade noch mal etwas getestet mit OWX_ASYNC - das Display soll auf 4 Zeilen jeweils einen Temperaturwert von 4 Stück DS1820 zeigen. Tut es auch, wird aber nicht in Echtzeit aktualisiert, sondern irgendwie stochastisch. Wenn man die Refreshrate auf dem Bus auf 5s erhöht, kommt das System total durcheinander - die Temperaturwerte der DS1820 werden spontan einem anderen Sensor zugewiesen, auf dem Display wird nach einem richtigen Wert auf einmal ein früherer Wert angezeigt etc. - gut zu sehen, wenn man einem der Sensoren richtig einheizt und die über 60°C dann immer mal auf einer anderen Zeile angezeigt werden...- auch im state der Sensoren...
Synchron funktioniert alles prima, auch nach heutiger Aktualisierung mit OWLCD 3.35 auf dem Produktivsystem mit 2 angeschlossenen Displays.
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: AHA1805 am 21 April 2014, 01:25:25
Hallo zusammen,

ich habe heute das Modul auch mal getestet und war begeistert, das alles gleich nach dem Ersetzen von

define OWio1 OWX /dev/ttyUSB0
durch
define OWio1 OWX_ASYNC/dev/ttyUSB0
sofort funktionierte.

Grund warum ich es gemacht habe:
Ich habe Perfmon getestet, welcher mir anzeigte, dass ich alle 5 Minuten (OWX Aktualisierungszeit) eine Verzögerung von bis zu 2 Sekunden habe.

Der Effekt nach der Umstellung war auch genial ich konnte mit Perfmon keine Verzögerung in fhem > 1 Sekunde feststellen  :)

BIS ... :'(
ich begonnen habe einen anderen Fehler zu suchen (Codemirror funktionierte nicht, tut nichts zur Sache nur so am Rande)
dadurch musste ich den FHEM relativ oft starten.

Plötzlich lief FHEM nicht mehr hoch die CPU Last von perl lag bei 60-95% und im fhem.log stand immer als letzter Eintrag.
OWX_SER: Serial device /dev/ttyUSB0@9600 defined
Beispiel aus der Logdatei:
2014.04.21 00:58:36 1: Including fhem.cfg
2014.04.21 00:58:37 2: Perfmon: ready to watch out for delays greater than one second
2014.04.21 00:58:37 3: telnetPort: port 1872 opened
2014.04.21 00:58:37 3: WEB: port 1883 opened
2014.04.21 00:58:37 3: WEBphone: port 1884 opened
2014.04.21 00:58:37 3: WEBtablet: port 1885 opened
2014.04.21 00:58:37 1: HMLAN_Parse: HMLAN1 new condition disconnected
2014.04.21 00:58:37 3: Opening HMLAN1 device 192.168.18.26:1000
2014.04.21 00:58:37 3: HMLAN1 device opened
2014.04.21 00:58:37 1: HMLAN_Parse: HMLAN1 new condition init
2014.04.21 00:58:37 3: Opening fbaha device 192.168.18.1:2002
2014.04.21 00:58:37 3: fbaha device opened
2014.04.21 00:58:37 1: FBAHA fbaha registered with handle: 00000017
2014.04.21 00:58:37 3: BBB_BMP180 BMP180: created
2014.04.21 00:58:37 3: Opening CUL_0 device /dev/ttyACM0
2014.04.21 00:58:37 3: Setting CUL_0 baudrate to 38400
2014.04.21 00:58:37 3: CUL_0 device opened
2014.04.21 00:58:37 3: CUL_0: Possible commands: BCFiAZEGMRTVWXefmltux
2014.04.21 00:58:45 3: OWTHERM: Device ow_2 defined.
2014.04.21 00:58:45 3: OWTHERM: Device ow_4 defined.
2014.04.21 00:58:45 3: OWTHERM: Device ow_1 defined.
2014.04.21 00:58:45 3: OWTHERM: Device ow_3 defined.
2014.04.21 00:58:45 3: OWMULTI: Device ow_m defined.
2014.04.21 00:58:45 3: OWCOUNT: Device ow_Counter defined.
2014.04.21 00:58:45 3: FHEM2FHEM opening ds1 at 192.168.18.1:1872
2014.04.21 00:58:45 3: FHEM2FHEM device opened (ds1)
2014.04.21 00:58:46 1: Including ./log/fhem.save
2014.04.21 00:58:46 3: Opening OWio1 device /dev/ttyUSB0
2014.04.21 00:58:46 3: Setting OWio1 baudrate to 9600
2014.04.21 00:58:46 3: OWio1 device opened
2014.04.21 00:58:46 1: OWX_SER: Serial device /dev/ttyUSB0@9600 defined



Komplette 1Wire Konfiguration
define FileLog_ow_m FileLog ./log/ow_m-%Y.log ow_m
attr FileLog_ow_m disable 1
attr FileLog_ow_m room OWX
define OWio1 OWX /dev/ttyUSB0
attr OWio1 room OWX
define ow_2 OWTHERM DS1820 98CC70010800
attr ow_2 IODev OWio1
attr ow_2 alias Heizung Rücklauf
attr ow_2 event-on-change-reading state
attr ow_2 group _Heizung_
attr ow_2 model DS1820
attr ow_2 room OWX,Sensoren
attr ow_2 tempHigh 75
attr ow_2 tempLow 18
define ow_4 OWTHERM DS1820 F1CD70010800
attr ow_4 IODev OWio1
attr ow_4 event-on-change-reading state
attr ow_4 model DS1820
attr ow_4 room OWX,Sensoren
attr ow_4 tempHigh 75
attr ow_4 tempLow 18
define ow_1 OWTHERM DS1820 45D070010800
attr ow_1 IODev OWio1
attr ow_1 alias Heizung Vorlauf
attr ow_1 event-on-change-reading state
attr ow_1 group _Heizung_
attr ow_1 model DS1820
attr ow_1 room OWX,Sensoren
attr ow_1 tempHigh 65
attr ow_1 tempLow 18
define ow_3 OWTHERM DS1820 B7AD70010800
attr ow_3 IODev OWio1
attr ow_3 alias Temp Zählerschrank
attr ow_3 event-on-change-reading state
attr ow_3 model DS1820
attr ow_3 room OWX,Sensoren
attr ow_3 tempHigh 25
attr ow_3 tempLow 18

define ow_m OWMULTI DS2438 F47D9B000000
attr ow_m IODev OWio1
attr ow_m VFunction ((V/VDD - 0.1515) / 0.00636) / (1.0546 - 0.00216 *  T )
attr ow_m VName relHumidity|rH
attr ow_m VUnit percent|%
attr ow_m alias Heizraum
attr ow_m devStateStyle style="text-align:left;;;;font-weight:bold;;;;"
attr ow_m group _Heizung_
attr ow_m model DS2438
attr ow_m room OWX
attr ow_m stateFormat {sprintf("Luftfeuchte: %.1f \% Temperatur: %.1f C",ReadingsVal("ow_m","relHumidity",0), ReadingsVal("ow_m","temperature",0))}


define ow_Counter OWCOUNT DS2423 A2D984000005
attr ow_Counter AFactor 0.01
attr ow_Counter AMode daily
attr ow_Counter AName G-Energy|energy
attr ow_Counter AOffset 1067591
attr ow_Counter ARate G-Power|gas
attr ow_Counter AUnit kWh|kWh
attr ow_Counter BFactor 0.00125
attr ow_Counter BMode daily
attr ow_Counter BName E-Energy|energy
attr ow_Counter BOffset 12262851
attr ow_Counter BRate E-Power|power
attr ow_Counter BUnit kWh|kWh
attr ow_Counter IODev OWio1
attr ow_Counter alias Energie
attr ow_Counter group _Heizung_
attr ow_Counter model DS2423eold
attr ow_Counter nomemory 1
attr ow_Counter room OWX
attr ow_Counter stateFormat {sprintf("Strom:  %.3f kW/h [%.3f kW] Gas:  %.2f qm",ReadingsVal("ow_Counter","E-Energy",0), ReadingsVal("ow_Counter","E-Power",0),ReadingsVal("ow_Counter","G-Energy",0))}




list OWio1
fhem> list OWio1
Internals:
   ALARMED    no
   DEF        /dev/ttyUSB0
   DeviceName /dev/ttyUSB0@9600
   FD         28
   INTERFACE  DS2480
   NAME       OWio1
   NOTIFYDEV  global
   NR         509
   NTFY_ORDER 50-OWio1
   PARTIAL
   PRESENT    1
   ROM_ID     FF
   STATE      Active
   TYPE       OWX
   followAlarms off
   interval   300
   ALARMDEVS:
   DEVS:
     10.98CC70010800.9D
     10.45D070010800.4E
     10.B7AD70010800.D3
     26.F47D9B000000.3B
     1D.A2D984000005.B4
   Readings:
     2014-04-21 01:01:02   state           defined
Attributes:
   room       OWX


Erst nachdem ich wieder auf OWX umstellte funktionierte es wieder.

Diesen Fehler konnte ich ab jetzt auch immer reproduzieren, wobei mir nicht klar ist, warum es zuerst für ein paar Stunden einwandfrei funktionierte.

Gruß Hannes
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 21 April 2014, 14:28:49
Zitat von: AHA1805 am 21 April 2014, 01:25:25
Diesen Fehler konnte ich ab jetzt auch immer reproduzieren, wobei mir nicht klar ist, warum es zuerst für ein paar Stunden einwandfrei funktionierte.

Das habe ich gerade gefixed (https://github.com/ntruchsess/fhem-mirror/commit/80c7e7ea486f511520e81047742ff1c8450531dc#diff-b9d5cb6d79cfdc8668a46388aed0e13bR69). Lag daran, dass der DS2480 in manchen Fällen nicht auf das initiale Reset-kommando reagiert plus eine fehlerhafte implementierung des Read-timeout im OWX_SER. Jetzt forciere ich beim Initialisieren erst mal einen Master-reset des DS2480 (und der Timeout geht...).

Gruß,

Norbert
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: AHA1805 am 21 April 2014, 20:33:48
Hallo Norbert,

danke werde ich heute abend mal testen und dann berichten

Gruß Hannes

Gesendet von Unterwegs mit Tapatalk 4

Nachtrag : 21:57:
Habe es gerade getestet funktioniert bisher wie beim ersten Mal sofort   :)
werde es mal beobachten.
Gruss und Danke Hannes
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: AHA1805 am 22 April 2014, 07:03:53
Guten Morgen

Kann diese Fehlermeldung    "Invalid conversion in ..." von OWX_ASYNC kommen?



2014.04.22 06:55:40 5: OWX_Executor: item ds2438.writestatusvdd for 26.F47D9B000000.3B eligible to run
2014.04.22 06:55:40 5: schedule next item at 1398142539.1799613 -0.526886
2014.04.22 06:55:40 5: schedule next item at 1398142539.1799613 -0.520006
2014.04.22 06:55:40 5: schedule next item at 1398142539.1799613 -0.512528
2014.04.22 06:55:40 5: AfterExecute: context: ds2438.writestatusvdd, success: 1, reset: 1, owx_dev: 26.F47D9B000000.3B, writedata: 4e0008, numread: 0, readdata:
Invalid conversion in sprintf: "% T" at (eval 41859) line 1.
2014.04.22 06:55:40 5: Triggering ow_m (1 changes)
2014.04.22 06:55:40 5: Notify loop for ow_m PRESENT: 1
2014.04.22 06:55:40 5: schedule next item at 1398142539.1799613 -0.462964
2014.04.22 06:55:40 5: OWX_Executor: item ds2438.copyscratchpadvdd for 26.F47D9B000000.3B eligible to run
2014.04.22 06:55:40 5: schedule next item at 1398142539.1799613 -0.377856
2014.04.22 06:55:40 5: schedule next item at 1398142539.1799613 -0.371303
2014.04.22 06:55:40 5: schedule next item at 1398142539.1799613 -0.364328
2014.04.22 06:55:40 5: AfterExecute: context: ds2438.copyscratchpadvdd, success: 1, reset: 1, owx_dev: 26.F47D9B000000.3B, writedata: 4800, numread: 0, readdata:
Invalid conversion in sprintf: "% T" at (eval 41860) line 1.



Da weder eine Zeilennummer noch sonst was dabei steht.

Schöne grüße
Hannes

Gesendet von Unterwegs mit Tapatalk 4

Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 22 April 2014, 11:33:25
Zitat von: AHA1805 am 22 April 2014, 07:03:53
Kann diese Fehlermeldung    "Invalid conversion in ..." von OWX_ASYNC kommen?

Invalid conversion in sprintf: "% T" at (eval 41859) line 1.
2014.04.22 06:55:40 5: Triggering ow_m (1 changes)


Vom OWX_ASYNC direkt nicht, hast Du beim 'ow_m'-device ein stateFormat gesetzt?
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 22 April 2014, 15:45:45
so, die nächste Evolutionsstufe ist erreicht:

Ich habe den asynchronen code aller anderen Devices und das Scheduling von OWX_ASYNC auf ProtoThreads umgestellt. Das garantiert die individuelle Nichtunterbrechbarkeit einer Abfolge von 1-Wire Kommandos pro Device und vereinfacht den asynchronen code deutlich. Damit sollte das Problem der Raceconditions bei 1-Wire-Befehlsfolgen von Aktoren behoben sein.

Da ich ab morgen bis Sonntag unterwegs bin habe ich den noch ofenfrischen code noch nicht ins SVN committed, sondern auf Github im branch 'owx_async_protothreads' abgelegt (Muss also manuell installiert werden). Von mir bisher nur mit DS2480 getestet.

00_OWX_ASYNC.pm (https://github.com/ntruchsess/fhem-mirror/raw/owx_async_protothreads/fhem/FHEM/00_OWX_ASYNC.pm)
OWX_Executor.pm (https://github.com/ntruchsess/fhem-mirror/raw/owx_async_protothreads/fhem/FHEM/OWX_Executor.pm)
OWX_SER.pm (https://github.com/ntruchsess/fhem-mirror/raw/owx_async_protothreads/fhem/FHEM/OWX_SER.pm)
OWX_DS2480.pm (https://github.com/ntruchsess/fhem-mirror/raw/owx_async_protothreads/fhem/FHEM/OWX_DS2480.pm)
21_OWAD.pm (https://github.com/ntruchsess/fhem-mirror/raw/owx_async_protothreads/fhem/FHEM/21_OWAD.pm)
21_OWCOUNT.pm (https://github.com/ntruchsess/fhem-mirror/raw/owx_async_protothreads/fhem/FHEM/21_OWCOUNT.pm)
21_OWLCD.pm (https://github.com/ntruchsess/fhem-mirror/raw/owx_async_protothreads/fhem/FHEM/21_OWLCD.pm)
21_OWMULTI.pm (https://github.com/ntruchsess/fhem-mirror/raw/owx_async_protothreads/fhem/FHEM/21_OWMULTI.pm)
21_OWSWITCH.pm (https://github.com/ntruchsess/fhem-mirror/raw/owx_async_protothreads/fhem/FHEM/21_OWSWITCH.pm)
21_OWTHERM.pm (https://github.com/ntruchsess/fhem-mirror/raw/owx_async_protothreads/fhem/FHEM/21_OWTHERM.pm)

Wen es interessiert: ProtoThreads (https://github.com/ntruchsess/perl-protothreads) sind leichtgewichtige Pseudothreads. Also keine echten Threads, sondern eigentlich normale Methoden die im Kontext des aufrufenden Threads laufen und immer dann, wenn sie Rechenzeit abgeben sollen die Methode mit einem Returnwert von PT_WAITING oder PT_YIELD verlassen. Man ruft die Methode so lange immer wieder mit PT_SCHEDULE auf bis sie zu Ende gelaufen oder (per PT_EXIT) vorzeitig verlassen worden ist. Dahinter arbeitet im Verborgenen eine Statemachine, die dafür sorgt, dass beim Aufruf der Methode von der Stelle PT_BEGIN an den Punkt des jeweils letzten Verlassens gesprungen wird.
Hier ein Beispiel (https://github.com/ntruchsess/perl-protothreads/blob/master/ProtoThreadsTest.pl) mit 3 quasiparalell laufenden Protothreads, das zeigt, was so geht.

Die berüchtigte 1-Sekunden Pause vom OWTHERM sieht mit Protothreads so aus (https://github.com/ntruchsess/fhem-mirror/blob/owx_async_protothreads/fhem/FHEM/21_OWTHERM.pm#L1116).

Gruß,

Norbert
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: AHA1805 am 22 April 2014, 18:51:13
Hallo Norbert
Mercie für die Antwort.
Ja habe ich, kann es hier Probleme bei der asynchronen Version geben?


1
fhem>
fhem>
fhem> list ow_m
Internals:
   ASYNC      1
   DEF        DS2438 F47D9B000000
   INTERVAL   300
   IODev      OWio1
   NAME       ow_m
   NR         515
   OW_FAMILY  26
   OW_ID      F47D9B000000
   PRESENT    1
   ROM_ID     26.F47D9B000000.3B
   STATE      Luftfeuchte: 50.9 % Temperatur: 16.4 C
   TYPE       OWMULTI
   Readings:
     2014-04-22 18:45:47   PRESENT         1
     2014-04-22 18:45:47   VDD             5.07
     2014-04-21 21:56:20   present         0
     2014-04-22 18:45:47   relHumidity     50.877
     2014-04-22 18:45:47   state           relHumidity: 50.88 % (T: 16.44 &deg;C)
     2014-04-22 18:45:47   temperature     16.4375
   owg_val:
     16.4375
     5.07
     2.44
   Tempf:
     factor     1
     offset     0
Attributes:
   IODev      OWio1
   VFunction  ((V/VDD - 0.1515) / 0.00636) / (1.0546 - 0.00216 *  T )
   VName      relHumidity|rH
   VUnit      percent|%
   alias      Heizraum
   devStateStyle style="text-align:left;;font-weight:bold;;"
   group      _Heizung_
   model      DS2438
   room       OWX
   stateFormat {sprintf("Luftfeuchte: %.1f \% Temperatur: %.1f C",ReadingsVal("ow_m","relHumidity",0), ReadingsVal("ow_m","temperature",0))}

fhem>




Gesendet von Unterwegs mit Tapatalk 4

Titel: Antw:OWX asynchron überarbeitet
Beitrag von: det. am 22 April 2014, 20:15:07
Hallo Norbert,
Danke für die neuen Testkandidaten. Gleich eingespielt auf dem Testsystem mit:
OWX: 1-Wire devices found on bus 1wire_0
20.70C707000000      DS2450         OWX_20_70C707000000
20.B7CB07000000      DS2450         OWX_20_B7CB07000000
28.F213DD030000      DS18B20        OWX_28_F213DD030000
28.76B82A040000      DS18B20        OWX_28_76B82A040000
28.EE81DA030000      DS18B20        OWX_28_EE81DA030000
28.1B7BDA030000      DS18B20        OWX_28_1B7BDA030000
12.4EF17B000000      DS2406/DS2507  OWX_12_4EF17B000000
29.565713000000      DS2408         OWX_29_565713000000
FF.430800000100      LCD            OWX_FF_430800000100
OWAD bringt regelmäßig Werte und bei OWSWITCH lassen sich die Ausgänge jetzt schalten, alles mit 5s Takt und ohne Verzögerung! OWLCD zeigt pah's Testsequenz auch jetzt in Echtzeit ohne Wartepausen an, aber:
2014.04.22 18:15:39 3: W_LCD02 return value: Can't call method "baudrate" on an undefined value at ./FHEM/00_OWX.pm line 1492.
2014.04.22 18:15:39 3: W_LCD02 return value: Can't call method "baudrate" on an undefined value at ./FHEM/00_OWX.pm line 1492.
2014.04.22 18:15:39 3: W_LCD01 return value: Can't call method "baudrate" on an undefined value at ./FHEM/00_OWX.pm line 1492.
2014.04.22 18:15:39 3: W_LCD01 return value: Can't call method "baudrate" on an undefined value at ./FHEM/00_OWX.pm line 1492.
2014.04.22 18:15:38 3: W_LCD01 return value: Can't call method "baudrate" on an undefined value at ./FHEM/00_OWX.pm line 1492.
2014.04.22 18:15:35 3: W_LCD02 return value: Can't call method "baudrate" on an undefined value at ./FHEM/00_OWX.pm line 1492.
2014.04.22 18:15:35 3: W_LCD02 return value: Can't call method "baudrate" on an undefined value at ./FHEM/00_OWX.pm line 1492.
2014.04.22 18:15:34 3: W_LCD01 return value: Can't call method "baudrate" on an undefined value at ./FHEM/00_OWX.pm line 1492.
2014.04.22 18:15:34 3: W_LCD01 return value: Can't call method "baudrate" on an undefined value at ./FHEM/00_OWX.pm line 1492.
2014.04.22 18:15:29 3: W_LCD01 return value: Can't call method "baudrate" on an undefined value at ./FHEM/00_OWX.pm line 1492.
2014.04.22 18:15:29 3: W_LCD01 return value: Can't call method "baudrate" on an undefined value at ./FHEM/00_OWX.pm line 1492.
2014.04.22 18:15:25 3: W_LCD01 return value: Can't call method "baudrate" on an undefined value at ./FHEM/00_OWX.pm line 1492.
2014.04.22 18:15:25 3: W_LCD01 return value: Can't call method "baudrate" on an undefined value at ./FHEM/00_OWX.pm line 1492.
es gibt folgende Fehlermeldung im LOG:2014.04.22 18:33:28 3: OWSWITCH: Could not get values from device OWX_12_4EF17B000000, reason
2014.04.22 18:33:28 3: OWSWITCH: Could not get values from device OWX_29_565713000000, reason
2014.04.22 18:33:23 3: OWSWITCH: Could not get values from device OWX_12_4EF17B000000, reason
2014.04.22 18:33:23 3: OWSWITCH: Could not get values from device OWX_29_565713000000, reason
2014.04.22 18:33:18 3: OWSWITCH: Could not get values from device OWX_29_565713000000, reason
2014.04.22 18:33:18 3: OWSWITCH: Could not get values from device OWX_12_4EF17B000000, reason
2014.04.22 18:33:15 3: OWSWITCH: Could not get values from device OWX_29_565713000000, reason
2014.04.22 18:33:13 3: OWSWITCH: Could not get values from device OWX_12_4EF17B000000, reason
2014.04.22 18:33:10 3: OWSWITCH: Could not get values from device OWX_29_565713000000, reason
2014.04.22 18:33:08 3: OWSWITCH: Could not get values from device OWX_12_4EF17B000000, reason
2014.04.22 18:33:03 3: OWSWITCH: Could not get values from device OWX_12_4EF17B000000, reason
2014.04.22 18:32:58 3: OWSWITCH: Could not get values from device OWX_29_565713000000, reason
2014.04.22 18:32:58 3: OWSWITCH: Could not get values from device OWX_12_4EF17B000000, reason
wobei die Switch auf set output A off / on sofort und richtig reagieren. Dafür machen die Thermometer nicht mehr was sie sonst schon mal prima gebracht haben (die Temperaturwerte der Sensoren liest es nicht aus) siehe zb wie hier:Readings
alarm 0       2014-04-22 20:02:25
present 1     2014-04-22 20:02:25
state T: 20.38 °C  2014-04-22 19:43:49
temperature 20.375 2014-04-22 19:43:49
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 22 April 2014, 22:36:14
Zitat von: AHA1805 am 22 April 2014, 18:51:13
Ja habe ich, kann es hier Probleme bei der asynchronen Version geben?

stateFormat {sprintf("Luftfeuchte: %.1f \% Temperatur: %.1f C",ReadingsVal("ow_m","relHumidity",0), ReadingsVal("ow_m","temperature",0))}


Merkwürdig, irgendwie stört sich das sprintf an dem '% T' da drin (obwohl das % mit \ escaped ist). Aber funktioniert scheint ja (Siehe Reading 'STATE') trotzdem zu haben. Hat aber mit dem ASYNC an sich nix zu tun.
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: det. am 22 April 2014, 22:50:12
Zitat von: ntruchsess am 22 April 2014, 22:36:14
Merkwürdig, irgendwie stört sich das sprintf an dem '% T' da drin (obwohl das % mit \ escaped ist). Aber funktioniert scheint ja (Siehe Reading 'STATE') trotzdem zu haben. Hat aber mit dem ASYNC an sich nix zu tun.
Diesen Fehler zeigt es mir auf der Konsole auch nach Serverneustart immer paar mal an. Das lässt sich leicht beheben, durch Weglassen des Prozentzeichens nach dem Luftfeuchtewert. Das wiederum sieht aber in FHEMWEB Sch... aus. Daher ein Leben mit dieser Kleinigkeit ist möglich und FHEM stürzt wegen diesem Schönheitsfehler nicht ab.
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 23 April 2014, 11:44:03
Hallo det,

danke schon mal für's Feedback!

Zitat von: det. am 22 April 2014, 20:15:07
OWLCD zeigt pah's Testsequenz auch jetzt in Echtzeit ohne Wartepausen an, aber:
2014.04.22 18:15:39 3: W_LCD02 return value: Can't call method "baudrate" on an undefined value at ./FHEM/00_OWX.pm line 1492.


wie ist "W_LCD02" definiert? Machst Du da direkte Aufrufe von OWXLCD_xxx-methoden? Wenn ja, dann darfst Du ausschließlich die OWLCD_xxx (ohne 'X')-methoden nehmen, die mit 'X' sind Backendspezifisch.

Zitat von: det. am 22 April 2014, 20:15:07
es gibt folgende Fehlermeldung im LOG:
2014.04.22 18:33:28 3: OWSWITCH: Could not get values from device OWX_12_4EF17B000000, reason

wobei die Switch auf set output A off / on sofort und richtig reagieren.
Kannst Du die Fehlermeldung mit einer bestimmten Aktion korreklieren?

Zitat von: det. am 22 April 2014, 20:15:07
Dafür machen die Thermometer nicht mehr was sie sonst schon mal prima gebracht haben (die Temperaturwerte der Sensoren liest es nicht aus) siehe zb wie hier:
Readings
alarm 0       2014-04-22 20:02:25
present 1     2014-04-22 20:02:25
state T: 20.38 °C  2014-04-22 19:43:49
temperature 20.375 2014-04-22 19:43:49

Passiert das auch mit einem kleineren Testsetup (nur 1 DS18B20)? Stell mal global verbose 5 an (mit der minimal zum Reproduzieren des Fehlers nötigen Anzahl an Devices), damit man sieht, ob die Sensoren überhaupt korrekt angesprochen werden. Passiert da mit einem DS2480 als Busmaster oder FRM? (Letzteres konnte ich noch nicht Testen)

Gruß,

Norbert

Titel: Antw:OWX asynchron überarbeitet
Beitrag von: det. am 23 April 2014, 17:44:12
Zitat von: ntruchsess am 23 April 2014, 11:44:03
wie ist "W_LCD02" definiert? Machst Du da direkte Aufrufe von OWXLCD_xxx-methoden? Wenn ja, dann darfst Du ausschließlich die OWLCD_xxx (ohne 'X')-methoden nehmen, die mit 'X' sind Backendspezifisch.
war falsch mit X definiert - jetzt geändert define W_LCD02 notify OWX_28_EE81DA030000 {OWLCD_SetLine($defs{'OWX_FF_430800000100'},2,"Buerotemp:   ".(int($defs{'OWX_28_EE81DA030000'}{READINGS}{temperature}{VAL}*10)/10)." \xDFC")} und neue Meldung:
Zitat2014.04.23 17:08:07 3: W_LCD01 return value: Undefined subroutine &main::OWLCD_SetLine called at (eval 810) line 1.
2014.04.23 17:08:07 3: W_LCD01 return value: Undefined subroutine &main::OWLCD_SetLine called at (eval 809) line 1.
2014.04.23 17:08:20 3: W_LCD02 return value: Undefined subroutine &main::OWLCD_SetLine called at (eval 838) line 1.
2014.04.23 17:08:20 3: W_LCD02 return value: Undefined subroutine &main::OWLCD_SetLine called at (eval 837) line 1.


ZitatKannst Du die Fehlermeldung mit einer bestimmten Aktion korreklieren?
- nein

ZitatPassiert das auch mit einem kleineren Testsetup (nur 1 DS18B20)? Stell mal global verbose 5 an (mit der minimal zum Reproduzieren des Fehlers nötigen Anzahl an Devices), damit man sieht, ob die Sensoren überhaupt korrekt angesprochen werden.
bei 2x DS1820 dto.
2014.04.23 17:35:54 4: HTTP FHEMWEB:192.168.2.47:49517 GET /fhem/FileLog_logWrapper?dev=Logfile&type=text&file=fhem-2014-04.log
2014.04.23 17:35:54 5: OWX_Executor: command 1 eligible to run
2014.04.23 17:35:54 4: Connection closed for FHEMWEB:192.168.2.47:49484
2014.04.23 17:35:48 5: AfterExecute: context: kick, success: 1, reset: 1, owx_dev: undef, writedata: cc44, numread: 0, readdata:
2014.04.23 17:35:48 5: OWX_Executor: item kick for  eligible to run
2014.04.23 17:35:34 1:  Alarms = FF.FFFFFFFFFFFF.FF
2014.04.23 17:35:34 5: OWX_SER::Search: new alarm device found FF.FFFFFFFFFFFF.FF
2014.04.23 17:35:34 5: OWX_Executor: command 2 eligible to run
2014.04.23 17:35:28 5: OWX_Executor: command 1 eligible to run
2014.04.23 17:35:18 5: AfterExecute: context: kick, success: 1, reset: 1, owx_dev: undef, writedata: cc44, numread: 0, readdata:
2014.04.23 17:35:18 5: OWX_Executor: item kick for  eligible to run
2014.04.23 17:35:05 4: HTTP FHEMWEB:192.168.2.47:49484 GET /fhem/FileLog_logWrapper?XHR=1&inform=type=status;filter=×tamp=1398267302885

ZitatPassiert da mit einem DS2480 als Busmaster oder FRM? (Letzteres konnte ich noch nicht Testen)
DS2480


Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 30 April 2014, 15:48:23
Hallo Detlef,

war ja ein paar Tage unterwegs und bin jetzt etwas unter Wasser. Komme daher leider erst heute zum Antworten:

Zitat von: det. am 23 April 2014, 17:44:12
2014.04.23 17:08:07 3: W_LCD01 return value: Undefined subroutine &main::OWLCD_SetLine called at (eval 810) line 1.
wo er recht hat, hat er recht. ein OWLCD_SetLine gibts nicht. Aber ein 'OWLCD_Set' mit parameter 'line' (https://github.com/ntruchsess/fhem-mirror/blob/owx_async_protothreads/fhem/FHEM/21_OWLCD.pm#L615). Also etwa so:
define W_LCD02 notify OWX_28_EE81DA030000 {OWLCD_Set($defs{'OWX_FF_430800000100'},"line","2 Buerotemp:   ".(int($defs{'OWX_28_EE81DA030000'}{READINGS}{temperature}{VAL}*10)/10)." \xDFC")}

2014.04.23 17:35:48 5: AfterExecute: context: kick, success: 1, reset: 1, owx_dev: undef, writedata: cc44, numread: 0, readdata:
2014.04.23 17:35:48 5: OWX_Executor: item kick for  eligible to run


an das Attribut 'dokick' vom OWX_ASYNC bzw. dem Zusammenspiel der OWTHERM-module mit selbigem muss ich noch ran, das ist noch nicht auf Protothreads umgebaut. Probier es bitte mal ohne bzw. Wert 0, dann machen die OWTHERMs das Timing inkl. der Temperaturmesspause komplett selber.

Gruß,

Norbert
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 04 Mai 2014, 12:27:22
Zitat von: ntruchsess am 30 April 2014, 15:48:23
an das Attribut 'dokick' vom OWX_ASYNC bzw. dem Zusammenspiel der OWTHERM-module mit selbigem muss ich noch ran, das ist noch nicht auf Protothreads umgebaut.

Soderla... hab grade meine Zugfahrt nach Hause dazu benutzt dokick-support in OWX_ASYNC einzubauen :-)

Wenn man dokick=1 im OWX_ASYNC aktiviert hat, dann wird im Abstand des Attributs 'interval' (am OWX_ASYNC-device) die Temperaturwandlung für alle DS18B20 parallel angestoßen. Eine Sekunde später fangen dann alle OWTHERM-devices bei denen das Attribut 'tempconv' auf 'onkick' steht an die gewandelten Temperaturen asynchron auszulesen. Neu gegenüber OWX ist, dass das Auslesen auf die Wandlung zeitlich abgestimmt ist. Es empfiehlt sich keinen Mischbetrieb zu fahren, weil sonst bei den nicht über 'onkick' ausgelesenen DS18B20 die von OWX_ASYNC für alle gemeinsam gestartete Temperaturwandlung mit der vom OWTHERM in Konflikt kommen kann (das ist beim klassischen OWX nicht anders).

Zur Installation wie gehabt die Dateien aus dem owx_async_protothreads-branch auf Github herunterladen (wie die Version von letzter Woche bisher nur mit DS2480 getestet, ich bin unterwegs und habe nur minimal Hardware dabei...):

00_OWX_ASYNC.pm (https://github.com/ntruchsess/fhem-mirror/raw/owx_async_protothreads/fhem/FHEM/00_OWX_ASYNC.pm)
OWX_Executor.pm (https://github.com/ntruchsess/fhem-mirror/raw/owx_async_protothreads/fhem/FHEM/OWX_Executor.pm)
OWX_SER.pm (https://github.com/ntruchsess/fhem-mirror/raw/owx_async_protothreads/fhem/FHEM/OWX_SER.pm)
OWX_DS2480.pm (https://github.com/ntruchsess/fhem-mirror/raw/owx_async_protothreads/fhem/FHEM/OWX_DS2480.pm)
21_OWAD.pm (https://github.com/ntruchsess/fhem-mirror/raw/owx_async_protothreads/fhem/FHEM/21_OWAD.pm)
21_OWCOUNT.pm (https://github.com/ntruchsess/fhem-mirror/raw/owx_async_protothreads/fhem/FHEM/21_OWCOUNT.pm)
21_OWLCD.pm (https://github.com/ntruchsess/fhem-mirror/raw/owx_async_protothreads/fhem/FHEM/21_OWLCD.pm)
21_OWMULTI.pm (https://github.com/ntruchsess/fhem-mirror/raw/owx_async_protothreads/fhem/FHEM/21_OWMULTI.pm)
21_OWSWITCH.pm (https://github.com/ntruchsess/fhem-mirror/raw/owx_async_protothreads/fhem/FHEM/21_OWSWITCH.pm)
21_OWTHERM.pm (https://github.com/ntruchsess/fhem-mirror/raw/owx_async_protothreads/fhem/FHEM/21_OWTHERM.pm)

Ich bin ab heute abend wieder zu Hause und kann habe endlich mal die Zeit den owx_async_prothreads-branch eingehender (und endlich auch mal die FRM-unterstützung) zu testen um es dann in das FHEM-SVN mergen zu können. Vielen Dank schon mal an alle, die mir testenderweise zuarbeiten!

Gruß,

Norbert
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: det. am 04 Mai 2014, 22:11:38
Zitat von: ntruchsess am 04 Mai 2014, 12:27:22
dokick-support in OWX_ASYNC einzubauen :-)
Wenn man dokick=1 im OWX_ASYNC aktiviert hat, dann wird im Abstand des Attributs 'interval' (am OWX_ASYNC-device) die Temperaturwandlung für alle DS18B20 parallel angestoßen. Eine Sekunde später fangen dann alle OWTHERM-devices bei denen das Attribut 'tempconv' auf 'onkick' steht an die gewandelten Temperaturen asynchron auszulesen. Neu gegenüber OWX ist, dass das Auslesen auf die Wandlung zeitlich abgestimmt ist. Es empfiehlt sich keinen Mischbetrieb zu fahren, weil sonst bei den nicht über 'onkick' ausgelesenen DS18B20 die von OWX_ASYNC für alle gemeinsam gestartete Temperaturwandlung mit der vom OWTHERM in Konflikt kommen kann (das ist beim klassischen OWX nicht anders)....
Hallo Norbert,
Vielen Dank! Gleich mal getestet mit 1820 2438 2450 und 2406/8. Konnte keine Fehlfunktion feststellen, bis auf eine gewisse Trägheit der Switch auf den Schaltbefehl zu reagieren. Alle anderen Sensoren im 5s Intervall - prima! Wegen div. anderer Baustellen kann ich erst gegen Ende der Woche  mehr Zeit investieren. Wenn Du bestimmte Sachen getestet haben willst, schreib das bitte hier. Es liegen noch div. Hardware Parts ungenutzt rum.
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 04 Mai 2014, 23:03:29
Den Fehler (der nur ein kosmetischer war), konnte ich grade beheben:
2014.04.22 18:33:28 3: OWSWITCH: Could not get values from device OWX_12_4EF17B000000, reason

Dann noch ein falsches OWCOUNT_parseMidnight in OWCOUNT_ParseMidnight (übriggeblieben vom Merge mit Pahs Bereinigungen) gefixed.

... Und mit FRM getestet. Läuft (ohne jede Änderung am FRM) völlig unauffällig. Natürlich auch über Ethernet :-)

Scheint Zeit zu werden, owx_async_protothreads ins SVN zu mergen.

Gruß,

Norbert

P.S.: Nur falls jemand testen wollte und die beschriebenen Fehler sind noch da: Ich habe grade (05.05.2014, 15:11 Uhr) gemerkt, dass ich die Änderungen gestern abend nicht auf Github gepushed habe. Habe ich grade nachgeholt.
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: det. am 07 Mai 2014, 19:52:46
Zitat von: ntruchsess am 04 Mai 2014, 23:03:29
P.S.: Nur falls jemand testen wollte und die beschriebenen Fehler sind noch da: Ich habe grade (05.05.2014, 15:11 Uhr) gemerkt, dass ich die Änderungen gestern abend nicht auf Github gepushed habe. Habe ich grade nachgeholt.
ok, natürlich erst gelesen, als ich heute noch mal die Testergebnisse komentieren wollte - Fehlermeldung ist jetzt weg. Es geht soweit prima, auch LCD funktioniert, sofern die Aktualisierungsrate nicht zu ambitioniert eingestellt wird. Bei 5s flimmert es noch mal ordentlich und geht dann aus.
Da die Ansteuerbefehle für das asynchrone OWLCD sich völlig von den bisherigen unterscheiden gibt es da bei der produktiv Umstellung einiges an Arbeit - ich hoffe da sehr auf eine gute Dokumentation in der commandref - sonst wird das try and error.
Die OWSWITCH haben ein reading alarm, was es so im bisherigen OWX bei den Switches nicht gibt. Das steht auf 1 und erzeugt diese Log Einträge:2014.05.07 19:37:53 1:  Alarms = 12.4EF17B000000.B0 29.565713000000.CB
2014.05.07 19:37:33 1:  Alarms = 12.4EF17B000000.B0 29.565713000000.CB
2014.05.07 19:37:13 1:  Alarms = 12.4EF17B000000.B0 29.565713000000.CB
2014.05.07 19:36:53 1:  Alarms = 12.4EF17B000000.B0 29.565713000000.CB
2014.05.07 19:36:33 1:  Alarms = 12.4EF17B000000.B0 29.565713000000.CB

Wozu ist das gut und wie kann ich das abstellen?
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 08 Mai 2014, 16:41:58
Zitat von: det. am 07 Mai 2014, 19:52:46
sofern die Aktualisierungsrate nicht zu ambitioniert eingestellt wird. Bei 5s flimmert es noch mal ordentlich und geht dann aus.
Schutz gegen Überlast ist noch nicht eingebaut. Wenn man zu viel scheduled, dann stauen sich die Protothread-objekte. Aber was bitte 'flimmert' da?

Zitat von: det. am 07 Mai 2014, 19:52:46
2014.05.07 19:36:33 1:  Alarms = 12.4EF17B000000.B0 29.565713000000.CB
Wozu ist das gut und wie kann ich das abstellen?

Die DS2406/8 etc. antworten auf die Conditional Search (damit könnte man z.B. schneller auf Änderungen an den I/O-pins reagieren), dazu (sowohl zum Reagieren, als auch überhaupt die Conditional-search-condition festzulegen) ist aber noch keine Unterstützung in OWSWITCH eingebaut. Also 'nutzt nichts, schaded nichts'.

Abstellen aktuell nur, indem Du den Aufruf von OWX_ASYNC_Alarms in OWX_ASYNC, Zeile 839 (https://github.com/ntruchsess/fhem-mirror/blob/owx_async_protothreads/fhem/FHEM/00_OWX_ASYNC.pm#L838) auskommentierst.

Gruß,

Norbert
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: det. am 08 Mai 2014, 22:01:13
Hallo Norbert,
Läuft wie schon geschrieben seit Sonntag prima, übrigens auf einem RPI mit dem Displayshield von locutus - an dem habe ich am internen (COC) DS2482 einen DS1820 über synchrones OWX und über USB ein Eigenbauinterface mit DS2480b und ASYNC OWX mit mehreren Devices. Geht also auch ohne Störung im Mischbetrieb. Das "flimmern" war die Hintergrundbeleuchtung (LED) des Displays kurz vor der Verabschiedung = dunkel und geht erst wieder nach dem nächsten Neustart. Das ist aber weg, seit ich Intervall von 5 auf 20 gestellt habe.
Was mir bei OWLCD außer den geänderten Ansteuerbefehlen noch auffällt, in den letzten synchronen Versionen war es nicht mehr nötig (wie früher immer), nach dem Neustart die Befehlsfolge set XXX lcd off ... on zu senden um alle 4 Zeilen zu initialisieren. Kannst Du das wieder einbauen?
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 08 Mai 2014, 22:46:52
Zitat von: det. am 08 Mai 2014, 22:01:13
... Geht also auch ohne Störung im Mischbetrieb.
danke für das Feedback, ich habe den owx_async_protothreads-branch gerade ins SVN committed, damit steht die Version morgen per update zur Verfügung. Für das synchrone OWX sollte sich dadurch nix ändern.

Zitat von: det. am 08 Mai 2014, 22:01:13
Das "flimmern" war die Hintergrundbeleuchtung (LED) des Displays kurz vor der Verabschiedung = dunkel und geht erst wieder nach dem nächsten Neustart. Das ist aber weg, seit ich Intervall von 5 auf 20 gestellt habe.
Du meinst das 'interval'-attribut vom OWX_ASYNC? Das steuert nicht nur die Temperaturkonvertierung der OWTHERMs, es macht zusätzlich bei jedem Durchgang 2 Bussearches um present und alarm der Devices upzudaten. Möglicherweise kommt das OWLCD (das ist eine 1-Wire Softwarelösung auf einem PIC-µC) damit bei zu hohen Wiederholfrequenzen nicht mehr klar.

Zitat von: det. am 08 Mai 2014, 22:01:13
Was mir bei OWLCD außer den geänderten Ansteuerbefehlen noch auffällt, in den letzten synchronen Versionen war es nicht mehr nötig (wie früher immer), nach dem Neustart die Befehlsfolge set XXX lcd off ... on zu senden um alle 4 Zeilen zu initialisieren. Kannst Du das wieder einbauen?

hmm... kannst Du das präzisieren (welche SVN-revision-id) Du genau meinst, in der das ging und ab welchem commit nicht mehr?

Gruß,

Norbert
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: det. am 09 Mai 2014, 18:42:26
Zitat von: ntruchsess am 08 Mai 2014, 22:46:52..Du meinst das 'interval'-attribut vom OWX_ASYNC? Das steuert nicht nur die Temperaturkonvertierung der OWTHERMs, es macht zusätzlich bei jedem Durchgang 2 Bussearches um present und alarm der Devices upzudaten. Möglicherweise kommt das OWLCD (das ist eine 1-Wire Softwarelösung auf einem PIC-µC) damit bei zu hohen Wiederholfrequenzen nicht mehr klar.
ja, genau so wird es wohl sein
Zitat von: ntruchsess am 08 Mai 2014, 22:46:52
.hmm... kannst Du das präzisieren (welche SVN-revision-id) Du genau meinst, in der das ging und ab welchem commit nicht mehr?
auf dem Produktiv CUBIE2 ist noch # $Id: 21_OWLCD.pm 5538 2014-04-16 20:21:14Z ntruchsess $ damit geht es, bei # $Id: 21_OWLCD.pm 5789 2014-05-08 20:17:42Z ntruchsess $ zeigt es alle 4 Zeilen erst nach einemset <name> lcd onan, sonst nur die 1. und 3. Zeile total übersteuert. Das war in den Anfängen von OWLCD immer so und irgendwann dann mal weg.
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: Prof. Dr. Peter Henning am 09 Mai 2014, 19:21:55
Na ja, mit den Versionen geht das im Moment ziemlich durcheinander  :o

Allerdings ist mir die Fehlerbeschreibung etwas undurchsichtig: Set LCD on schaltet den Controller ein - sonst wäre er aus. Die verwurstelten Zeilen deuten darauf hin, dass ein paar Parameter nicht stimmen. Aber was ist gemeint mit "übersteuert" ?

LG

pah
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: det. am 09 Mai 2014, 19:52:15
Zitat von: Prof. Dr. Peter Henning am 09 Mai 2014, 19:21:55
Allerdings ist mir die Fehlerbeschreibung etwas undurchsichtig: Set LCD on schaltet den Controller ein - sonst wäre er aus. Die verwurstelten Zeilen deuten darauf hin, dass ein paar Parameter nicht stimmen. Aber was ist gemeint mit "übersteuert"
Hallo Peter,
Die Fehlerbeschreibung hatten wir vor 2 Jahren schon mal. Die billigen 4 Zeilen x 20 Zeichen China Displays zeig(ten) nach shutdown restart immer nur die 0.  und 2. Zeile sehr hell an - entsprechend nichts auf Zeile 1 und 3. Mit einem anschließenden set LCD on gehen dann alle 4 Zeilen. Das hatte ich über eine include.cfg gelöst, die es bei jedem Systemneustart einmal aufgerufen hat und die meine 2 Displays faktisch neu initialisiert hatten. Irgendwann letztes Jahr (mglw. nach einem Systemumzug auf andere Serverhardware) ging das dann ohne diese Klimmzüge.  Wenn da im Code nichts eingebaut wurde, liegt es mglw. an FB / RPI vs. Cubie2?
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: Prof. Dr. Peter Henning am 10 Mai 2014, 17:33:11
I have a dream: Irgendwann in absehbarer Zukunft werden wir wenigstens die Frontendmodule auf einem ganz stabilen Stand haben.

Norbert Truchsess macht sehr gute Arbeit mit seinem Refactoring, die Zeit hätte ich in den nächsten 2-3 Jahren auf keinen Fall gehabt. Aber das führt halt im Moment dazu, dass die Versionen und branches etwas durcheinander gehen.

LG

pah
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: det. am 10 Mai 2014, 19:29:55
Zitat von: Prof. Dr. Peter Henning am 10 Mai 2014, 17:33:11
I have a dream: Irgendwann in absehbarer Zukunft werden wir wenigstens die Frontendmodule auf einem ganz stabilen Stand haben.

Norbert Truchsess macht sehr gute Arbeit mit seinem Refactoring, die Zeit hätte ich in den nächsten 2-3 Jahren auf keinen Fall gehabt. Aber das führt halt im Moment dazu, dass die Versionen und branches etwas durcheinander gehen.

LG

pah
genau so wird es werden! Um diese gute Arbeit ein wenig zu unterstützen, liegt bei mir im Homeoffice ein Wirrwarr von 1-wire Zeugs rum als Testumgebung. Wenn ich also hier schreibe, was ggf. nicht so richtig geht, betrifft das immer diese Laborinstallation und soll nur helfen, diesen Traum schneller wahr werden zu lassen.
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: cwagner am 10 Mai 2014, 20:27:28
Hi Norbert,

da die Heizperiode hier im Norden fast vorüber ist, riskiere ich den Einsatz von OWX_ASYMC mit OWTHERN,, OWAD und OWSwitch auf einem Produktivsystem. Der bisher erreichte Stand der Neuentwicklung ist beeindruckend. Die Systembelastung etwa 4% geringer, die Stabilität schon sehr erfolgversprechend.
Habe nun den Stand im SVN vom 8.5. eingespielt und dabei aber noch ein Problem:

Die Interval-Settings in den OWTHERM (bei mir 10 Sensoren mit Einstellungen zwischen 5 und 300 Sekunden, die meisten bei 30 Sekunden). Nach Neustart waren diese Einträge alle auf 9999. Per Set <name> interval habe ich sie auf die Werte gebracht, die ich brauche. (das jeweilige Attribut interval habe ich immer auf dem selben Wert wie das Settings-INGERVAL).
Die gesetzten Werte waren aber nach dem ersten Messwertupdate dann doch wieder auf 9999.
Das Thema habe ich nur in den Griff bekommen, als ich aus der Datensicherung die vorherige OWTHERM (Version V 5.1) ($Id: 21_OWTHERM.pm 5675 2014-04-27 09:03:47Z pahenning $) eingespielt habe.

Herzliche Grüße

Christian
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: det. am 11 Mai 2014, 00:13:03
Hallo Christian,
Schau mal hier im Beitrag Post 120 an - dokick sollte das Problem lösen - bei mir ging es danach.
Titel: [gelöst]Antw:OWX asynchron überarbeitet
Beitrag von: cwagner am 11 Mai 2014, 10:41:50
Hallo det,
danke für den Anstoß, doch leider:
Den Beitrag 120 hatte ich im Sinn, bin aber noch einmal auf Nummer sicher gegangen und habe auch bei OWX_ASYNC dem folgend das Interval auf 30 Sekunden gestellt.
Im Test: OWTHERM version 5.16
Es bleibt dabei: Der state wird bei allen Sensoren nur einmal nach dem Neustart aktualisiert oder wenn ich von Hand Interval auf einen Wert # 9999 stelle, danach wird er nicht mehr aktualisiert. Ein get temperature funktioniert und ergibt jeweils eine richtige, neue Temperatur, aber es werden nicht fortlaufend und von selbst EVENTS erzeugt.

IM Fhem.log finde ich diese Fehlermeldungen:
2014.05.11 10:33:04 3: OWX_DS2480: Search 2nd return has wrong parameter with length = 17
2014.05.11 10:33:05 5: OWX_ASYNC_PT_Kick: doing tempConv for OWAD, tempConv: -
2014.05.11 10:33:35 5: OWX_ASYNC_PT_Kick: doing tempConv for OWAD, tempConv: -
2014.05.11 10:33:36 1:  Alarms = 10.787E83020800.65 10.541E0B000800.35 10.0576A8020800.6D 28.905F9B010000.8B 28.A8A49B010000.11 28.CA0FAC040000.04 28.0E37AC040000.FD 28.AEE870010000.B6 28.1307AC040000.68 29.68980C000000.DA
2014.05.11 10:34:04 3: OWX_DS2480: Search 2nd return has wrong parameter with length = 17
2014.05.11 10:34:05 5: OWX_ASYNC_PT_Kick: doing tempConv for OWAD, tempConv: -


An meinem Bus hängen:
OWX: 1-Wire devices found on bus OWio1
20.0C2C0C000000      DS2450         Umweltsensor
10.787E83020800      DS18S20/DS1920 T_Vorlauf_FBH
10.541E0B000800      DS18S20/DS1920 T_Warmwasser
10.0576A8020800      DS18S20/DS1920 T_Heizung
28.905F9B010000      DS18B20        Aussenluft
28.A8A49B010000      DS18B20        T_Ruecklauf_Anhebung
28.CA0FAC040000      DS18B20        Zuluft
28.0E37AC040000      DS18B20        Abluft
28.AEE870010000      DS18B20        Dachfenster_Sued
28.810671010000      DS18B20        T_Ruecklauf
28.1307AC040000      DS18B20        Fortluft
29.68980C000000      DS2408         Switch_Heizkeller


Edit: Neben dokick im OWX_ASYNC muss auch in den Geräten das Attribut tempConv auf "onkick" stehen.

Vielleicht hilft das bei der Aufklärung meines Problems...

lg
Christian
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: hexenmeister am 11 Mai 2014, 11:03:52
Habe auch mal testweise dokick gesetzt. Alle intervale gingen auf 9999. Kurz nach dem manuellen ändern waren die wieder auf 9999.  :(
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: Starkstrombastler am 11 Mai 2014, 12:27:43
Bei mir sieht das so aus:

Kicking ist im Interface (DS2480) und bei den DS18B20 eingeschaltet.

Intervall im Interface (DS2480)  = 300 sec
Intervall-Attribut bei den DS18B20 = 90
Intervall-Setting bei den DS18B20 = 9999

als Ergebnis bekomme ich alle fünf Minuten einen Eintrag in die Log-Datei, Temperaturen werden korrekt gemessen.
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: det. am 11 Mai 2014, 14:52:44
komisch bei mir sieht das so aus und funktioniert zuverlässig:

Titel: Antw:OWX asynchron überarbeitet
Beitrag von: det. am 11 Mai 2014, 15:12:56
Hallo Norbert,
es gibt mit Deinen neu eingecheckten Modulen noch eine Kleinigkeit im LOG (ich nutze ja testweise einen USB Adapter asynchron und den COC ähnlichen synchron):
2014.05.10 18:17:18 1: OWX_CCC::Receive: unexpected number of 24 bytes on bus CUL_0
2014.05.10 17:56:18 1: OWX_CCC::Receive: unexpected number of 13 bytes on bus CUL_0
2014.05.11 12:16:14 1: OWX_CCC::Receive: unexpected number of 17 bytes on bus CUL_0
2014.05.11 11:12:13 1: OWX_CCC::Receive: unexpected number of 17 bytes on bus CUL_0
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: cwagner am 11 Mai 2014, 16:31:18
Hi det,

in der Tat, nachdem mich Deine Screenshots darauf gestoßen haben, dass die Temperatur-Devices nun ein Merkmal onkick im Attribut tempConv haben, habe ich alle umgestellt und stelle nun fest: Jo, dat löpt.
Offenbar bestimmt nun aber das Interval im OWX_ASYNC einheitlich für alle Fühler den Abfragezyklus. Damit kann ich leben.

Christian
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: AHA1805 am 11 Mai 2014, 17:59:34
Hallo

ich habe gestern Abende ein Update gemacht und darauf hin funktionierte OWCOUNT nicht mehr.

Das komische hierbei war jedoch das get ow_Counter raw A bzw. get ow_Counter raw B Werte zurück lieferte.

Der Befehl get ow_Counter counters jedoch keine Wert  zurück liefert.
Es kam aber auch keine Fehlermeldung.

Die OWTEMP funktionieren einwandfrei.

Meine OW Config

define OWio1 OWX_ASYNC /dev/ttyUSB0
attr OWio1 room OWX

define ow_Counter OWCOUNT DS2423 A2D984000005
attr ow_Counter AFactor 0.01
attr ow_Counter AMode daily
attr ow_Counter AName G-Energy|energy
attr ow_Counter AOffset 1067591
attr ow_Counter ARate G-Power|gas
attr ow_Counter AUnit kWh|kWh
attr ow_Counter BFactor 0.00125
attr ow_Counter BMode daily
attr ow_Counter BName E-Energy|energy
attr ow_Counter BOffset 12262851
attr ow_Counter BRate E-Power|power
attr ow_Counter BUnit kWh|kWh
attr ow_Counter IODev OWio1
attr ow_Counter alias Energie
attr ow_Counter group _Heizung_
attr ow_Counter model DS2423eold
attr ow_Counter nomemory 1
attr ow_Counter room OWX
attr ow_Counter stateFormat {sprintf("Strom:  %.3f kW/h [%.3f kW] Gas:  %.2f qm",ReadingsVal("ow_Counter","E-Energy",0), ReadingsVal("ow_Counter","E-Power",0),ReadingsVal("ow_Counter","G-Energy",0))}

define ow_2 OWTHERM DS1820 98CC70010800
attr ow_2 IODev OWio1
attr ow_2 alias Heizung Rücklauf
attr ow_2 event-on-change-reading state
attr ow_2 group _Heizung_
attr ow_2 model DS1820
attr ow_2 room OWX,Sensoren
attr ow_2 tempHigh 75
attr ow_2 tempLow 18



Habe  einige Versuche ausgeführt, aber das auslesen der Counter nicht hinbekommen,
erst nach dem ich den alten Stand wieder hergestellt habe funktionierte es wieder.

Ich habe jetzt alle relevanten OWX Files aus einem alten Stand wieder hergestellt und darauf funktionierte get ow_Counter counters auch wieder


Ich weiß aber nicht an was es liegen könnte.

Ich habe beide Sätze der Files an gehangen, vielleicht hilft das was.

Ansonsten funktionierte bis jetzt OWX_ASYNC absolut zuverlässig :)

Schöne Grüße
Hannes
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: eldrik am 11 Mai 2014, 19:59:17
Hi,

ich wollte heute mal OWX_ASYNC anstelle von 10_OWServer ausprobieren, habe auf meiner fhem2fhem Pi Instanz ein FHEM update durchgeführt erhalte jedoch beim define von OWX_ASYNC die folgende Fehlermeldung.

Der 1Wire Busmaster ist ein Pi I2C Austeckmodul von Uwe.

OWServer auf dem Pi wurde vorher gestoppt.

OWX_ASYNC_Init failed: OWX_SER: Serial device /dev/i2c-1@9600 not defined: Inappropriate ioctl for device

Was mache ich falsch?

Edit: korrigiert mich oder ist i2c bisher nicht implementiert  :-[

Greetz
Eldrik
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: det. am 11 Mai 2014, 20:16:08
Zitat von: eldrik am 11 Mai 2014, 19:59:17
erhalte jedoch beim define von OWX_ASYNC die folgende Fehlermeldung.
Der 1Wire Busmaster ist ein Pi I2C Austeckmodul von Uwe.
Was mache ich falsch?
nichts, die Aufsteckplatine von Uwe geht nicht mit OWX - das hat Er damals auch auf Nachfrage so bestätigt - wenn ich mich recht erinnere
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: Prof. Dr. Peter Henning am 11 Mai 2014, 20:50:25
Das Modul OWTHERM überprüft, ob es Lesefehler gibt (ERRCOUNT) Wenn das 5x passiert ist, wird das Intervall auf 9999 gesetzt.

Mglicherweise funktioniert das mit OWX_ASYNC noch nicht.

LG

pah
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: AHA1805 am 12 Mai 2014, 19:56:27
Zitat von: AHA1805 am 11 Mai 2014, 17:59:34

Das komische hierbei war jedoch das get ow_Counter raw A bzw. get ow_Counter raw B Werte zurück lieferte.

Der Befehl get ow_Counter counters jedoch keine Wert  zurück liefert.
Es kam aber auch keine Fehlermeldung.

Die OWTEMP funktionieren einwandfrei.



Habe jetzt einfach mal nur die alte 21_OWCOUNT verwendet und nun funktioniert es auch.
Ob das gut ist  ???

Stand welcher funktioniert
# $Id: 21_OWCOUNT.pm 5507 2014-04-11 09:37:45Z ntruchsess $

Stand welcher nicht funktioniert
# $Id: 21_OWCOUNT.pm 5789 2014-05-08 20:17:42Z ntruchsess $

Hat sonst niemand Probleme mit OWX_ASYNC und OWCOUNT?
Ich hoffe, dies macht es leichter den Fehler einzugrenzen.

Schöne Grüße Hannes
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: det. am 12 Mai 2014, 23:19:43
kann ich leider genau so bestätigen, habe heute mein Produktiv-System geupdatet - aber noch auf OWX Synchron gelassen. Vor der Umstellung muß ich erst die Befehle für die LCD anpassen.
leider bekomme ich im LOG folgende Fehler:
2014.05.12 23:00:00 1: invalid CRC
2014.05.12 22:33:51 1: OWX: Alarm presence detected on bus 1wire_1
2014.05.12 22:00:01 1: invalid CRC
2014.05.12 21:59:02 1: invalid CRC
2014.05.12 21:54:02 1: invalid CRC
2014.05.12 21:49:02 1: invalid CRC
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: cwagner am 13 Mai 2014, 08:23:11
 :)Das Projekt kommt voran, bei mir laufen jetzt die erwähnten Sensoren und Aktoren asynchron mit einem zentralen Interval von 30 Sekunden.

Christian

Titel: Antw:OWX asynchron überarbeitet
Beitrag von: Tobias am 13 Mai 2014, 08:25:11
Die Module OWCOUNT/OWTEMP/OWxxxxxx laufen immer noch sauber mit OWSERVER? Oder bin ich gezwungen jetzt auf OWX umzustellen?
Ehrlich gesagt traue ich mich nicht mein Produktivsystem zu updaten...
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 13 Mai 2014, 08:42:10
Zitat von: Tobias am 13 Mai 2014, 08:25:11
Die Module OWCOUNT/OWTEMP/OWxxxxxx laufen immer noch sauber mit OWSERVER? Oder bin ich gezwungen jetzt auf OWX umzustellen?

Die Frontendmodule sollten weiterhin mit OWSERVER laufen, an dem code habe ich nichts für OWX_ASYNC geändert.

Gruß,

Norbert
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 13 Mai 2014, 13:08:17
Zitat von: det. am 12 Mai 2014, 23:19:43
2014.05.12 22:00:01 1: invalid CRC
2014.05.12 21:59:02 1: invalid CRC
2014.05.12 21:54:02 1: invalid CRC
2014.05.12 21:49:02 1: invalid CRC


lassen sich die 'invalid CRC'-meldungen einem bestimmten Device(typ) zuordnen? Dummerweise gibt's zu viele Stellen in den OWX-Frontend-modulen, die das (ohne Angabe des Devices) im Fehlerfall so loggen.

Gruß,

Norbert
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 13 Mai 2014, 14:43:52
Zitat von: AHA1805 am 11 Mai 2014, 17:59:34
Der Befehl get ow_Counter counters jedoch keine Wert  zurück liefert.
Es kam aber auch keine Fehlermeldung.

Das ist wohl ein Regression-bug, der verhindert das auf emulierten DS2423 der state aktualisiert wird. Habe ich gerade gefixed (da ich erst heute abend testen kann erst mal auf github): 21_OWCOUNT.pm (https://github.com/ntruchsess/fhem-mirror/raw/owx_async_protothreads/fhem/FHEM/21_OWCOUNT.pm)

Zitat von: AHA1805 am 12 Mai 2014, 19:56:27
Habe jetzt einfach mal nur die alte 21_OWCOUNT verwendet und nun funktioniert es auch.
Ob das gut ist  ???

aktuell ist OWX_ASYNC noch kompatibel mit den noch nicht auf Protothreads umgebauten Frontendmodulen. Die 'alte' asynchrone API baue ich in naher Zukunft aber aber zurück, beides zu supporten macht keinen Sinn.

Gruß,

Norbert
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: AHA1805 am 13 Mai 2014, 14:52:02
Zitat von: ntruchsess am 13 Mai 2014, 14:43:52
Das ist wohl ein Regression-bug, der verhindert das auf emulierten DS2423 der state aktualisiert wird. Habe ich gerade gefixed (da ich erst heute abend testen kann erst mal auf github): 21_OWCOUNT.pm (https://github.com/ntruchsess/fhem-mirror/raw/owx_async_protothreads/fhem/FHEM/21_OWCOUNT.pm)

aktuell ist OWX_ASYNC noch kompatibel mit den noch nicht auf Protothreads umgebauten Frontendmodulen. Die 'alte' asynchrone API baue ich in naher Zukunft aber aber zurück, beides zu supporten macht keinen Sinn.

Gruß,

Norbert

Cool, vielen Dank.

Werde ich dann mal testen und Rückmeldung geben.
Ansonsten bin ich mit der OWX_ASYNC Version sehr zufrieden, habe absolut keine Verzögerungen mehr durch 1Wire abfragen.

Schöne Grüße
aus dem verregneten München
Hannes

Gesendet von Unterwegs mit Tapatalk 4

Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 13 Mai 2014, 15:12:37
Zitat von: cwagner am 11 Mai 2014, 16:31:18
Offenbar bestimmt nun aber das Interval im OWX_ASYNC einheitlich für alle Fühler den Abfragezyklus. Damit kann ich leben.

das ist der Sinn von 'onkick': Wenn zentral 'dokick' gesetzt ist wird die Temperaturmessung für alle(!) DS18B20 parallel angestoßen (d.h. alle mit dem gleichen zentralen Interval), anschließend werden alle mit 'onkick' konfigurierten Devices auch ausgelesen. Ein am Frontendmodul konfiguriertes Interval wird dann ignoriert (auch wenn es auf 9999 steht).

Zitat von: Prof. Dr. Peter Henning am 11 Mai 2014, 20:50:25
Das Modul OWTHERM überprüft, ob es Lesefehler gibt (ERRCOUNT) Wenn das 5x passiert ist, wird das Intervall auf 9999 gesetzt.

Jetzt muss ich erst mal rausfinden, warum das beim Neustart passiert, obwohl das Device sonst funktioniert... Aber vieleicht sollte man dieses 'auf 9999'-setzen einfach ausbauen. Was ist denn der Nutzen davon, dass man ein bischen weniger sinnlosen Traffic auf dem 1-Wire-bus erzeugt?

Gruß,

Norbert
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 13 Mai 2014, 15:35:46
Zitat von: cwagner am 10 Mai 2014, 20:27:28
Die gesetzten Werte waren aber nach dem ersten Messwertupdate dann doch wieder auf 9999.

Das war jetzt wohl ein trivial-fix (https://github.com/ntruchsess/fhem-mirror/commit/e93e3bc633fddd2d06eb95a1cf5929d9e9898c0a). Da ich erst heute abend wieder selber testen kann der Bugfix hier auf Github: 21_OWTHERM.pm (https://github.com/ntruchsess/fhem-mirror/raw/owx_async_protothreads/fhem/FHEM/21_OWTHERM.pm)

Gruß,

Norbert
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: det. am 13 Mai 2014, 16:05:11
Zitat von: ntruchsess am 13 Mai 2014, 13:08:17
lassen sich die 'invalid CRC'-meldungen einem bestimmten Device(typ) zuordnen? Dummerweise gibt's zu viele Stellen in den OWX-Frontend-modulen, die das (ohne Angabe des Devices) im Fehlerfall so loggen.

Gruß,

Norbert
leider nicht, nachdem ich gestern update auf dem Produktiv Cubie2 mit 2 synchronen OWX über USB durchgeführt habe, hab ich das heute zig mal im LOG. Keine Ahnung, wie ich das eingrenzen soll? Vorschläge ?
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 13 Mai 2014, 17:26:08
Zitat von: det. am 13 Mai 2014, 16:05:11
Keine Ahnung, wie ich das eingrenzen soll? Vorschläge ?

Du könntest die aktuelle 00_OWX_ASYNC.pm (plus OWX_SER.pm, OWX_Executor.pm und OWX_DS2480.pm) manuell einspielen und anschließend die Frontendmodule einzeln upgraden und dazwischen jeweils einen aussagekräftigen Testlauf machen. 00_OWX_ASYNC.pm ist aktuell noch rückwärtskompatibel mit der bisherigen asynchronen API.

EDIT: Ich habe die kontextfreien 'invalid CRC'-Log-meldungen umgebastelt, jetzt sollte man mehr sehen. Die angepassten Module sind auf Github (testen kann ich selber erst später):
21_OWAD.pm (https://github.com/ntruchsess/fhem-mirror/raw/owx_async_protothreads/fhem/FHEM/21_OWAD.pm)
21_OWCOUNT.pm (https://github.com/ntruchsess/fhem-mirror/raw/owx_async_protothreads/fhem/FHEM/21_OWCOUNT.pm)
21_OWMULTI.pm (https://github.com/ntruchsess/fhem-mirror/raw/owx_async_protothreads/fhem/FHEM/21_OWMULTI.pm)
21_OWSWITCH.pm (https://github.com/ntruchsess/fhem-mirror/raw/owx_async_protothreads/fhem/FHEM/21_OWSWITCH.pm)
21_OWTHERM.pm (https://github.com/ntruchsess/fhem-mirror/raw/owx_async_protothreads/fhem/FHEM/21_OWTHERM.pm)

EDIT: angepasste 00_OWX_ASYNC.pm, falls der Fehler im Hintergrund auftritt:
00_OWX_ASYNC.pm (https://github.com/ntruchsess/fhem-mirror/raw/owx_async_protothreads/fhem/FHEM/00_OWX_ASYNC.pm)

Gruß,

Norbert

Titel: Antw:OWX asynchron überarbeitet
Beitrag von: det. am 13 Mai 2014, 20:23:29
Hallo Norbert,
Danke! Die Meldung kommt von einem bisher unauffälligen Switch DS2406 aus dem Fuchs Shop auf meinem Boden zur Steuerung der WW Zirkulation. Ausgelöst wird das duch ein set OUTPUT A off im 3min Takt von einem notify aus der Anfangszeit meiner FHEM Versuche. Das sollte schon lange durch ein THRESHOLD ersetzt werden, aber es funktionierte eben bisher einfach. Wie ich den CRC Fehler dort wegbekommen soll, ist mir nicht klar. An dem Bus hängen noch 11 weitere Devices bunt gemischt aus der 1-wire Welt und bisher ging das eben immer.
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 13 Mai 2014, 22:07:50
Zitat von: det. am 13 Mai 2014, 20:23:29
Hallo Norbert,
Danke! Die Meldung kommt von einem bisher unauffälligen Switch DS2406 aus dem Fuchs Shop auf meinem Boden zur Steuerung der WW Zirkulation. Ausgelöst wird das duch ein set OUTPUT A off im 3min Takt von einem notify aus der Anfangszeit meiner FHEM Versuche. Das sollte schon lange durch ein THRESHOLD ersetzt werden, aber es funktionierte eben bisher einfach. Wie ich den CRC Fehler dort wegbekommen soll, ist mir nicht klar. An dem Bus hängen noch 11 weitere Devices bunt gemischt aus der 1-wire Welt und bisher ging das eben immer.

D.h. mit einem anderen DS2406 funktioniert das set Output und nur mit diesem nicht?
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: det. am 13 Mai 2014, 22:32:00
Zitat von: ntruchsess am 13 Mai 2014, 22:07:50
D.h. mit einem anderen DS2406 funktioniert das set Output und nur mit diesem nicht?
ja, genau und mit diesem bis gestern auch...
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 14 Mai 2014, 00:00:44
hmm... vieleicht einfach zu viel los auf Deinem Bus? Wenn ich in meiner Testinstallation die intervalle alle auf 5 Sekunden runterdrehe kriege ich auch CRC-Errors von den OWCOUNTS und dem OWMULTI. Wahrscheinlich interferiert die periodische Bussuche beim 'dokick' doch mit Kommandfolgen (wie beim DS2406 set der I/O-pins). Ich werde mal testen, ob das besser läuft, wenn die Bussuche serialisiert und nicht parallel zu den anderen Tasks läuft.

Sonst scheinen die kleineren Fixes von heute ja zu tun, was sie sollen, ich habe das grade ins SVN committed.

Gruß,

Norbert
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: Starkstrombastler am 14 Mai 2014, 00:05:19
Bei mir verhalten sich die DS18B20 merkwürdig.

1.
Am Bus hängen 14 Sensoren die fleißig Messwerte liefern. Die Abfrage mit 'get ... devices' liefert aber nur 6 Sensoren als present.

2.
Bei jedem Abfrageintervall wird eine Alarmmeldung ausgegeben, obwohl sich kein Sensor im Alarmbereich befindet:

2014.05.13 23:39:33.138 1:  Alarms = FF.FFFFFFFFFFFF.FF

Befindet sich ein Messwert tatsächlich im Alarmbereich, so wird korrekt ausgegeben, obige Alarmmeldung erscheint dann nicht, z.B.:

2014.05.13 23:15:18.813 1:  Alarms = 28.58BCE1040000.A7


3.
Wenn ein Temp-Sensor vorübergehend abgeklemmt war, dann werden die Internals 'owg_th' und  'owg_tl'  auf die Default-Werte zurückgesetzt, obwohl die zugehörigen Attribute gesetzt sind.

OWX_ASYNC version = 5.1
OWTHERM version = 5.16
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: Starkstrombastler am 14 Mai 2014, 00:39:30
Ergänzung:

Im Putty tauchen regelmäßig folgende Zeilen auf:

Use of uninitialized value $data in concatenation (.) or string at ./FHEM/OWX_SER.pm line 194.
Use of uninitialized value $numread in numeric gt (>) at ./FHEM/OWX_SER.pm line 197.

Das scheint zu Fehler Nr.2 im vorhergehenden Posting zu gehören.

Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 14 Mai 2014, 09:33:20
Zitat von: Starkstrombastler am 14 Mai 2014, 00:39:30

Use of uninitialized value $data in concatenation (.) or string at ./FHEM/OWX_SER.pm line 194.
Use of uninitialized value $numread in numeric gt (>) at ./FHEM/OWX_SER.pm line 197.

dafür hatte ich gestern abend schon einen initialen Fix ins SVN committed, den habe ich grade noch mal verfeinert: OWX_SER.pm (https://github.com/ntruchsess/fhem-mirror/raw/owx_async_protothreads/fhem/FHEM/OWX_SER.pm) (auf GitHub, noch ungetestet, kommt heute abend in's SVN)

Gruß,

Norbert
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: cwagner am 14 Mai 2014, 10:13:08
Hallo, mir scheint, dass es im Modul für den DS2308 (OWX_Switch) noch einen Punkt gibt. Das Reading present entspricht nicht dem Modulstatus - ich habe auch den Eindruck, dass PRESENT manchmal auf 0 steht, obwohl ich (fast) keine Fehlfunktion feststellen kann.

Hier ein eingekürztes Listing...
Internals:
   ALARM      0
   ASYNC      1
   CFGFN      ./FHEM/1wire_devices.cfg
   CHANGED
   DEF        DS2408 68980C000000
   INTERVAL   30
   IODev      OWio1
   NAME       Switch_Heizkeller
   NR         102
   OW_FAMILY  29
   OW_ID      68980C000000
   PRESENT    1
   ROM_ID     29.68980C000000.da
   STATE      Brenner: OFF Mischer_weniger: OFF Mischer_mehr: OFF Waschkueche: ON EWT: OFF F: OFF G: OFF H: OFF
   TYPE       OWSWITCH
   Readings:
     2014-05-14 08:30:11   Brenner         OFF
     2014-05-14 08:30:11   EWT             OFF
     2014-05-14 08:30:11   F               OFF
     2014-05-14 08:30:11   G               OFF
     2014-05-14 08:30:11   H               OFF
     2014-05-14 08:30:11   Mischer_mehr    OFF
     2014-05-14 08:30:11   Mischer_weniger OFF
     2014-05-14 08:30:11   Waschkueche     ON
     2014-05-14 08:30:03   alarm           0
     2014-05-14 08:30:02   present         0
     2014-05-14 08:30:11   state           Brenner: OFF Mischer_weniger: OFF Mischer_mehr: OFF Waschkueche: ON EWT: OFF F: OFF G: OFF H: OFF
   owg_val:
     1
     1
     1
     0
     1
     1
     1
     1
   owg_vax:
     1
     1
     1
     0
     1
     1
     1
     1
Attributes:
   AName      Brenner|status

....

   interval   30
   model      DS2408
...



Das "fast" resultiert auf den ersten drei vollständigen FHEM-Abstürzen im produktiven Betrieb seit 1,5 Jahren in den letzten drei Tagen. Die letzte über Telnet aufgefangene Meldung war da nämlich jedes Mal ein Meldung von OWSwitch...
aktuell verwendete Module: Stand SVN bzw. wenn neuer aus Deinem Github von gestern Abend 21 Uhr.

Was kann ich tun, um hilfreiche Infos heranzubringen bzw. besser den eigentlich Absturz zu dokumentieren, falls er sich wiederholt?

Herzliche Grüße

Christian
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 14 Mai 2014, 10:20:41
Zitat von: cwagner am 14 Mai 2014, 10:13:08
Die letzte über Telnet aufgefangene Meldung war da nämlich jedes Mal ein Meldung von OWSwitch...
[...]
Was kann ich tun, um hilfreiche Infos heranzubringen bzw. besser den eigentlich Absturz zu dokumentieren, falls er sich wiederholt?
Die Meldung(en) aus dem Telnet würden schon mal sehr helfen ;-)

Das mit dem Present muss ich mal gründlich überarbeiten. Da habe ich erst mal nix dran geändert, das arbeitet noch nach der synchronen logic. Vor Ablauf einer 1-Wire-Befehlsfolge wird present auf 0 gesetzt, nach erfolgreichem Abschluss der Befehlsfolge wieder auf 1. Bei Fehler bleibt's auf 0. Im Gegensatz zur synchronen Logik (die alles andere blockiert) kann man bei der  asynchronen Verarbeitung die 0 während des Ablaufs der 1-Wire-Befehlsfolge nämlich sehen.

Gruß,

Norbert
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 14 Mai 2014, 23:19:13

Use of uninitialized value $data in concatenation (.) or string at ./FHEM/OWX_SER.pm line 194.
Use of uninitialized value $numread in numeric gt (>) at ./FHEM/OWX_SER.pm line 197.

Der Fix hierfür ist jetzt auch im SVN. Damit ist der aktuelle Stand per update installierbar. Danke allen Testern für Ihr Feedback!

Gruß,

Norbert
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: cwagner am 16 Mai 2014, 07:36:27
Moin, Norbert

Zitat von: ntruchsess am 14 Mai 2014, 10:20:41
Die Meldung(en) aus dem Telnet würden schon mal sehr helfen ;-)

Also viel habe ich nicht zu bieten: Aber das wenige ist exakt immer gleich. Letzte und einzige Meldung vor einem Absturz von FHEM ist unter telnet:

OWX_DS2480 read timeout, bytes read: 3, expected: 18 at ./FHEM/OWX_DS2480.pm lin
e 149.



Herzliche Grüße

Christian
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: Starkstrombastler am 16 Mai 2014, 18:44:56
Die Alarmmeldungen aus dem Post
Zitat
Bei jedem Abfrageintervall wird eine Alarmmeldung ausgegeben, obwohl sich kein Sensor im Alarmbereich befindet:
2014.05.13 23:39:33.138 1:  Alarms = FF.FFFFFFFFFFFF.FF
Befindet sich ein Messwert tatsächlich im Alarmbereich, so wird korrekt ausgegeben, obige Alarmmeldung erscheint dann nicht
habe ich immer noch bei jedem Lesevorgang.

Außerdem habe ich heute drei Meldungen im Logfile:

2014.05.16 09:54:44.475 2: OWX_ASYNC: Error running task for 28.D4142C050000.32: invalid CRC
...........
2014.05.16 15:54:44.004 2: OWX_ASYNC: Error running task for 28.58BCE1040000.A7: invalid CRC
2014.05.16 15:54:44.123 2: OWX_ASYNC: Error running task for 28.57D566050000.95: invalid data length, 10 instead of 9 bytes

Hoffe, es hilft etwas.
----
Edit:
Habe gerade gesehen, dass es ein neues OWX_SER gibt, werde updaten!
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: det. am 17 Mai 2014, 21:43:31
Hallo Norbert,
habe heute endlich die Zeit gehabt, meine 2 LCD Displays auf die geänderten Ansteuerbefehle beim asynchronen OWX umzustellen und danach beide USB Busmaster des Produktiv FHEM auf OWX_ASYNC umgestellt. Vielen Dank für Deine Mühe in den letzten Wochen. Es geht richtig gut - gefühlt flüssiger - und AppTime ist der gleichen Meinung! Allein schon der Zwang, die (historisch gewachsenen) Berechnungen der Strings für die Displayausgaben von der fhem.cfg in 99_myUtils.pm zu verlagern hat viel Wartezeit eliminiert.
paar Kleinigkeiten habe ich noch:
* die nicht abstellbere Alarmmeldung bei OWSWITCH - hat ein Verbose 0 beim Busmaster als FIX zur Folge - damit ist Ruhe im LOG, aber man sieht auch nicht, wenn irgend was schief läuft.
* wie kann ich bei Verwendung von dokick - onkick mit kurzem Abfrageintervall (z.B. 60s oder weniger) erreichen, bestimmte Sensoren mit deutich längeren Intervallen abzufragen?
* OWID ändert seinen state nicht, bleibt dauernd auf present, das war bei Verwendung der gleichen Module nur mit OWX (synchron) anders.
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: marc2 am 18 Mai 2014, 23:01:30
Moin !

Ich habe gestern meinen OWX Testaufbau bestehend aus einem "DS2423eold" und einem DS1820
von OWX auf OWX_ASYNC umgestellt. Beide sind über FRM an einen Arduino Nano angebunden.
Die üblichen Disconnects und Reconnects von HMLAN/HMUSB und ECMD Devices, die ich im
Zusammenspiel mit OWX  häufig gesehen habe bleiben fast gänzlich aus  :) Allerdings dauert
beim Starten von FHEM das Initialisieren des OWX_ASYNC Devices auf meinem Beaglebone sehr
lange (rund 20 Sekunden) und damit deutlich länger als mit OWX. Ist das ein erwartetes/normales
Verhalten ?

Gruß, Marc
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 19 Mai 2014, 13:06:37
Zitat von: det. am 17 Mai 2014, 21:43:31
* die nicht abstellbere Alarmmeldung bei OWSWITCH - hat ein Verbose 0 beim Busmaster als FIX zur Folge - damit ist Ruhe im LOG, aber man sieht auch nicht, wenn irgend was schief läuft.
ich setzte den Loglevel da gleich mal runter....
Zitat von: det. am 17 Mai 2014, 21:43:31
* wie kann ich bei Verwendung von dokick - onkick mit kurzem Abfrageintervall (z.B. 60s oder weniger) erreichen, bestimmte Sensoren mit deutich längeren Intervallen abzufragen?
einfach bei den betreffenden Devices onkickt nicht aktivieren, dann benutzen sie ihr eigenes Interval (oder funktioniert das bei Dir nicht?)
Zitat von: det. am 17 Mai 2014, 21:43:31
* OWID ändert seinen state nicht, bleibt dauernd auf present, das war bei Verwendung der gleichen Module nur mit OWX (synchron) anders.
Ist mir bekannt. Die Behandlung des Present-readings wird für OWX_ASYNC noch mal überarbeitet, der vom synchronen OWX übernommene Ansatz taugt nicht für die asynchrone Verarbeitung.

Zitat von: marc2 am 18 Mai 2014, 23:01:30
Allerdings dauert beim Starten von FHEM das Initialisieren des OWX_ASYNC Devices auf meinem Beaglebone sehr
lange (rund 20 Sekunden) und damit deutlich länger als mit OWX. Ist das ein erwartetes/normales
Verhalten ?
Wenn der Arduino über Ethernet angebunden ist, dann ist das im Moment noch normal. Mit OWX_ASYNC laufen einige Timer erst nach dem Connecten des Arduinos los und nicht schon einfach so beim Define des OWX. Das hab ich geändert, weil man sonst eine Racecondition hat (wenn der Timer abgelaufen ist, bevor der Arduino verbunden ist). Das wird noch optimiert - Ich hab bisher Stabilität vor Funktionalität priorisiert.

Gruß,

Norbert
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 19 Mai 2014, 13:18:14
Zitat von: cwagner am 16 Mai 2014, 07:36:27
OWX_DS2480 read timeout, bytes read: 3, expected: 18 at ./FHEM/OWX_DS2480.pm lin
e 149.


danke, das hilft schon mal weiter.

Gruß,

Norbert
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 19 Mai 2014, 17:16:19
Update für Heute:

- Exceptions aus den asynchronen ProtoThreads die bisher zu Abbrüchen geführt haben, werden jetzt gefangen und ins fhem-log geschrieben.
- das sinnlose logging der Alarme mit Loglevel 1 ist jetzt auf Loglevel 5.

alle Änderungen sind schon im SVN.

Gruß,

Norbert



Titel: Antw:OWX asynchron überarbeitet
Beitrag von: det. am 19 Mai 2014, 20:40:28
Hallo Norbert,
Danke, gleich eingespielt - mal sehen, wie es jetzt läuft. Die lange Wartezeit beim Neustart habe ich auch - gibt aber definitiv Schlimmeres - lieber stabil mit Wartezeit...
Leider ist mir heute FHEM gegen Nachmittag vollständig abgestürzt, ohne LOG Einträge, CPU Last über 100% beim Cubie2 jeweils kurz nach 0.00 Uhr die letzten 2 Tage. Werde das beobachten und berichten.
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 20 Mai 2014, 07:23:04
kurz nach 0 Uhr? Klingt ganz nach einem Fehler bei den OWCOUNT midnight Werten. Hab meine Testinstallation über Nacht laufen lassen - gab zwar etwas Mecker wg LogX nicht konfiguriert und "" is not numeric, aber abgestürzt ist nichts.
Halte doch bitte mal fest, was als Fehlermeldung auf der Konsole erscheint.

Gruß,

Norbert
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: Tobias am 20 Mai 2014, 10:29:24
Lasse meinen DS2408/DS2438 seit heute morgen auch per FRM und ASYNC im 1sek intervall abfragen. Bisher keine Performancemeldungen im Log :) Heute abend kommen noch ein paar DS18B20 dazu...
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: cwagner am 20 Mai 2014, 21:01:53
Hatte gestern Abend alle Komponenten auf den SVN-Stand gebracht. Nach etwa 20 Stunden hatte ich wieder einen Absturz von FHEM im laufenden Galopp. Leider hatte ich das Verbose nicht wieder hochgesetzt, sodass ich von dem Ereignis keine weiteren Spuren habe.

Nach dem Neustart habe ich nun das Logging eingestellt und erhalte ständig (Interval ist 30):
2014.05.20 20:38:40 3: OWX_DS2480: Search 2nd return has wrong parameter with length = 17
2014.05.20 20:38:40 3: OWX_DS2480: Search 2nd return has wrong parameter with length = 17
2014.05.20 20:47:41 3: OWX_DS2480: Search 2nd return has wrong parameter with length = 17
2014.05.20 20:48:11 3: OWX_DS2480: Search 2nd return has wrong parameter with length = 17
2014.05.20 20:55:11 3: OWX_DS2480: Search 2nd return has wrong parameter with length = 17


und vereinzelt:
2014.05.21 02:40:21 3: OWX_DS2480 reset failure on bus OWio1
Grüße

Christian
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 21 Mai 2014, 14:27:10
Zitat von: cwagner am 20 Mai 2014, 21:01:53
Nach dem Neustart habe ich nun das Logging eingestellt und erhalte ständig (Interval ist 30):
2014.05.20 20:38:40 3: OWX_DS2480: Search 2nd return has wrong parameter with length = 17

irgendwie flutscht da ein Byte mehr rein, als es soll...

Kannst Du bitte mal (in der 00_OWX_ASYNC.pm, Zeile 133)

#-- Debugging 0,1,2,3
$owx_async_debug=2;

setzen und den loglevel vom OWX_ASYNC-device (attribute 'verbose') auf 5?

Gruß,

Norbert
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: cwagner am 21 Mai 2014, 15:47:43
... mach ich, geht aber leider erst heute Abend.

Vielen Dank für Dein Engagement in diesem Projekt!

Christian
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: det. am 21 Mai 2014, 18:37:59
Hallo Norbert,
FHEM läuft leider bei mir seit der Umstellung auf Async OWX nicht stabil durch - heute gegen 13.45 Uhr endete das LOG ohne auffällige Meldung. Auch Mitternacht kommt nur das bekannte:2014.05.20 23:57:22 3: OWCOUNT: No yearly summary possible, attribute LogY is missing
2014.05.20 23:57:22 3: OWCOUNT: No monthly summary possible, attribute LogM is missing
sonst sind bei Verbose 3 keine Auffälligkeiten zu sehen. Die Änderung der Systembelastung sieht man schön an den Sysmondiagrammen - am 18.5. habe ich auf Async umgestellt. Da ich am Wochenende in Urlaub will und meine Mieter ohne WW Zirkulation wären bei abgestürztem FHEM, was soll ich tun?
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: cwagner am 21 Mai 2014, 21:42:20
Hallo Norbert,

habe nun den Debug-Modus eingeschaltet und mit Verbose=5 aufgezeichnet. Mir scheint, dass das Ereignis in dem Log-Auszug mehrfach vorkommt und hoffe, dass es Dir hilft. FHEM ist heute wieder nach etwa 8 Stunden Betrieb abgeschmiert:

[code]2014.05.21 21:17:59 5: OWX_Executor: command 1 eligible to run
2014.05.21 21:17:59 5: OWX_ASYNC_PT_Kick: kicking DS14B20 temperature conversion
2014.05.21 21:17:59 5: OWX_Executor: command 2 eligible to run
2014.05.21 21:18:00 3: OWX_DS2480: Search 2nd return has wrong parameter with length = 17
2014.05.21 21:18:00 5: OWX_Executor: item ProtoThreads=HASH(0x1b9bc68) for --- eligible to run
2014.05.21 21:18:00 5: OWX_SER::Execute: Sending out cc44
2014.05.21 21:18:00 5: OWX_SER::Execute: Receiving cc44
2014.05.21 21:18:00 5: AfterExecute: context: ProtoThreads=HASH(0x1b9bc68), success: 1, reset: 1, owx_dev: undef, writedata: 44, numread: 0, readdata:
2014.05.21 21:18:00 5: OWX_Executor: item ProtoThreads=HASH(0x1b38b88) for 29.68980C000000.da eligible to run
2014.05.21 21:18:00 5: OWX_SER::Execute: Sending out 552968980c000000daf08800ffffffffffffffffffff
2014.05.21 21:18:00 5: OWX_SER::Execute: Receiving 552968980c000000daf08800f7f7ff000088ffff2706
2014.05.21 21:18:00 5: AfterExecute: context: ProtoThreads=HASH(0x1b38b88), success: 1, reset: 1, owx_dev: 29.68980C000000.da, writedata: f08800, numread: 10, readdata: f7f7ff000088ffff2706
2014.05.21 21:18:01 5: OWX_Executor: item ProtoThreads=HASH(0x1b97178) for 28.CA0FAC040000.04 eligible to run
2014.05.21 21:18:01 5: OWX_SER::Execute: Sending out 5528ca0fac04000004beffffffffffffffffff
2014.05.21 21:18:01 5: OWX_SER::Execute: Receiving 5528ca0fac04000004beee001e0a7fff0210d3
2014.05.21 21:18:01 5: AfterExecute: context: ProtoThreads=HASH(0x1b97178), success: 1, reset: 1, owx_dev: 28.CA0FAC040000.04, writedata: be, numread: 9, readdata: ee001e0a7fff0210d3
2014.05.21 21:18:01 5: OWX_Executor: item ProtoThreads=HASH(0x1ba2458) for 10.541E0B000800.35 eligible to run
2014.05.21 21:18:01 5: OWX_SER::Execute: Sending out 5510541e0b00080035beffffffffffffffffff
2014.05.21 21:18:01 5: OWX_SER::Execute: Receiving 5510541e0b00080035be77004619ffff0410b2
2014.05.21 21:18:01 5: AfterExecute: context: ProtoThreads=HASH(0x1ba2458), success: 1, reset: 1, owx_dev: 10.541E0B000800.35, writedata: be, numread: 9, readdata: 77004619ffff0410b2
2014.05.21 21:18:01 5: OWX_Executor: item ProtoThreads=HASH(0x1b3ed38) for 10.787E83020800.65 eligible to run
2014.05.21 21:18:01 5: OWX_SER::Execute: Sending out 5510787e8302080065beffffffffffffffffff
2014.05.21 21:18:01 5: OWX_SER::Execute: Receiving 5510787e8302080065be3d003809ffff02100a
2014.05.21 21:18:01 5: AfterExecute: context: ProtoThreads=HASH(0x1b3ed38), success: 1, reset: 1, owx_dev: 10.787E83020800.65, writedata: be, numread: 9, readdata: 3d003809ffff02100a
2014.05.21 21:18:01 5: OWX_Executor: item ProtoThreads=HASH(0x1b51188) for 28.810671010000.D3 eligible to run
2014.05.21 21:18:01 5: OWX_SER::Execute: Sending out 5528810671010000d3beffffffffffffffffff
2014.05.21 21:18:01 5: OWX_SER::Execute: Receiving 5528810671010000d3be880446087fff0810be
2014.05.21 21:18:01 5: AfterExecute: context: ProtoThreads=HASH(0x1b51188), success: 1, reset: 1, owx_dev: 28.810671010000.D3, writedata: be, numread: 9, readdata: 880446087fff0810be
2014.05.21 21:18:01 5: OWX_Executor: item ProtoThreads=HASH(0x18490d0) for 28.905F9B010000.8B eligible to run
2014.05.21 21:18:01 5: OWX_SER::Execute: Sending out 5528905f9b0100008bbeffffffffffffffffff
2014.05.21 21:18:01 5: OWX_SER::Execute: Receiving 5528905f9b0100008bbed5001e057fff0b101d
2014.05.21 21:18:01 5: AfterExecute: context: ProtoThreads=HASH(0x18490d0), success: 1, reset: 1, owx_dev: 28.905F9B010000.8B, writedata: be, numread: 9, readdata: d5001e057fff0b101d
2014.05.21 21:18:01 5: OWX_Executor: item ProtoThreads=HASH(0x1a73170) for 28.0E37AC040000.FD eligible to run
2014.05.21 21:18:01 5: OWX_SER::Execute: Sending out 55280e37ac040000fdbeffffffffffffffffff
2014.05.21 21:18:02 5: OWX_SER::Execute: Receiving 55280e37ac040000fdbe58011e0a7fff0810f4
2014.05.21 21:18:02 5: AfterExecute: context: ProtoThreads=HASH(0x1a73170), success: 1, reset: 1, owx_dev: 28.0E37AC040000.FD, writedata: be, numread: 9, readdata: 58011e0a7fff0810f4
2014.05.21 21:18:02 5: OWX_Executor: item ProtoThreads=HASH(0x1b491c0) for 28.AEE870010000.B6 eligible to run
2014.05.21 21:18:02 5: OWX_SER::Execute: Sending out 5528aee870010000b6beffffffffffffffffff
2014.05.21 21:18:02 5: OWX_SER::Execute: Receiving 5528aee870010000b6beb00137037fff1010e4
2014.05.21 21:18:02 5: AfterExecute: context: ProtoThreads=HASH(0x1b491c0), success: 1, reset: 1, owx_dev: 28.AEE870010000.B6, writedata: be, numread: 9, readdata: b00137037fff1010e4
2014.05.21 21:18:02 5: OWX_Executor: item ProtoThreads=HASH(0x1b0a418) for 28.A8A49B010000.11 eligible to run
2014.05.21 21:18:02 5: OWX_SER::Execute: Sending out 5528a8a49b01000011beffffffffffffffffff
2014.05.21 21:18:02 5: OWX_SER::Execute: Receiving 5528a8a49b01000011be35055a087fff0b10e2
2014.05.21 21:18:02 5: AfterExecute: context: ProtoThreads=HASH(0x1b0a418), success: 1, reset: 1, owx_dev: 28.A8A49B010000.11, writedata: be, numread: 9, readdata: 35055a087fff0b10e2
2014.05.21 21:18:02 5: OWX_Executor: item ProtoThreads=HASH(0x1ba17d8) for 10.0576A8020800.6D eligible to run
2014.05.21 21:18:02 5: OWX_SER::Execute: Sending out 55100576a80208006dbeffffffffffffffffff
2014.05.21 21:18:02 5: OWX_SER::Execute: Receiving 55100576a80208006dbe96005a08ffff0f1036
2014.05.21 21:18:02 5: AfterExecute: context: ProtoThreads=HASH(0x1ba17d8), success: 1, reset: 1, owx_dev: 10.0576A8020800.6D, writedata: be, numread: 9, readdata: 96005a08ffff0f1036
2014.05.21 21:18:02 5: OWX_Executor: item ProtoThreads=HASH(0x1ae3d48) for 28.1307AC040000.68 eligible to run
2014.05.21 21:18:02 5: OWX_SER::Execute: Sending out 55281307ac04000068beffffffffffffffffff
2014.05.21 21:18:02 5: OWX_SER::Execute: Receiving 55281307ac04000068be46011e0a7fff0a1088
2014.05.21 21:18:02 5: AfterExecute: context: ProtoThreads=HASH(0x1ae3d48), success: 1, reset: 1, owx_dev: 28.1307AC040000.68, writedata: be, numread: 9, readdata: 46011e0a7fff0a1088
2014.05.21 21:18:12 5: OWX_ASYNC_Set request OWio1 FF ?
2014.05.21 21:18:30 5: OWX_Executor: command 1 eligible to run
2014.05.21 21:18:30 5: OWX_ASYNC_PT_Kick: kicking DS14B20 temperature conversion
2014.05.21 21:18:30 5: OWX_Executor: command 2 eligible to run
2014.05.21 21:18:30 5: OWX_SER::Search: new alarm device found 28.810671010000.D3
2014.05.21 21:18:30 5: OWX_SER::Search: new alarm device found 29.68980C000000.DA
2014.05.21 21:18:31 5:  Alarms = 28.810671010000.D3 29.68980C000000.DA
2014.05.21 21:18:31 5: OWX_Executor: item ProtoThreads=HASH(0x1ae8228) for --- eligible to run
2014.05.21 21:18:31 5: OWX_SER::Execute: Sending out cc44
2014.05.21 21:18:31 5: OWX_SER::Execute: Receiving cc44
2014.05.21 21:18:31 5: AfterExecute: context: ProtoThreads=HASH(0x1ae8228), success: 1, reset: 1, owx_dev: undef, writedata: 44, numread: 0, readdata:
2014.05.21 21:18:31 5: OWX_Executor: item ProtoThreads=HASH(0x184f510) for 29.68980C000000.da eligible to run
2014.05.21 21:18:31 5: OWX_SER::Execute: Sending out 552968980c000000daf08800ffffffffffffffffffff
2014.05.21 21:18:31 5: OWX_SER::Execute: Receiving 552968980c000000daf08800f7f7ff000088ffff2706
2014.05.21 21:18:31 5: AfterExecute: context: ProtoThreads=HASH(0x184f510), success: 1, reset: 1, owx_dev: 29.68980C000000.da, writedata: f08800, numread: 10, readdata: f7f7ff000088ffff2706
2014.05.21 21:18:31 5: OWX_Executor: item ProtoThreads=HASH(0x1841588) for 20.0C2C0C000000.59 eligible to run
2014.05.21 21:18:31 5: OWX_SER::Execute: Sending out 55200c2c0c000000593c0f00ffff
2014.05.21 21:18:31 5: OWX_SER::Execute: Receiving 55200c2c0c000000593c0f003a03
2014.05.21 21:18:31 5: AfterExecute: context: ProtoThreads=HASH(0x1841588), success: 1, reset: 1, owx_dev: 20.0C2C0C000000.59, writedata: 3c0f00ffff, numread: 0, readdata:
2014.05.21 21:18:31 5: OWX_Executor: item ProtoThreads=HASH(0x1841588) for 20.0C2C0C000000.59 eligible to run
2014.05.21 21:18:31 5: OWX_SER::Execute: Sending out 55200c2c0c00000059aa0000ffffffffffffffffffff
2014.05.21 21:18:31 5: OWX_SER::Execute: Receiving 55200c2c0c00000059aa0000f2f8a2027e02eae4bd36
2014.05.21 21:18:31 5: AfterExecute: context: ProtoThreads=HASH(0x1841588), success: 1, reset: 1, owx_dev: 20.0C2C0C000000.59, writedata: aa0000, numread: 10, readdata: f2f8a2027e02eae4bd36
2014.05.21 21:18:31 5: OWX_Executor: item ProtoThreads=HASH(0x1ae6548) for 20.0C2C0C000000.59 eligible to run
2014.05.21 21:18:31 5: OWX_SER::Execute: Sending out 55200c2c0c00000059aa1000ffffffffffffffffffff
2014.05.21 21:18:31 5: OWX_SER::Execute: Receiving 55200c2c0c00000059aa1000f5ff00b900b900ff11ba
2014.05.21 21:18:31 5: AfterExecute: context: ProtoThreads=HASH(0x1ae6548), success: 1, reset: 1, owx_dev: 20.0C2C0C000000.59, writedata: aa1000, numread: 10, readdata: f5ff00b900b900ff11ba
2014.05.21 21:18:31 5: OWX_Executor: item ProtoThreads=HASH(0x1846468) for 28.CA0FAC040000.04 eligible to run
2014.05.21 21:18:31 5: OWX_SER::Execute: Sending out 5528ca0fac04000004beffffffffffffffffff
2014.05.21 21:18:32 5: OWX_SER::Execute: Receiving 5528ca0fac04000004beee001e0a7fff0210d3
2014.05.21 21:18:32 5: AfterExecute: context: ProtoThreads=HASH(0x1846468), success: 1, reset: 1, owx_dev: 28.CA0FAC040000.04, writedata: be, numread: 9, readdata: ee001e0a7fff0210d3
2014.05.21 21:18:32 5: OWX_Executor: item ProtoThreads=HASH(0x1ae41a8) for 10.541E0B000800.35 eligible to run
2014.05.21 21:18:32 5: OWX_SER::Execute: Sending out 5510541e0b00080035beffffffffffffffffff
2014.05.21 21:18:32 5: OWX_SER::Execute: Receiving 5510541e0b00080035be77004619ffff0410b2
2014.05.21 21:18:32 5: AfterExecute: context: ProtoThreads=HASH(0x1ae41a8), success: 1, reset: 1, owx_dev: 10.541E0B000800.35, writedata: be, numread: 9, readdata: 77004619ffff0410b2
2014.05.21 21:18:32 5: OWX_Executor: item ProtoThreads=HASH(0x1af19b8) for 10.787E83020800.65 eligible to run
2014.05.21 21:18:32 5: OWX_SER::Execute: Sending out 5510787e8302080065beffffffffffffffffff
2014.05.21 21:18:32 5: OWX_SER::Execute: Receiving 5510787e8302080065be3d003809ffff01105f
2014.05.21 21:18:32 5: AfterExecute: context: ProtoThreads=HASH(0x1af19b8), success: 1, reset: 1, owx_dev: 10.787E83020800.65, writedata: be, numread: 9, readdata: 3d003809ffff01105f
2014.05.21 21:18:32 5: OWX_Executor: item ProtoThreads=HASH(0x1a5e9f8) for 28.810671010000.D3 eligible to run
2014.05.21 21:18:32 5: OWX_SER::Execute: Sending out 5528810671010000d3beffffffffffffffffff
2014.05.21 21:18:32 5: OWX_SER::Execute: Receiving 5528810671010000d3be880446087fff0810be
2014.05.21 21:18:32 5: AfterExecute: context: ProtoThreads=HASH(0x1a5e9f8), success: 1, reset: 1, owx_dev: 28.810671010000.D3, writedata: be, numread: 9, readdata: 880446087fff0810be
2014.05.21 21:18:32 5: OWX_Executor: item ProtoThreads=HASH(0x1b21c10) for 28.905F9B010000.8B eligible to run
2014.05.21 21:18:32 5: OWX_SER::Execute: Sending out 5528905f9b0100008bbeffffffffffffffffff
2014.05.21 21:18:32 5: OWX_SER::Execute: Receiving 5528905f9b0100008bbed5001e057fff0b101d
2014.05.21 21:18:32 5: AfterExecute: context: ProtoThreads=HASH(0x1b21c10), success: 1, reset: 1, owx_dev: 28.905F9B010000.8B, writedata: be, numread: 9, readdata: d5001e057fff0b101d
2014.05.21 21:18:32 5: OWX_Executor: item ProtoThreads=HASH(0x1ba39d0) for 28.0E37AC040000.FD eligible to run
2014.05.21 21:18:32 5: OWX_SER::Execute: Sending out 55280e37ac040000fdbeffffffffffffffffff
2014.05.21 21:18:32 5: OWX_SER::Execute: Receiving 55280e37ac040000fdbe58011e0a7fff0810f4
2014.05.21 21:18:32 5: AfterExecute: context: ProtoThreads=HASH(0x1ba39d0), success: 1, reset: 1, owx_dev: 28.0E37AC040000.FD, writedata: be, numread: 9, readdata: 58011e0a7fff0810f4
2014.05.21 21:18:32 5: OWX_Executor: item ProtoThreads=HASH(0x1b2be70) for 28.AEE870010000.B6 eligible to run
2014.05.21 21:18:32 5: OWX_SER::Execute: Sending out 5528aee870010000b6beffffffffffffffffff
2014.05.21 21:18:33 5: OWX_SER::Execute: Receiving 5528aee870010000b6beb00137037fff1010e4
2014.05.21 21:18:33 5: AfterExecute: context: ProtoThreads=HASH(0x1b2be70), success: 1, reset: 1, owx_dev: 28.AEE870010000.B6, writedata: be, numread: 9, readdata: b00137037fff1010e4
2014.05.21 21:18:33 5: OWX_Executor: item ProtoThreads=HASH(0x1b97078) for 28.A8A49B010000.11 eligible to run
2014.05.21 21:18:33 5: OWX_SER::Execute: Sending out 5528a8a49b01000011beffffffffffffffffff
2014.05.21 21:18:33 5: OWX_SER::Execute: Receiving 5528a8a49b01000011be36055a087fff0a10e3
2014.05.21 21:18:33 5: AfterExecute: context: ProtoThreads=HASH(0x1b97078), success: 1, reset: 1, owx_dev: 28.A8A49B010000.11, writedata: be, numread: 9, readdata: 36055a087fff0a10e3
2014.05.21 21:18:33 5: OWX_Executor: item ProtoThreads=HASH(0x1af1b38) for 10.0576A8020800.6D eligible to run
2014.05.21 21:18:33 5: OWX_SER::Execute: Sending out 55100576a80208006dbeffffffffffffffffff
2014.05.21 21:18:33 5: OWX_SER::Execute: Receiving 55100576a80208006dbe96005a08ffff0e10f2
2014.05.21 21:18:33 5: AfterExecute: context: ProtoThreads=HASH(0x1af1b38), success: 1, reset: 1, owx_dev: 10.0576A8020800.6D, writedata: be, numread: 9, readdata: 96005a08ffff0e10f2
2014.05.21 21:18:33 5: OWX_Executor: item ProtoThreads=HASH(0x1b45aa8) for 28.1307AC040000.68 eligible to run
2014.05.21 21:18:33 5: OWX_SER::Execute: Sending out 55281307ac04000068beffffffffffffffffff
2014.05.21 21:18:33 5: OWX_SER::Execute: Receiving 55281307ac04000068be46011e0a7fff0a1088
2014.05.21 21:18:33 5: AfterExecute: context: ProtoThreads=HASH(0x1b45aa8), success: 1, reset: 1, owx_dev: 28.1307AC040000.68, writedata: be, numread: 9, readdata: 46011e0a7fff0a1088
2014.05.21 21:18:33 5: OWX_Executor: item ProtoThreads=HASH(0x1b21350) for 20.0C2C0C000000.59 eligible to run
2014.05.21 21:18:34 5: OWX_SER::Execute: Sending out 55200c2c0c00000059aa0800ffffffffffffffffffff
2014.05.21 21:18:34 5: OWX_SER::Execute: Receiving 55200c2c0c00000059aa08000001000100010001e0cf
2014.05.21 21:18:34 5: AfterExecute: context: ProtoThreads=HASH(0x1b21350), success: 1, reset: 1, owx_dev: 20.0C2C0C000000.59, writedata: aa0800, numread: 10, readdata: 0001000100010001e0cf
2014.05.21 21:19:00 5: OWX_Executor: item ProtoThreads=HASH(0x1b492a0) for 29.68980C000000.da eligible to run
2014.05.21 21:19:00 5: OWX_SER::Execute: Sending out 552968980c000000daf08800ffffffffffffffffffff
2014.05.21 21:19:00 5: OWX_SER::Execute: Receiving 552968980c000000daf08800f7f7ff000088ffff2706
2014.05.21 21:19:00 5: AfterExecute: context: ProtoThreads=HASH(0x1b492a0), success: 1, reset: 1, owx_dev: 29.68980C000000.da, writedata: f08800, numread: 10, readdata: f7f7ff000088ffff2706
2014.05.21 21:19:00 5: OWX_Executor: command 1 eligible to run
2014.05.21 21:19:00 5: OWX_ASYNC_PT_Kick: kicking DS14B20 temperature conversion
2014.05.21 21:19:00 3: OWX_DS2480: Search 2nd return has wrong parameter with length = 17
2014.05.21 21:19:00 5: OWX_Executor: command 2 eligible to run
2014.05.21 21:19:00 5: OWX_SER::Search: new alarm device found 28.810671010000.D3
2014.05.21 21:19:00 5: OWX_SER::Search: new alarm device found 29.68980C000000.DA
2014.05.21 21:19:00 5:  Alarms = 28.810671010000.D3 29.68980C000000.DA
2014.05.21 21:19:00 5: OWX_Executor: item ProtoThreads=HASH(0x1ba21d8) for --- eligible to run
2014.05.21 21:19:01 5: OWX_SER::Execute: Sending out cc44
2014.05.21 21:19:01 5: OWX_SER::Execute: Receiving cc44
2014.05.21 21:19:01 5: AfterExecute: context: ProtoThreads=HASH(0x1ba21d8), success: 1, reset: 1, owx_dev: undef, writedata: 44, numread: 0, readdata:
2014.05.21 21:19:01 5: OWX_Executor: item ProtoThreads=HASH(0x18527e0) for 28.CA0FAC040000.04 eligible to run
2014.05.21 21:19:01 5: OWX_SER::Execute: Sending out 5528ca0fac04000004beffffffffffffffffff
2014.05.21 21:19:01 5: OWX_SER::Execute: Receiving 5528ca0fac04000004beee001e0a7fff0210d3
2014.05.21 21:19:01 5: AfterExecute: context: ProtoThreads=HASH(0x18527e0), success: 1, reset: 1, owx_dev: 28.CA0FAC040000.04, writedata: be, numread: 9, readdata: ee001e0a7fff0210d3
2014.05.21 21:19:01 5: OWX_Executor: item ProtoThreads=HASH(0x1af15b8) for 10.541E0B000800.35 eligible to run
2014.05.21 21:19:01 5: OWX_SER::Execute: Sending out 5510541e0b00080035beffffffffffffffffff
2014.05.21 21:19:01 5: OWX_SER::Execute: Receiving 5510541e0b00080035be77004619ffff0410b2
2014.05.21 21:19:01 5: AfterExecute: context: ProtoThreads=HASH(0x1af15b8), success: 1, reset: 1, owx_dev: 10.541E0B000800.35, writedata: be, numread: 9, readdata: 77004619ffff0410b2
2014.05.21 21:19:01 5: OWX_Executor: item ProtoThreads=HASH(0x1b27ab8) for 10.787E83020800.65 eligible to run
2014.05.21 21:19:01 5: OWX_SER::Execute: Sending out 5510787e8302080065beffffffffffffffffff
2014.05.21 21:19:01 5: OWX_SER::Execute: Receiving 5510787e8302080065be3e003809ffff1010b2
2014.05.21 21:19:01 5: AfterExecute: context: ProtoThreads=HASH(0x1b27ab8), success: 1, reset: 1, owx_dev: 10.787E83020800.65, writedata: be, numread: 9, readdata: 3e003809ffff1010b2
2014.05.21 21:19:01 5: OWX_Executor: item ProtoThreads=HASH(0x1b16208) for 28.810671010000.D3 eligible to run
2014.05.21 21:19:01 5: OWX_SER::Execute: Sending out 5528810671010000d3beffffffffffffffffff
2014.05.21 21:19:02 5: OWX_SER::Execute: Receiving 5528810671010000d3be880446087fff0810be
2014.05.21 21:19:02 5: AfterExecute: context: ProtoThreads=HASH(0x1b16208), success: 1, reset: 1, owx_dev: 28.810671010000.D3, writedata: be, numread: 9, readdata: 880446087fff0810be
2014.05.21 21:19:02 5: OWX_Executor: item ProtoThreads=HASH(0x1b8a718) for 28.905F9B010000.8B eligible to run
2014.05.21 21:19:02 5: OWX_SER::Execute: Sending out 5528905f9b0100008bbeffffffffffffffffff
2014.05.21 21:19:02 5: OWX_SER::Execute: Receiving 5528905f9b0100008bbed4001e057fff0c1030
2014.05.21 21:19:02 5: AfterExecute: context: ProtoThreads=HASH(0x1b8a718), success: 1, reset: 1, owx_dev: 28.905F9B010000.8B, writedata: be, numread: 9, readdata: d4001e057fff0c1030
2014.05.21 21:19:02 5: OWX_Executor: item ProtoThreads=HASH(0x1848550) for 28.0E37AC040000.FD eligible to run
2014.05.21 21:19:02 5: OWX_SER::Execute: Sending out 55280e37ac040000fdbeffffffffffffffffff
2014.05.21 21:19:02 5: OWX_SER::Execute: Receiving 55280e37ac040000fdbe58011e0a7fff0810f4
2014.05.21 21:19:02 5: AfterExecute: context: ProtoThreads=HASH(0x1848550), success: 1, reset: 1, owx_dev: 28.0E37AC040000.FD, writedata: be, numread: 9, readdata: 58011e0a7fff0810f4
2014.05.21 21:19:02 5: OWX_Executor: item ProtoThreads=HASH(0x1b213f0) for 28.AEE870010000.B6 eligible to run
2014.05.21 21:19:02 5: OWX_SER::Execute: Sending out 5528aee870010000b6beffffffffffffffffff
2014.05.21 21:19:02 5: OWX_SER::Execute: Receiving 5528aee870010000b6beaf0137037fff011062
2014.05.21 21:19:02 5: AfterExecute: context: ProtoThreads=HASH(0x1b213f0), success: 1, reset: 1, owx_dev: 28.AEE870010000.B6, writedata: be, numread: 9, readdata: af0137037fff011062
2014.05.21 21:19:02 5: OWX_Executor: item ProtoThreads=HASH(0x1ae8238) for 28.A8A49B010000.11 eligible to run
2014.05.21 21:19:02 5: OWX_SER::Execute: Sending out 5528a8a49b01000011beffffffffffffffffff
2014.05.21 21:19:02 5: OWX_SER::Execute: Receiving 5528a8a49b01000011be35055a087fff0b10e2
2014.05.21 21:19:02 5: AfterExecute: context: ProtoThreads=HASH(0x1ae8238), success: 1, reset: 1, owx_dev: 28.A8A49B010000.11, writedata: be, numread: 9, readdata: 35055a087fff0b10e2
2014.05.21 21:19:02 5: OWX_Executor: item ProtoThreads=HASH(0x1b20ef0) for 10.0576A8020800.6D eligible to run
2014.05.21 21:19:03 5: OWX_SER::Execute: Sending out 55100576a80208006dbeffffffffffffffffff
2014.05.21 21:19:03 5: OWX_SER::Execute: Receiving 55100576a80208006dbe96005a08ffff0f1036
2014.05.21 21:19:03 5: AfterExecute: context: ProtoThreads=HASH(0x1b20ef0), success: 1, reset: 1, owx_dev: 10.0576A8020800.6D, writedata: be, numread: 9, readdata: 96005a08ffff0f1036
2014.05.21 21:19:03 5: OWX_Executor: item ProtoThreads=HASH(0x1b369d8) for 28.1307AC040000.68 eligible to run
2014.05.21 21:19:03 5: OWX_SER::Execute: Sending out 55281307ac04000068beffffffffffffffffff
2014.05.21 21:19:03 5: OWX_SER::Execute: Receiving 55281307ac04000068be46011e0a7fff0a1088
2014.05.21 21:19:03 5: AfterExecute: context: ProtoThreads=HASH(0x1b369d8), success: 1, reset: 1, owx_dev: 28.1307AC040000.68, writedata: be, numread: 9, readdata: 46011e0a7fff0a1088
2014.05.21 21:19:30 5: OWX_Executor: item ProtoThreads=HASH(0x1a72a90) for 29.68980C000000.da eligible to run
2014.05.21 21:19:30 5: OWX_SER::Execute: Sending out 552968980c000000daf08800ffffffffffffffffffff
2014.05.21 21:19:30 5: OWX_SER::Execute: Receiving 552968980c000000daf08800f7f7ff000088ffff2706
2014.05.21 21:19:30 5: AfterExecute: context: ProtoThreads=HASH(0x1a72a90), success: 1, reset: 1, owx_dev: 29.68980C000000.da, writedata: f08800, numread: 10, readdata: f7f7ff000088ffff2706
2014.05.21 21:19:30 5: OWX_Executor: item ProtoThreads=HASH(0x1b1abe0) for 20.0C2C0C000000.59 eligible to run
2014.05.21 21:19:30 5: OWX_SER::Execute: Sending out 55200c2c0c000000593c0f00ffff
2014.05.21 21:19:30 5: OWX_ASYNC_PT_Kick: kicking DS14B20 temperature conversion
2014.05.21 21:19:30 5: OWX_SER::Execute: Receiving 55200c2c0c000000593c0f003a03
2014.05.21 21:19:30 5: AfterExecute: context: ProtoThreads=HASH(0x1b1abe0), success: 1, reset: 1, owx_dev: 20.0C2C0C000000.59, writedata: 3c0f00ffff, numread: 0, readdata:
2014.05.21 21:19:30 5: OWX_Executor: command 1 eligible to run
2014.05.21 21:19:30 5: OWX_Executor: command 2 eligible to run
2014.05.21 21:19:30 5: OWX_SER::Search: new alarm device found 28.810671010000.D3
2014.05.21 21:19:30 5: OWX_SER::Search: new alarm device found 29.68980C000000.DA
2014.05.21 21:19:31 5:  Alarms = 28.810671010000.D3 29.68980C000000.DA
2014.05.21 21:19:31 5: OWX_Executor: item ProtoThreads=HASH(0x1848ff0) for --- eligible to run
2014.05.21 21:19:31 5: OWX_SER::Execute: Sending out cc44
2014.05.21 21:19:31 5: OWX_SER::Execute: Receiving cc44
2014.05.21 21:19:31 5: AfterExecute: context: ProtoThreads=HASH(0x1848ff0), success: 1, reset: 1, owx_dev: undef, writedata: 44, numread: 0, readdata:
2014.05.21 21:19:31 5: OWX_Executor: item ProtoThreads=HASH(0x1b1abe0) for 20.0C2C0C000000.59 eligible to run
2014.05.21 21:19:31 5: OWX_SER::Execute: Sending out 55200c2c0c00000059aa0000ffffffffffffffffffff
2014.05.21 21:19:31 5: OWX_SER::Execute: Receiving 55200c2c0c00000059aa0000c2fa8802e802c7e62b31
2014.05.21 21:19:31 5: AfterExecute: context: ProtoThreads=HASH(0x1b1abe0), success: 1, reset: 1, owx_dev: 20.0C2C0C000000.59, writedata: aa0000, numread: 10, readdata: c2fa8802e802c7e62b31
2014.05.21 21:19:31 5: OWX_Executor: item ProtoThreads=HASH(0x1b94490) for 20.0C2C0C000000.59 eligible to run
2014.05.21 21:19:31 5: OWX_SER::Execute: Sending out 55200c2c0c00000059aa1000ffffffffffffffffffff
2014.05.21 21:19:31 5: OWX_SER::Execute: Receiving 55200c2c0c00000059aa1000f5ff00b900b900ff11ba
2014.05.21 21:19:31 5: AfterExecute: context: ProtoThreads=HASH(0x1b94490), success: 1, reset: 1, owx_dev: 20.0C2C0C000000.59, writedata: aa1000, numread: 10, readdata: f5ff00b900b900ff11ba
2014.05.21 21:19:31 5: OWX_Executor: item ProtoThreads=HASH(0x1ae7f58) for 28.CA0FAC040000.04 eligible to run
2014.05.21 21:19:31 5: OWX_SER::Execute: Sending out 5528ca0fac04000004beffffffffffffffffff
2014.05.21 21:19:31 5: OWX_SER::Execute: Receiving 5528ca0fac04000004beee001e0a7fff0210d3
2014.05.21 21:19:31 5: AfterExecute: context: ProtoThreads=HASH(0x1ae7f58), success: 1, reset: 1, owx_dev: 28.CA0FAC040000.04, writedata: be, numread: 9, readdata: ee001e0a7fff0210d3
2014.05.21 21:19:31 5: OWX_Executor: item ProtoThreads=HASH(0x1a75170) for 10.541E0B000800.35 eligible to run
2014.05.21 21:19:31 5: OWX_SER::Execute: Sending out 5510541e0b00080035beffffffffffffffffff
2014.05.21 21:19:31 5: OWX_SER::Execute: Receiving 5510541e0b00080035be77004619ffff0410b2
2014.05.21 21:19:31 5: AfterExecute: context: ProtoThreads=HASH(0x1a75170), success: 1, reset: 1, owx_dev: 10.541E0B000800.35, writedata: be, numread: 9, readdata: 77004619ffff0410b2
2014.05.21 21:19:31 5: OWX_Executor: item ProtoThreads=HASH(0x1b32e60) for 10.787E83020800.65 eligible to run
2014.05.21 21:19:31 5: OWX_SER::Execute: Sending out 5510787e8302080065beffffffffffffffffff
2014.05.21 21:19:31 5: OWX_SER::Execute: Receiving 5510787e8302080065be3e003809ffff0f1046
2014.05.21 21:19:31 5: AfterExecute: context: ProtoThreads=HASH(0x1b32e60), success: 1, reset: 1, owx_dev: 10.787E83020800.65, writedata: be, numread: 9, readdata: 3e003809ffff0f1046
2014.05.21 21:19:31 5: OWX_Executor: item ProtoThreads=HASH(0x1b27818) for 28.810671010000.D3 eligible to run
2014.05.21 21:19:31 5: OWX_SER::Execute: Sending out 5528810671010000d3beffffffffffffffffff
2014.05.21 21:19:32 5: OWX_SER::Execute: Receiving 5528810671010000d3be890446087fff0710e5
2014.05.21 21:19:32 5: AfterExecute: context: ProtoThreads=HASH(0x1b27818), success: 1, reset: 1, owx_dev: 28.810671010000.D3, writedata: be, numread: 9, readdata: 890446087fff0710e5
2014.05.21 21:19:32 5: OWX_Executor: item ProtoThreads=HASH(0x1b34560) for 28.905F9B010000.8B eligible to run
2014.05.21 21:19:32 5: OWX_SER::Execute: Sending out 5528905f9b0100008bbeffffffffffffffffff
2014.05.21 21:19:32 5: OWX_SER::Execute: Receiving 5528905f9b0100008bbed5001e057fff0b101d
2014.05.21 21:19:32 5: AfterExecute: context: ProtoThreads=HASH(0x1b34560), success: 1, reset: 1, owx_dev: 28.905F9B010000.8B, writedata: be, numread: 9, readdata: d5001e057fff0b101d
2014.05.21 21:19:32 5: OWX_Executor: item ProtoThreads=HASH(0x1b23988) for 28.0E37AC040000.FD eligible to run
2014.05.21 21:19:32 5: OWX_SER::Execute: Sending out 55280e37ac040000fdbeffffffffffffffffff
2014.05.21 21:19:32 5: OWX_SER::Execute: Receiving 55280e37ac040000fdbe58011e0a7fff0810f4
2014.05.21 21:19:32 5: AfterExecute: context: ProtoThreads=HASH(0x1b23988), success: 1, reset: 1, owx_dev: 28.0E37AC040000.FD, writedata: be, numread: 9, readdata: 58011e0a7fff0810f4
2014.05.21 21:19:32 5: OWX_Executor: item ProtoThreads=HASH(0x184d678) for 28.AEE870010000.B6 eligible to run
2014.05.21 21:19:32 5: OWX_SER::Execute: Sending out 5528aee870010000b6beffffffffffffffffff
2014.05.21 21:19:32 5: OWX_SER::Execute: Receiving 5528aee870010000b6beaf0137037fff011062
2014.05.21 21:19:32 5: AfterExecute: context: ProtoThreads=HASH(0x184d678), success: 1, reset: 1, owx_dev: 28.AEE870010000.B6, writedata: be, numread: 9, readdata: af0137037fff011062
2014.05.21 21:19:32 5: OWX_Executor: item ProtoThreads=HASH(0x1af1db8) for 28.A8A49B010000.11 eligible to run
2014.05.21 21:19:32 5: OWX_SER::Execute: Sending out 5528a8a49b01000011beffffffffffffffffff
2014.05.21 21:19:32 5: OWX_SER::Execute: Receiving 5528a8a49b01000011be35055a087fff0b10e2
2014.05.21 21:19:32 5: AfterExecute: context: ProtoThreads=HASH(0x1af1db8), success: 1, reset: 1, owx_dev: 28.A8A49B010000.11, writedata: be, numread: 9, readdata: 35055a087fff0b10e2
2014.05.21 21:19:32 5: OWX_Executor: item ProtoThreads=HASH(0x1b463e8) for 10.0576A8020800.6D eligible to run
2014.05.21 21:19:33 5: OWX_SER::Execute: Sending out 55100576a80208006dbeffffffffffffffffff
2014.05.21 21:19:33 5: OWX_SER::Execute: Receiving 55100576a80208006dbe96005a08ffff0e10f2
2014.05.21 21:19:33 5: AfterExecute: context: ProtoThreads=HASH(0x1b463e8), success: 1, reset: 1, owx_dev: 10.0576A8020800.6D, writedata: be, numread: 9, readdata: 96005a08ffff0e10f2
2014.05.21 21:19:33 5: OWX_Executor: item ProtoThreads=HASH(0x1848510) for 28.1307AC040000.68 eligible to run
2014.05.21 21:19:33 5: OWX_SER::Execute: Sending out 55281307ac04000068beffffffffffffffffff
2014.05.21 21:19:33 5: OWX_SER::Execute: Receiving 55281307ac04000068be47011e0a7fff09109e
2014.05.21 21:19:33 5: AfterExecute: context: ProtoThreads=HASH(0x1848510), success: 1, reset: 1, owx_dev: 28.1307AC040000.68, writedata: be, numread: 9, readdata: 47011e0a7fff09109e
2014.05.21 21:19:33 5: OWX_Executor: item ProtoThreads=HASH(0x1ba1dd8) for 20.0C2C0C000000.59 eligible to run
2014.05.21 21:19:33 5: OWX_SER::Execute: Sending out 55200c2c0c00000059aa0800ffffffffffffffffffff
2014.05.21 21:19:33 5: OWX_SER::Execute: Receiving 55200c2c0c00000059aa08000001000100010001e0cf
2014.05.21 21:19:33 5: AfterExecute: context: ProtoThreads=HASH(0x1ba1dd8), success: 1, reset: 1, owx_dev: 20.0C2C0C000000.59, writedata: aa0800, numread: 10, readdata: 0001000100010001e0cf
2014.05.21 21:20:00 5: OWX_Executor: item ProtoThreads=HASH(0x1b2bff0) for 29.68980C000000.da eligible to run
2014.05.21 21:20:00 5: OWX_SER::Execute: Sending out 552968980c000000daf08800ffffffffffffffffffff
2014.05.21 21:20:00 5: OWX_SER::Execute: Receiving 552968980c000000daf08800f7f7ff000088ffff2706
2014.05.21 21:20:00 5: AfterExecute: context: ProtoThreads=HASH(0x1b2bff0), success: 1, reset: 1, owx_dev: 29.68980C000000.da, writedata: f08800, numread: 10, readdata: f7f7ff000088ffff2706
2014.05.21 21:20:00 5: OWX_Executor: command 1 eligible to run
2014.05.21 21:20:00 5: OWX_ASYNC_PT_Kick: kicking DS14B20 temperature conversion
2014.05.21 21:20:00 5: OWX_Executor: command 2 eligible to run
2014.05.21 21:20:00 5: OWX_SER::Search: new alarm device found 28.810671010000.D3
2014.05.21 21:20:00 5: OWX_SER::Search: new alarm device found 29.68980C000000.DA
2014.05.21 21:20:00 5:  Alarms = 28.810671010000.D3 29.68980C000000.DA
2014.05.21 21:20:01 5: OWX_Executor: item ProtoThreads=HASH(0x1846378) for --- eligible to run
2014.05.21 21:20:01 5: OWX_SER::Execute: Sending out cc44
2014.05.21 21:20:01 5: OWX_SER::Execute: Receiving cc44
2014.05.21 21:20:01 5: AfterExecute: context: ProtoThreads=HASH(0x1846378), success: 1, reset: 1, owx_dev: undef, writedata: 44, numread: 0, readdata:
2014.05.21 21:20:01 5: OWX_Executor: item ProtoThreads=HASH(0x1b89fb8) for 28.CA0FAC040000.04 eligible to run
2014.05.21 21:20:01 5: OWX_SER::Execute: Sending out 5528ca0fac04000004beffffffffffffffffff
2014.05.21 21:20:01 5: OWX_SER::Execute: Receiving 5528ca0fac04000004beee001e0a7fff0210d3
2014.05.21 21:20:01 5: AfterExecute: context: ProtoThreads=HASH(0x1b89fb8), success: 1, reset: 1, owx_dev: 28.CA0FAC040000.04, writedata: be, numread: 9, readdata: ee001e0a7fff0210d3
2014.05.21 21:20:01 5: OWX_Executor: item ProtoThreads=HASH(0x1ae43d8) for 10.541E0B000800.35 eligible to run
2014.05.21 21:20:01 5: OWX_SER::Execute: Sending out 5510541e0b00080035beffffffffffffffffff
2014.05.21 21:20:01 5: OWX_SER::Execute: Receiving 5510541e0b00080035be77004619ffff0410b2
2014.05.21 21:20:01 5: AfterExecute: context: ProtoThreads=HASH(0x1ae43d8), success: 1, reset: 1, owx_dev: 10.541E0B000800.35, writedata: be, numread: 9, readdata: 77004619ffff0410b2
2014.05.21 21:20:01 5: OWX_Executor: item ProtoThreads=HASH(0x1845998) for 10.787E83020800.65 eligible to run
2014.05.21 21:20:01 5: OWX_SER::Execute: Sending out 5510787e8302080065beffffffffffffffffff
2014.05.21 21:20:01 5: OWX_SER::Execute: Receiving 5510787e8302080065be3e003809ffff0e1082
2014.05.21 21:20:01 5: AfterExecute: context: ProtoThreads=HASH(0x1845998), success: 1, reset: 1, owx_dev: 10.787E83020800.65, writedata: be, numread: 9, readdata: 3e003809ffff0e1082
2014.05.21 21:20:02 5: OWX_Executor: item ProtoThreads=HASH(0x1aeae60) for 28.810671010000.D3 eligible to run
2014.05.21 21:20:02 5: OWX_SER::Execute: Sending out 5528810671010000d3beffffffffffffffffff
2014.05.21 21:20:02 5: OWX_SER::Execute: Receiving 5528810671010000d3be890446087fff0710e5
2014.05.21 21:20:02 5: AfterExecute: context: ProtoThreads=HASH(0x1aeae60), success: 1, reset: 1, owx_dev: 28.810671010000.D3, writedata: be, numread: 9, readdata: 890446087fff0710e5
2014.05.21 21:20:02 5: OWX_Executor: item ProtoThreads=HASH(0x1b849b0) for 28.905F9B010000.8B eligible to run
2014.05.21 21:20:02 5: OWX_SER::Execute: Sending out 5528905f9b0100008bbeffffffffffffffffff
2014.05.21 21:20:02 5: OWX_SER::Execute: Receiving 5528905f9b0100008bbed4001e057fff0c1030
2014.05.21 21:20:02 5: AfterExecute: context: ProtoThreads=HASH(0x1b849b0), success: 1, reset: 1, owx_dev: 28.905F9B010000.8B, writedata: be, numread: 9, readdata: d4001e057fff0c1030
2014.05.21 21:20:02 5: OWX_Executor: item ProtoThreads=HASH(0x1a5e2f8) for 28.0E37AC040000.FD eligible to run
2014.05.21 21:20:02 5: OWX_SER::Execute: Sending out 55280e37ac040000fdbeffffffffffffffffff
2014.05.21 21:20:02 5: OWX_SER::Execute: Receiving 55280e37ac040000fdbe58011e0a7fff0810f4
2014.05.21 21:20:02 5: AfterExecute: context: ProtoThreads=HASH(0x1a5e2f8), success: 1, reset: 1, owx_dev: 28.0E37AC040000.FD, writedata: be, numread: 9, readdata: 58011e0a7fff0810f4
2014.05.21 21:20:02 5: OWX_Executor: item ProtoThreads=HASH(0x1b84cb0) for 28.AEE870010000.B6 eligible to run
2014.05.21 21:20:02 5: OWX_SER::Execute: Sending out 5528aee870010000b6beffffffffffffffffff
2014.05.21 21:20:02 5: OWX_SER::Execute: Receiving 5528aee870010000b6beae0137037fff021074
2014.05.21 21:20:02 5: AfterExecute: context: ProtoThreads=HASH(0x1b84cb0), success: 1, reset: 1, owx_dev: 28.AEE870010000.B6, writedata: be, numread: 9, readdata: ae0137037fff021074
2014.05.21 21:20:02 5: OWX_Executor: item ProtoThreads=HASH(0x1840f38) for 28.A8A49B010000.11 eligible to run
2014.05.21 21:20:02 5: OWX_SER::Execute: Sending out 5528a8a49b01000011beffffffffffffffffff
2014.05.21 21:20:02 5: OWX_SER::Execute: Receiving 5528a8a49b01000011be35055a087fff0b10e2
2014.05.21 21:20:02 5: AfterExecute: context: ProtoThreads=HASH(0x1840f38), success: 1, reset: 1, owx_dev: 28.A8A49B010000.11, writedata: be, numread: 9, readdata: 35055a087fff0b10e2
2014.05.21 21:20:02 5: OWX_Executor: item ProtoThreads=HASH(0x1840ee8) for 10.0576A8020800.6D eligible to run
2014.05.21 21:20:02 5: OWX_SER::Execute: Sending out 55100576a80208006dbeffffffffffffffffff
2014.05.21 21:20:03 5: OWX_SER::Execute: Receiving 55100576a80208006dbe96005a08ffff0d10a7
2014.05.21 21:20:03 5: AfterExecute: context: ProtoThreads=HASH(0x1840ee8), success: 1, reset: 1, owx_dev: 10.0576A8020800.6D, writedata: be, numread: 9, readdata: 96005a08ffff0d10a7
2014.05.21 21:20:03 5: OWX_Executor: item ProtoThreads=HASH(0x184db38) for 28.1307AC040000.68 eligible to run
2014.05.21 21:20:03 5: OWX_SER::Execute: Sending out 55281307ac04000068beffffffffffffffffff
2014.05.21 21:20:03 5: OWX_SER::Execute: Receiving 55281307ac04000068be46011e0a7fff0a1088
2014.05.21 21:20:03 5: AfterExecute: context: ProtoThreads=HASH(0x184db38), success: 1, reset: 1, owx_dev: 28.1307AC040000.68, writedata: be, numread: 9, readdata: 46011e0a7fff0a1088
2014.05.21 21:20:30 5: OWX_Executor: item ProtoThreads=HASH(0x1b778a8) for 29.68980C000000.da eligible to run
2014.05.21 21:20:30 5: OWX_SER::Execute: Sending out 552968980c000000daf08800ffffffffffffffffffff
2014.05.21 21:20:30 5: OWX_SER::Execute: Receiving 552968980c000000daf08800f7f7ff000088ffff2706
2014.05.21 21:20:30 5: AfterExecute: context: ProtoThreads=HASH(0x1b778a8), success: 1, reset: 1, owx_dev: 29.68980C000000.da, writedata: f08800, numread: 10, readdata: f7f7ff000088ffff2706
2014.05.21 21:20:30 5: OWX_Executor: item ProtoThreads=HASH(0x1b93918) for 20.0C2C0C000000.59 eligible to run
2014.05.21 21:20:30 5: OWX_SER::Execute: Sending out 55200c2c0c000000593c0f00ffff
2014.05.21 21:20:30 5: OWX_SER::Execute: Receiving 55200c2c0c000000593c0f003a03
2014.05.21 21:20:30 5: AfterExecute: context: ProtoThreads=HASH(0x1b93918), success: 1, reset: 1, owx_dev: 20.0C2C0C000000.59, writedata: 3c0f00ffff, numread: 0, readdata:
2014.05.21 21:20:30 5: OWX_Executor: item ProtoThreads=HASH(0x1b93918) for 20.0C2C0C000000.59 eligible to run
2014.05.21 21:20:30 5: OWX_SER::Execute: Sending out 55200c2c0c00000059aa0000ffffffffffffffffffff
2014.05.21 21:20:30 5: OWX_ASYNC_PT_Kick: kicking DS14B20 temperature conversion
2014.05.21 21:20:30 5: OWX_SER::Execute: Receiving 55200c2c0c00000059aa0000c7fabf02c5024de68145
2014.05.21 21:20:30 5: AfterExecute: context: ProtoThreads=HASH(0x1b93918), success: 1, reset: 1, owx_dev: 20.0C2C0C000000.59, writedata: aa0000, numread: 10, readdata: c7fabf02c5024de68145
2014.05.21 21:20:30 5: OWX_Executor: command 1 eligible to run
2014.05.21 21:20:30 5: OWX_Executor: command 2 eligible to run
2014.05.21 21:20:30 5: OWX_SER::Search: new alarm device found 28.810671010000.D3
2014.05.21 21:20:30 5: OWX_SER::Search: new alarm device found 29.68980C000000.DA
2014.05.21 21:20:31 5:  Alarms = 28.810671010000.D3 29.68980C000000.DA
2014.05.21 21:20:31 5: OWX_Executor: item ProtoThreads=HASH(0x1b1a8a0) for --- eligible to run
2014.05.21 21:20:31 5: OWX_SER::Execute: Sending out cc44
2014.05.21 21:20:31 5: OWX_SER::Execute: Receiving cc44
2014.05.21 21:20:31 5: AfterExecute: context: ProtoThreads=HASH(0x1b1a8a0), success: 1, reset: 1, owx_dev: undef, writedata: 44, numread: 0, readdata:
2014.05.21 21:20:31 5: OWX_Executor: item ProtoThreads=HASH(0x1b3e5f8) for 20.0C2C0C000000.59 eligible to run
2014.05.21 21:20:31 5: OWX_SER::Execute: Sending out 55200c2c0c00000059aa1000ffffffffffffffffffff
2014.05.21 21:20:31 5: OWX_SER::Execute: Receiving 55200c2c0c00000059aa1000f5ff00b900b900ff11ba
2014.05.21 21:20:31 5: AfterExecute: context: ProtoThreads=HASH(0x1b3e5f8), success: 1, reset: 1, owx_dev: 20.0C2C0C000000.59, writedata: aa1000, numread: 10, readdata: f5ff00b900b900ff11ba
2014.05.21 21:20:31 5: OWX_Executor: item ProtoThreads=HASH(0x1a5e188) for 20.0C2C0C000000.59 eligible to run
2014.05.21 21:20:31 5: OWX_SER::Execute: Sending out 55200c2c0c00000059aa0800ffffffffffffffffffff
2014.05.21 21:20:31 5: OWX_SER::Execute: Receiving 55200c2c0c00000059aa08000001000100010001e0cf
2014.05.21 21:20:31 5: AfterExecute: context: ProtoThreads=HASH(0x1a5e188), success: 1, reset: 1, owx_dev: 20.0C2C0C000000.59, writedata: aa0800, numread: 10, readdata: 0001000100010001e0cf
2014.05.21 21:20:31 5: OWX_Executor: item ProtoThreads=HASH(0x184f310) for 28.CA0FAC040000.04 eligible to run
2014.05.21 21:20:31 5: OWX_SER::Execute: Sending out 5528ca0fac04000004beffffffffffffffffff
2014.05.21 21:20:31 5: OWX_SER::Execute: Receiving 5528ca0fac04000004beee001e0a7fff0210d3
2014.05.21 21:20:31 5: AfterExecute: context: ProtoThreads=HASH(0x184f310), success: 1, reset: 1, owx_dev: 28.CA0FAC040000.04, writedata: be, numread: 9, readdata: ee001e0a7fff0210d3
2014.05.21 21:20:31 5: OWX_Executor: item ProtoThreads=HASH(0x1b3ea38) for 10.541E0B000800.35 eligible to run
2014.05.21 21:20:31 5: OWX_SER::Execute: Sending out 5510541e0b00080035beffffffffffffffffff
2014.05.21 21:20:32 5: OWX_SER::Execute: Receiving 5510541e0b00080035be77004619ffff0410b2
2014.05.21 21:20:32 5: AfterExecute: context: ProtoThreads=HASH(0x1b3ea38), success: 1, reset: 1, owx_dev: 10.541E0B000800.35, writedata: be, numread: 9, readdata: 77004619ffff0410b2
2014.05.21 21:20:32 5: OWX_Executor: item ProtoThreads=HASH(0x1b1d038) for 10.787E83020800.65 eligible to run
2014.05.21 21:20:32 5: OWX_SER::Execute: Sending out 5510787e8302080065beffffffffffffffffff
2014.05.21 21:20:32 5: OWX_SER::Execute: Receiving 5510787e8302080065be3e003809ffff0d10d7
2014.05.21 21:20:32 5: AfterExecute: context: ProtoThreads=HASH(0x1b1d038), success: 1, reset: 1, owx_dev: 10.787E83020800.65, writedata: be, numread: 9, readdata: 3e003809ffff0d10d7
2014.05.21 21:20:32 5: OWX_Executor: item ProtoThreads=HASH(0x1b3df18) for 28.810671010000.D3 eligible to run
2014.05.21 21:20:32 5: OWX_SER::Execute: Sending out 5528810671010000d3beffffffffffffffffff
2014.05.21 21:20:32 5: OWX_SER::Execute: Receiving 5528810671010000d3be8a0446087fff0610e4
2014.05.21 21:20:32 5: AfterExecute: context: ProtoThreads=HASH(0x1b3df18), success: 1, reset: 1, owx_dev: 28.810671010000.D3, writedata: be, numread: 9, readdata: 8a0446087fff0610e4
2014.05.21 21:20:32 5: OWX_Executor: item ProtoThreads=HASH(0x1ae6378) for 28.905F9B010000.8B eligible to run
2014.05.21 21:20:33 5: OWX_SER::Execute: Sending out 5528905f9b0100008bbeffffffffffffffffff
2014.05.21 21:20:33 5: OWX_SER::Execute: Receiving 5528905f9b0100008bbed4001e057fff0c1030
2014.05.21 21:20:33 5: AfterExecute: context: ProtoThreads=HASH(0x1ae6378), success: 1, reset: 1, owx_dev: 28.905F9B010000.8B, writedata: be, numread: 9, readdata: d4001e057fff0c1030
2014.05.21 21:20:33 5: OWX_Executor: item ProtoThreads=HASH(0x1b0bae0) for 28.0E37AC040000.FD eligible to run
2014.05.21 21:20:33 5: OWX_SER::Execute: Sending out 55280e37ac040000fdbeffffffffffffffffff
2014.05.21 21:20:33 5: OWX_SER::Execute: Receiving 55280e37ac040000fdbe58011e0a7fff0810f4
2014.05.21 21:20:33 5: AfterExecute: context: ProtoThreads=HASH(0x1b0bae0), success: 1, reset: 1, owx_dev: 28.0E37AC040000.FD, writedata: be, numread: 9, readdata: 58011e0a7fff0810f4
2014.05.21 21:20:33 5: OWX_Executor: item ProtoThreads=HASH(0x1848710) for 28.AEE870010000.B6 eligible to run
2014.05.21 21:20:33 5: OWX_SER::Execute: Sending out 5528aee870010000b6beffffffffffffffffff
2014.05.21 21:20:33 5: OWX_SER::Execute: Receiving 5528aee870010000b6beae0137037fff021074
2014.05.21 21:20:33 5: AfterExecute: context: ProtoThreads=HASH(0x1848710), success: 1, reset: 1, owx_dev: 28.AEE870010000.B6, writedata: be, numread: 9, readdata: ae0137037fff021074
2014.05.21 21:20:33 5: OWX_Executor: item ProtoThreads=HASH(0x1b23128) for 28.A8A49B010000.11 eligible to run
2014.05.21 21:20:33 5: OWX_SER::Execute: Sending out 5528a8a49b01000011beffffffffffffffffff
2014.05.21 21:20:33 5: OWX_SER::Execute: Receiving 5528a8a49b01000011be35055a087fff0b10e2
2014.05.21 21:20:33 5: AfterExecute: context: ProtoThreads=HASH(0x1b23128), success: 1, reset: 1, owx_dev: 28.A8A49B010000.11, writedata: be, numread: 9, readdata: 35055a087fff0b10e2
2014.05.21 21:20:33 5: OWX_Executor: item ProtoThreads=HASH(0x184d498) for 10.0576A8020800.6D eligible to run
2014.05.21 21:20:33 5: OWX_SER::Execute: Sending out 55100576a80208006dbeffffffffffffffffff
2014.05.21 21:20:33 5: OWX_SER::Execute: Receiving 55100576a80208006dbe96005a08ffff0d10a7
2014.05.21 21:20:33 5: AfterExecute: context: ProtoThreads=HASH(0x184d498), success: 1, reset: 1, owx_dev: 10.0576A8020800.6D, writedata: be, numread: 9, readdata: 96005a08ffff0d10a7
2014.05.21 21:20:33 5: OWX_Executor: item ProtoThreads=HASH(0x1b33a20) for 28.1307AC040000.68 eligible to run
2014.05.21 21:20:33 5: OWX_SER::Execute: Sending out 55281307ac04000068beffffffffffffffffff
2014.05.21 21:20:33 5: OWX_SER::Execute: Receiving 55281307ac04000068be46011e0a7fff0a1088
2014.05.21 21:20:33 5: AfterExecute: context: ProtoThreads=HASH(0x1b33a20), success: 1, reset: 1, owx_dev: 28.1307AC040000.68, writedata: be, numread: 9, readdata: 46011e0a7fff0a1088
2014.05.21 21:21:00 5: OWX_Executor: item ProtoThreads=HASH(0x1848b50) for 29.68980C000000.da eligible to run
2014.05.21 21:21:00 5: OWX_SER::Execute: Sending out 552968980c000000daf08800ffffffffffffffffffff
2014.05.21 21:21:00 5: OWX_SER::Execute: Receiving 552968980c000000daf08800f7f7ff000088ffff2706
2014.05.21 21:21:00 5: AfterExecute: context: ProtoThreads=HASH(0x1848b50), success: 1, reset: 1, owx_dev: 29.68980C000000.da, writedata: f08800, numread: 10, readdata: f7f7ff000088ffff2706
2014.05.21 21:21:00 5: OWX_Executor: command 1 eligible to run
2014.05.21 21:21:00 5: OWX_ASYNC_PT_Kick: kicking DS14B20 temperature conversion
2014.05.21 21:21:00 5: OWX_Executor: command 2 eligible to run
2014.05.21 21:21:00 5: OWX_SER::Search: new alarm device found 28.810671010000.D3
2014.05.21 21:21:00 5: OWX_SER::Search: new alarm device found 29.68980C000000.DA
2014.05.21 21:21:01 5:  Alarms = 28.810671010000.D3 29.68980C000000.DA
2014.05.21 21:21:01 5: OWX_Executor: item ProtoThreads=HASH(0x1a7bc08) for --- eligible to run
2014.05.21 21:21:01 5: OWX_SER::Execute: Sending out cc44
2014.05.21 21:21:01 5: OWX_SER::Execute: Receiving cc44
2014.05.21 21:21:01 5: AfterExecute: context: ProtoThreads=HASH(0x1a7bc08), success: 1, reset: 1, owx_dev: undef, writedata: 44, numread: 0, readdata:
2014.05.21 21:21:01 5: OWX_Executor: item ProtoThreads=HASH(0x1b210b0) for 28.CA0FAC040000.04 eligible to run
2014.05.21 21:21:01 5: OWX_SER::Execute: Sending out 5528ca0fac04000004beffffffffffffffffff
2014.05.21 21:21:01 5: OWX_SER::Execute: Receiving 5528ca0fac04000004beee001e0a7fff0210d3
2014.05.21 21:21:01 5: AfterExecute: context: ProtoThreads=HASH(0x1b210b0), success: 1, reset: 1, owx_dev: 28.CA0FAC040000.04, writedata: be, numread: 9, readdata: ee001e0a7fff0210d3
2014.05.21 21:21:01 5: OWX_Executor: item ProtoThreads=HASH(0x1aeac10) for 10.541E0B000800.35 eligible to run
2014.05.21 21:21:01 5: OWX_SER::Execute: Sending out 5510541e0b00080035beffffffffffffffffff
2014.05.21 21:21:01 5: OWX_SER::Execute: Receiving 5510541e0b00080035be77004619ffff0410b2
2014.05.21 21:21:01 5: AfterExecute: context: ProtoThreads=HASH(0x1aeac10), success: 1, reset: 1, owx_dev: 10.541E0B000800.35, writedata: be, numread: 9, readdata: 77004619ffff0410b2
2014.05.21 21:21:01 5: OWX_Executor: item ProtoThreads=HASH(0x1aea980) for 10.787E83020800.65 eligible to run
2014.05.21 21:21:01 5: OWX_SER::Execute: Sending out 5510787e8302080065beffffffffffffffffff
2014.05.21 21:21:02 5: OWX_SER::Execute: Receiving 5510787e8302080065be3e003809ffff0b107d
2014.05.21 21:21:02 5: AfterExecute: context: ProtoThreads=HASH(0x1aea980), success: 1, reset: 1, owx_dev: 10.787E83020800.65, writedata: be, numread: 9, readdata: 3e003809ffff0b107d
2014.05.21 21:21:02 5: OWX_Executor: item ProtoThreads=HASH(0x1b94490) for 28.810671010000.D3 eligible to run
2014.05.21 21:21:02 5: OWX_SER::Execute: Sending out 5528810671010000d3beffffffffffffffffff
2014.05.21 21:21:02 5: OWX_SER::Execute: Receiving 5528810671010000d3be8a0446087fff0610e4
2014.05.21 21:21:02 5: AfterExecute: context: ProtoThreads=HASH(0x1b94490), success: 1, reset: 1, owx_dev: 28.810671010000.D3, writedata: be, numread: 9, readdata: 8a0446087fff0610e4
2014.05.21 21:21:02 5: OWX_Executor: item ProtoThreads=HASH(0x1ba1a98) for 28.905F9B010000.8B eligible to run
2014.05.21 21:21:02 5: OWX_SER::Execute: Sending out 5528905f9b0100008bbeffffffffffffffffff
2014.05.21 21:21:02 5: OWX_SER::Execute: Receiving 5528905f9b0100008bbed5001e057fff0b101d
2014.05.21 21:21:02 5: AfterExecute: context: ProtoThreads=HASH(0x1ba1a98), success: 1, reset: 1, owx_dev: 28.905F9B010000.8B, writedata: be, numread: 9, readdata: d5001e057fff0b101d
2014.05.21 21:21:02 5: OWX_Executor: item ProtoThreads=HASH(0x184d898) for 28.0E37AC040000.FD eligible to run
2014.05.21 21:21:02 5: OWX_SER::Execute: Sending out 55280e37ac040000fdbeffffffffffffffffff
2014.05.21 21:21:02 5: OWX_SER::Execute: Receiving 55280e37ac040000fdbe58011e0a7fff0810f4
2014.05.21 21:21:02 5: AfterExecute: context: ProtoThreads=HASH(0x184d898), success: 1, reset: 1, owx_dev: 28.0E37AC040000.FD, writedata: be, numread: 9, readdata: 58011e0a7fff0810f4
2014.05.21 21:21:02 5: OWX_Executor: item ProtoThreads=HASH(0x1b2bff0) for 28.AEE870010000.B6 eligible to run
2014.05.21 21:21:02 5: OWX_SER::Execute: Sending out 5528aee870010000b6beffffffffffffffffff
2014.05.21 21:21:02 5: OWX_SER::Execute: Receiving 5528aee870010000b6beae0137037fff021074
2014.05.21 21:21:02 5: AfterExecute: context: ProtoThreads=HASH(0x1b2bff0), success: 1, reset: 1, owx_dev: 28.AEE870010000.B6, writedata: be, numread: 9, readdata: ae0137037fff021074
2014.05.21 21:21:02 5: OWX_Executor: item ProtoThreads=HASH(0x1b27058) for 28.A8A49B010000.11 eligible to run
2014.05.21 21:21:02 5: OWX_SER::Execute: Sending out 5528a8a49b01000011beffffffffffffffffff
2014.05.21 21:21:02 5: OWX_SER::Execute: Receiving 5528a8a49b01000011be35055a087fff0b10e2
2014.05.21 21:21:02 5: AfterExecute: context: ProtoThreads=HASH(0x1b27058), success: 1, reset: 1, owx_dev: 28.A8A49B010000.11, writedata: be, numread: 9, readdata: 35055a087fff0b10e2
2014.05.21 21:21:02 5: OWX_Executor: item ProtoThreads=HASH(0x1b934f8) for 10.0576A8020800.6D eligible to run
2014.05.21 21:21:03 5: OWX_SER::Execute: Sending out 55100576a80208006dbeffffffffffffffffff
2014.05.21 21:21:03 5: OWX_SER::Execute: Receiving 55100576a80208006dbe96005a08ffff0d10a7
2014.05.21 21:21:03 5: AfterExecute: context: ProtoThreads=HASH(0x1b934f8), success: 1, reset: 1, owx_dev: 10.0576A8020800.6D, writedata: be, numread: 9, readdata: 96005a08ffff0d10a7
2014.05.21 21:21:03 5: OWX_Executor: item ProtoThreads=HASH(0x1b0b9c0) for 28.1307AC040000.68 eligible to run
2014.05.21 21:21:03 5: OWX_SER::Execute: Sending out 55281307ac04000068beffffffffffffffffff
2014.05.21 21:21:03 5: OWX_SER::Execute: Receiving 55281307ac04000068be47011e0a7fff09109e
2014.05.21 21:21:03 5: AfterExecute: context: ProtoThreads=HASH(0x1b0b9c0), success: 1, reset: 1, owx_dev: 28.1307AC040000.68, writedata: be, numread: 9, readdata: 47011e0a7fff09109e
2014.05.21 21:21:30 5: OWX_Executor: item ProtoThreads=HASH(0x1852fa0) for 29.68980C000000.da eligible to run
2014.05.21 21:21:30 5: OWX_SER::Execute: Sending out 552968980c000000daf08800ffffffffffffffffffff
2014.05.21 21:21:30 5: OWX_SER::Execute: Receiving 552968980c000000daf08800f7f7ff000088ffff2706
2014.05.21 21:21:30 5: AfterExecute: context: ProtoThreads=HASH(0x1852fa0), success: 1, reset: 1, owx_dev: 29.68980C000000.da, writedata: f08800, numread: 10, readdata: f7f7ff000088ffff2706
2014.05.21 21:21:30 5: OWX_Executor: item ProtoThreads=HASH(0x1843260) for 20.0C2C0C000000.59 eligible to run
2014.05.21 21:21:30 5: OWX_SER::Execute: Sending out 55200c2c0c000000593c0f00ffff
2014.05.21 21:21:30 5: OWX_SER::Execute: Receiving 55200c2c0c000000593c0f003a03
2014.05.21 21:21:30 5: AfterExecute: context: ProtoThreads=HASH(0x1843260), success: 1, reset: 1, owx_dev: 20.0C2C0C000000.59, writedata: 3c0f00ffff, numread: 0, readdata:
2014.05.21 21:21:30 5: OWX_Executor: item ProtoThreads=HASH(0x1843260) for 20.0C2C0C000000.59 eligible to run
2014.05.21 21:21:30 5: OWX_SER::Execute: Sending out 55200c2c0c00000059aa0000ffffffffffffffffffff
2014.05.21 21:21:30 5: OWX_SER::Execute: Receiving 55200c2c0c00000059aa0000b7fa7902c902c8e6f6c7
2014.05.21 21:21:30 5: AfterExecute: context: ProtoThreads=HASH(0x1843260), success: 1, reset: 1, owx_dev: 20.0C2C0C000000.59, writedata: aa0000, numread: 10, readdata: b7fa7902c902c8e6f6c7
2014.05.21 21:21:30 5: OWX_Executor: command 1 eligible to run
2014.05.21 21:21:30 5: OWX_ASYNC_PT_Kick: kicking DS14B20 temperature conversion
2014.05.21 21:21:30 5: OWX_Executor: command 2 eligible to run
2014.05.21 21:21:30 5: OWX_SER::Search: new alarm device found 28.810671010000.D3
2014.05.21 21:21:30 5: OWX_SER::Search: new alarm device found 29.68980C000000.DA
2014.05.21 21:21:31 5:  Alarms = 28.810671010000.D3 29.68980C000000.DA
2014.05.21 21:21:31 5: OWX_Executor: item ProtoThreads=HASH(0x1af1918) for --- eligible to run
2014.05.21 21:21:31 5: OWX_SER::Execute: Sending out cc44
2014.05.21 21:21:31 5: OWX_SER::Execute: Receiving cc44
2014.05.21 21:21:31 5: AfterExecute: context: ProtoThreads=HASH(0x1af1918), success: 1, reset: 1, owx_dev: undef, writedata: 44, numread: 0, readdata:
2014.05.21 21:21:31 5: OWX_Executor: item ProtoThreads=HASH(0x1ae8378) for 20.0C2C0C000000.59 eligible to run
2014.05.21 21:21:31 5: OWX_SER::Execute: Sending out 55200c2c0c00000059aa1000ffffffffffffffffffff
2014.05.21 21:21:31 5: OWX_SER::Execute: Receiving 55200c2c0c00000059aa1000f5ff00b900b900ff11ba
2014.05.21 21:21:31 5: AfterExecute: context: ProtoThreads=HASH(0x1ae8378), success: 1, reset: 1, owx_dev: 20.0C2C0C000000.59, writedata: aa1000, numread: 10, readdata: f5ff00b900b900ff11ba
2014.05.21 21:21:31 5: OWX_Executor: item ProtoThreads=HASH(0x1b1a160) for 20.0C2C0C000000.59 eligible to run
2014.05.21 21:21:31 5: OWX_SER::Execute: Sending out 55200c2c0c00000059aa0800ffffffffffffffffffff
2014.05.21 21:21:31 5: OWX_SER::Execute: Receiving 55200c2c0c00000059aa08000001000100010001e0cf
2014.05.21 21:21:31 5: AfterExecute: context: ProtoThreads=HASH(0x1b1a160), success: 1, reset: 1, owx_dev: 20.0C2C0C000000.59, writedata: aa0800, numread: 10, readdata: 0001000100010001e0cf
2014.05.21 21:21:31 5: OWX_Executor: item ProtoThreads=HASH(0x184f870) for 28.CA0FAC040000.04 eligible to run
2014.05.21 21:21:31 5: OWX_SER::Execute: Sending out 5528ca0fac04000004beffffffffffffffffff
2014.05.21 21:21:32 5: OWX_SER::Execute: Receiving 5528ca0fac04000004beee001e0a7fff0210d3
2014.05.21 21:21:32 5: AfterExecute: context: ProtoThreads=HASH(0x184f870), success: 1, reset: 1, owx_dev: 28.CA0FAC040000.04, writedata: be, numread: 9, readdata: ee001e0a7fff0210d3
2014.05.21 21:21:32 5: OWX_Executor: item ProtoThreads=HASH(0x184f3c0) for 10.541E0B000800.35 eligible to run
2014.05.21 21:21:32 5: OWX_SER::Execute: Sending out 5510541e0b00080035beffffffffffffffffff
2014.05.21 21:21:32 5: OWX_SER::Execute: Receiving 5510541e0b00080035be77004619ffff0410b2
2014.05.21 21:21:32 5: AfterExecute: context: ProtoThreads=HASH(0x184f3c0), success: 1, reset: 1, owx_dev: 10.541E0B000800.35, writedata: be, numread: 9, readdata: 77004619ffff0410b2
2014.05.21 21:21:32 5: OWX_Executor: item ProtoThreads=HASH(0x1845e88) for 10.787E83020800.65 eligible to run
2014.05.21 21:21:32 5: OWX_SER::Execute: Sending out 5510787e8302080065beffffffffffffffffff
2014.05.21 21:21:32 5: OWX_SER::Execute: Receiving 5510787e8302080065be3e003809ffff0910ec
2014.05.21 21:21:32 5: AfterExecute: context: ProtoThreads=HASH(0x1845e88), success: 1, reset: 1, owx_dev: 10.787E83020800.65, writedata: be, numread: 9, readdata: 3e003809ffff0910ec
2014.05.21 21:21:32 5: OWX_Executor: item ProtoThreads=HASH(0x1b3be08) for 28.810671010000.D3 eligible to run
2014.05.21 21:21:32 5: OWX_SER::Execute: Sending out 5528810671010000d3beffffffffffffffffff
2014.05.21 21:21:32 5: OWX_SER::Execute: Receiving 5528810671010000d3be8b0446087fff0510f2
2014.05.21 21:21:32 5: AfterExecute: context: ProtoThreads=HASH(0x1b3be08), success: 1, reset: 1, owx_dev: 28.810671010000.D3, writedata: be, numread: 9, readdata: 8b0446087fff0510f2
2014.05.21 21:21:32 5: OWX_Executor: item ProtoThreads=HASH(0x1875630) for 28.905F9B010000.8B eligible to run
2014.05.21 21:21:32 5: OWX_SER::Execute: Sending out 5528905f9b0100008bbeffffffffffffffffff
2014.05.21 21:21:32 5: OWX_SER::Execute: Receiving 5528905f9b0100008bbed5001e057fff0b101d
2014.05.21 21:21:32 5: AfterExecute: context: ProtoThreads=HASH(0x1875630), success: 1, reset: 1, owx_dev: 28.905F9B010000.8B, writedata: be, numread: 9, readdata: d5001e057fff0b101d
2014.05.21 21:21:32 5: OWX_Executor: item ProtoThreads=HASH(0x1ae8218) for 28.0E37AC040000.FD eligible to run
2014.05.21 21:21:32 5: OWX_SER::Execute: Sending out 55280e37ac040000fdbeffffffffffffffffff
2014.05.21 21:21:33 5: OWX_SER::Execute: Receiving 55280e37ac040000fdbe58011e0a7fff0810f4
2014.05.21 21:21:33 5: AfterExecute: context: ProtoThreads=HASH(0x1ae8218), success: 1, reset: 1, owx_dev: 28.0E37AC040000.FD, writedata: be, numread: 9, readdata: 58011e0a7fff0810f4
2014.05.21 21:21:33 5: OWX_Executor: item ProtoThreads=HASH(0x1852610) for 28.AEE870010000.B6 eligible to run
2014.05.21 21:21:33 5: OWX_SER::Execute: Sending out 5528aee870010000b6beffffffffffffffffff
2014.05.21 21:21:33 5: OWX_SER::Execute: Receiving 5528aee870010000b6bead0137037fff031075
2014.05.21 21:21:33 5: AfterExecute: context: ProtoThreads=HASH(0x1852610), success: 1, reset: 1, owx_dev: 28.AEE870010000.B6, writedata: be, numread: 9, readdata: ad0137037fff031075
2014.05.21 21:21:33 5: OWX_Executor: item ProtoThreads=HASH(0x1b8aa18) for 28.A8A49B010000.11 eligible to run
2014.05.21 21:21:33 5: OWX_SER::Execute: Sending out 5528a8a49b01000011beffffffffffffffffff
2014.05.21 21:21:33 5: OWX_SER::Execute: Receiving 5528a8a49b01000011be35055a087fff0b10e2
2014.05.21 21:21:33 5: AfterExecute: context: ProtoThreads=HASH(0x1b8aa18), success: 1, reset: 1, owx_dev: 28.A8A49B010000.11, writedata: be, numread: 9, readdata: 35055a087fff0b10e2
2014.05.21 21:21:33 5: OWX_Executor: item ProtoThreads=HASH(0x184d518) for 10.0576A8020800.6D eligible to run
2014.05.21 21:21:33 5: OWX_SER::Execute: Sending out 55100576a80208006dbeffffffffffffffffff
2014.05.21 21:21:33 5: OWX_SER::Execute: Receiving 55100576a80208006dbe96005a08ffff0d10a7
2014.05.21 21:21:33 5: AfterExecute: context: ProtoThreads=HASH(0x184d518), success: 1, reset: 1, owx_dev: 10.0576A8020800.6D, writedata: be, numread: 9, readdata: 96005a08ffff0d10a7
2014.05.21 21:21:33 5: OWX_Executor: item ProtoThreads=HASH(0x1848ea0) for 28.1307AC040000.68 eligible to run
2014.05.21 21:21:33 5: OWX_SER::Execute: Sending out 55281307ac04000068beffffffffffffffffff
2014.05.21 21:21:33 5: OWX_SER::Execute: Receiving 55281307ac04000068be47011e0a7fff09109e
2014.05.21 21:21:33 5: AfterExecute: context: ProtoThreads=HASH(0x1848ea0), success: 1, reset: 1, owx_dev: 28.1307AC040000.68, writedata: be, numread: 9, readdata: 47011e0a7fff09109e
2014.05.21 21:22:00 5: OWX_Executor: item ProtoThreads=HASH(0x1ae5d98) for 29.68980C000000.da eligible to run
2014.05.21 21:22:00 5: OWX_SER::Execute: Sending out 552968980c000000daf08800ffffffffffffffffffff
2014.05.21 21:22:00 5: OWX_SER::Execute: Receiving 552968980c000000daf08800f7f7ff000088ffff2706
2014.05.21 21:22:00 5: AfterExecute: context: ProtoThreads=HASH(0x1ae5d98), success: 1, reset: 1, owx_dev: 29.68980C000000.da, writedata: f08800, numread: 10, readdata: f7f7ff000088ffff2706
2014.05.21 21:22:00 5: OWX_Executor: command 1 eligible to run
2014.05.21 21:22:00 5: OWX_ASYNC_PT_Kick: kicking DS14B20 temperature conversion
2014.05.21 21:22:00 5: OWX_Executor: command 2 eligible to run
2014.05.21 21:22:00 5: OWX_SER::Search: new alarm device found 28.810671010000.D3
2014.05.21 21:22:00 5: OWX_SER::Search: new alarm device found 29.68980C000000.DA
2014.05.21 21:22:01 5:  Alarms = 28.810671010000.D3 29.68980C000000.DA
2014.05.21 21:22:01 5: OWX_Executor: item ProtoThreads=HASH(0x1b0b520) for --- eligible to run
2014.05.21 21:22:01 5: OWX_SER::Execute: Sending out cc44
2014.05.21 21:22:01 5: OWX_SER::Execute: Receiving cc44
2014.05.21 21:22:01 5: AfterExecute: context: ProtoThreads=HASH(0x1b0b520), success: 1, reset: 1, owx_dev: undef, writedata: 44, numread: 0, readdata:
2014.05.21 21:22:01 5: OWX_Executor: item ProtoThreads=HASH(0x1b34920) for 28.CA0FAC040000.04 eligible to run
2014.05.21 21:22:01 5: OWX_SER::Execute: Sending out 5528ca0fac04000004beffffffffffffffffff
2014.05.21 21:22:01 5: OWX_SER::Execute: Receiving 5528ca0fac04000004beee001e0a7fff0210d3
2014.05.21 21:22:01 5: AfterExecute: context: ProtoThreads=HASH(0x1b34920), success: 1, reset: 1, owx_dev: 28.CA0FAC040000.04, writedata: be, numread: 9, readdata: ee001e0a7fff0210d3
2014.05.21 21:22:01 5: OWX_Executor: item ProtoThreads=HASH(0x1b41d50) for 10.541E0B000800.35 eligible to run
2014.05.21 21:22:01 5: OWX_SER::Execute: Sending out 5510541e0b00080035beffffffffffffffffff
2014.05.21 21:22:01 5: OWX_SER::Execute: Receiving 5510541e0b00080035be77004619ffff051076
2014.05.21 21:22:01 5: AfterExecute: context: ProtoThreads=HASH(0x1b41d50), success: 1, reset: 1, owx_dev: 10.541E0B000800.35, writedata: be, numread: 9, readdata: 77004619ffff051076
2014.05.21 21:22:02 5: OWX_Executor: item ProtoThreads=HASH(0x1843bc0) for 10.787E83020800.65 eligible to run
2014.05.21 21:22:02 5: OWX_SER::Execute: Sending out 5510787e8302080065beffffffffffffffffff
2014.05.21 21:22:02 5: OWX_SER::Execute: Receiving 5510787e8302080065be3f003809ffff071073
2014.05.21 21:22:02 5: AfterExecute: context: ProtoThreads=HASH(0x1843bc0), success: 1, reset: 1, owx_dev: 10.787E83020800.65, writedata: be, numread: 9, readdata: 3f003809ffff071073
2014.05.21 21:22:02 5: OWX_Executor: item ProtoThreads=HASH(0x838048) for 28.810671010000.D3 eligible to run
2014.05.21 21:22:02 5: OWX_SER::Execute: Sending out 5528810671010000d3beffffffffffffffffff
2014.05.21 21:22:02 5: OWX_SER::Execute: Receiving 5528810671010000d3be8b0446087fff0510f2
2014.05.21 21:22:02 5: AfterExecute: context: ProtoThreads=HASH(0x838048), success: 1, reset: 1, owx_dev: 28.810671010000.D3, writedata: be, numread: 9, readdata: 8b0446087fff0510f2
2014.05.21 21:22:02 5: OWX_Executor: item ProtoThreads=HASH(0x1b2c250) for 28.905F9B010000.8B eligible to run
2014.05.21 21:22:02 5: OWX_SER::Execute: Sending out 5528905f9b0100008bbeffffffffffffffffff
2014.05.21 21:22:02 5: OWX_SER::Execute: Receiving 5528905f9b0100008bbed5001e057fff0b101d
2014.05.21 21:22:02 5: AfterExecute: context: ProtoThreads=HASH(0x1b2c250), success: 1, reset: 1, owx_dev: 28.905F9B010000.8B, writedata: be, numread: 9, readdata: d5001e057fff0b101d
2014.05.21 21:22:02 5: OWX_Executor: item ProtoThreads=HASH(0x1b238e8) for 28.0E37AC040000.FD eligible to run
2014.05.21 21:22:02 5: OWX_SER::Execute: Sending out 55280e37ac040000fdbeffffffffffffffffff
2014.05.21 21:22:02 5: OWX_SER::Execute: Receiving 55280e37ac040000fdbe58011e0a7fff0810f4
2014.05.21 21:22:02 5: AfterExecute: context: ProtoThreads=HASH(0x1b238e8), success: 1, reset: 1, owx_dev: 28.0E37AC040000.FD, writedata: be, numread: 9, readdata: 58011e0a7fff0810f4
2014.05.21 21:22:02 5: OWX_Executor: item ProtoThreads=HASH(0x1ae5ed8) for 28.AEE870010000.B6 eligible to run
2014.05.21 21:22:03 5: OWX_SER::Execute: Sending out 5528aee870010000b6beffffffffffffffffff
2014.05.21 21:22:03 5: OWX_SER::Execute: Receiving 5528aee870010000b6bead0137037fff031075
2014.05.21 21:22:03 5: AfterExecute: context: ProtoThreads=HASH(0x1ae5ed8), success: 1, reset: 1, owx_dev: 28.AEE870010000.B6, writedata: be, numread: 9, readdata: ad0137037fff031075
2014.05.21 21:22:03 5: OWX_Executor: item ProtoThreads=HASH(0x18431b0) for 28.A8A49B010000.11 eligible to run
2014.05.21 21:22:03 5: OWX_SER::Execute: Sending out 5528a8a49b01000011beffffffffffffffffff
2014.05.21 21:22:03 5: OWX_SER::Execute: Receiving 5528a8a49b01000011be35055a087fff0b10e2
2014.05.21 21:22:03 5: AfterExecute: context: ProtoThreads=HASH(0x18431b0), success: 1, reset: 1, owx_dev: 28.A8A49B010000.11, writedata: be, numread: 9, readdata: 35055a087fff0b10e2
2014.05.21 21:22:03 5: OWX_Executor: item ProtoThreads=HASH(0x1a753d0) for 10.0576A8020800.6D eligible to run
2014.05.21 21:22:03 5: OWX_SER::Execute: Sending out 55100576a80208006dbeffffffffffffffffff
2014.05.21 21:22:03 5: OWX_SER::Execute: Receiving 55100576a80208006dbe96005a08ffff0d10a7
2014.05.21 21:22:03 5: AfterExecute: context: ProtoThreads=HASH(0x1a753d0), success: 1, reset: 1, owx_dev: 10.0576A8020800.6D, writedata: be, numread: 9, readdata: 96005a08ffff0d10a7
2014.05.21 21:22:03 5: OWX_Executor: item ProtoThreads=HASH(0x1aeae60) for 28.1307AC040000.68 eligible to run
2014.05.21 21:22:03 5: OWX_SER::Execute: Sending out 55281307ac04000068beffffffffffffffffff
2014.05.21 21:22:03 5: OWX_SER::Execute: Receiving 55281307ac04000068be47011e0a7fff09109e
2014.05.21 21:22:03 5: AfterExecute: context: ProtoThreads=HASH(0x1aeae60), success: 1, reset: 1, owx_dev: 28.1307AC040000.68, writedata: be, numread: 9, readdata: 47011e0a7fff09109e
2014.05.21 21:22:30 5: OWX_Executor: item ProtoThreads=HASH(0x1b32f60) for 29.68980C000000.da eligible to run
2014.05.21 21:22:30 5: OWX_SER::Execute: Sending out 552968980c000000daf08800ffffffffffffffffffff
2014.05.21 21:22:30 5: OWX_SER::Execute: Receiving 552968980c000000daf08800f7f7ff000088ffff2706
2014.05.21 21:22:30
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 21 Mai 2014, 21:43:27
Zitat von: det. am 21 Mai 2014, 18:37:59
FHEM läuft leider bei mir seit der Umstellung auf Async OWX nicht stabil durch[...]. Da ich am Wochenende in Urlaub will und meine Mieter ohne WW Zirkulation wären bei abgestürztem FHEM, was soll ich tun?

Das mit der Systemlast gefällt mir nicht, das ist bei mir nicht so... Du hast doch die ganzen LCD-aufrufe auf 'set XYZ...' umgebaut, ist das oft drin, bzw. wird das (oder andere 'set XYZ...'-kommandos an OW-Frontendmodulen) oft aufgerufen? Die 'set'-kommandos der Frontendmodule laufen ja synchron - da wird der aktuelle Protothread so lange aufgerufen bis er durch ist, das macht in dem Moment nahezu 100% Systemlast. Das ist auch ein Punkt, der noch mal überarbeitet gehört, aber da habe ich angenommen, dass das im Regelbetrieb nicht oft passiert, sondern nur, wenn jemand am Webinterface rumspielt (und eben die Ergebnisse seines Handelns auch sofort sehen will - sonst könnte man 'set' auch genausogut asynchron laufen lassen, dann gäbe es halt keine unmittelbar sichtbare Änderung, weil die ja asynchron später käme).

Läuft es mit synchronem OWX (gleiche config, die Frontendmodule sind ja abwärtskompatibel) stabil? Wenn nein, dann spiel den letzten Stand wieder ein, der bei Dir stabil lief und teste nach dem Urlaub weiter. Vieleicht ist bis dahin ja schon alles in Butter ;-)

Gruß,

Norbert
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 21 Mai 2014, 22:50:48
Zitat von: cwagner am 21 Mai 2014, 21:42:20
habe nun den Debug-Modus eingeschaltet und mit Verbose=5 aufgezeichnet. Mir scheint, dass das Ereignis in dem Log-Auszug mehrfach vorkommt und hoffe, dass es Dir hilft.

danke Dir, ich seh nur grad, dass die gewünschte Logzeile in OWX_DS2480.pm erst mit $owx_async_debug=3; aktiv geworden wäre. Hab grade das Debug-logging in der OWX_DS2480.pm ein bischen dafür angepasst. $owx_async_debug kann wieder auf 0, verbose des OWX_ASYNC-devices auf 5 reicht. Ist ins SVN committed.

Damit sollten die Logmeldungen etwa so aussehen:

2014.05.21 22:47:37 5: OWX_Executor: item ProtoThreads=HASH(0x31ff4c8) for 26.BE5E7B010000.D5 eligible to run
2014.05.21 22:47:37 5: OWX_DS2480.query sending out: e3c5
2014.05.21 22:47:37 5: OWX_DS2480.query sending out: e15526be5e7b010000d5b800
2014.05.21 22:47:37 5: OWX_DS2480 read: After loop no. 77 received: cd5526be5e7b010000d5b800
2014.05.21 22:47:37 5: AfterExecute: context: ProtoThreads=HASH(0x31ff4c8), success: 1, reset: 1, owx_dev: 26.BE5E7B010000.D5, writedata: b800, numread: 0, readdata:

(das 'query' und 'read' ist das, was ich bei dem Fehler gerne sehen würde...)

Gruß,

Norbert

P.S. Logausgaben am besten in als [code] einfügen oder (wenn sehr lang) ggf als Datei anhängen
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: cwagner am 21 Mai 2014, 23:11:45
Norbert, zu query-Zeilen kommt es bei mir anscheinend nicht. Folgendes mit der O0_OWX_ASYNC.pm aus dem SVN von heute (r5922):

2014.05.21 23:02:09 5: OWX_Executor: command 1 eligible to run
2014.05.21 23:02:09 5: OWX_ASYNC_PT_Kick: kicking DS14B20 temperature conversion
2014.05.21 23:02:09 5: OWX_Executor: command 2 eligible to run
2014.05.21 23:02:09 5: OWX_SER::Search: new alarm device found 29.68980C000000.DA
2014.05.21 23:02:09 3: OWX_DS2480: Search 2nd return has wrong parameter with length = 17
2014.05.21 23:02:09 5: OWX_Executor: item ProtoThreads=HASH(0x18485b0) for --- eligible to run
2014.05.21 23:02:09 5: AfterExecute: context: ProtoThreads=HASH(0x18485b0), success: 1, reset: 1, owx_dev: undef, writedata: 44, numread: 0, readdata:
2014.05.21 23:02:10 5: OWX_Executor: item ProtoThreads=HASH(0x1b49080) for 28.1307AC040000.68 eligible to run
2014.05.21 23:02:10 5: AfterExecute: context: ProtoThreads=HASH(0x1b49080), success: 1, reset: 1, owx_dev: 28.1307AC040000.68, writedata: be, numread: 9, readdata: 47011e0a7fff09109e
2014.05.21 23:02:10 5: OWX_Executor: item ProtoThreads=HASH(0x1b33d10) for 28.CA0FAC040000.04 eligible to run
2014.05.21 23:02:10 5: AfterExecute: context: ProtoThreads=HASH(0x1b33d10), success: 1, reset: 1, owx_dev: 28.CA0FAC040000.04, writedata: be, numread: 9, readdata: ec001e0a7fff0410ff
2014.05.21 23:02:10 5: OWX_Executor: item ProtoThreads=HASH(0x184d938) for 10.541E0B000800.35 eligible to run
2014.05.21 23:02:10 5: AfterExecute: context: ProtoThreads=HASH(0x184d938), success: 1, reset: 1, owx_dev: 10.541E0B000800.35, writedata: be, numread: 9, readdata: 77004619ffff0810ff
2014.05.21 23:02:10 5: OWX_Executor: item ProtoThreads=HASH(0x1846258) for 10.787E83020800.65 eligible to run
2014.05.21 23:02:10 5: AfterExecute: context: ProtoThreads=HASH(0x1846258), success: 1, reset: 1, owx_dev: 10.787E83020800.65, writedata: be, numread: 9, readdata: 48003809ffff0a109f
2014.05.21 23:02:10 5: OWX_Executor: item ProtoThreads=HASH(0x1b459c8) for 28.810671010000.D3 eligible to run
2014.05.21 23:02:10 5: AfterExecute: context: ProtoThreads=HASH(0x1b459c8), success: 1, reset: 1, owx_dev: 28.810671010000.D3, writedata: be, numread: 9, readdata: 6b0346087fff051032
2014.05.21 23:02:11 5: OWX_Executor: item ProtoThreads=HASH(0x1b51918) for 28.905F9B010000.8B eligible to run
2014.05.21 23:02:11 5: AfterExecute: context: ProtoThreads=HASH(0x1b51918), success: 1, reset: 1, owx_dev: 28.905F9B010000.8B, writedata: be, numread: 9, readdata: d1001e057fff0f1033
2014.05.21 23:02:11 5: OWX_Executor: item ProtoThreads=HASH(0x1b49020) for 28.0E37AC040000.FD eligible to run
2014.05.21 23:02:11 5: AfterExecute: context: ProtoThreads=HASH(0x1b49020), success: 1, reset: 1, owx_dev: 28.0E37AC040000.FD, writedata: be, numread: 9, readdata: 59011e0a7fff0710af
2014.05.21 23:02:11 5: OWX_Executor: item ProtoThreads=HASH(0x1b42130) for 28.AEE870010000.B6 eligible to run
2014.05.21 23:02:11 5: AfterExecute: context: ProtoThreads=HASH(0x1b42130), success: 1, reset: 1, owx_dev: 28.AEE870010000.B6, writedata: be, numread: 9, readdata: 7b0137037fff0510c3
2014.05.21 23:02:11 5: OWX_Executor: item ProtoThreads=HASH(0x1b9dad0) for 28.A8A49B010000.11 eligible to run
2014.05.21 23:02:11 5: AfterExecute: context: ProtoThreads=HASH(0x1b9dad0), success: 1, reset: 1, owx_dev: 28.A8A49B010000.11, writedata: be, numread: 9, readdata: 27055a087fff0910a1
2014.05.21 23:02:11 5: OWX_Executor: item ProtoThreads=HASH(0x1b77bd8) for 10.0576A8020800.6D eligible to run
2014.05.21 23:02:11 5: AfterExecute: context: ProtoThreads=HASH(0x1b77bd8), success: 1, reset: 1, owx_dev: 10.0576A8020800.6D, writedata: be, numread: 9, readdata: 87005a08ffff08104f
2014.05.21 23:02:36 5: OWX_Executor: item ProtoThreads=HASH(0x1b8a158) for 29.68980C000000.da eligible to run
2014.05.21 23:02:36 5: AfterExecute: context: ProtoThreads=HASH(0x1b8a158), success: 1, reset: 1, owx_dev: 29.68980C000000.da, writedata: f08800, numread: 10, readdata: f7f7ff000088ffff2706
2014.05.21 23:02:37 5: OWX_Executor: item ProtoThreads=HASH(0x1848bc0) for 20.0C2C0C000000.59 eligible to run
2014.05.21 23:02:37 5: AfterExecute: context: ProtoThreads=HASH(0x1848bc0), success: 1, reset: 1, owx_dev: 20.0C2C0C000000.59, writedata: 3c0f00ffff, numread: 0, readdata:
2014.05.21 23:02:37 5: OWX_Executor: item ProtoThreads=HASH(0x1848bc0) for 20.0C2C0C000000.59 eligible to run
2014.05.21 23:02:37 5: AfterExecute: context: ProtoThreads=HASH(0x1848bc0), success: 1, reset: 1, owx_dev: 20.0C2C0C000000.59, writedata: aa0000, numread: 10, readdata: a9fa6f02af029ae65759
2014.05.21 23:02:37 5: OWX_Executor: item ProtoThreads=HASH(0x1b9dd30) for 20.0C2C0C000000.59 eligible to run
2014.05.21 23:02:37 5: AfterExecute: context: ProtoThreads=HASH(0x1b9dd30), success: 1, reset: 1, owx_dev: 20.0C2C0C000000.59, writedata: aa1000, numread: 10, readdata: f5ff00b900b900ff11ba
2014.05.21 23:02:37 5: OWX_Executor: item ProtoThreads=HASH(0x1b1d778) for 20.0C2C0C000000.59 eligible to run
2014.05.21 23:02:37 5: AfterExecute: context: ProtoThreads=HASH(0x1b1d778), success: 1, reset: 1, owx_dev: 20.0C2C0C000000.59, writedata: aa0800, numread: 10, readdata: 0001000100010001e0cf
2014.05.21 23:02:39 5: OWX_Executor: command 1 eligible to run
2014.05.21 23:02:39 5: OWX_ASYNC_PT_Kick: kicking DS14B20 temperature conversion
2014.05.21 23:02:39 5: OWX_Executor: command 2 eligible to run
2014.05.21 23:02:39 5: OWX_SER::Search: new alarm device found 29.68980C000000.DA
2014.05.21 23:02:39 5:  Alarms = 29.68980C000000.DA
2014.05.21 23:02:39 5: OWX_Executor: item ProtoThreads=HASH(0x1b96bc8) for --- eligible to run
2014.05.21 23:02:39 5: AfterExecute: context: ProtoThreads=HASH(0x1b96bc8), success: 1, reset: 1, owx_dev: undef, writedata: 44, numread: 0, readdata:
2014.05.21 23:02:40 5: OWX_Executor: item ProtoThreads=HASH(0x1852630) for 28.1307AC040000.68 eligible to run
2014.05.21 23:02:40 5: AfterExecute: context: ProtoThreads=HASH(0x1852630), success: 1, reset: 1, owx_dev: 28.1307AC040000.68, writedata: be, numread: 9, readdata: 47011e0a7fff09109e
2014.05.21 23:02:40 5: OWX_Executor: item ProtoThreads=HASH(0x1a6e020) for 28.CA0FAC040000.04 eligible to run
2014.05.21 23:02:40 5: AfterExecute: context: ProtoThreads=HASH(0x1a6e020), success: 1, reset: 1, owx_dev: 28.CA0FAC040000.04, writedata: be, numread: 9, readdata: ec001e0a7fff0410ff
2014.05.21 23:02:40 5: OWX_Executor: item ProtoThreads=HASH(0x1b1a1e0) for 10.541E0B000800.35 eligible to run
2014.05.21 23:02:40 5: AfterExecute: context: ProtoThreads=HASH(0x1b1a1e0), success: 1, reset: 1, owx_dev: 10.541E0B000800.35, writedata: be, numread: 9, readdata: 77004619ffff0810ff
2014.05.21 23:02:40 5: OWX_Executor: item ProtoThreads=HASH(0x1ccc078) for 10.787E83020800.65 eligible to run
2014.05.21 23:02:40 5: AfterExecute: context: ProtoThreads=HASH(0x1ccc078), success: 1, reset: 1, owx_dev: 10.787E83020800.65, writedata: be, numread: 9, readdata: 48003809ffff0910ca
2014.05.21 23:02:40 5: OWX_Executor: item ProtoThreads=HASH(0x1b2bc00) for 28.810671010000.D3 eligible to run
2014.05.21 23:02:41 5: AfterExecute: context: ProtoThreads=HASH(0x1b2bc00), success: 1, reset: 1, owx_dev: 28.810671010000.D3, writedata: be, numread: 9, readdata: 6b0346087fff051032
2014.05.21 23:02:41 5: OWX_Executor: item ProtoThreads=HASH(0x184d948) for 28.905F9B010000.8B eligible to run
2014.05.21 23:02:41 5: AfterExecute: context: ProtoThreads=HASH(0x184d948), success: 1, reset: 1, owx_dev: 28.905F9B010000.8B, writedata: be, numread: 9, readdata: d1001e057fff0f1033
2014.05.21 23:02:41 5: OWX_Executor: item ProtoThreads=HASH(0x1b390c8) for 28.0E37AC040000.FD eligible to run
2014.05.21 23:02:41 5: AfterExecute: context: ProtoThreads=HASH(0x1b390c8), success: 1, reset: 1, owx_dev: 28.0E37AC040000.FD, writedata: be, numread: 9, readdata: 59011e0a7fff0710af
2014.05.21 23:02:41 5: OWX_Executor: item ProtoThreads=HASH(0x1b7a280) for 28.AEE870010000.B6 eligible to run
2014.05.21 23:02:41 5: AfterExecute: context: ProtoThreads=HASH(0x1b7a280), success: 1, reset: 1, owx_dev: 28.AEE870010000.B6, writedata: be, numread: 9, readdata: 7b0137037fff0510c3
2014.05.21 23:02:41 5: OWX_Executor: item ProtoThreads=HASH(0x1b8f230) for 28.A8A49B010000.11 eligible to run
2014.05.21 23:02:41 5: AfterExecute: context: ProtoThreads=HASH(0x1b8f230), success: 1, reset: 1, owx_dev: 28.A8A49B010000.11, writedata: be, numread: 9, readdata: 27055a087fff0910a1
2014.05.21 23:02:41 5: OWX_Executor: item ProtoThreads=HASH(0x1b94670) for 10.0576A8020800.6D eligible to run
2014.05.21 23:02:41 5: AfterExecute: context: ProtoThreads=HASH(0x1b94670), success: 1, reset: 1, owx_dev: 10.0576A8020800.6D, writedata: be, numread: 9, readdata: 86005a08ffff0910c8
2014.05.21 23:03:06 5: OWX_Executor: item ProtoThreads=HASH(0x1b7f478) for 29.68980C000000.da eligible to run
2014.05.21 23:03:06 5: AfterExecute: context: ProtoThreads=HASH(0x1b7f478), success: 1, reset: 1, owx_dev: 29.68980C000000.da, writedata: f08800, numread: 10, readdata: f7f7ff000088ffff2706
2014.05.21 23:03:08 5: OWX_ASYNC_Set request OWio1 FF ?
2014.05.21 23:03:16 5: OWX_Executor: command 1 eligible to run


Hoffe, ich habe da einen Abschnitt erwischt, der nützlich ist. Lasse jetzt Verbose=5 die Nacht laufen bzw. so lange laufen, bis FHEM abschmiert... Im Moment kann man sich das ja erlauben, geheizt wird ja von außen.

Christian
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 21 Mai 2014, 23:37:07
das logging habe ich in der OWX_DS2480 (r5926) geändert.
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: cwagner am 22 Mai 2014, 07:52:38
Guten Morgen,

jo, jetzt habe ich query-Zeilen im Angebot :-)

Hier ein Stück:


2014.05.22 07:36:30 5: OWX_Executor: command 1 eligible to run
2014.05.22 07:36:30 5: OWX_DS2480.query sending out: e3c5
2014.05.22 07:36:30 5: OWX_DS2480.query sending out: e1f0e3b5
2014.05.22 07:36:30 5: OWX_DS2480.query sending out: e100000000000000000000000000000000e3a5
2014.05.22 07:36:30 5: OWX_ASYNC_PT_Kick: kicking DS14B20 temperature conversion
2014.05.22 07:36:30 5: OWX_DS2480 read: After loop no. 7 received: cdf04109a000a008a0000000000000008222
2014.05.22 07:36:30 5: OWX_Executor: command 2 eligible to run
2014.05.22 07:36:30 5: OWX_DS2480.query sending out: e3c5
2014.05.22 07:36:30 5: OWX_DS2480.query sending out: e1ece3b5
2014.05.22 07:36:30 5: OWX_DS2480.query sending out: e100000000000000000000000000000000e3a5
2014.05.22 07:36:30 5: OWX_DS2480 read: After loop no. 4 received: cdec6800000000000000000000000000000000
2014.05.22 07:36:30 3: OWX_DS2480: Search 2nd return has wrong parameter with length = 17
2014.05.22 07:36:30 5: OWX_Executor: item ProtoThreads=HASH(0x185e718) for --- eligible to run
2014.05.22 07:36:30 5: OWX_DS2480.query sending out: e3c5
2014.05.22 07:36:30 5: OWX_DS2480.query sending out: e1cc44
2014.05.22 07:36:30 5: OWX_DS2480 read: After loop no. 4 received: cdcc44
2014.05.22 07:36:30 5: AfterExecute: context: ProtoThreads=HASH(0x185e718), success: 1, reset: 1, owx_dev: undef, writedata: 44, numread: 0, readdata:
2014.05.22 07:36:31 5: OWX_Executor: item ProtoThreads=HASH(0x1b2c0a0) for 28.1307AC040000.68 eligible to run
2014.05.22 07:36:31 5: OWX_DS2480.query sending out: e3c5
2014.05.22 07:36:31 5: OWX_DS2480.query sending out: e155281307ac04000068beffffffffffffffffff
2014.05.22 07:36:31 5: OWX_DS2480 read: After loop no. 17 received: cd55281307ac04000068be44011e0a7fff0c10a4
2014.05.22 07:36:31 5: AfterExecute: context: ProtoThreads=HASH(0x1b2c0a0), success: 1, reset: 1, owx_dev: 28.1307AC040000.68, writedata: be, numread: 9, readdata: 44011e0a7fff0c10a4
2014.05.22 07:36:31 5: OWX_Executor: item ProtoThreads=HASH(0x1b29678) for 28.CA0FAC040000.04 eligible to run
2014.05.22 07:36:31 5: OWX_DS2480.query sending out: e3c5
2014.05.22 07:36:31 5: OWX_DS2480.query sending out: e15528ca0fac04000004beffffffffffffffffff
2014.05.22 07:36:31 5: OWX_DS2480 read: After loop no. 14 received: cd5528ca0fac04000004beea001e0a7fff0610fd
2014.05.22 07:36:31 5: AfterExecute: context: ProtoThreads=HASH(0x1b29678), success: 1, reset: 1, owx_dev: 28.CA0FAC040000.04, writedata: be, numread: 9, readdata: ea001e0a7fff0610fd
2014.05.22 07:36:31 5: OWX_Executor: item ProtoThreads=HASH(0x1b29598) for 10.541E0B000800.35 eligible to run
2014.05.22 07:36:31 5: OWX_DS2480.query sending out: e3c5
2014.05.22 07:36:32 5: OWX_DS2480.query sending out: e15510541e0b00080035beffffffffffffffffff
2014.05.22 07:36:32 5: OWX_DS2480 read: After loop no. 13 received: cd5510541e0b00080035be74004619ffff0d10c5
2014.05.22 07:36:32 5: AfterExecute: context: ProtoThreads=HASH(0x1b29598), success: 1, reset: 1, owx_dev: 10.541E0B000800.35, writedata: be, numread: 9, readdata: 74004619ffff0d10c5
2014.05.22 07:36:32 5: OWX_Executor: item ProtoThreads=HASH(0x1b294b8) for 10.787E83020800.65 eligible to run
2014.05.22 07:36:32 5: OWX_DS2480.query sending out: e3c5
2014.05.22 07:36:32 5: OWX_DS2480.query sending out: e15510787e8302080065beffffffffffffffffff
2014.05.22 07:36:32 5: OWX_DS2480 read: After loop no. 15 received: cd5510787e8302080065be37003809ffff06109d
2014.05.22 07:36:32 5: AfterExecute: context: ProtoThreads=HASH(0x1b294b8), success: 1, reset: 1, owx_dev: 10.787E83020800.65, writedata: be, numread: 9, readdata: 37003809ffff06109d
2014.05.22 07:36:32 5: OWX_Executor: item ProtoThreads=HASH(0x1aeab10) for 28.810671010000.D3 eligible to run
2014.05.22 07:36:32 5: OWX_DS2480.query sending out: e3c5
2014.05.22 07:36:32 5: OWX_DS2480.query sending out: e15528810671010000d3beffffffffffffffffff
2014.05.22 07:36:32 5: OWX_DS2480 read: After loop no. 5 received: cd5528810671010000d3bedc0146087fff041032
2014.05.22 07:36:32 5: AfterExecute: context: ProtoThreads=HASH(0x1aeab10), success: 1, reset: 1, owx_dev: 28.810671010000.D3, writedata: be, numread: 9, readdata: dc0146087fff041032
2014.05.22 07:36:32 5: OWX_Executor: item ProtoThreads=HASH(0xc92da0) for 28.905F9B010000.8B eligible to run
2014.05.22 07:36:32 5: OWX_DS2480.query sending out: e3c5
2014.05.22 07:36:32 5: OWX_DS2480.query sending out: e15528905f9b0100008bbeffffffffffffffffff
2014.05.22 07:36:32 5: OWX_DS2480 read: After loop no. 15 received: cd5528905f9b0100008bbed0001e057fff101084
2014.05.22 07:36:32 5: AfterExecute: context: ProtoThreads=HASH(0xc92da0), success: 1, reset: 1, owx_dev: 28.905F9B010000.8B, writedata: be, numread: 9, readdata: d0001e057fff101084
2014.05.22 07:36:32 5: OWX_Executor: item ProtoThreads=HASH(0x1864780) for 28.0E37AC040000.FD eligible to run
2014.05.22 07:36:32 5: OWX_DS2480.query sending out: e3c5
2014.05.22 07:36:33 5: OWX_DS2480.query sending out: e155280e37ac040000fdbeffffffffffffffffff
2014.05.22 07:36:33 5: OWX_DS2480 read: After loop no. 7 received: cd55280e37ac040000fdbe54011e0a7fff0c10f0
2014.05.22 07:36:33 5: AfterExecute: context: ProtoThreads=HASH(0x1864780), success: 1, reset: 1, owx_dev: 28.0E37AC040000.FD, writedata: be, numread: 9, readdata: 54011e0a7fff0c10f0
2014.05.22 07:36:33 5: OWX_Executor: item ProtoThreads=HASH(0x1b2bf80) for 28.AEE870010000.B6 eligible to run
2014.05.22 07:36:33 5: OWX_DS2480.query sending out: e3c5
2014.05.22 07:36:33 5: OWX_DS2480.query sending out: e15528aee870010000b6beffffffffffffffffff
2014.05.22 07:36:33 5: OWX_DS2480 read: After loop no. 11 received: cd5528aee870010000b6be9f0137037fff01109e
2014.05.22 07:36:33 5: AfterExecute: context: ProtoThreads=HASH(0x1b2bf80), success: 1, reset: 1, owx_dev: 28.AEE870010000.B6, writedata: be, numread: 9, readdata: 9f0137037fff01109e
2014.05.22 07:36:33 5: OWX_Executor: item ProtoThreads=HASH(0x1b0d6c8) for 28.A8A49B010000.11 eligible to run
2014.05.22 07:36:33 5: OWX_DS2480.query sending out: e3c5
2014.05.22 07:36:33 5: OWX_DS2480.query sending out: e15528a8a49b01000011beffffffffffffffffff
2014.05.22 07:36:33 5: OWX_DS2480 read: After loop no. 1 received: cd5528a8a49b01000011beed045a087fff03100c
2014.05.22 07:36:33 5: AfterExecute: context: ProtoThreads=HASH(0x1b0d6c8), success: 1, reset: 1, owx_dev: 28.A8A49B010000.11, writedata: be, numread: 9, readdata: ed045a087fff03100c
2014.05.22 07:36:33 5: OWX_Executor: item ProtoThreads=HASH(0x1b29358) for 10.0576A8020800.6D eligible to run
2014.05.22 07:36:33 5: OWX_DS2480.query sending out: e3c5
2014.05.22 07:36:33 5: OWX_DS2480.query sending out: e155100576a80208006dbeffffffffffffffffff
2014.05.22 07:36:33 5: OWX_DS2480 read: After loop no. 6 received: cd55100576a80208006dbe47005a08ffff021073
2014.05.22 07:36:33 5: AfterExecute: context: ProtoThreads=HASH(0x1b29358), success: 1, reset: 1, owx_dev: 10.0576A8020800.6D, writedata: be, numread: 9, readdata: 47005a08ffff021073
2014.05.22 07:36:35 5: OWX_Executor: item ProtoThreads=HASH(0x1b0d748) for 20.0C2C0C000000.59 eligible to run
2014.05.22 07:36:35 5: OWX_DS2480.query sending out: e3c5
2014.05.22 07:36:35 5: OWX_DS2480.query sending out: e155200c2c0c000000593c0f00ffff
2014.05.22 07:36:35 5: OWX_DS2480 read: After loop no. 10 received: cd55200c2c0c000000593c0f003a03
2014.05.22 07:36:35 5: AfterExecute: context: ProtoThreads=HASH(0x1b0d748), success: 1, reset: 1, owx_dev: 20.0C2C0C000000.59, writedata: 3c0f00ffff, numread: 0, readdata:
2014.05.22 07:36:35 5: OWX_Executor: item ProtoThreads=HASH(0x1b0d748) for 20.0C2C0C000000.59 eligible to run
2014.05.22 07:36:35 5: OWX_DS2480.query sending out: e3c5
2014.05.22 07:36:35 5: OWX_DS2480.query sending out: e155200c2c0c00000059aa0000ffffffffffffffffffff
2014.05.22 07:36:36 5: OWX_DS2480 read: After loop no. 6 received: cd55200c2c0c00000059aa00009ffacb087d08a6e51d39
2014.05.22 07:36:36 5: AfterExecute: context: ProtoThreads=HASH(0x1b0d748), success: 1, reset: 1, owx_dev: 20.0C2C0C000000.59, writedata: aa0000, numread: 10, readdata: 9ffacb087d08a6e51d39
2014.05.22 07:36:36 5: OWX_Executor: item ProtoThreads=HASH(0x1b29438) for 20.0C2C0C000000.59 eligible to run
2014.05.22 07:36:36 5: OWX_DS2480.query sending out: e3c5
2014.05.22 07:36:36 5: OWX_DS2480.query sending out: e155200c2c0c00000059aa1000ffffffffffffffffffff
2014.05.22 07:36:36 5: OWX_DS2480 read: After loop no. 9 received: cd55200c2c0c00000059aa1000f5ff00b900b900ff11ba
2014.05.22 07:36:36 5: AfterExecute: context: ProtoThreads=HASH(0x1b29438), success: 1, reset: 1, owx_dev: 20.0C2C0C000000.59, writedata: aa1000, numread: 10, readdata: f5ff00b900b900ff11ba
2014.05.22 07:36:36 5: OWX_Executor: item ProtoThreads=HASH(0x1b2ba20) for 20.0C2C0C000000.59 eligible to run
2014.05.22 07:36:36 5: OWX_DS2480.query sending out: e3c5
2014.05.22 07:36:36 5: OWX_DS2480.query sending out: e155200c2c0c00000059aa0800ffffffffffffffffffff
2014.05.22 07:36:36 5: OWX_DS2480 read: After loop no. 5 received: cd55200c2c0c00000059aa08000001000100010001e0cf
2014.05.22 07:36:36 5: AfterExecute: context: ProtoThreads=HASH(0x1b2ba20), success: 1, reset: 1, owx_dev: 20.0C2C0C000000.59, writedata: aa0800, numread: 10, readdata: 0001000100010001e0cf
2014.05.22 07:36:42 5: OWX_Executor: item ProtoThreads=HASH(0x185e638) for 29.68980C000000.DA eligible to run
2014.05.22 07:36:42 5: OWX_DS2480.query sending out: e3c5
2014.05.22 07:36:42 5: OWX_DS2480.query sending out: e1552968980c000000daf08800ffffffffffffffffffff
2014.05.22 07:36:42 5: OWX_DS2480 read: After loop no. 9 received: cd552968980c000000daf08800f7f7ff000088ffff2706
2014.05.22 07:36:42 5: AfterExecute: context: ProtoThreads=HASH(0x185e638), success: 1, reset: 1, owx_dev: 29.68980C000000.DA, writedata: f08800, numread: 10, readdata: f7f7ff000088ffff2706
2014.05.22 07:37:00 5: OWX_Executor: command 1 eligible to run
2014.05.22 07:37:00 5: OWX_DS2480.query sending out: e3c5
2014.05.22 07:37:00 5: OWX_DS2480.query sending out: e1f0e3b5
2014.05.22 07:37:00 5: OWX_DS2480.query sending out: e100000000000000000000000000000000e3a5
2014.05.22 07:37:00 5: OWX_ASYNC_PT_Kick: kicking DS14B20 temperature conversion
2014.05.22 07:37:00 5: OWX_DS2480 read: After loop no. 7 received: cdf04109a000a008a0000000000000008222
2014.05.22 07:37:00 5: OWX_Executor: command 2 eligible to run
2014.05.22 07:37:00 5: OWX_DS2480.query sending out: e3c5
2014.05.22 07:37:00 5: OWX_DS2480.query sending out: e1ece3b5
2014.05.22 07:37:00 5: OWX_DS2480.query sending out: e100000000000000000000000000000000e3a5
2014.05.22 07:37:00 5: OWX_DS2480 read: After loop no. 4 received: cdec820880288082a00000000000000088a2
2014.05.22 07:37:00 5: OWX_SER::Search: new alarm device found 29.68980C000000.DA
2014.05.22 07:37:00 5: OWX_DS2480.query sending out: e3c5
2014.05.22 07:37:00 5: OWX_DS2480.query sending out: e1ece3b5
2014.05.22 07:37:00 5: OWX_DS2480.query sending out: e100000000000000000000000000000000e3a5
2014.05.22 07:37:00 5: OWX_DS2480 read: After loop no. 6 received: cdec820880288082a00000000000000088a2
2014.05.22 07:37:00 5:  Alarms = 29.68980C000000.DA
2014.05.22 07:37:00 5: OWX_Executor: item ProtoThreads=HASH(0x185a108) for --- eligible to run
2014.05.22 07:37:00 5: OWX_DS2480.query sending out: e3c5
2014.05.22 07:37:01 5: OWX_DS2480.query sending out: e1cc44
2014.05.22 07:37:01 5: OWX_DS2480 read: After loop no. 4 received: cdcc44
2014.05.22 07:37:01 5: AfterExecute: context: ProtoThreads=HASH(0x185a108), success: 1, reset: 1, owx_dev: undef, writedata: 44, numread: 0, readdata:
2014.05.22 07:37:01 5: OWX_Executor: item ProtoThreads=HASH(0x1a56408) for 28.1307AC040000.68 eligible to run
2014.05.22 07:37:01 5: OWX_DS2480.query sending out: e3c5
2014.05.22 07:37:01 5: OWX_DS2480.query sending out: e155281307ac04000068beffffffffffffffffff
2014.05.22 07:37:01 5: OWX_DS2480 read: After loop no. 15 received: cd55281307ac04000068be44011e0a7fff0c10a4
2014.05.22 07:37:01 5: AfterExecute: context: ProtoThreads=HASH(0x1a56408), success: 1, reset: 1, owx_dev: 28.1307AC040000.68, writedata: be, numread: 9, readdata: 44011e0a7fff0c10a4
2014.05.22 07:37:01 5: OWX_Executor: item ProtoThreads=HASH(0x18677b8) for 28.CA0FAC040000.04 eligible to run
2014.05.22 07:37:01 5: OWX_DS2480.query sending out: e3c5
2014.05.22 07:37:01 5: OWX_DS2480.query sending out: e15528ca0fac04000004beffffffffffffffffff
2014.05.22 07:37:01 5: OWX_DS2480 read: After loop no. 17 received: cd5528ca0fac04000004beea001e0a7fff0610fd
2014.05.22 07:37:01 5: AfterExecute: context: ProtoThreads=HASH(0x18677b8), success: 1, reset: 1, owx_dev: 28.CA0FAC040000.04, writedata: be, numread: 9, readdata: ea001e0a7fff0610fd
2014.05.22 07:37:01 5: OWX_Executor: item ProtoThreads=HASH(0x1865170) for 10.541E0B000800.35 eligible to run
2014.05.22 07:37:01 5: OWX_DS2480.query sending out: e3c5
2014.05.22 07:37:01 5: OWX_DS2480.query sending out: e15510541e0b00080035beffffffffffffffffff
2014.05.22 07:37:02 5: OWX_DS2480 read: After loop no. 17 received: cd5510541e0b00080035be74004619ffff0d10c5
2014.05.22 07:37:02 5: AfterExecute: context: ProtoThreads=HASH(0x1865170), success: 1, reset: 1, owx_dev: 10.541E0B000800.35, writedata: be, numread: 9, readdata: 74004619ffff0d10c5
2014.05.22 07:37:02 5: OWX_Executor: item ProtoThreads=HASH(0x1857798) for 10.787E83020800.65 eligible to run
2014.05.22 07:37:02 5: OWX_DS2480.query sending out: e3c5
2014.05.22 07:37:02 5: OWX_DS2480.query sending out: e15510787e8302080065beffffffffffffffffff
2014.05.22 07:37:02 5: OWX_DS2480 read: After loop no. 17 received: cd5510787e8302080065be37003809ffff071059
2014.05.22 07:37:02 5: AfterExecute: context: ProtoThreads=HASH(0x1857798), success: 1, reset: 1, owx_dev: 10.787E83020800.65, writedata: be, numread: 9, readdata: 37003809ffff071059
2014.05.22 07:37:02 5: OWX_Executor: item ProtoThreads=HASH(0x1866d28) for 28.810671010000.D3 eligible to run
2014.05.22 07:37:02 5: OWX_DS2480.query sending out: e3c5
2014.05.22 07:37:02 5: OWX_DS2480.query sending out: e15528810671010000d3beffffffffffffffffff
2014.05.22 07:37:02 5: OWX_DS2480 read: After loop no. 14 received: cd5528810671010000d3bedc0146087fff041032
2014.05.22 07:37:02 5: AfterExecute: context: ProtoThreads=HASH(0x1866d28), success: 1, reset: 1, owx_dev: 28.810671010000.D3, writedata: be, numread: 9, readdata: dc0146087fff041032
2014.05.22 07:37:02 5: OWX_Executor: item ProtoThreads=HASH(0x1b047b8) for 28.905F9B010000.8B eligible to run
2014.05.22 07:37:02 5: OWX_DS2480.query sending out: e3c5
2014.05.22 07:37:02 5: OWX_DS2480.query sending out: e15528905f9b0100008bbeffffffffffffffffff
2014.05.22 07:37:02 5: OWX_DS2480 read: After loop no. 14 received: cd5528905f9b0100008bbed0001e057fff101084
2014.05.22 07:37:02 5: AfterExecute: context: ProtoThreads=HASH(0x1b047b8), success: 1, reset: 1, owx_dev: 28.905F9B010000.8B, writedata: be, numread: 9, readdata: d0001e057fff101084
2014.05.22 07:37:02 5: OWX_Executor: item ProtoThreads=HASH(0x1861b88) for 28.0E37AC040000.FD eligible to run
2014.05.22 07:37:02 5: OWX_DS2480.query sending out: e3c5
2014.05.22 07:37:02 5: OWX_DS2480.query sending out: e155280e37ac040000fdbeffffffffffffffffff
2014.05.22 07:37:02 5: OWX_DS2480 read: After loop no. 17 received: cd55280e37ac040000fdbe54011e0a7fff0c10f0
2014.05.22 07:37:02 5: AfterExecute: context: ProtoThreads=HASH(0x1861b88), success: 1, reset: 1, owx_dev: 28.0E37AC040000.FD, writedata: be, numread: 9, readdata: 54011e0a7fff0c10f0
2014.05.22 07:37:02 5: OWX_Executor: item ProtoThreads=HASH(0x1856790) for 28.AEE870010000.B6 eligible to run
2014.05.22 07:37:02 5: OWX_DS2480.query sending out: e3c5
2014.05.22 07:37:02 5: OWX_DS2480.query sending out: e15528aee870010000b6beffffffffffffffffff
2014.05.22 07:37:02 5: OWX_DS2480 read: After loop no. 16 received: cd5528aee870010000b6be9f0137037fff01109e
2014.05.22 07:37:02 5: AfterExecute: context: ProtoThreads=HASH(0x1856790), success: 1, reset: 1, owx_dev: 28.AEE870010000.B6, writedata: be, numread: 9, readdata: 9f0137037fff01109e
2014.05.22 07:37:02 5: OWX_Executor: item ProtoThreads=HASH(0x185e388) for 28.A8A49B010000.11 eligible to run
2014.05.22 07:37:02 5: OWX_DS2480.query sending out: e3c5
2014.05.22 07:37:03 5: OWX_DS2480.query sending out: e15528a8a49b01000011beffffffffffffffffff
2014.05.22 07:37:03 5: OWX_DS2480 read: After loop no. 16 received: cd5528a8a49b01000011beed045a087fff03100c
2014.05.22 07:37:03 5: AfterExecute: context: ProtoThreads=HASH(0x185e388), success: 1, reset: 1, owx_dev: 28.A8A49B010000.11, writedata: be, numread: 9, readdata: ed045a087fff03100c
2014.05.22 07:37:03 5: OWX_Executor: item ProtoThreads=HASH(0x1856510) for 10.0576A8020800.6D eligible to run
2014.05.22 07:37:03 5: OWX_DS2480.query sending out: e3c5
2014.05.22 07:37:03 5: OWX_DS2480.query sending out: e155100576a80208006dbeffffffffffffffffff
2014.05.22 07:37:03 5: OWX_DS2480 read: After loop no. 9 received: cd55100576a80208006dbe47005a08ffff021073
2014.05.22 07:37:03 5: AfterExecute: context: ProtoThreads=HASH(0x1856510), success: 1, reset: 1, owx_dev: 10.0576A8020800.6D, writedata: be, numread: 9, readdata: 47005a08ffff021073
2014.05.22 07:37:12 5: OWX_Executor: item ProtoThreads=HASH(0x1b0d5c8) for 29.68980C000000.DA eligible to run
2014.05.22 07:37:12 5: OWX_DS2480.query sending out: e3c5
2014.05.22 07:37:12 5: OWX_DS2480.query sending out: e1552968980c000000daf08800ffffffffffffffffffff
2014.05.22 07:37:12 5: OWX_DS2480 read: After loop no. 5 received: cd552968980c000000daf08800f7f7ff000088ffff2706
2014.05.22 07:37:12 5: AfterExecute: context: ProtoThreads=HASH(0x1b0d5c8), success: 1, reset: 1, owx_dev: 29.68980C000000.DA, writedata: f08800, numread: 10, readdata: f7f7ff000088ffff2706
2014.05.22 07:37:30 5: OWX_Executor: command 1 eligible to run
2014.05.22 07:37:30 5: OWX_DS2480.query sending out: e3c5
2014.05.22 07:37:30 5: OWX_DS2480.query sending out: e1f0e3b5
2014.05.22 07:37:30 5: OWX_DS2480.query sending out: e100000000000000000000000000000000e3a5
2014.05.22 07:37:30 5: OWX_ASYNC_PT_Kick: kicking DS14B20 temperature conversion
2014.05.22 07:37:30 5: OWX_DS2480 read: After loop no. 7 received: cdf04109a000a008a0000000000000008222
2014.05.22 07:37:30 5: OWX_Executor: command 2 eligible to run
2014.05.22 07:37:30 5: OWX_DS2480.query sending out: e3c5
2014.05.22 07:37:30 5: OWX_DS2480.query sending out: e1ece3b5
2014.05.22 07:37:30 5: OWX_DS2480.query sending out: e100000000000000000000000000000000e3a5
2014.05.22 07:37:30 5: OWX_DS2480 read: After loop no. 5 received: cdec820880288082a00000000000000088a2
2014.05.22 07:37:30 5: OWX_SER::Search: new alarm device found 29.68980C000000.DA
2014.05.22 07:37:30 5: OWX_DS2480.query sending out: e3c5
2014.05.22 07:37:30 5: OWX_DS2480.query sending out: e1ece3b5
2014.05.22 07:37:30 5: OWX_DS2480.query sending out: e100000000000000000000000000000000e3a5
2014.05.22 07:37:30 5: OWX_DS2480 read: After loop no. 7 received: cdec820880288082a00000000000000088a2
2014.05.22 07:37:30 5:  Alarms = 29.68980C000000.DA
2014.05.22 07:37:30 5: OWX_Executor: item ProtoThreads=HASH(0x1857378) for --- eligible to run
2014.05.22 07:37:31 5: OWX_DS2480.query sending out: e3c5
2014.05.22 07:37:31 5: OWX_DS2480.query sending out: e1cc44
2014.05.22 07:37:31 5: OWX_DS2480 read: After loop no. 3 received: cdcc44
2014.05.22 07:37:31 5: AfterExecute: context: ProtoThreads=HASH(0x1857378), success: 1, reset: 1, owx_dev: undef, writedata: 44, numread: 0, readdata:
2014.05.22 07:37:31 5: OWX_Executor: item ProtoThreads=HASH(0x185a3e8) for 28.1307AC040000.68 eligible to run
2014.05.22 07:37:31 5: OWX_DS2480.query sending out: e3c5
2014.05.22 07:37:31 5: OWX_DS2480.query sending out: e155281307ac04000068beffffffffffffffffff
2014.05.22 07:37:31 5: OWX_DS2480 read: After loop no. 17 received: cd55281307ac04000068be44011e0a7fff0c10a4
2014.05.22 07:37:31 5: AfterExecute: context: ProtoThreads=HASH(0x185a3e8), success: 1, reset: 1, owx_dev: 28.1307AC040000.68, writedata: be, numread: 9, readdata: 44011e0a7fff0c10a4
2014.05.22 07:37:31 5: OWX_Executor: item ProtoThreads=HASH(0x1867668) for 28.CA0FAC040000.04 eligible to run
2014.05.22 07:37:31 5: OWX_DS2480.query sending out: e3c5
2014.05.22 07:37:31 5: OWX_DS2480.query sending out: e15528ca0fac04000004beffffffffffffffffff
2014.05.22 07:37:31 5: OWX_DS2480 read: After loop no. 18 received: cd5528ca0fac04000004beea001e0a7fff0610fd
2014.05.22 07:37:31 5: AfterExecute: context: ProtoThreads=HASH(0x1867668), success: 1, reset: 1, owx_dev: 28.CA0FAC040000.04, writedata: be, numread: 9, readdata: ea001e0a7fff0610fd
2014.05.22 07:37:31 5: OWX_Executor: item ProtoThreads=HASH(0x1b2bc50) for 10.541E0B000800.35 eligible to run
2014.05.22 07:37:31 5: OWX_DS2480.query sending out: e3c5
2014.05.22 07:37:32 5: OWX_DS2480.query sending out: e15510541e0b00080035beffffffffffffffffff
2014.05.22 07:37:32 5: OWX_DS2480 read: After loop no. 18 received: cd5510541e0b00080035be74004619ffff0d10c5
2014.05.22 07:37:32 5: AfterExecute: context: ProtoThreads=HASH(0x1b2bc50), success: 1, reset: 1, owx_dev: 10.541E0B000800.35, writedata: be, numread: 9, readdata: 74004619ffff0d10c5
2014.05.22 07:37:32 5: OWX_Executor: item ProtoThreads=HASH(0x1b25000) for 10.787E83020800.65 eligible to run
2014.05.22 07:37:32 5: OWX_DS2480.query sending out: e3c5
2014.05.22 07:37:32 5: OWX_DS2480.query sending out: e15510787e8302080065beffffffffffffffffff
2014.05.22 07:37:32 5: OWX_DS2480 read: After loop no. 17 received: cd5510787e8302080065be37003809ffff06109d
2014.05.22 07:37:32 5: AfterExecute: context: ProtoThreads=HASH(0x1b25000), success: 1, reset: 1, owx_dev: 10.787E83020800.65, writedata: be, numread: 9, readdata: 37003809ffff06109d
2014.05.22 07:37:32 5: OWX_Executor: item ProtoThreads=HASH(0x1856a30) for 28.810671010000.D3 eligible to run
2014.05.22 07:37:32 5: OWX_DS2480.query sending out: e3c5
2014.05.22 07:37:32 5: OWX_DS2480.query sending out: e15528810671010000d3beffffffffffffffffff
2014.05.22 07:37:32 5: OWX_DS2480 read: After loop no. 2 received: cd5528810671010000d3bedc0146087fff041032
2014.05.22 07:37:32 5: AfterExecute: context: ProtoThreads=HASH(0x1856a30), success: 1, reset: 1, owx_dev: 28.810671010000.D3, writedata: be, numread: 9, readdata: dc0146087fff041032
2014.05.22 07:37:32 5: OWX_Executor: item ProtoThreads=HASH(0x1856bc0) for 28.905F9B010000.8B eligible to run
2014.05.22 07:37:32 5: OWX_DS2480.query sending out: e3c5
2014.05.22 07:37:32 5: OWX_DS2480.query sending out: e15528905f9b0100008bbeffffffffffffffffff
2014.05.22 07:37:32 5: OWX_DS2480 read: After loop no. 15 received: cd5528905f9b0100008bbed0001e057fff101084
2014.05.22 07:37:32 5: AfterExecute: context: ProtoThreads=HASH(0x1856bc0), success: 1, reset: 1, owx_dev: 28.905F9B010000.8B, writedata: be, numread: 9, readdata: d0001e057fff101084
2014.05.22 07:37:32 5: OWX_Executor: item ProtoThreads=HASH(0x1861778) for 28.0E37AC040000.FD eligible to run
2014.05.22 07:37:32 5: OWX_DS2480.query sending out: e3c5
2014.05.22 07:37:32 5: OWX_DS2480.query sending out: e155280e37ac040000fdbeffffffffffffffffff
2014.05.22 07:37:32 5: OWX_DS2480 read: After loop no. 16 received: cd55280e37ac040000fdbe54011e0a7fff0c10f0
2014.05.22 07:37:32 5: AfterExecute: context: ProtoThreads=HASH(0x1861778), success: 1, reset: 1, owx_dev: 28.0E37AC040000.FD, writedata: be, numread: 9, readdata: 54011e0a7fff0c10f0
2014.05.22 07:37:32 5: OWX_Executor: item ProtoThreads=HASH(0x1b045d8) for 28.AEE870010000.B6 eligible to run
2014.05.22 07:37:32 5: OWX_DS2480.query sending out: e3c5
2014.05.22 07:37:32 5: OWX_DS2480.query sending out: e15528aee870010000b6beffffffffffffffffff
2014.05.22 07:37:32 5: OWX_DS2480 read: After loop no. 16 received: cd5528aee870010000b6bea00137037fff1010b0
2014.05.22 07:37:32 5: AfterExecute: context: ProtoThreads=HASH(0x1b045d8), success: 1, reset: 1, owx_dev: 28.AEE870010000.B6, writedata: be, numread: 9, readdata: a00137037fff1010b0
2014.05.22 07:37:32 5: OWX_Executor: item ProtoThreads=HASH(0x18649e0) for 28.A8A49B010000.11 eligible to run
2014.05.22 07:37:32 5: OWX_DS2480.query sending out: e3c5
2014.05.22 07:37:33 5: OWX_DS2480.query sending out: e15528a8a49b01000011beffffffffffffffffff
2014.05.22 07:37:33 5: OWX_DS2480 read: After loop no. 3 received: cd5528a8a49b01000011beed045a087fff03100c
2014.05.22 07:37:33 5: AfterExecute: context: ProtoThreads=HASH(0x18649e0), success: 1, reset: 1, owx_dev: 28.A8A49B010000.11, writedata: be, numread: 9, readdata: ed045a087fff03100c
2014.05.22 07:37:33 5: OWX_Executor: item ProtoThreads=HASH(0x185db18) for 10.0576A8020800.6D eligible to run
2014.05.22 07:37:33 5: OWX_DS2480.query sending out: e3c5
2014.05.22 07:37:33 5: OWX_DS2480.query sending out: e155100576a80208006dbeffffffffffffffffff
2014.05.22 07:37:33 5: OWX_DS2480 read: After loop no. 11 received: cd55100576a80208006dbe47005a08ffff0310b7
2014.05.22 07:37:33 5: AfterExecute: context: ProtoThreads=HASH(0x185db18), success: 1, reset: 1, owx_dev: 10.0576A8020800.6D, writedata: be, numread: 9, readdata: 47005a08ffff0310b7
2014.05.22 07:37:35 5: OWX_Executor: item ProtoThreads=HASH(0x1b28e38) for 20.0C2C0C000000.59 eligible to run
2014.05.22 07:37:35 5: OWX_DS2480.query sending out: e3c5
2014.05.22 07:37:35 5: OWX_DS2480.query sending out: e155200c2c0c000000593c0f00ffff
2014.05.22 07:37:35 5: OWX_DS2480 read: After loop no. 7 received: cd55200c2c0c000000593c0f003a03
2014.05.22 07:37:35 5: AfterExecute: context: ProtoThreads=HASH(0x1b28e38), success: 1, reset: 1, owx_dev: 20.0C2C0C000000.59, writedata: 3c0f00ffff, numread: 0, readdata:
2014.05.22 07:37:35 5: OWX_Executor: item ProtoThreads=HASH(0x1b28e38) for 20.0C2C0C000000.59 eligible to run
2014.05.22 07:37:35 5: OWX_DS2480.query sending out: e3c5
2014.05.22 07:37:35 5: OWX_DS2480.query sending out: e155200c2c0c00000059aa0000ffffffffffffffffffff
2014.05.22 07:37:35 5: OWX_DS2480 read: After loop no. 8 received: cd55200c2c0c00000059aa0000adfab408ba0812e69e4e
2014.05.22 07:37:35 5: AfterExecute: context: ProtoThreads=HASH(0x1b28e38), success: 1, reset: 1, owx_dev: 20.0C2C0C000000.59, writedata: aa0000, numread: 10, readdata: adfab408ba0812e69e4e
2014.05.22 07:37:35 5: OWX_Executor: item ProtoThreads=HASH(0x1b041e8) for 20.0C2C0C000000.59 eligible to run
2014.05.22 07:37:35 5: OWX_DS2480.query sending out: e3c5
2014.05.22 07:37:35 5: OWX_DS2480.query sending out: e155200c2c0c00000059aa1000ffffffffffffffffffff
2014.05.22 07:37:35 5: OWX_DS2480 read: After loop no. 9 received: cd55200c2c0c00000059aa1000f5ff00b900b900ff11ba
2014.05.22 07:37:35 5: AfterExecute: context: ProtoThreads=HASH(0x1b041e8), success: 1, reset: 1, owx_dev: 20.0C2C0C000000.59, writedata: aa1000, numread: 10, readdata: f5ff00b900b900ff11ba
2014.05.22 07:37:35 5: OWX_Executor: item ProtoThreads=HASH(0x185e4f8) for 20.0C2C0C000000.59 eligible to run
2014.05.22 07:37:35 5: OWX_DS2480.query sending out: e3c5
2014.05.22 07:37:35 5: OWX_DS2480.query sending out: e155200c2c0c00000059aa0800ffffffffffffffffffff
2014.05.22 07:37:35 5: OWX_DS2480 read: After loop no. 9 received: cd55200c2c0c00000059aa08000001000100010001e0cf
2014.05.22 07:37:35 5: AfterExecute: context: ProtoThreads=HASH(0x185e4f8), success: 1, reset: 1, owx_dev: 20.0C2C0C000000.59, writedata: aa0800, numread: 10, readdata: 0001000100010001e0cf
2014.05.22 07:37:42 5: OWX_Executor: item ProtoThreads=HASH(0x1864df0) for 29.68980C000000.DA eligible to run
2014.05.22 07:37:42 5: OWX_DS2480.query sending out: e3c5
2014.05.22 07:37:42 5: OWX_DS2480.query sending out: e1552968980c000000daf08800ffffffffffffffffffff
2014.05.22 07:37:42 5: OWX_DS2480 read: After loop no. 6 received: cd552968980c000000daf08800f7f7ff000088ffff2706
2014.05.22 07:37:42 5: AfterExecute: context: ProtoThreads=HASH(0x1864df0), success: 1, reset: 1, owx_dev: 29.68980C000000.DA, writedata: f08800, numread: 10, readdata: f7f7ff000088ffff2706
2014.05.22 07:38:00 5: OWX_Executor: command 1 eligible to run
2014.05.22 07:38:00 5: OWX_DS2480.query sending out: e3c5
2014.05.22 07:38:00 5: OWX_DS2480.query sending out: e1f0e3b5
2014.05.22 07:38:00 5: OWX_DS2480.query sending out: e100000000000000000000000000000000e3a5
2014.05.22 07:38:00 5: OWX_ASYNC_PT_Kick: kicking DS14B20 temperature conversion
2014.05.22 07:38:00 5: OWX_DS2480 read: After loop no. 7 received: cdf04109a000a008a0000000000000008222
2014.05.22 07:38:00 5: OWX_Executor: command 2 eligible to run
2014.05.22 07:38:00 5: OWX_DS2480.query sending out: e3c5
2014.05.22 07:38:00 5: OWX_DS2480.query sending out: e1ece3b5
2014.05.22 07:38:00 5: OWX_DS2480.query sending out: e100000000000000000000000000000000e3a5
2014.05.22 07:38:00 5: OWX_DS2480 read: After loop no. 4 received: cdec820880288082a00000000000000088a2
2014.05.22 07:38:00 5: OWX_SER::Search: new alarm device found 29.68980C000000.DA
2014.05.22 07:38:00 5: OWX_DS2480.query sending out: e3c5
2014.05.22 07:38:00 5: OWX_DS2480.query sending out: e1ece3b5
2014.05.22 07:38:00 5: OWX_DS2480.query sending out: e100000000000000000000000000000000e3a5
2014.05.22 07:38:00 5: OWX_DS2480 read: After loop no. 4 received: cdec820880288082a00000000000000088a2
2014.05.22 07:38:00 5:  Alarms = 29.68980C000000.DA
2014.05.22 07:38:00 5: OWX_Executor: item ProtoThreads=HASH(0x18674e8) for --- eligible to run
2014.05.22 07:38:01 5: OWX_DS2480.query sending out: e3c5
2014.05.22 07:38:01 5: OWX_DS2480.query sending out: e1cc44
2014.05.22 07:38:01 5: OWX_DS2480 read: After loop no. 4 received: cdcc44
2014.0


Herzliche Grüße

Christian
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: det. am 22 Mai 2014, 09:56:45
Zitat von: ntruchsess am 21 Mai 2014, 21:43:27
Das mit der Systemlast gefällt mir nicht, das ist bei mir nicht so... Du hast doch die ganzen LCD-aufrufe auf 'set XYZ...' umgebaut, ist das oft drin, bzw. wird das (oder andere 'set XYZ...'-kommandos an OW-Frontendmodulen) oft aufgerufen? Die 'set'-kommandos der Frontendmodule laufen ja synchron - da wird der aktuelle Protothread so lange aufgerufen bis er durch ist, das macht in dem Moment nahezu 100% Systemlast. Das ist auch ein Punkt, der noch mal überarbeitet gehört, aber da habe ich angenommen, dass das im Regelbetrieb nicht oft passiert, sondern nur, wenn jemand am Webinterface rumspielt (und eben die Ergebnisse seines Handelns auch sofort sehen will - sonst könnte man 'set' auch genausogut asynchron laufen lassen, dann gäbe es halt keine unmittelbar sichtbare Änderung, weil die ja asynchron später käme).

Läuft es mit synchronem OWX (gleiche config, die Frontendmodule sind ja abwärtskompatibel) stabil? Wenn nein, dann spiel den letzten Stand wieder ein, der bei Dir stabil lief und teste nach dem Urlaub weiter. Vieleicht ist bis dahin ja schon alles in Butter ;-)

Gruß,

Norbert
Hallo Norbert,
ja das eine von zwei Displays stand z.b. gestern auf Außentemperatur 15°C, als ich Nachmittags von Arbeit kam. Das deutet nach dem Temperaturverlauf darauf hin, das es ab 8 Uhr früh nicht mehr ansprechbar war. Heute morgen habe ich ein shutdown restet gestartet, da die Systemlast wieder so hoch war. Mal sehen was heute abend da so los ist, ggf. kann ich so einen Zwangsneustart für die kommenden Urlaubswochen einfach fest einbauen. Da ist es ja auch egal, ob auf den Displays was zu lesen ist (wegen dem Initialisierungsfehler). Das synchrone OWX brachte mit Deinen überarbeiteten Modulen div. Fehler, die von anderen Mitstreitern hier im Beitrag schon gepostet wurden. Das ist also nicht die Lösung.
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 22 Mai 2014, 11:38:56
Zitat von: cwagner am 22 Mai 2014, 07:52:38
2014.05.22 07:36:30 5: OWX_DS2480.query sending out: e3c5
2014.05.22 07:36:30 5: OWX_DS2480.query sending out: e1ece3b5
2014.05.22 07:36:30 5: OWX_DS2480.query sending out: e100000000000000000000000000000000e3a5
2014.05.22 07:36:30 5: OWX_DS2480 read: After loop no. 4 received: cdec6800000000000000000000000000000000
2014.05.22 07:36:30 3: OWX_DS2480: Search 2nd return has wrong parameter with length = 17

das ist ja echt merkwürdig, da hängt einfach ein 00-byte mehr dran, vorne sind die erwarteten 2 Bytes 'cdec' vorhanden, d.h. es kann kein Byte von einem vorherigen Befehl oder so noch im seriellen Buffer gewesen sein.
Die Frage ist ja, wie man damit umgehen soll, bzw. ob es eine bessere Alternative gibt, als die Bussuche hier einfach abzubrechen ohne zu riskieren, falsche Ergebnisse zu bekommen? Sollte man, wie im Datenblatt beispielhaft aufgeführt noch einen 1-Wire-Busreset hinterherschicken, oder einfach den gleichen Search-durchgang noch mal machen? Eigentlich sollte der gleiche Fehler beim Synchronen OWX genauso auftreten. Hast Du noch die Log-zeilen davor im Angebot, mich würde interessieren, mit welchem Device unmittelbar vorher geredet wurde, vieleicht gibt's da ja eine Korrelation, wenn das öfter auftritt.

Gruß,

Norbert
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: cwagner am 22 Mai 2014, 12:26:34
Gerne. Wegen der Größe als Anlage das, was ich vor dem Aufbruch nach dem letzten Neustart noch aufgezeichnet habe. Bei den letzten Zeilen stand verbose auf 0, weil ich nicht wollte, dass mir bei Abwesenheit die Kiste "platzt" ;-)


Herzliche Grüße

Christian
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: det. am 22 Mai 2014, 20:47:50
Hallo Norbert,
habe einmalig nach heutigem update eine Meldung bezüglich eines Louis Swart Displaycontrollers:2014.05.22 20:39:44 2: OWX_ASYNC: Error running task for FF.C90700000100.9A: OWX_DS2480 read timeout, bytes read: 1, expected: 21
das ist nicht der, welcher die letzten Tage immer schlafen gegangen ist....
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: det. am 22 Mai 2014, 21:21:19
Bin wie vorgeschlagen wegen "drohender" Abwesenheit auf OWX synchron zurück gewechselt ( bei gleichem Modul Releasestand ) - ging erstaunlich unproblematisch, auch meine Änderungen in der Displayansteuerung wegen OWX_ASYNC konnten so bleiben. Nach Edit direkt in der fhem.cfg und anschließendem save - mein Eindruck: ohne OWX_ASYNC startet FHEM erheblich schneller... gefühlt Sekunden gegenüber 1 Min. vorher.
Leider habe ich die Fehlermeldungen wieder im LOG (die bei OWX_ASYNC weg waren, aber lieber Meldungen als täglich abstürzendes FHEM):2014.05.22 20:51:40 3: OWX: Complex called with unknown interface serial on bus 1wire_1
2014.05.22 20:51:40 3: OWX: Reset called with unknown interface serial
2014.05.22 20:51:40 3: OWX: Complex called with unknown interface serial on bus 1wire_1
2014.05.22 20:51:40 3: OWX: Reset called with unknown interface serial
2014.05.22 20:51:40 3: OWX: Complex called with unknown interface serial on bus 1wire_1
2014.05.22 20:51:40 3: OWX: Reset called with unknown interface serial
......
und
2014.05.22 21:12:04 3: set OWSWITCHBoden output A ON : OWSWITCH: Could not set device OWSWITCHBoden, reason: invalid CRC
2014.05.22 21:07:04 3: set OWSWITCHBoden output A OFF : OWSWITCH: Could not set device OWSWITCHBoden, reason: invalid CRC
2014.05.22 21:02:04 3: set OWSWITCHBoden output A OFF : OWSWITCH: Could not set device OWSWITCHBoden, reason: invalid CRC
2014.05.22 20:57:04 3: set OWSWITCHBoden output A OFF : OWSWITCH: Could not set device OWSWITCHBoden, reason: invalid CRC

Dabei funktionieren die DS2406 Schaltmodule wie gewünscht....
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: cwagner am 22 Mai 2014, 22:11:16
bei jedem FHEM-Absturz habe ich auf der Telnet-Konsole diese gleiche, letzte Fehlermeldung:

OWX_DS2480 read timeout, bytes read: 3, expected: 18 at ./FHEM/OWX_DS2480.pm lin
e 153.


Herzliche Grüße

Christian
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: Prof. Dr. Peter Henning am 23 Mai 2014, 13:15:01
Danke Dir für die Arbeit.

LG

pah
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: cwagner am 23 Mai 2014, 16:21:05
[quote author=det. link=topic=13580.msg170970#msg170970 date=1400786479]
Bin wie vorgeschlagen wegen "drohender" Abwesenheit auf OWX synchron zurück gewechselt und
2014.05.22 21:12:04 3: set OWSWITCHBoden output A ON : OWSWITCH: Could not set device OWSWITCHBoden, reason: invalid CRC
2014.05.22 21:07:04 3: set OWSWITCHBoden output A OFF : OWSWITCH: Could not set device OWSWITCHBoden, reason: invalid CRC
2014.05.22 21:02:04 3: set OWSWITCHBoden output A OFF : OWSWITCH: Could not set device OWSWITCHBoden, reason: invalid CRC
2014.05.22 20:57:04 3: set OWSWITCHBoden output A OFF : OWSWITCH: Could not set device OWSWITCHBoden, reason: invalid CRC

Dabei funktionieren die DS2406 Schaltmodule wie gewünscht....
[/quote]

Genau die gleiche Erfahrung hatte ich mit den synchronen Modulen in den jüngeren Versionen mit einem 8fach-Switch gemacht - nicht bei jedem Schaltvorgang aber doch recht häufig. Und in den allermeisten Fällen war der Schaltvorgang doch umgesetzt worden.

Christian
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: det. am 23 Mai 2014, 19:39:34
@all,
ich bin erst mal entspannt. Nach gestriger Umstellung von OWX_ASYNC zurück zu OWX läuft FHEM wieder so stabil wie gewohnt und die Systemlast bewegt sich im Bereich von 0-10%.
Die erwähnten Fehlermeldungen bei OWSWITCH lassen sich auch durch verbose 0 nicht unterdrücken, aber der fhemlog ist geduldig und zeichnet es eben auf. Solange das keine weiteren Probleme bereitet soll es mir egal sein.
Bin schon jetzt gespannt, was sich bis nach Pfingsten hier so alles entwickelt hat.
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: cwagner am 31 Mai 2014, 11:05:26
Auf der Suche nach den Ursachen für praktisch tägliche Abstürze des FHEM vermutlich aufgrund OWAD (Verdacht wegen der gheposteten TElnet-Meldung, die dann immer als letzte in der Sitzung steht) habe ich nochmal verbose=5 laufen lassen und mir fallen diese FHEM.log-Zeilen auf:

2014.05.31 10:56:34 5: OWX_ASYNC_PT_Kick: doing tempConv for OWAD, tempConv: -

In AWAD habe ich gar keine Chance, doKick oder onKick zu setzen, oder übersehe ich da etwas? Ich bin dem Ratschlag gefolgt, alle Temperaturdevices grundsätzlich auf Kick zu stellen.

Postitiv: Seitdem ich ASYNC einsetze habe ich bei den 10 Temp-Devices 99.99%ig gültige Werte. Vorher hatte ich mehrfach über den Tag verteilt immer wieder in den Messwerten 85.0 als Ausreißer (ungültige Messwerte).

Herzliche Grüße

Christian
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: det. am 31 Mai 2014, 17:48:19
@all,
Gruß aus dem sonnigen Süden Europas. Dank überall free WIFI kann ich die Feuchte und Kälte in der Heimat von Ferne betrachten. Dank der Zurückumstellung von OWX_ASYNC auf OWX (sync)  läuft mein FHEM ohne Abstürze mit dem Releasestand der Module von vor 8 Tagen stabil.
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 02 Juni 2014, 09:31:48
Zitat von: cwagner am 31 Mai 2014, 11:05:26

2014.05.31 10:56:34 5: OWX_ASYNC_PT_Kick: doing tempConv for OWAD, tempConv: -

In AWAD habe ich gar keine Chance, doKick oder onKick zu setzen, oder übersehe ich da etwas? Ich bin dem Ratschlag gefolgt, alle Temperaturdevices grundsätzlich auf Kick zu stellen.

diese Logmeldung ist wohl etwas irreführend, da wollte ich nur sehen, welche Werte im 'tempConv'-attribut stehen (ist loglevel 5, also für debugging....). Das Außlesen der Temperaturwerte wird anschließend nur für die OWTHERM-devices mit tempConv 'onkick' durchgeführt, alle anderen Devices werden übersprungen.

EDIT: hab's grade so geändert, dass nur noch die auf 'onkick' konfigurierten OWTHERM-devices logged...

Gruß,

Norbert
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: cwagner am 02 Juni 2014, 11:14:38
Vielen Dank Norbert,

das hatte ich auch nur gemeldet, weil ich den Hintergrund der Logging-Einträge nicht kannte und sie nur offensichtlich unsinnig waren. Zugleich hatte ich die Hoffnung, vielleicht etwas zu finden, was hilft, die praktisch täglich stattfindenden Abstürze von FHEM bei Benutzung von OWX-ASYNC einzugrenzen. Irgendwann kommt halt die Zeile vom OWAD auf der Telnet-Konsole:

OWX_DS2480 read timeout, bytes read: 3, expected: 18 at ./FHEM/OWX_DS2480.pm line 153


und zack, weg ist es das FHEM. Der WAF ist jetzt im Sommer diesbezüglich nicht in Gefahr  :)

Mir scheint, es gibt einen Zusammenhang mit rechenintensiven anderen Modulen wie update, PID20, STATISTICS oder STELLMOTOR, mit denen ich die Quote "einmal am Tage" locker auf "in der nächsten Stunde" treiben kann  :'(

Dabei sind Speicher und CPU-Auslastung (außer bei update) laut free oder top nicht unbedingt durchgängig auf Anschlag... Daraus leite ich das "Gefühl" ab, dass die asynchrone Verarbeitung (bei OWAD) etwas labil gegen Zeitverzögerungen sein könnte. Mein OWAD verarbeitet 4 Digitaleingänge (Spannung auf dem 1-Wire-Bus, Luftdruck, Infrarot-Strahlung, Helligkeit). Ich benutze für drei der vier Ports function zum Umrechnen der Werte. Er steht auf Interval 60 - sollte also den Bus nicht wirklich belasten.

Herzliche Grüße

Christian
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: Prof. Dr. Peter Henning am 05 Juni 2014, 18:56:32
Die asynchrone Version läuft (im Großen und Ganzen), doch die nächsten Dinge sind gerade um die Ecke gekommen. Die asynchrone Programmierung ist eines der aktuellen Themen in verschiedenen Sprachen. Getrieben wird das durch den derzeitigen Erfolg der Sprache Scala - und seit kurzer Zeit gibt es auch ein erstes Framework, das die Konzepte von "Futures" bzw. "Promises" in Perl abbildet.

https://metacpan.org/pod/Promises

Unter Verwendung von Promises sollte auch das asynchrone OWX sogar einfacher zu realisieren sein.

LG

pah
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: hexenmeister am 07 Juni 2014, 23:02:25
Moin!

Seit zwei Tage (seit update am 6.05.) habe ich kein funktionierendes 1wire mehr. Dafür eine Menge Meldungen im Log.
Jemand eine Idee, was hier falsch läuft und was man dagegen tun könnte?

2014.06.07 22:43:19.404 3: OWX_DS2480: Search 2nd return has wrong parameter with length = 17
2014.06.07 22:43:20.769 2: OWX_ASYNC: Error running task for 28.4B318B040000.09: invalid CRC
2014.06.07 22:43:20.780 2: OWX_ASYNC: Error running task for 28.DDDA7E040000.50: invalid CRC
2014.06.07 22:43:20.784 2: OWX_ASYNC: Error running task for 28.4C20BE040000.F4: invalid CRC
2014.06.07 22:43:20.868 2: OWX_ASYNC: Error running task for 28.B0F2BD040000.AE: invalid CRC
2014.06.07 22:43:20.992 2: OWX_ASYNC: Error running task for 28.E9018B040000.BF: invalid CRC
2014.06.07 22:43:21.111 2: OWX_ASYNC: Error running task for 28.3F6F5C040000.FD: invalid CRC
2014.06.07 22:43:21.115 2: OWX_ASYNC: Error running task for 28.1B285D040000.A0: invalid CRC
2014.06.07 22:43:21.306 2: OWX_ASYNC: Error running task for 28.7BAFBD040000.B0: invalid CRC
2014.06.07 22:43:21.417 2: OWX_ASYNC: Error running task for 28.B77C8A040000.8C: invalid CRC
2014.06.07 22:43:21.529 2: OWX_ASYNC: Error running task for 28.B5DCBD040000.1F: invalid CRC
2014.06.07 22:43:21.634 2: OWX_ASYNC: Error running task for 28.BFF391040000.25: invalid CRC
2014.06.07 22:43:21.738 2: OWX_ASYNC: Error running task for 28.D7EA91040000.C8: invalid CRC
2014.06.07 22:43:21.763 2: OWX_ASYNC: Error running task for 28.B6A25C040000.4F: invalid CRC
2014.06.07 22:43:21.874 2: OWX_ASYNC: Error running task for 28.F58B8A040000.60: invalid CRC
2014.06.07 22:43:22.067 2: OWX_ASYNC: Error running task for 28.45128B040000.AC: invalid CRC
2014.06.07 22:43:22.092 2: OWX_ASYNC: Error running task for 28.5D4BBE040000.F9: invalid CRC
2014.06.07 22:43:22.213 2: OWX_ASYNC: Error running task for 28.19065D040000.94: invalid CRC
2014.06.07 22:43:22.302 1: Perfmon: possible freeze starting at 22:43:21, delay is 1.301
2014.06.07 22:43:22.326 2: OWX_ASYNC: Error running task for 28.4A838A040000.7D: invalid CRC


Edit:
Nach der Änderung auf synchron habe ich

2014.06.07 23:18:01.514 1: OWX: 1-Wire bus OWio1: interface not found, answer was 0x17 0x8b 0x5b 0xad 0x91
2014.06.07 23:18:02.091 1: OWX: 1-Wire bus OWio1: interface not found, answer was 0x17 0x8b 0x5b 0xad 0x91
2014.06.07 23:18:02.668 1: OWX: 1-Wire bus OWio1: interface not found, answer was 0x17 0x8b 0x5b 0xad 0x91
2014.06.07 23:18:03.244 1: OWX: 1-Wire bus OWio1: interface not found, answer was 0x17 0x8b 0x5b 0xad 0x91
2014.06.07 23:18:03.822 1: OWX: 1-Wire bus OWio1: interface not found, answer was 0x17 0x8b 0x5b 0xad 0x91
2014.06.07 23:18:04.399 1: OWX: 1-Wire bus OWio1: interface not found, answer was 0x17 0x8b 0x5b 0xad 0x91
2014.06.07 23:18:04.976 1: OWX: 1-Wire bus OWio1: interface not found, answer was 0x17 0x8b 0x5b 0xad 0x91
2014.06.07 23:18:05.553 1: OWX: 1-Wire bus OWio1: interface not found, answer was 0x17 0x8b 0x5b 0xad 0x91
2014.06.07 23:18:06.130 1: OWX: 1-Wire bus OWio1: interface not found, answer was 0x17 0x8b 0x5b 0xad 0x91
2014.06.07 23:18:06.706 1: OWX: 1-Wire bus OWio1: interface not found, answer was 0x17 0x8b 0x5b 0xad 0x91
2014.06.07 23:18:07.283 1: OWX: 1-Wire bus OWio1: interface not found, answer was 0x17 0x8b 0x5b 0xad 0x91
2014.06.07 23:18:07.860 1: OWX: 1-Wire bus OWio1: interface not found, answer was 0x17 0x8b 0x5b 0xad 0x91
2014.06.07 23:18:08.441 1: OWX: 1-Wire bus OWio1: interface not found, answer was 0x17 0x8b 0x5b 0xad 0x91
2014.06.07 23:18:09.018 1: OWX: 1-Wire bus OWio1: interface not found, answer was 0x17 0x8b 0x5b 0xad 0x91
2014.06.07 23:18:09.595 1: OWX: 1-Wire bus OWio1: interface not found, answer was 0x17 0x8b 0x5b 0xad 0x91
2014.06.07 23:18:10.172 1: OWX: 1-Wire bus OWio1: interface not found, answer was 0x17 0x8b 0x5b 0xad 0x91


Ich gehe also meine Hardware checken :( *grrr*

Edit2:
Abziehen, einstecken, geht alles wieder... Sorry für die verfrühte Meldung... und danke!
Trotzdem wäre es spannend zu wissen, was das war. So hat sich bei mir der 2480 noch nie verschlückt :(


Grüße,

Alexander
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 14 Juni 2014, 00:45:21
hab endlich mal etwas Zeit gefunden am OWX_ASYNC zu arbeiten. Hab das Scheduling der Protothreads etwas refactored. Braucht jetzt weniger CPU, weil es die Protothreads nicht mehr sinnlos pollt, sondern nur wenn tatsächlich Daten kommen (oder ein Timer abgelaufen ist). Ist ins SVN committed und damit per update beziehbar.

Wirkt sich allerdings erst mal nur mit einem DS2480-Busmaster spürbar aus. Die 'freezes', in Verbindung mit FRM sind leider immer noch da, da muss ich noch ran. Leider komme ich vorraussichtlich aber erst in einer Woche dazu daran weiter zu machen.

Gruß,

Norbert
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: det. am 15 Juni 2014, 13:16:37
Hallo Norbert,
Danke für die Weiterentwicklung. Gestern produktiv wieder auf ASYNC umgestellt (und inzwischen leider wieder zurück). Das Problem, dass nach Tageswechsel die Serverlast auf 100% steigt und FHEM danach abschmiert ist weg. Von den 2 DS2480 Busmastern lieferte der ohne OWCOUNT Device heute noch regelmäßig Werte, der andere bis Mitternacht - danach nicht mehr. Allerdings ohne FHEM Absturz. Da ich das Loglevel wegen der OWSWITCH auf verbose 0 stehen habe, kann ich leider mit keinerlei weitergehenden Infos dienen.
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: cwagner am 15 Juni 2014, 19:02:35
Hi Norbert,
auch von mir vor allem Danke für die viele Arbeit, die Du in das Projekt steckst. Ein Status nach dem Update: Einen Tag lang habe ich OWX_ASYNC eingesetzt mit 12 Temperaturfühlern, 8 Switchen, und zwei AD-Wandlern - die zuvor beschriebenen Vorteile (weniger Systemlast, damit schnellere Reaktion ist definitiv hilfreich vor allem für Steuerungsaufgaben) sind sofort bemerkbar.

Leider wurde wieder rund ein Dutzend Mal FHEM beendet auf meiner Fritzbox! Letzte Meldung auf Telnet war immer wieder das Modul OWX_DS2480
OWX_DS2480 read timeout, bytes read: 13, expected: 14 at ./FHEM/OWX_DS2480.pm line 157.

Diese Zeile beginnt ja mit dem bezeichnenden Befehl die!

Mal stirbt FHEM schon nach wenigen Minuten, mal erst nach Stunden. Aber mehr als 5,6 Stunden kriege ich nur mit OWX statt OWX_ASNC hin.

Wenn ich irgendetwas tun kann, um bessere Informationen zur Fehlersuche zu liefern, lass' es mich bitte wissen.



Grüße Christian
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: hexenmeister am 16 Juni 2014, 22:52:41
Hallo!

Grundsätzlich läuft ASYNC-Modul in meiner Installation seit Tagen ganz gut.
Was mir jetzt aufgefallen ist: das Modul mag es nicht, wenn man im Betrieb den Adapter abzieht:
OWX_ASYNC_RunTasks: master Error running task: OWX_DS2480: Write incomplete undefined not equal 2
Danach ist FHEM weg.

Meine Installation: DS2480b (mit einem PL2303 USB-UART) und 18 Stück DS18b20 Sensoren.

Grüße,

Alexander
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: Starkstrombastler am 17 Juni 2014, 00:15:48
Hallo,

OWX_ASYNC läuft immer besser, inzwischen mit ca. 30 Devices bei ca. 100m Buslänge. Das hatte ich mit der synchronen Version bei Weitem nicht geschafft. Mein Kompliment an Norbert.

Allerdings stören schon seit geraumer Zeit SEHR LANGE Startzeiten von fhem. Jetzt ist mir aufgefallen, dass bei dem erstmaligen Laden der diversen OWX-Module ca. 1-2 Minuten "tatenlos" verstreichen. Hier ein Auszug aus dem Logfile:

2014.06.16 23:16:07.781 1: Including ./FHEM/myOW.cfg
2014.06.16 23:18:07.638 3: OWTHERM: Device TaE defined.
2014.06.16 23:18:07.674 3: OWTHERM: Device TaGH defined.
2014.06.16 23:18:07.706 3: OWTHERM: Device TaTo defined.
2014.06.16 23:18:07.743 3: OWTHERM: Device TaTu defined.
2014.06.16 23:18:07.777 3: OWTHERM: Device TiAR defined.
2014.06.16 23:18:07.811 3: OWTHERM: Device THLab defined.
2014.06.16 23:18:07.853 3: OWTHERM: Device THWW defined.
2014.06.16 23:18:07.888 3: OWTHERM: Device THWWSpS defined.
2014.06.16 23:18:07.922 3: OWTHERM: Device THWWSpO defined.
2014.06.16 23:18:07.958 3: OWTHERM: Device THWWZirkRL defined.
2014.06.16 23:18:07.992 3: OWTHERM: Device THVL defined.
2014.06.16 23:18:08.026 3: OWTHERM: Device THRL defined.
2014.06.16 23:18:08.062 3: OWTHERM: Device THR41 defined.
2014.06.16 23:18:08.096 3: OWTHERM: Device THR42 defined.
2014.06.16 23:18:08.134 3: OWTHERM: Device THR43 defined.
2014.06.16 23:18:08.171 3: OWTHERM: Device THR44 defined.
2014.06.16 23:18:08.205 3: OWTHERM: Device THR45 defined.
2014.06.16 23:18:08.238 3: OWTHERM: Device THR46 defined.
2014.06.16 23:18:08.273 3: OWTHERM: Device TKRL defined.
2014.06.16 23:18:08.306 3: OWTHERM: Device TKVL defined.
2014.06.16 23:18:08.336 3: OWTHERM: Device TLm defined.
2014.06.16 23:18:08.369 3: OWTHERM: Device TWi defined.
2014.06.16 23:18:08.398 3: OWTHERM: Device TWo defined.
2014.06.16 23:18:08.428 3: OWTHERM: Device _T_D4142c defined.
2014.06.16 23:18:08.463 3: OWTHERM: Device _TCnt4 defined.
2014.06.16 23:18:08.491 3: OWTHERM: Device _TUmwS defined.
2014.06.16 23:18:08.519 3: OWTHERM: Device _Txxx defined.
2014.06.16 23:19:27.360 3: OWAD:    Device OWX_Analog_1 defined.
2014.06.16 23:19:27.402 3: OWAD:    Device OWX_Analog_2 defined.
2014.06.16 23:20:39.870 3: OWSWITCH: Device CounterGasSwM defined.
2014.06.16 23:20:39.896 3: OWSWITCH: Device Counter4Switch defined.
2014.06.16 23:22:27.390 3: OWCOUNT: Device CounterGas defined.
2014.06.16 23:22:27.438 3: OWCOUNT: Device Counter4 defined.
2014.06.16 23:22:30.770 2: eventTypes: loaded 3369 events from log/eventTypes.txt

An den Definitionen habe ich nicht herumgefummelt, nur der Übersichtlichkeit wegen in eine Include-cfg verschoben.

Das Starten dauert so insgesamt ca. 7 Minuten, was ist da los?
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: hexenmeister am 17 Juni 2014, 01:09:21
ZitatAllerdings stören schon seit geraumer Zeit SEHR LANGE Startzeiten von fhem.

Hm, bei mir auch so...
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: cwagner am 17 Juni 2014, 06:05:56
Zitat von: Starkstrombastler am 17 Juni 2014, 00:15:48

Allerdings stören schon seit geraumer Zeit SEHR LANGE Startzeiten von fhem. Jetzt ist mir aufgefallen, dass bei dem erstmaligen Laden der diversen OWX-Module ca. 1-2 Minuten

Das kann ich bestätigen: Bei mir sind es OWAD, OWSWITCH und OWMULTI, die übrigens auch im synchronen Modus - da sind es jeweils 70+ Sekunden für jedes der drei Module "Wartezeit". Also mehr als 2 Intervalle (bei mir aktuell 30 Sekunden).
OWTHERM liegt bei etwa 50 Sekunden - was in Summe bei 4 Modulen (ziemlich unabhängig, wie viele Devices die betreuen, bei mir sind es derzeit 14) eine Verlängerung der Startzeit von rund 5 Minuten bedeutet.

Christian
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: Prof. Dr. Peter Henning am 19 Juni 2014, 13:09:04
Gibt es diese lange Startzeit auch, wenn die Devices vorher nicht definiert sind ? OWX sucht alles, was er auf dem Bus finden kann und legt es automatisch an. Würde bei der Fehlersuche helfen, das mal zu testen.

LG

pah
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: cwagner am 19 Juni 2014, 23:48:36
Zitat von: Prof. Dr. Peter Henning am 19 Juni 2014, 13:09:04
Gibt es diese lange Startzeit auch, wenn die Devices vorher nicht definiert sind ? OWX sucht alles, was er auf dem Bus finden kann und legt es automatisch an. Würde bei der Fehlersuche helfen, das mal zu testen.

Habe es mit OWAD, OWTHERM, OWSWITCH ausprobiert: Die Startzeit ist auch dann gleich lang, wenn die Devices angelegt werden. Sie entsteht bei dfer Initialisierung des Devices, die einzelnen Fühler werden dann zack,zack erkannt.

Herzliche Grüße

Christian
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: Starkstrombastler am 20 Juni 2014, 06:34:27
Zitat von: Prof. Dr. Peter Henning am 19 Juni 2014, 13:09:04
Gibt es diese lange Startzeit auch, wenn die Devices vorher nicht definiert sind ?
Ja, ich kann dies bestätigen. Die Zeiten beim Start mit definierten Devices und ohne Definition variieren zwar um einige Sekunden, die Größenordnung bleibt aber gleich und beträgt beim erstmaligen Aufruf von...
  DS2480        ca. 80 Sekunden
  OWAD          ca. 85 Sek.
  OWTHERM    ca. 55 Sek.
  OWSWITCH  ca. 75 Sek.
  OWCOUNT    ca. 110 Sek.

Zitat von: Prof. Dr. Peter Henning am 19 Juni 2014, 13:09:04
OWX sucht alles, was er auf dem Bus finden kann und legt es automatisch an.
Nachdem alle Devices aus der .CFG definiert sind, findet OWX angeblich noch ein Device 2014.06.20 00:22:37.650 3: OWTHERM: Device OWX_28_E2C0E0040000 defined.
Dies dauert ca. 6 Sekunden. Dieses Device existiert aber nicht wirklich.
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: Prof. Dr. Peter Henning am 20 Juni 2014, 11:14:15
Kann nicht sein, dass er eines findet, das nicht da ist. Denn es wird der CRC der Adresse geprüft.

Irgendetwas stimmt hier nicht mit der Bus-Suche, ist meine erste Vermutung.

LG

pah
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: Achim am 20 Juni 2014, 11:38:20
Hallo,

die langen Startzeiten kann ich auch bestätigen. Hier ein Auszug aus meinem Logfile beim Start:
Zitat2014.06.20 11:20:58 3: telnetPort: port 7072 opened
2014.06.20 11:21:53 3: OWTHERM: Device Heizraum_DS2 defined.
2014.06.20 11:23:26 3: OWCOUNT: Device OWX_Z1 defined.
2014.06.20 11:23:26 3: OWCOUNT: Device OWX_Z2 defined.
2014.06.20 11:23:29 1: Including /var/log/fhem/fhem.save
2014.06.20 11:23:30 3: Ardu_Nano1: port 3030 opened
2014.06.20 11:23:30 1: OWX: 1-Wire bus NANO1_D3: interface Firmata detected in Ardu_Nano1
die langen Startzeiten kamen nach "irgendeinem" Update. Das Warten ist zwar etwas lästig, aber nichts gegen einen Neustart unserer Windows Rechner in der Firma :)

Wenn ich irgendwie mit weiteren Infos weiterhelfen kann, einfach schreiben was ich durchführen soll.

Viele Grüße
Achim
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: fhem-challenge am 20 Juni 2014, 12:07:45
Zitat von: Achim am 20 Juni 2014, 11:38:20
Hallo,

die langen Startzeiten kann ich auch bestätigen. Hier ein Auszug aus meinem Logfile beim Start:die langen Startzeiten kamen nach "irgendeinem" Update. Das Warten ist zwar etwas lästig, aber nichts gegen einen Neustart unserer Windows Rechner in der Firma :)

Wenn ich irgendwie mit weiteren Infos weiterhelfen kann, einfach schreiben was ich durchführen soll.

Viele Grüße
Achim

Ich habe diese langen Startzeiten nicht. Weder bei OWX_ASYNC noch OWX.

Bei mir dauert der Startvorgang der ganzen OW Umgebung 14 Sekunden, bei bereits in der Config definierten DS18B20 (also kein auto detect nötig).

ich lasse FHEM auf einem Cubietruck laufen, der zugegeben, im Vgl. zu meinen alten raspi ganz erheblich!! schneller ist. Dafür habe ich an anderer Stelle Timingprobleme, nur nicht beim Starten.


Logfile:

2014.06.20 12:01:21 1: Including fhem.cfg
2014.06.20 12:01:21 3: Opening CUNO device x.x.x.x:2323
2014.06.20 12:01:21 3: CUNO device opened
2014.06.20 12:01:22 3: CUNO: Possible commands: mBCFZiAGMRTVWXOefltuHxEcq
2014.06.20 12:01:22 3: Opening CUNO2 device x.x.x.x:2323
2014.06.20 12:01:22 3: CUNO2 device opened
2014.06.20 12:01:22 3: CUNO2: Possible commands: mBCFZiAGMRTVWXOefltuHxEcq
2014.06.20 12:01:22 1: HMLAN_Parse: HMLAN1 new condition disconnected
2014.06.20 12:01:22 3: Opening HMLAN1 device x.x.x.x:1000
2014.06.20 12:01:22 3: HMLAN1 device opened
2014.06.20 12:01:22 1: HMLAN_Parse: HMLAN1 new condition init
2014.06.20 12:01:22 3: WEB: port 8083 opened
2014.06.20 12:01:22 3: WEBphone: port 8084 opened
2014.06.20 12:01:22 3: WEBtablet: port 8085 opened
2014.06.20 12:01:22 3: telnetFnotifyPort: port 7072 opened
2014.06.20 12:01:22 3: Connecting to database mysql:database=fhem;host=127.0.0.1;port=3306 with user xxxxx
2014.06.20 12:01:22 3: Connection to db mysql:database=fhem;host=127.0.0.1;port=3306 established for pid 26003
2014.06.20 12:01:22 3: Connection to db mysql:database=fhem;host=127.0.0.1;port=3306 established
2014.06.20 12:01:22 1: Including /opt/fhem/FHEM/fhem.automatische_prozesse.cfg
2014.06.20 12:01:23 1: Including /opt/fhem/FHEM/fhem.energiemessungen.cfg
2014.06.20 12:01:23 1: Including /opt/fhem/FHEM/fhem.geraete.cfg
2014.06.20 12:01:26 4: ENIGMA2 vuduo: REQ powerstate
2014.06.20 12:01:26 4: HttpUtils url=http://x.x.x.x/web/powerstate
2014.06.20 12:01:26 3: [STV] defined with host: x.x.x.x port: 52235 MAC:
2014.06.20 12:01:26 3: Opening fritzbox_call device x.x.x.x:1012
2014.06.20 12:01:26 3: fritzbox_call device opened
2014.06.20 12:01:26 3: FB_CALLMONITOR: loading cache file /root/fhem_callmonitor.search
...
2014.06.20 12:01:26 2: FB_CALLMONITOR: fritzbox_call read 35 contacts from FritzBox phonebook
2014.06.20 12:01:26 1: Including /opt/fhem/FHEM/fhem.heizung.cfg
2014.06.20 12:01:26 1: Including /opt/fhem/FHEM/fhem.lampen.schalter.cfg
2014.06.20 12:01:26 1: Including /opt/fhem/FHEM/fhem.rauchmelder.cfg
2014.06.20 12:01:26 1: Including /opt/fhem/FHEM/fhem.sensoren.cfg
2014.06.20 12:01:27 1: Including /opt/fhem/FHEM/fhem.temperaturen.cfg
>>> Hier startet OW
2014.06.20 12:01:27 1: Including /opt/fhem/FHEM/fhem.onewire.cfg
2014.06.20 12:01:41 3: OWTHERM: Device Temp1 defined.
2014.06.20 12:01:41 3: OWTHERM: Device Temp2 defined.
2014.06.20 12:01:41 3: OWTHERM: Device Temp3 defined.
2014.06.20 12:01:41 3: OWTHERM: Device Temp4 defined.
2014.06.20 12:01:41 3: OWTHERM: Device Temp5 defined.
<<<
>>> Hier gehts weiter ...
2014.06.20 12:01:41 1: Including /opt/fhem/FHEM/fhem.tuer_fensterkontakte.cfg
2014.06.20 12:01:42 1: Including /opt/fhem/FHEM/fhem.hminfo.cfg
2014.06.20 12:01:42 1: Including /opt/fhem/FHEM/fhem.alarmierungen.cfg
2014.06.20 12:01:42 1: Including /opt/fhem/FHEM/fhem.cam.cfg
2014.06.20 12:01:42 1: Including /opt/fhem/FHEM/fhem.keymatic.cfg
2014.06.20 12:01:42 1: Including /opt/fhem/FHEM/fhem.dummy_devices.cfg
2014.06.20 12:01:42 1: Including /opt/fhem/FHEM/fhem.floorplan.cfg
2014.06.20 12:01:42 1: Including /opt/fhem/FHEM/fhem.system-monitoring.cfg
2014.06.20 12:01:42 1: Including /opt/fhem/FHEM/fhem.wetterstation.cfg
2014.06.20 12:01:42 1: Including /opt/fhem/FHEM/fhem.rolladensteuerung.cfg
2014.06.20 12:01:42 1: Including /opt/fhem/FHEM/fhem.readinggroups.cfg
2014.06.20 12:01:42 1: Including /opt/fhem/FHEM/fhem.presence.cfg
2014.06.20 12:01:43 1: Including /opt/fhem/FHEM/fhem.test.cfg
2014.06.20 12:01:43 1: Including /opt/fhem/log/fhem.save
2014.06.20 12:01:43 3: FIRMATA: port 3030 opened


Viele Grüße!

Andreas
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: Prof. Dr. Peter Henning am 20 Juni 2014, 13:14:11
Nun, ich habe diese Startzeiten ja auch nicht - aber den Fehler müssen wir trotzdem finden.

Es könnte an zwei Dingen hängen:
Erstens an der Erkennung des Interfaces - da wird nämlich bis zu 100x versucht, eine Response vom Controller zu bekommen.
Und zweitens  an der Device-Suche auf dem Bus.

LG

pah
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: det. am 20 Juni 2014, 16:04:54
Bei mir dauert der Start mit angelegten und schon mal erkannten 28 Devices verteilt auf zwei Busmaster ca. 2min, wobei ein Bus sichtlich rumzickt. Das liegt irgendwie am Bus oder den Devices, denn den Busmaster habe ich schon mal gegen einen anderen getauscht - ohne Erfolg. Wirklich problematisch finde ich das jetzt nicht, da unter synchronen OWX auf dem Cubie2 FHEM damit produktiv absolut stabil läuft. Habe heute extra mal ein Update mit anschl. restart gemacht, um für den Post hier paar Werte liefern zu können.


LOG:
2014.06.20 15:04:08 1: OWX: 1-Wire devices found on bus 1wire_1 (OWX_BS_A_005,BueroTemp_KG,OWX_BS_A_050,OWX_BS_A_000,OWX_BS_A_100,OWX_BS_A_010,OWX_BS_A_020,Keller_KG,TKS_KG,Flur_UG,OWSWITCHB,OWX_26_934D27010000,Tuer_Buero,OWCOUNT_KG,OWX_LCD)
2014.06.20 15:03:56 1: OWX: 1-Wire devices found on bus 1wire_0 (OWX_HZ_RAUM,OWX_WW_ZIRK,OWX_HZ_VOR,OWX_WW_RUECK,OWX_WW_SP,OWX_WW_VOR,OWX_HZ_RUECK,OWSWITCHBoden,OWX_Vaillant,OWX_WZ_Klima,OWX_26_0A9116000000,OWX_Wassermelder,OWX_LCD1)
...
2014.06.20 15:03:11 1: configfile: 0
2014.06.20 15:03:10 1: Including ./log/fhem.save
2014.06.20 15:03:10 3: OWMULTI: Device OWX_26_0A9116000000 defined.
...
2014.06.20 15:03:10 3: OWID: Device Tuer_Buero defined.
2014.06.20 15:03:10 3: OWX: Complex called with unknown interface serial on bus 1wire_1
2014.06.20 15:03:10 3: OWX: Reset called with unknown interface serial
2014.06.20 15:03:10 3: OWX: Complex called with unknown interface serial on bus 1wire_1
2014.06.20 15:03:10 3: OWX: Reset called with unknown interface serial
2014.06.20 15:03:10 3: OWX: Complex called with unknown interface serial on bus 1wire_1
2014.06.20 15:03:10 3: OWX: Reset called with unknown interface serial
2014.06.20 15:03:10 3: OWX: Complex called with unknown interface serial on bus 1wire_1
2014.06.20 15:03:10 3: OWX: Reset called with unknown interface serial
2014.06.20 15:03:10 3: OWX: Complex called with unknown interface serial on bus 1wire_1
2014.06.20 15:03:10 3: OWX: Reset called with unknown interface serial
2014.06.20 15:03:10 3: OWX: Complex called with unknown interface serial on bus 1wire_1
2014.06.20 15:03:10 3: OWX: Reset called with unknown interface serial
2014.06.20 15:03:10 3: OWX: Complex called with unknown interface serial on bus 1wire_1
2014.06.20 15:03:10 3: OWX: Reset called with unknown interface serial
2014.06.20 15:03:10 3: OWX: Complex called with unknown interface serial on bus 1wire_1
2014.06.20 15:03:10 3: OWX: Reset called with unknown interface serial
2014.06.20 15:03:10 3: OWX: Complex called with unknown interface serial on bus 1wire_1
2014.06.20 15:03:10 3: OWX: Reset called with unknown interface serial
2014.06.20 15:03:10 3: OWX: Complex called with unknown interface serial on bus 1wire_1
2014.06.20 15:03:10 3: OWX: Reset called with unknown interface serial
2014.06.20 15:03:10 3: OWX: Complex called with unknown interface serial on bus 1wire_1
2014.06.20 15:03:10 3: OWX: Reset called with unknown interface serial
2014.06.20 15:03:10 3: OWLCD:   Device OWX_LCD1 defined.
...
2014.06.20 15:02:58 3: OWTHERM: Device BueroTemp_KG defined.
2014.06.20 15:02:58 3: OWSWITCH: Device OWSWITCHB defined.
2014.06.20 15:02:57 3: OWSWITCH: Device OWX_Vaillant defined.
2014.06.20 15:02:57 3: OWTHERM: Device OWX_WW_RUECK defined.
2014.06.20 15:02:57 3: OWTHERM: Device OWX_WW_VOR defined.
2014.06.20 15:02:57 3: OWTHERM: Device OWX_WW_SP defined.
2014.06.20 15:02:57 3: OWTHERM: Device OWX_HZ_RUECK defined.
2014.06.20 15:02:57 3: OWTHERM: Device OWX_HZ_VOR defined.
2014.06.20 15:02:57 3: OWTHERM: Device OWX_HZ_RAUM defined.
2014.06.20 15:02:57 3: OWSWITCH: Device OWSWITCHBoden defined.
2014.06.20 15:02:44 3: OWMULTI: Device OWX_Wassermelder defined.
2014.06.20 15:02:44 3: OWTHERM: Device OWX_WW_ZIRK defined.
2014.06.20 15:02:44 3: OWMULTI: Device OWX_WZ_Klima defined.
2014.06.20 15:02:44 3: OWCOUNT: Device OWCOUNT_KG defined.
2014.06.20 15:02:23 3: OWTHERM: Device TKS_KG defined.
2014.06.20 15:02:23 3: OWTHERM: Device Flur_UG defined.
2014.06.20 15:02:23 3: OWTHERM: Device Keller_KG defined.
2014.06.20 15:02:23 3: OWX: Complex called with unknown interface serial on bus 1wire_1
2014.06.20 15:02:23 3: OWX: Reset called with unknown interface serial
2014.06.20 15:02:23 3: OWX: Complex called with unknown interface serial on bus 1wire_1
2014.06.20 15:02:23 3: OWX: Reset called with unknown interface serial
2014.06.20 15:02:23 3: OWX: Complex called with unknown interface serial on bus 1wire_1
2014.06.20 15:02:23 3: OWX: Reset called with unknown interface serial
2014.06.20 15:02:23 3: OWX: Complex called with unknown interface serial on bus 1wire_1
2014.06.20 15:02:23 3: OWX: Reset called with unknown interface serial
2014.06.20 15:02:23 3: OWX: Complex called with unknown interface serial on bus 1wire_1
2014.06.20 15:02:23 3: OWX: Reset called with unknown interface serial
2014.06.20 15:02:23 3: OWX: Complex called with unknown interface serial on bus 1wire_1
2014.06.20 15:02:23 3: OWX: Reset called with unknown interface serial
2014.06.20 15:02:23 3: OWX: Complex called with unknown interface serial on bus 1wire_1
2014.06.20 15:02:23 3: OWX: Reset called with unknown interface serial
2014.06.20 15:02:23 3: OWX: Complex called with unknown interface serial on bus 1wire_1
2014.06.20 15:02:23 3: OWX: Reset called with unknown interface serial
2014.06.20 15:02:23 3: OWX: Complex called with unknown interface serial on bus 1wire_1
2014.06.20 15:02:23 3: OWX: Reset called with unknown interface serial
2014.06.20 15:02:23 3: OWX: Complex called with unknown interface serial on bus 1wire_1
2014.06.20 15:02:23 3: OWX: Reset called with unknown interface serial
2014.06.20 15:02:23 3: OWX: Complex called with unknown interface serial on bus 1wire_1
2014.06.20 15:02:23 3: OWX: Reset called with unknown interface serial
2014.06.20 15:02:23 3: OWLCD:   Device OWX_LCD defined.
2014.06.20 15:02:06 3: OWMULTI: Device OWX_26_934D27010000 defined.
2014.06.20 15:01:57 3: OWTHERM: Device OWX_BS_A_010 defined.
2014.06.20 15:01:57 3: OWTHERM: Device OWX_BS_A_000 defined.
2014.06.20 15:01:57 3: OWTHERM: Device OWX_BS_A_050 defined.
2014.06.20 15:01:57 3: OWTHERM: Device OWX_BS_A_100 defined.
2014.06.20 15:01:57 3: OWTHERM: Device OWX_BS_A_020 defined.
2014.06.20 15:01:57 3: OWTHERM: Device OWX_BS_A_005 defined.
....
2014.06.20 15:01:48 1: OWX: Serial device /dev/ttyUSB_OWX_null defined
2014.06.20 15:01:48 3: 1wire_1 device opened
2014.06.20 15:01:48 3: Setting 1wire_1 baudrate to 9600
2014.06.20 15:01:48 3: Opening 1wire_1 device /dev/ttyUSB_OWX_null
2014.06.20 15:01:48 1: OWX: Serial device /dev/ttyUSB_OWX_eins defined
2014.06.20 15:01:48 3: 1wire_0 device opened
2014.06.20 15:01:48 3: Setting 1wire_0 baudrate to 9600
2014.06.20 15:01:48 3: Opening 1wire_0 device /dev/ttyUSB_OWX_eins
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: Starkstrombastler am 20 Juni 2014, 23:28:17
Zitat von: Prof. Dr. Peter Henning am 20 Juni 2014, 11:14:15
Kann nicht sein, dass er eines findet, das nicht da ist. Denn es wird der CRC der Adresse geprüft.
Beim letzten Neustart hat er sogar 6 solcher Geister-Devices gefunden.

Das sieht dann z.B. so wie im Screenshot aus. Das Device wird als "present" gemeldet, obwohl die CRC falsch ist.

Beim Abruf von "get <...> temperature" wird dies endlich bemerkt:
OWTHERM: Could not get values from device OWX_28_0ACE59050000, return was invalid CRC




Wegen der langen Ladezeiten hatte ich einen Neustart mit verbose=5 durchgeführt. Der Effekt ist bei allen Devices gleich, hier am Beispiel OWCOUNT:

2014.06.20 21:37:45.314 5: Cmd: >attr OWX_Analog_2 room OWX<
2014.06.20 21:37:45.348 5: Cmd: >define TaE OWTHERM DS18B20 E0C0E0040000<
2014.06.20 21:37:45.350 5: Loading ./FHEM/21_OWTHERM.pm
2014.06.20 21:39:19.636 3: OWTHERM: Device TaE defined.
2014.06.20 21:39:19.649 5: Cmd: >attr TaE IODev OWusb<
2014.06.20 21:39:19.653 5: Cmd: >attr TaE alias ...............

Es sieht so aus, als ob die Zeit beim "Loading" benötigt wird.

Meine Module sind gem. Update Check aktuell. Version liefert:
# $Id: 21_OWAD.pm 5902 2014-05-19 15:11:06Z ntruchsess $
# $Id: 21_OWCOUNT.pm 5902 2014-05-19 15:11:06Z ntruchsess $
# $Id: 21_OWSWITCH.pm 5902 2014-05-19 15:11:06Z ntruchsess $
# $Id: 21_OWTHERM.pm 6108 2014-06-13 22:36:48Z ntruchsess $
# $Id: 00_OWX.pm 5522 2014-04-14 10:10:17Z ntruchsess $
# $Id: 00_OWX_ASYNC.pm 6108 2014-06-13 22:36:48Z ntruchsess $





Im geposteten LOG von det. habe ich gesehen, dass
2014.06.20 15:01:48 1: OWX: Serial device /dev/ttyUSB_OWX_null defined
...
2014.06.20 15:01:57 3: OWTHERM: Device OWX_BS_A_100 defined.
zeitlich vor der Definition der diversen Devices erfolgt.

Bei mir erscheint im Log die Definition des Interfaces erst nach der Definition der Devices, hier der LOG:

2014.06.20 22:17:45.415 3: OWTHERM: Device _TUmwS defined.
2014.06.20 22:17:45.444 3: OWTHERM: Device _Txxx defined.
2014.06.20 22:19:00.928 3: OWSWITCH: Device CounterGasSwM defined.
2014.06.20 22:19:00.952 3: OWSWITCH: Device Counter4Switch defined.
2014.06.20 22:20:49.826 3: OWCOUNT: Device CounterGas defined.
2014.06.20 22:20:49.880 3: OWCOUNT: Device Counter4 defined.
2014.06.20 22:20:54.519 2: eventTypes: loaded 3369 events from log/eventTypes.txt
...
2014.06.20 22:21:02.773 1: Including ./log/fhem.save
2014.06.20 22:21:05.072 3: Opening OWusb device /dev/ttyUSB0
2014.06.20 22:21:05.118 3: Setting OWusb baudrate to 9600
2014.06.20 22:21:05.215 3: OWusb device opened
2014.06.20 22:21:05.217 2: OWX_SER: Serial device /dev/ttyUSB0@9600 defined
2014.06.20 22:21:07.032 3: OWX_SER::Detect 1-Wire bus OWusb: interface master DS2480 detected for the first time
2014.06.20 22:21:07.267 1: usb create starting
2014.06.20 22:21:09.226 1: usb create end
2014.06.20 22:21:09.274 2: SecurityCheck:  ....
2014.06.20 22:21:09.281 0: Server started with 191 defined entities (version $Id: fhem.pl 6080 2014-06-07 16:12:09Z rudolfkoenig $, os linux, user root, pid 1721)
2014.06.20 22:21:16.475 1: OWCOUNT_recall: Cannot open OWCOUNT_CounterGas_0.dat for reading!
2014.06.20 22:21:17.230 1: OWCOUNT_recall: Cannot open OWCOUNT_CounterGas_0.dat for reading!
2014.06.20 22:21:17.703 1: OWCOUNT: model attribute of CounterGas set to DS2423eold because no memory found
2014.06.20 22:21:19.473 1: OWCOUNT_recall: Cannot open OWCOUNT_Counter4_0.dat for reading!
2014.06.20 22:21:20.198 1: OWCOUNT_recall: Cannot open OWCOUNT_Counter4_0.dat for reading!
2014.06.20 22:21:20.682 1: OWCOUNT: model attribute of Counter4 set to DS2423eold because no memory found
2014.06.20 22:21:30.283 3: OWTHERM: Device OWX_28_0ACE59050000 defined.
2014.06.20 22:21:30.515 3: OWTHERM: Device OWX_28_2AC99D040000 defined.
2014.06.20 22:21:30.758 3: OWTHERM: Device OWX_28_5ABCE1040000 defined.
2014.06.20 22:21:30.992 3: OWTHERM: Device OWX_28_D6142C050000 defined.
2014.06.20 22:21:31.232 3: OWTHERM: Device OWX_28_EED22C050000 defined.
2014.06.20 22:21:31.470 3: OWTHERM: Device OWX_28_3E1B5A050000 defined.
2014.06.20 22:21:31.715 2: OWX: 1-Wire devices found on bus OWusb (OWX_Analog_2,OWX_Analog_1,_TCnt4,TaE,TaTo,_TUmwS,TiAR,_T_D4142c,_Txxx,TaTu,THR43,OWX_28_0ACE59050000,OWX_28_2AC99D040000,OWX_28_5ABCE1040000,OWX_28_D6142C050000,OWX_28_EED22C050000,OWX_28_3E1B5A050000,THR45,TWi,THR41,THWW,THR44,THVL,TKRL,TKVL,THRL,TaGH,THWWSpO,THLab,THWWZirkRL,THR46,CounterGasSwM,Counter4Switch,Counter4,CounterGas)

In der CFG kommt das Interfache aber direkt vor den Devices.

Vielleicht ergibt sich mit diesen Infos ein klareres Bild! Was sollte ich noch untersuchen?
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: Prof. Dr. Peter Henning am 21 Juni 2014, 12:52:53
Hm, ich würde mal versuchen, die Interfaces _ganz am Anfang_ der Konfiguration zu laden. Kann sein, dass hier einfach ein timing-Problem vorliegt - die Devices werden abgefragt, bevor das Interface sauber definiert wurde.

LG

pah
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: Prof. Dr. Peter Henning am 22 Juni 2014, 13:01:00
Wir kommen der Sache näher.

Ich verwende in meinem Produktivsystem eine Version 00_OWX.pm mit der Versionsnummer 4.3, stammt vom Februar 2014.

Wenn ich die durch die aktuelle Version ersetze - bei der Norbert Truchsess diverse Änderungen vorgenommen hat, die das Modul kompatibler mit seinen asynchronen Versionen und/oder seinem Arduino-Projekt gemacht hat, komme ich auch auf Startzeiten in der Größenordnungen von Minuten. Außerdem treten auch Fehler auf, wenn die Interface-Definition wegen der langen Startzeit noch nicht abgeschlossen wurde, aber das Device schon abgefragt wird.

LG

pah
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: det. am 22 Juni 2014, 15:02:32
ja, das ist das Problem zwischen "ich teste mit" oder "ich hab ein dauerhaft stabiles System". Wie in meinem Beitrag 202 geschrieben, bringt die aktuelle OWX Version im ASYNC Modus zumindest bei mir keine solchen Fehler, liefert aber mit dem Busmaster mit u.a. OWCOUNT  dran nach Mitternacht keine Werte. Da ich das vorher ohne OWCOUNT auf einem Test RPI mit Erfolg getestet hatte, nützt es mMn nur das Risiko einzugehen, sich das Produktivsystem auch mal ordentlich zu zerschießen.
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: Prof. Dr. Peter Henning am 22 Juni 2014, 15:23:29
Na ja, ich habe 3 FHEM-System am Laufen - und teste normalerweise nur auf zweien.

LG

pah
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 23 Juni 2014, 12:52:28
war die letzte Woche in Urlaub, diesmal ausnahmsweise ohne Rechner und Internet ;-)

die langen Startupzeiten liegen an den InternalTimer-aufrufen die als letzten Parameter '1' übergeben, die die OWX-Client-module schon beim define absetzen. Am 15.03.2014 (https://github.com/ntruchsess/fhem-mirror/commit/54ef462c2d771ce4cda64284db67e31e7d09a60d#diff-ff0d8a50a8170ae73998d1aab985f8d8L228) habe ich die Zeile die das globale $init_done auf 1 setzt (und damit die damit verbundene logik der fhem.pl unterläuft) entfernt. Seit der Änderung bleiben alle InternalTimer-aufrufe mit 1 als letzem Parameter einfach stehen, bis die gewünschte Zeit abgelaufen ist (das ist kein Fehler des InternalTimers sondern so designed).
Als Quickfix kann man in den InternalTimer-aufrufen überall eine 0 statt der 1 reinschreiben (die 1 ist an der Stelle für gar nix gut). Aber eigentlich muss man (das habe ich noch auf der ToDo-list) die OWX-Clients so umbauen, dass sie vom OWX(_ASYNC)-modul aus gestartet werden, wenn dieses mit der Initialisierung des Busmasters fertig ist, das würde auch gleich dafür sorgen, dass die OWX-Clients sauber re-initialisiert werden können, wenn man den Kontakt zum Busmaster zwischendurch verliert.

Gruß,

Norbert

Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 25 Juni 2014, 15:45:13
Zitat von: ntruchsess am 23 Juni 2014, 12:52:28
die langen Startupzeiten liegen an den InternalTimer-aufrufen die als letzten Parameter '1' übergeben[...]
Den Quickfix habe ich grade committed (https://github.com/ntruchsess/fhem-mirror/commit/ba2d0658f7d483036583df82315d9c3fa3e599c9), sollte risikolos sein und die lange Startupzeit beheben.

Gruß,

Norbert
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: kaihs am 26 Juni 2014, 22:04:27
Ich habe gerade mal versucht von OWX auf OWX_ASYNC umzustellen, das führt aber zu einem fhem Absturz.

Ich verwende ein rpiaddon-Board, das verhält sich bzgl. 1-Wire wie ein COC.

Deswegen versucht OWX_ASYNC ein Modul OWX_CCC nachzuladen, das gibt es aber gar nicht (auch nicht im svn).


Can't locate ./FHEM/OWX_CCC.pm in @INC (@INC contains: /etc/perl /usr/local/lib/perl/5.14.2 /usr/local/share/perl/5.14.2 /usr/lib/perl5 /usr/share/perl5 /usr/lib/perl/5.14 /usr/share/perl/5.14 /usr/local/lib/site_perl . ./FHEM ./FHEM/lib) at ./FHEM/00_OWX_ASYNC.pm line 200, <$fh> line 108.


Existiert dieses Modul noch gar nicht?

Gruß,

Kai
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 26 Juni 2014, 22:30:17
OWX_CCC gibt's noch nicht. Da ich keinen COC besitze, kann ich auch nicht versprechen, dass es das von mir irgendwann mal für OWX_ASYNC geben wird. Aber wenn sich jemand anders daran versuchen will - Entwicklerfragen zur Funktion des OWX_ASYNC beantworte ich gerne.

Gruß,

Norbert
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: Prof. Dr. Peter Henning am 05 Juli 2014, 13:08:11
Ich bin leider derzeit für längere Zeit lahmgelegt durch berufliche Anforderungen, sonst wäre das schon längst angegangen worden.

LG

pah
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 12 Juli 2014, 11:49:34
Mit der OWX_ASYNC-implementierung geht's übrigens bald weiter. Ich habe da in der letzten Woche noch einiges im code bereinigt. Die eher schwierig zu beherschenden asynchronen callback-interfaces sind durch das Protothreads-basierte Refactoring obsolet geworden und entfallen mit der nächsten Version ersatzlos. Jetzt ist ausnahmslos alles, was nicht per 'get'-befehl aus dem Web-frontend abgerufen wird, asynchron implementiert. Sieht im Test schon recht gut aus, bei mir gibt's nach der Initialisierung keine weiteren Freezes mehr. Werde ich in Kürze ins FHEM-SVN commiten.

Gruß,

Norbert
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 15 Juli 2014, 19:02:38
Zitat von: ntruchsess am 12 Juli 2014, 11:49:34
Mit der OWX_ASYNC-implementierung geht's übrigens bald weiter.

das angekündigte Update von OWX_ASYNC habe ich gerade ins SVN committed (https://github.com/ntruchsess/fhem-mirror/commit/ae40c65c8c44c41370a627127b72d7194b552f3b). Ist damit in Kürze per fhem-update erhältlich.

Wichtig: Das asynchrone Interface zwischen den Client-Devices und dem OWX_ASYNC-device habe ich geändert, es gibt keine Kompatibilität älterer OWX-Client-device-versionen mit dem jetzt aktuellen OWX_ASYNC und umgekehrt! Also Update geht nur ganz oder gar nicht.

(Das betrifft nicht die Kombination der OWX-devices mit dem normalen, synchronen OWX. Da kann man OWX-clients und OWX durchaus in unterschiedlichen Versionen kombinieren).

Funktionell hat sich nicht viel nach außen sichtbares geändert. Das update dient ist im wesentlichen der Stabilität und Bereinigung von Altlasten. Ich denke, dass das asynchrone Framework jetzt gut ausentwickelt ist, damit ist der Weg frei weitere Busmaster-klassen zu entwickeln (z.B. für DS2480 über Ethernet, DS9097, DS2482 an I2C, CUNO...). Stay tuned ;-)

Bugs die jetzt behoben sind (sein sollten ;-)):
- freezes in Verbindung mit FRM
- freezes in Verbindung mit OWID
- (unnötig) hohe CPU-last
- Abstürze durch nicht gefangene Exceptions
- inkonsistente Werte von 'present'
- einige timingbedingte CRC-fehler in Verbindung mit FRM
- Fehler bei verzögertem connect von FRM over Ethernet

Über Feedback würde ich mich wie immer freuen.

Gruß,

Norbert
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: hexenmeister am 15 Juli 2014, 22:01:56
Hallo!

Habe die neue Version ausprobiert. Leider stürzt damit FHEM ab.
Was ist zuletzt im Log sehe:
Zitat2014.07.15 21:56:22.458 5: OWX_DS2480 read: After loop no. 1 received: cdec80089f6eaa88a28a200000000000008a
2014.07.15 21:56:22.466 5: OWX_SER::Search: new alarm device found 28.7BAFBD040000.B0
2014.07.15 21:56:22.477 5: OWX_DS2480.query sending out: e3c5
2014.07.15 21:56:22.553 5: OWX_DS2480.query sending out: e1ece3b5
2014.07.15 21:56:22.559 5: OWX_DS2480.query sending out: e180088aaa000000000000000000000000e3a5
2014.07.15 21:56:22.562 4: OWX_ASYNC_RunTasks: OWio1 task timed out

Ich vermute, es hat etwas mit dem Problem zu tun, was ich gerade habe: Aufgrund eines Leitungsproblems habe ich mit der Synchronen Version oft "Reset failure". Die Asynchrone stürzt in dieser Situation scheinbar ganz ab.

So gesehen habe ich gerade die Wahl: Mit Frieses leben oder mit den Abstürzen. ;)

Grüße,

Alexander
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: cwagner am 15 Juli 2014, 23:00:35
Hallo Norbert,

gebessert hat sich die Stabilität, geblieben sind die Vorteile (geringere CPU-Belastung).

ABER: Leider funktioniert mein Switch (DS2408) nicht - er wird initialisiert und ist present, aber dabei bleibt es dann. Kein set <devicename> output A...H on|off hat Wirkung.

Bei einem get <devicename>version erhalte ich als Fehlermeldung: Undefined subroutine &main::OWX_ASYNC_PT_Verify called

Versionsinfo: 5.17

Herzliche Grüße

Christian
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 15 Juli 2014, 23:40:36
Hallo Alexander,
Zitat von: hexenmeister am 15 Juli 2014, 22:01:56
Was ist zuletzt im Log sehe:

2014.07.15 21:56:22.562 4: OWX_ASYNC_RunTasks: OWio1 task timed out

... Aufgrund eines Leitungsproblems habe ich mit der Synchronen Version oft "Reset failure" ...
Ja, Leitungsprobleme führen mit OWX_ASYNC entweder zu CRC- (oder anderen 'fehlerhafte Daten'-fehlern) oder zu Timeouts, wenn weniger Bytes als erforderlich zurückkommen. Abstürzen soll es dabei natürlich nicht - was steht dabei denn auf der Konsole?


Hallo Christian,
Zitat von: cwagner am 15 Juli 2014, 23:00:35
Bei einem get <devicename>version erhalte ich als Fehlermeldung: Undefined subroutine &main::OWX_ASYNC_PT_Verify called
Merkwürdig, da scheint das OWX_ASYNC-Modul noch nicht geladen zu sein? Passt denn die Reihenfolge in der fhem.cfg? Irgendwelche Fehlermeldungen beim Laden des OWX_ASYNC? Eventuell sollte ich noch ein passendes require in alle Client-files aufnehmen, aber wenn OWX_ASYNC nicht geladen ist, dann gehen die Client-devices eh nicht. Die set-commandos gehen dann natürlich auch nicht.
Kann es außerdem sein, dass Du nicht get <devicename> version abgeschickt, sondern 'get <devicename> present' abgeschickt hast? get Version kann den eigentlich überhauptnicht produzieren?

Gruß,

Norbert
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: hexenmeister am 16 Juli 2014, 02:17:02
Hallo Norbert,

auf err wird folgendes geloggt:
EG_HA_OWTS11.Warmwasser_Speicher unexpected thread state after termination: 0 at ./FHEM/00_OWX_ASYNC.pm line 1117.
oder welche Konsole meinst Du?
Ich habe zwei ds2480 1w-Controller. Das Leitungsproblem hat aber eigentlich nicht der, wo EG_HA_OWTS11.Warmwasser_Speicher dran hängt, sondern der andere.  ???

Grüße,

Alexander
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 16 Juli 2014, 07:34:06
Hallo Christian,
Zitat von: cwagner am 15 Juli 2014, 23:00:35
Bei einem get <devicename>version erhalte ich als Fehlermeldung: Undefined subroutine &main::OWX_ASYNC_PT_Verify called
kann es sein, dass Dein Update nicht vollständig war und OWX_ASYNC noch auf einer älteren (nicht mit den neuen OWX-devices kompatiblen) Version geblieben ist?

Hallo Alexander,
Zitat von: hexenmeister am 16 Juli 2014, 02:17:02
auf err wird folgendes geloggt:
EG_HA_OWTS11.Warmwasser_Speicher unexpected thread state after termination: 0 at ./FHEM/00_OWX_ASYNC.pm line 1117.
oder welche Konsole meinst Du?
danke, die meinte ich. Hast Du für das Device 'doKick' -> 'tempConv: onkick' aktiviert?

Gruß,

Norbert
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: cwagner am 16 Juli 2014, 07:40:32
Hi Norbert, meine Antwort und Deine Frage überschnitten sich - ich werde sicherheitshalber nun noch ein update force machen.

Grüße

Christian
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: hexenmeister am 16 Juli 2014, 08:31:36
Zitat von: ntruchsess am 16 Juli 2014, 07:34:06
Hast Du für das Device 'doKick' -> 'tempConv: onkick' aktiviert?
Ja, ist aktiv.

Grüße,

Alexander
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: cwagner am 16 Juli 2014, 09:49:26
Hallo Norbert,

nch update force bin ich nun komplett synchron mit dem SVN. Danach hat sich die Situation nicht wirklich verändert. Übrigens: Um die Reihenfolge des Initialisierens ganz sicher zu bestimmen, habe ich alle 1-wire-Devices in eine eigene CFG ausgelagert.

Positiv ist, dass die Initialisierung der Devices bei Start jetzt drastisch zügiger geht - lediglich der Switch braucht noch 1 Minute.

1. Mit get device erhalte ich eine unvollständige Deviceliste, obwohl alle devices ordnungsgemäß initialisiert sind. Nach einem weiteren Neustart mit vorherigem physischen Neustart des 1-Wire-Busses (also 5 Minuten keine Stromversorgung, damit auch alle Kondensatoren leer sind), habe ich jetzt eine vollständiger Deviceliste. Mein Problem Nr.
2. Der DS 2408 (Switch 29.68980C000000.DA) reagiert immer noch nicht. Ich habe um ~9:44:45 den Befehl set Switch_Heizkeller output D off  und um etwa 9: 45:15 "on" abgesetzt, finde aber im mit verbose 5 aufgezeichneten Log nicht wirklich etwas dazu. Habe Dir mal einen großzügigen Ausschnitt hier reingepackt:

2014.07.16 08:51:45 1: Including ./FHEM/1wire_devices.cfg
2014.07.16 08:52:33 3: OWTHERM: Device T_Vorlauf_FBH defined.
2014.07.16 08:52:33 3: OWTHERM: Device T_Heizung defined.
2014.07.16 08:52:34 3: OWTHERM: Device T_Warmwasser defined.
2014.07.16 08:52:34 3: OWTHERM: Device T_Ruecklauf_Anhebung defined.
2014.07.16 08:52:34 3: OWTHERM: Device T_Ruecklauf defined.
2014.07.16 08:52:34 3: OWTHERM: Device Dachfenster_Sued defined.
2014.07.16 08:53:52 3: OWAD:    Device Umweltsensor defined.
2014.07.16 08:53:53 3: OWTHERM: Device Zuluft defined.
2014.07.16 08:53:53 3: OWTHERM: Device Abluft defined.
2014.07.16 08:53:53 3: OWTHERM: Device Fortluft defined.
2014.07.16 08:53:53 3: OWTHERM: Device Aussenluft defined.
2014.07.16 08:55:09 3: OWSWITCH: Device Switch_Heizkeller defined.
2014.07.16 08:56:03 3: OWMULTI: Device TF_Galerie defined.
...
2014.07.16 09:14:25 5: OWX_DS2480 read: After loop no. 3 received: cd54280281a40400000482000000000000000000
2014.07.16 09:14:25 5: AfterExecute: context: ProtoThreads=HASH(0x1c937a0), success: 1, reset: 1, owx_dev: 28.0E37AC040000.FD, writedata: be, numread: 9, readdata: 000000000000000000
2014.07.16 09:14:25 3: OWX_ASYNC_RunTasks: 28.0E37AC040000.FD Error running task: invalid data
2014.07.16 09:14:25 5: OWX_Executor: item ProtoThreads=HASH(0x197bba0) for 20.0C2C0C000000.59 eligible to run
2014.07.16 09:14:25 5: OWX_DS2480.query sending out: e3c5
2014.07.16 09:14:25 5: OWX_DS2480.query sending out: e155200c2c0c000000593c0f00ffff
2014.07.16 09:14:25 5: OWX_ASYNC_RunTasks: 20.0C2C0C000000.59 schedule for timeout at 1405494867.631213
2014.07.16 09:14:25 5: OWX_ASYNC_Set request OWio1 FF ?
2014.07.16 09:14:26 5: OWX_DS2480 read: After loop no. 3 received: cd5400048204820000480400800000
2014.07.16 09:14:26 5: AfterExecute: context: ProtoThreads=HASH(0x197bba0), success: 1, reset: 1, owx_dev: 20.0C2C0C000000.59, writedata: 3c0f00ffff, numread: 0, readdata:
2014.07.16 09:14:26 5: OWX_Executor: item ProtoThreads=HASH(0x197bba0) for 20.0C2C0C000000.59 eligible to run
2014.07.16 09:14:26 5: OWX_DS2480.query sending out: e3c5
2014.07.16 09:14:26 5: OWX_DS2480.query sending out: e155200c2c0c00000059aa0000ffffffffffffffffffff
2014.07.16 09:14:26 5: OWX_ASYNC_RunTasks: 20.0C2C0C000000.59 schedule for timeout at 1405494868.056755
2014.07.16 09:14:26 5: OWX_DS2480 read: After loop no. 8 received: cd540004820482000048aa000000000000000000000000
2014.07.16 09:14:26 5: AfterExecute: context: ProtoThreads=HASH(0x197bba0), success: 1, reset: 1, owx_dev: 20.0C2C0C000000.59, writedata: aa0000, numread: 10, readdata: 00000000000000000000
2014.07.16 09:14:26 3: OWX_ASYNC_RunTasks: 20.0C2C0C000000.59 Error running task: invalid CRC
2014.07.16 09:14:26 5: OWX_Executor: item ProtoThreads=HASH(0x197cab8) for 28.1307AC040000.68 eligible to run
2014.07.16 09:14:26 5: OWX_DS2480.query sending out: e3c5
2014.07.16 09:14:26 5: OWX_DS2480.query sending out: e155281307ac04000068beffffffffffffffffff
2014.07.16 09:14:26 5: OWX_ASYNC_RunTasks: 28.1307AC040000.68 schedule for timeout at 1405494868.206227
2014.07.16 09:14:26 5: OWX_DS2480 read: After loop no. 6 received: cd54281000a40400002882000000000000000000
2014.07.16 09:14:26 5: AfterExecute: context: ProtoThreads=HASH(0x197cab8), success: 1, reset: 1, owx_dev: 28.1307AC040000.68, writedata: be, numread: 9, readdata: 000000000000000000
2014.07.16 09:14:26 3: OWX_ASYNC_RunTasks: 28.1307AC040000.68 Error running task: invalid data
2014.07.16 09:14:26 5: OWX_Executor: item ProtoThreads=HASH(0x1c92c60) for 20.0C2C0C000000.59 eligible to run
2014.07.16 09:14:26 5: OWX_DS2480.query sending out: e3c5
2014.07.16 09:14:26 5: OWX_DS2480.query sending out: e155200c2c0c00000059aa1000ffffffffffffffffffff
2014.07.16 09:14:26 5: OWX_ASYNC_RunTasks: 20.0C2C0C000000.59 schedule for timeout at 1405494868.349194
2014.07.16 09:14:26 5: OWX_DS2480 read: After loop no. 4 received: cd540004820482000048aa100000000000000000000000
2014.07.16 09:14:26 5: AfterExecute: context: ProtoThreads=HASH(0x1c92c60), success: 1, reset: 1, owx_dev: 20.0C2C0C000000.59, writedata: aa1000, numread: 10, readdata: 00000000000000000000
2014.07.16 09:14:26 3: OWX_ASYNC_RunTasks: 20.0C2C0C000000.59 Error running task: invalid CRC
2014.07.16 09:14:26 5: OWX_Executor: item ProtoThreads=HASH(0x198e1a8) for 20.0C2C0C000000.59 eligible to run
2014.07.16 09:14:26 5: OWX_DS2480.query sending out: e3c5
2014.07.16 09:14:26 5: OWX_DS2480.query sending out: e155200c2c0c00000059aa0800ffffffffffffffffffff
2014.07.16 09:14:26 5: OWX_ASYNC_RunTasks: 20.0C2C0C000000.59 schedule for timeout at 1405494868.553716
2014.07.16 09:14:26 5: OWX_DS2480 read: After loop no. 7 received: cd540004820482000048aa088400000000000000000000
2014.07.16 09:14:26 5: AfterExecute: context: ProtoThreads=HASH(0x198e1a8), success: 1, reset: 1, owx_dev: 20.0C2C0C000000.59, writedata: aa0800, numread: 10, readdata: 00000000000000000000
2014.07.16 09:14:26 3: OWX_ASYNC_RunTasks: 20.0C2C0C000000.59 Error running task: invalid CRC
2014.07.16 09:14:26 5: OWX_Executor: item ProtoThreads=HASH(0x1984660) for 28.A8A49B010000.11 eligible to run
2014.07.16 09:14:26 5: OWX_DS2480.query sending out: e3c5
2014.07.16 09:14:26 5: OWX_DS2480.query sending out: e15528a8a49b01000011beffffffffffffffffff
2014.07.16 09:14:26 5: OWX_ASYNC_RunTasks: 28.A8A49B010000.11 schedule for timeout at 1405494868.704503
2014.07.16 09:14:26 5: OWX_DS2480 read: After loop no. 6 received: cd5428a8a4880000001082000000000000000000
2014.07.16 09:14:26 5: AfterExecute: context: ProtoThreads=HASH(0x1984660), success: 1, reset: 1, owx_dev: 28.A8A49B010000.11, writedata: be, numread: 9, readdata: 000000000000000000
2014.07.16 09:14:26 3: OWX_ASYNC_RunTasks: 28.A8A49B010000.11 Error running task: invalid data
2014.07.16 09:14:27 5: OWX_ASYNC_Set request OWio1 FF ?
2014.07.16 09:14:28 5: OWX_ASYNC_Set request OWio1 FF ?
2014.07.16 09:14:30 5: OWX_ASYNC_Set request OWio1 FF ?
2014.07.16 09:14:39 5: OWX_ASYNC_RunTasks: 26.10F326010000.00 finished task
2014.07.16 09:14:43 5: OWX_ASYNC_RunTasks: 29.68980C000000.da finished task
2014.07.16 09:14:43 5: OWX_ASYNC_RunTasks: 29.68980C000000.da finished task
2014.07.16 09:14:49 5: OWX_ASYNC_PT_Kick: kicking DS14B20 temperature conversion
2014.07.16 09:14:49 5: OWX_Executor: item ProtoThreads=HASH(0x1caa978) for --- eligible to run
2014.07.16 09:14:49 5: OWX_DS2480.query sending out: e3c5
2014.07.16 09:14:49 5: OWX_DS2480.query sending out: e1cc44
2014.07.16 09:14:49 5: OWX_ASYNC_RunTasks: master schedule for timeout at 1405494891.295324
2014.07.16 09:14:49 5: OWX_DS2480 read: After loop no. 3 received: cd4444
2014.07.16 09:14:49 5: AfterExecute: context: ProtoThreads=HASH(0x1caa978), success: 1, reset: 1, owx_dev: undef, writedata: 44, numread: 0, readdata:
2014.07.16 09:14:49 5: OWX_ASYNC_RunTasks: master task not finished, next executetime: 1405494890.39754
2014.07.16 09:14:49 5: OWX_ASYNC_RunTasks: master schedule next at 1405494890.397537
2014.07.16 09:14:50 5: OWX_Executor: command 1 eligible to run
2014.07.16 09:14:50 5: OWX_DS2480.query sending out: e3c5
2014.07.16 09:14:50 5: OWX_DS2480.query sending out: e1f0e3b5
2014.07.16 09:14:50 5: OWX_DS2480.query sending out: e100000000000000000000000000000000e3a5
2014.07.16 09:14:50 5: OWX_ASYNC_RunTasks: master finished task
2014.07.16 09:14:50 5: OWX_DS2480 read: After loop no. 6 received: cd1099999999999999999999999999999999
2014.07.16 09:14:50 5: OWX_SER::Search: new device found AA.AAAAAAAAAAAA.AA
2014.07.16 09:14:50 5: OWX_DS2480.query sending out: e3c5
2014.07.16 09:14:50 5: OWX_DS2480.query sending out: e1f0e3b5
2014.07.16 09:14:50 5: OWX_DS2480.query sending out: e188888888888888888888888888888828e3a5
2014.07.16 09:14:50 5: OWX_DS2480 read: After loop no. 4 received: cd1099999999999999999999999999999979
2014.07.16 09:14:50 5: OWX_SER::Search: new device found AA.AAAAAAAAAAAA.6A
2014.07.16 09:14:50 5: OWX_DS2480.query sending out: e3c5
2014.07.16 09:14:50 5: OWX_DS2480.query sending out: e1f0e3b5
2014.07.16 09:14:50 5: OWX_DS2480.query sending out: e1888888888888888888888888888888a8e3a5
2014.07.16 09:14:50 5: OWX_DS2480 read: After loop no. 4 received: cd10999999999999999999999999999999f9
2014.07.16 09:14:50 5: OWX_SER::Search: new device found AA.AAAAAAAAAAAA.EA
2014.07.16 09:14:50 5: OWX_DS2480.query sending out: e3c5
2014.07.16 09:14:50 5: OWX_DS2480.query sending out: e1f0e3b5
2014.07.16 09:14:51 5: OWX_DS2480.query sending out: e188888888888888888888888888888802e3a5
2014.07.16 09:14:51 5: OWX_DS2480 read: After loop no. 4 received: cd1099999999999999999999999999999967
2014.07.16 09:14:51 5: OWX_SER::Search: new device found AA.AAAAAAAAAAAA.5A
2014.07.16 09:14:51 5: OWX_DS2480.query sending out: e3c5
2014.07.16 09:14:51 5: OWX_DS2480.query sending out: e1f0e3b5
2014.07.16 09:14:51 5: OWX_DS2480.query sending out: e1888888888888888888888888888888a2e3a5
2014.07.16 09:14:51 5: OWX_DS2480 read: After loop no. 4 received: cd10999999999999999999999999999999e7
2014.07.16 09:14:51 5: OWX_SER::Search: new device found AA.AAAAAAAAAAAA.DA
2014.07.16 09:14:51 5: OWX_DS2480.query sending out: e3c5
2014.07.16 09:14:51 5: OWX_DS2480.query sending out: e1f0e3b5
2014.07.16 09:14:51 5: OWX_DS2480.query sending out: e18888888888888888888888888888880ae3a5
2014.07.16 09:14:51 5: OWX_DS2480 read: After loop no. 5 received: cd109999999999999999999999999999999f
2014.07.16 09:14:51 5: OWX_SER::Search: new device found AA.AAAAAAAAAAAA.BA
2014.07.16 09:14:51 5: OWX_DS2480.query sending out: e3c5
2014.07.16 09:14:51 5: OWX_DS2480.query sending out: e1f0e3b5
2014.07.16 09:14:51 5: OWX_DS2480.query sending out: e18888888888888888888888888888882ae3a5
2014.07.16 09:14:51 5: OWX_DS2480 read: After loop no. 4 received: cd109999999999999999999999999999997f
2014.07.16 09:14:51 5: OWX_SER::Search: new device found AA.AAAAAAAAAAAA.7A
2014.07.16 09:14:51 5: OWX_DS2480.query sending out: e3c5
2014.07.16 09:14:51 5: OWX_DS2480.query sending out: e1f0e3b5
2014.07.16 09:14:51 5: OWX_DS2480.query sending out: e1888888888888888888888888888888aae3a5
2014.07.16 09:14:51 5: OWX_DS2480 read: After loop no. 4 received: cd10999999999999999999999999999999ff
2014.07.16 09:14:51 5: OWX_SER::Search: new device found AA.AAAAAAAAAAAA.FA
2014.07.16 09:14:51 5: OWX_DS2480.query sending out: e3c5
2014.07.16 09:14:51 5: OWX_DS2480.query sending out: e1f0e3b5
2014.07.16 09:14:51 5: OWX_DS2480.query sending out: e188888888888888888888888888882800e3a5
2014.07.16 09:14:51 5: OWX_DS2480 read: After loop no. 4 received: cd1099999999999999999999999999997999
2014.07.16 09:14:51 5: OWX_SER::Search: new device found AA.AAAAAAAAAAAA.A6
2014.07.16 09:14:51 5: OWX_DS2480.query sending out: e3c5
2014.07.16 09:14:51 5: OWX_DS2480.query sending out: e1f0e3b5
2014.07.16 09:14:51 5: OWX_DS2480.query sending out: e188888888888888888888888888882828e3a5
2014.07.16 09:14:52 5: OWX_DS2480 read: After loop no. 4 received: cd1099999999999999999999999999997979
2014.07.16 09:14:52 5: OWX_SER::Search: new device found AA.AAAAAAAAAAAA.66
2014.07.16 09:14:52 5: OWX_DS2480.query sending out: e3c5
2014.07.16 09:14:52 5: OWX_DS2480.query sending out: e1f0e3b5
2014.07.16 09:14:52 5: OWX_DS2480.query sending out: e1888888888888888888888888888828a8e3a5
2014.07.16 09:14:52 5: OWX_DS2480 read: After loop no. 4 received: cd10999999999999999999999999999979f9
2014.07.16 09:14:52 5: OWX_SER::Search: new device found AA.AAAAAAAAAAAA.E6
2014.07.16 09:14:52 5: OWX_DS2480.query sending out: e3c5
2014.07.16 09:14:52 5: OWX_DS2480.query sending out: e1f0e3b5
2014.07.16 09:14:52 5: OWX_DS2480.query sending out: e188888888888888888888888888882802e3a5
2014.07.16 09:14:52 5: OWX_DS2480 read: After loop no. 4 received: cd1099999999999999999999999999997967
2014.07.16 09:14:52 5: OWX_SER::Search: new device found AA.AAAAAAAAAAAA.56
2014.07.16 09:14:52 5: OWX_DS2480.query sending out: e3c5
2014.07.16 09:14:52 5: OWX_DS2480.query sending out: e1f0e3b5
2014.07.16 09:14:52 5: OWX_DS2480.query sending out: e1888888888888888888888888888828a2e3a5
2014.07.16 09:14:52 5: OWX_DS2480 read: After loop no. 4 received: cd10999999999999999999999999999979e7
2014.07.16 09:14:52 5: OWX_SER::Search: new device found AA.AAAAAAAAAAAA.D6
2014.07.16 09:14:52 5: OWX_DS2480.query sending out: e3c5
2014.07.16 09:14:52 5: OWX_DS2480.query sending out: e1f0e3b5
2014.07.16 09:14:52 5: OWX_DS2480.query sending out: e18888888888888888888888888888280ae3a5
2014.07.16 09:14:52 5: OWX_DS2480 read: After loop no. 4 received: cd109999999999999999999999999999799f
2014.07.16 09:14:52 5: OWX_SER::Search: new device found AA.AAAAAAAAAAAA.B6
2014.07.16 09:14:52 5: OWX_DS2480.query sending out: e3c5
2014.07.16 09:14:52 5: OWX_DS2480.query sending out: e1f0e3b5
2014.07.16 09:14:52 5: OWX_DS2480.query sending out: e18888888888888888888888888888282ae3a5
2014.07.16 09:14:52 5: OWX_DS2480 read: After loop no. 4 received: cd109999999999999999999999999999797f
2014.07.16 09:14:52 5: OWX_SER::Search: new device found AA.AAAAAAAAAAAA.76
2014.07.16 09:14:52 5: OWX_DS2480.query sending out: e3c5
2014.07.16 09:14:52 5: OWX_DS2480.query sending out: e1f0e3b5
2014.07.16 09:14:52 5: OWX_DS2480.query sending out: e1888888888888888888888888888828aae3a5
2014.07.16 09:14:52 5: OWX_DS2480 read: After loop no. 4 received: cd10999999999999999999999999999979ff
2014.07.16 09:14:52 5: OWX_SER::Search: new device found AA.AAAAAAAAAAAA.F6
2014.07.16 09:14:53 5: OWX_DS2480.query sending out: e3c5
2014.07.16 09:14:53 5: OWX_DS2480.query sending out: e1f0e3b5
2014.07.16 09:14:53 5: OWX_DS2480.query sending out: e18888888888888888888888888888a800e3a5
2014.07.16 09:14:53 5: OWX_ASYNC_RunTasks: 10.787E83020800.65 schedule for timeout at 1405494895.123116
2014.07.16 09:14:53 5: OWX_DS2480 read: After loop no. 7 received: cd109999999999999999999999999999f999
2014.07.16 09:14:53 5: OWX_SER::Search: new device found AA.AAAAAAAAAAAA.AE
2014.07.16 09:14:53 5: OWX_DS2480.query sending out: e3c5
2014.07.16 09:14:53 5: OWX_DS2480.query sending out: e1f0e3b5
2014.07.16 09:14:53 5: OWX_DS2480.query sending out: e18888888888888888888888888888a828e3a5
2014.07.16 09:14:53 5: OWX_DS2480 read: After loop no. 4 received: cd106c8888888888888888888888888888a828
2014.07.16 09:14:53 3: OWX_DS2480: Search 2nd return has wrong parameter with length = 17
2014.07.16 09:14:53 5: OWX_Executor: command 2 eligible to run
2014.07.16 09:14:53 5: OWX_DS2480 read: After loop no. 5 received: 106c8888888888888888888888888888a828
2014.07.16 09:14:53 3: OWX_DS2480 reset failure on bus OWio1
2014.07.16 09:14:54 5: OWX_Executor: item ProtoThreads=HASH(0x197d428) for 10.787E83020800.65 eligible to run
2014.07.16 09:14:54 5: OWX_DS2480.query sending out: e3c5
2014.07.16 09:14:54 5: OWX_DS2480.query sending out: e15510787e830208006544
2014.07.16 09:14:54 5: OWX_DS2480 read: After loop no. 3 received: cd54100802000208842444
2014.07.16 09:14:54 5: AfterExecute: context: ProtoThreads=HASH(0x197d428), success: 1, reset: 1, owx_dev: 10.787E83020800.65, writedata: 44, numread: 0, readdata:
2014.07.16 09:14:54 5: OWX_Executor: item ProtoThreads=HASH(0x197d428) for 10.787E83020800.65 eligible to run
2014.07.16 09:14:54 5: OWX_DS2480.query sending out: e3c5
2014.07.16 09:14:54 5: OWX_DS2480.query sending out: e15510787e8302080065beffffffffffffffffff
2014.07.16 09:14:54 5: OWX_ASYNC_RunTasks: 10.787E83020800.65 schedule for timeout at 1405494896.150849
2014.07.16 09:14:54 5: OWX_DS2480 read: After loop no. 5 received: cd54100802000208842482000000000000000000
2014.07.16 09:14:54 5: AfterExecute: context: ProtoThreads=HASH(0x197d428), success: 1, reset: 1, owx_dev: 10.787E83020800.65, writedata: be, numread: 9, readdata: 000000000000000000
2014.07.16 09:14:54 3: OWX_ASYNC_RunTasks: 10.787E83020800.65 Error running task: invalid data
2014.07.16 09:14:54 5: OWX_Executor: item ProtoThreads=HASH(0x1c11c30) for 28.CA0FAC040000.04 eligible to run
2014.07.16 09:14:54 5: OWX_DS2480.query sending out: e3c5
2014.07.16 09:14:54 5: OWX_DS2480.query sending out: e15528ca0fac0400000444
2014.07.16 09:14:54 5: OWX_ASYNC_RunTasks: 28.CA0FAC040000.04 schedule for timeout at 1405494896.296437
2014.07.16 09:14:54 5: OWX_DS2480 read: After loop no. 3 received: cd54284a00800400000444
2014.07.16 09:14:54 5: AfterExecute: context: ProtoThreads=HASH(0x1c11c30), success: 1, reset: 1, owx_dev: 28.CA0FAC040000.04, writedata: 44, numread: 0, readdata:
2014.07.16 09:14:54 5: OWX_ASYNC_RunTasks: 28.CA0FAC040000.04 task not finished, next executetime: 1405494895.19897
2014.07.16 09:14:54 5: OWX_Executor: item ProtoThreads=HASH(0x1c2ef60) for 28.905F9B010000.8B eligible to run
2014.07.16 09:14:54 5: OWX_DS2480.query sending out: e3c5
2014.07.16 09:14:54 5: OWX_DS2480.query sending out: e15528905f9b0100008b44
2014.07.16 09:14:54 5: OWX_ASYNC_RunTasks: 28.905F9B010000.8B schedule for timeout at 1405494896.424522
2014.07.16 09:14:54 5: OWX_DS2480 read: After loop no. 3 received: cd54289040880000008844
2014.07.16 09:14:54 5: AfterExecute: context: ProtoThreads=HASH(0x1c2ef60), success: 1, reset: 1, owx_dev: 28.905F9B010000.8B, writedata: 44, numread: 0, readdata:
2014.07.16 09:14:54 5: OWX_ASYNC_RunTasks: 28.905F9B010000.8B task not finished, next executetime: 1405494895.32565
2014.07.16 09:14:54 5: OWX_Executor: item ProtoThreads=HASH(0x1bbf4a8) for 28.0E37AC040000.FD eligible to run
2014.07.16 09:14:54 5: OWX_DS2480.query sending out: e3c5
2014.07.16 09:14:54 5: OWX_DS2480.query sending out: e155280e37ac040000fd44
2014.07.16 09:14:54 5: OWX_ASYNC_RunTasks: 28.0E37AC040000.FD schedule for timeout at 1405494896.552528
2014.07.16 09:14:54 5: OWX_DS2480 read: After loop no. 3 received: cd54280281a40400000444
2014.07.16 09:14:54 5: AfterExecute: context: ProtoThreads=HASH(0x1bbf4a8), success: 1, reset: 1, owx_dev: 28.0E37AC040000.FD, writedata: 44, numread: 0, readdata:
2014.07.16 09:14:54 5: OWX_ASYNC_RunTasks: 28.0E37AC040000.FD task not finished, next executetime: 1405494895.45489
2014.07.16 09:14:54 5: OWX_Executor: item ProtoThreads=HASH(0x1c62808) for 10.0576A8020800.6D eligible to run
2014.07.16 09:14:54 5: OWX_DS2480.query sending out: e3c5
2014.07.16 09:14:54 5: OWX_DS2480.query sending out: e155100576a80208006d44
2014.07.16 09:14:54 5: OWX_ASYNC_RunTasks: 10.0576A8020800.6D schedule for timeout at 1405494896.684777
2014.07.16 09:14:54 5: OWX_DS2480 read: After loop no. 3 received: cd54100412a80208842444
2014.07.16 09:14:54 5: AfterExecute: context: ProtoThreads=HASH(0x1c62808), success: 1, reset: 1, owx_dev: 10.0576A8020800.6D, writedata: 44, numread: 0, readdata:
2014.07.16 09:14:54 5: OWX_ASYNC_RunTasks: 10.0576A8020800.6D task not finished, next executetime: 1405494895.58684
2014.07.16 09:14:54 5: OWX_ASYNC_RunTasks: 10.0576A8020800.6D schedule next at 1405494895.198972
2014.07.16 09:14:55 5: OWX_Executor: item ProtoThreads=HASH(0x1989678) for 28.1307AC040000.68 eligible to run
2014.07.16 09:14:55 5: OWX_DS2480.query sending out: e3c5
2014.07.16 09:14:55 5: OWX_DS2480.query sending out: e155281307ac0400006844
2014.07.16 09:14:55 5: OWX_ASYNC_RunTasks: 28.1307AC040000.68 schedule for timeout at 1405494897.023500
2014.07.16 09:14:55 5: OWX_DS2480 read: After loop no. 6 received: cd54281000a40400002844
2014.07.16 09:14:55 5: AfterExecute: context: ProtoThreads=HASH(0x1989678), success: 1, reset: 1, owx_dev: 28.1307AC040000.68, writedata: 44, numread: 0, readdata:
2014.07.16 09:14:55 5: OWX_ASYNC_RunTasks: 28.1307AC040000.68 task not finished, next executetime: 1405494895.93058
2014.07.16 09:14:55 5: OWX_Executor: item ProtoThreads=HASH(0x1c11c30) for 28.CA0FAC040000.04 eligible to run
2014.07.16 09:14:55 5: OWX_DS2480.query sending out: e3c5
2014.07.16 09:14:55 5: OWX_DS2480.query sending out: e15528ca0fac04000004beffffffffffffffffff
2014.07.16 09:14:55 5: OWX_ASYNC_RunTasks: 28.CA0FAC040000.04 schedule for timeout at 1405494897.205547
2014.07.16 09:14:55 5: OWX_DS2480 read: After loop no. 7 received: cd54284a00800400000482000000000000000000
2014.07.16 09:14:55 5: AfterExecute: context: ProtoThreads=HASH(0x1c11c30), success: 1, reset: 1, owx_dev: 28.CA0FAC040000.04, writedata: be, numread: 9, readdata: 000000000000000000
2014.07.16 09:14:55 3: OWX_ASYNC_RunTasks: 28.CA0FAC040000.04 Error running task: invalid data
2014.07.16 09:14:55 5: OWX_Executor: item ProtoThreads=HASH(0x1c2ef60) for 28.905F9B010000.8B eligible to run
2014.07.16 09:14:55 5: OWX_DS2480.query sending out: e3c5
2014.07.16 09:14:55 5: OWX_DS2480.query sending out: e15528905f9b0100008bbeffffffffffffffffff
2014.07.16 09:14:55 5: OWX_ASYNC_RunTasks: 28.905F9B010000.8B schedule for timeout at 1405494897.352852
2014.07.16 09:14:55 5: OWX_DS2480 read: After loop no. 5 received: cd54289040880000008882000000000000000000
2014.07.16 09:14:55 5: AfterExecute: context: ProtoThreads=HASH(0x1c2ef60), success: 1, reset: 1, owx_dev: 28.905F9B010000.8B, writedata: be, numread: 9, readdata: 000000000000000000
2014.07.16 09:14:55 3: OWX_ASYNC_RunTasks: 28.905F9B010000.8B Error running task: invalid data
2014.07.16 09:14:55 5: OWX_Executor: item ProtoThreads=HASH(0x1bbf4a8) for 28.0E37AC040000.FD eligible to run
2014.07.16 09:14:55 5: OWX_DS2480.query sending out: e3c5
2014.07.16 09:14:55 5: OWX_DS2480.query sending out: e155280e37ac040000fdbeffffffffffffffffff
2014.07.16 09:14:55 5: OWX_ASYNC_RunTasks: 28.0E37AC040000.FD schedule for timeout at 1405494897.496604
2014.07.16 09:14:55 5: OWX_DS2480 read: After loop no. 5 received: cd54280281a40400000482000000000000000000
2014.07.16 09:14:55 5: AfterExecute: context: ProtoThreads=HASH(0x1bbf4a8), success: 1, reset: 1, owx_dev: 28.0E37AC040000.FD, writedata: be, numread: 9, readdata: 000000000000000000
2014.07.16 09:14:55 3: OWX_ASYNC_RunTasks: 28.0E37AC040000.FD Error running task: invalid data
2014.07.16 09:14:55 5: OWX_Executor: item ProtoThreads=HASH(0x1c62808) for 10.0576A8020800.6D eligible to run
2014.07.16 09:14:55 5: OWX_DS2480.query sending out: e3c5
2014.07.16 09:14:55 5: OWX_DS2480.query sending out: e155100576a80208006dbeffffffffffffffffff
2014.07.16 09:14:55 5: OWX_ASYNC_RunTasks: 10.0576A8020800.6D schedule for timeout at 1405494897.640658
2014.07.16 09:14:55 5: OWX_DS2480 read: After loop no. 5 received: cd54100412a80208842482000000000000000000
2014.07.16 09:14:55 5: AfterExecute: context: ProtoThreads=HASH(0x1c62808), success: 1, reset: 1, owx_dev: 10.0576A8020800.6D, writedata: be, numread: 9, readdata: 000000000000000000
2014.07.16 09:14:55 3: OWX_ASYNC_RunTasks: 10.0576A8020800.6D Error running task: invalid data
2014.07.16 09:14:55 5: OWX_ASYNC_RunTasks: 28.1307AC040000.68 schedule next at 1405494895.930580
2014.07.16 09:14:55 5: OWX_Executor: item ProtoThreads=HASH(0x1989678) for 28.1307AC040000.68 eligible to run
2014.07.16 09:14:55 5: OWX_DS2480.query sending out: e3c5
2014.07.16 09:14:56 5: OWX_DS2480.query sending out: e155281307ac04000068beffffffffffffffffff
2014.07.16 09:14:56 5: OWX_ASYNC_RunTasks: 28.1307AC040000.68 schedule for timeout at 1405494897.935995
2014.07.16 09:14:56 5: OWX_DS2480 read: After loop no. 5 received: cd54281000a40400002882000000000000000000
2014.07.16 09:14:56 5: AfterExecute: context: ProtoThreads=HASH(0x1989678), success: 1, reset: 1, owx_dev: 28.1307AC040000.68, writedata: be, numread: 9, readdata: 000000000000000000
2014.07.16 09:14:56 3: OWX_ASYNC_RunTasks: 28.1307AC040000.68 Error running task: invalid data
2014.07.16 09:15:05 5: OWX_ASYNC_RunTasks: 29.68980C000000.da finished task
2014.07.16 09:15:05 5: OWX_ASYNC_RunTasks: 29.68980C000000.da finished task
2014.07.16 09:15:19 5: OWX_ASYNC_PT_Kick: kicking DS14B20 temperature conversion
2014.07.16 09:15:19 5: OWX_Executor: item ProtoThreads=HASH(0x1c2f730) for --- eligible to run
2014.07.16 09:15:19 5: OWX_DS2480.query sending out: e3c5
2014.07.16 09:15:19 5: OWX_DS2480.query sending out: e1cc44
2014.07.16 09:15:19 5: OWX_ASYNC_RunTasks: master schedule for timeout at 1405494921.298703
2014.07.16 09:15:19 5: OWX_DS2480 read: After loop no. 5 received: cd4444
2014.07.16 09:15:19 5: AfterExecute: context: ProtoThreads=HASH(0x1c2f730), success: 1, reset: 1, owx_dev: undef, writedata: 44, numread: 0, readdata:
2014.07.16 09:15:19 5: OWX_ASYNC_RunTasks: master task not finished, next executetime: 1405494920.40078
2014.07.16 09:15:19 5: OWX_ASYNC_RunTasks: master schedule next at 1405494920.400775
2014.07.16 09:15:20 5: OWX_Executor: command 1 eligible to run
2014.07.16 09:15:20 5: OWX_DS2480.query sending out: e3c5
2014.07.16 09:15:20 5: OWX_DS2480.query sending out: e1f0e3b5
2014.07.16 09:15:20 5: OWX_DS2480.query sending out: e100000000000000000000000000000000e3a5
2014.07.16 09:15:20 5: OWX_ASYNC_RunTasks: master finished task
2014.07.16 09:15:20 5: OWX_DS2480 read: After loop no. 6 received: cd1099999999999999999999999999999999
2014.07.16 09:15:20 5: OWX_Executor: command 2 eligible to run
2014.07.16 09:15:20 5: OWX_DS2480.query sending out: e3c5
2014.07.16 09:15:20 5: OWX_DS2480.query sending out: e1ece3b5
2014.07.16 09:15:20 5: OWX_DS2480.query sending out: e100000000000000000000000000000000e3a5
2014.07.16 09:15:20 5: OWX_DS2480 read: After loop no. 5 received: cd2499999999999999999999999999999999
2014.07.16 09:15:20 5: OWX_SER::Search: new alarm device found AA.AAAAAAAAAAAA.AA
2014.07.16 09:15:20 5: OWX_DS2480.query sending out: e3c5
2014.07.16 09:15:20 5: OWX_DS2480.query sending out: e1ece3b5
2014.07.16 09:15:20 5: OWX_DS2480.query sending out: e188888888888888888888888888888828e3a5
2014.07.16 09:15:20 5: OWX_DS2480 read: After loop no. 4 received: cd2499999999999999999999999999999979
2014.07.16 09:15:20 5: OWX_SER::Search: new alarm device found AA.AAAAAAAAAAAA.6A
2014.07.16 09:15:20 5: OWX_DS2480.query sending out: e3c5
2014.07.16 09:15:21 5: OWX_DS2480.query sending out: e1ece3b5
2014.07.16 09:15:21 5: OWX_DS2480.query sending out: e1888888888888888888888888888888a8e3a5
2014.07.16 09:15:21 5: OWX_DS2480 read: After loop no. 4 received: cd24999999999999999999999999999999f9
2014.07.16 09:15:21 5: OWX_SER::Search: new alarm device found AA.AAAAAAAAAAAA.EA
2014.07.16 09:15:21 5: OWX_DS2480.query sending out: e3c5
2014.07.16 09:15:21 5: OWX_DS2480.query sending out: e1ece3b5
2014.07.16 09:15:21 5: OWX_DS2480.query sending out: e188888888888888888888888888888802e3a5
2014.07.16 09:15:21 5: OWX_DS2480 read: After loop no. 4 received: cd2499999999999999999999999999999967
2014.07.16 09:15:21 5: OWX_SER::Search: new alarm device found AA.AAAAAAAAAAAA.5A
2014.07.16 09:15:21 5: OWX_DS2480.query sending out: e3c5
2014.07.16 09:15:21 5: OWX_DS2480.query sending out: e1ece3b5
2014.07.16 09:15:21 5: OWX_DS2480.query sending out: e1888888888888888888888888888888a2e3a5
2014.07.16 09:15:21 5: OWX_DS2480 read: After loop no. 5 received: cd24999999999999999999999999999999e7
2014.07.16 09:15:21 5: OWX_SER::Search: new alarm device found AA.AAAAAAAAAAAA.DA
2014.07.16 09:15:21 5: OWX_DS2480.query sending out: e3c5
2014.07.16 09:15:21 5: OWX_DS2480.query sending out: e1ece3b5
2014.07.16 09:15:21 5: OWX_DS2480.query sending out: e18888888888888888888888888888880ae3a5
2014.07.16 09:15:21 5: OWX_DS2480 read: After loop no. 4 received: cd249999999999999999999999999999999f
2014.07.16 09:15:21 5: OWX_SER::Search: new alarm device found AA.AAAAAAAAAAAA.BA
2014.07.16 09:15:21 5: OWX_DS2480.query sending out: e3c5
2014.07.16 09:15:21 5: OWX_DS2480.query sending out: e1ece3b5
2014.07.16 09:15:21 5: OWX_DS2480.query sending out: e18888888888888888888888888888882ae3a5
2014.07.16 09:15:21 5: OWX_DS2480 read: After loop no. 4 received: cd249999999999999999999999999999997f
2014.07.16 09:15:21 5: OWX_SER::Search: new alarm device found AA.AAAAAAAAAAAA.7A
2014.07.16 09:15:21 5: OWX_DS2480.query sending out: e3c5
2014.07.16 09:15:21 5: OWX_DS2480.query sending out: e1ece3b5
2014.07.16 09:15:21 5: OWX_DS2480.query sending out: e1888888888888888888888888888888aae3a5
2014.07.16 09:15:21 5: OWX_DS2480 read: After loop no. 4 received: cd24999999999999999999999999999999ff
2014.07.16 09:15:21 5: OWX_SER::Search: new alarm device found AA.AAAAAAAAAAAA.FA
2014.07.16 09:15:21 5: OWX_DS2480.query sending out: e3c5
2014.07.16 09:15:22 5: OWX_DS2480.query sending out: e1ece3b5
2014.07.16 09:15:22 5: OWX_DS2480.query sending out: e188888888888888888888888888882800e3a5
2014.07.16 09:15:22 5: OWX_DS2480 read: After loop no. 4 received: cd2499999999999999999999999999997999
2014.07.16 09:15:22 5: OWX_SER::Search: new alarm device found AA.AAAAAAAAAAAA.A6
2014.07.16 09:15:22 5: OWX_DS2480.query sending out: e3c5
2014.07.16 09:15:22 5: OWX_DS2480.query sending out: e1ece3b5
2014.07.16 09:15:22 5: OWX_DS2480.query sending out: e188888888888888888888888888882828e3a5
2014.07.16 09:15:22 5: OWX_DS2480 read: After loop no. 4 received: cd2499999999999999999999999999997979
2014.07.16 09:15:22 5: OWX_SER::Search: new alarm device found AA.AAAAAAAAAAAA.66
2014.07.16 09:15:22 5: OWX_DS2480.query sending out: e3c5
2014.07.16 09:15:22 5: OWX_DS2480.query sending out: e1ece3b5
2014.07.16 09:15:22 5: OWX_DS2480.query sending out: e1888888888888888888888888888828a8e3a5
2014.07.16 09:15:22 5: OWX_DS2480 read: After loop no. 4 received: cd24999999999999999999999999999979f9
2014.07.16 09:15:22 5: OWX_SER::Search: new alarm device found AA.AAAAAAAAAAAA.E6
2014.07.16 09:15:22 5: OWX_DS2480.query sending out: e3c5
2014.07.16 09:15:22 5: OWX_DS2480.query sending out: e1ece3b5
2014.07.16 09:15:22 5: OWX_DS2480.query sending out: e188888888888888888888888888882802e3a5
2014.07.16 09:15:22 5: OWX_ASYNC_Set request OWio1 FF ?
2014.07.16 09:15:22 5: OWX_DS2480 read: After loop no. 2 received: cd2499999999999999999999999999997967
2014.07.16 09:15:22 5: OWX_SER::Search: new alarm device found AA.AAAAAAAAAAAA.56
2014.07.16 09:15:22 5: OWX_DS2480.query sending out: e3c5
2014.07.16 09:15:22 5: OWX_DS2480.query sending out: e1ece3b5
2014.07.16 09:15:22 5: OWX_DS2480.query sending out: e1888888888888888888888888888828a2e3a5
2014.07.16 09:15:22 5: OWX_DS2480 read: After loop no. 6 received: cd24999999999999999999999999999979e7
2014.07.16 09:15:22 5: OWX_SER::Search: new alarm device found AA.AAAAAAAAAAAA.D6
2014.07.16 09:15:22 5: OWX_DS2480.query sending out: e3c5
2014.07.16 09:15:23 5: OWX_DS2480.query sending out: e1ece3b5
2014.07.16 09:15:23 5: OWX_DS2480.query sending out: e18888888888888888888888888888280ae3a5
2014.07.16 09:15:23 5: OWX_ASYNC_RunTasks: 10.787E83020800.65 schedule for timeout at 1405494925.113133
2014.07.16 09:15:23 5: OWX_DS2480 read: After loop no. 4 received: cd249999999999999999999999999999799f
2014.07.16 09:15:23 5: OWX_SER::Search: new alarm device found AA.AAAAAAAAAAAA.B6
2014.07.16 09:15:23 5: OWX_DS2480.query sending out: e3c5
2014.07.16 09:15:23 5: OWX_DS2480.query sending out: e1ece3b5
2014.07.16 09:15:23 5: OWX_DS2480.query sending out: e18888888888888888888888888888282ae3a5
2014.07.16 09:15:23 5: OWX_DS2480 read: After loop no. 6 received: cd249999999999999999999999999999797f
2014.07.16 09:15:23 5: OWX_SER::Search: new alarm device found AA.AAAAAAAAAAAA.76
2014.07.16 09:15:23 5: OWX_DS2480.query sending out: e3c5
2014.07.16 09:15:23 5: OWX_DS2480.query sending out: e1ece3b5
2014.07.16 09:15:23 5: OWX_DS2480.query sending out: e1888888888888888888888888888828aae3a5
2014.07.16 09:15:23 5: OWX_DS2480 read: After loop no. 4 received: cd24999999999999999999999999999979ff
2014.07.16 09:15:23 5: OWX_SER::Search: new alarm device found AA.AAAAAAAAAAAA.F6
2014.07.16 09:15:23 5: OWX_DS2480.query sending out: e3c5
2014.07.16 09:15:23 5: OWX_DS2480.query sending out: e1ece3b5
2014.07.16 09:15:23 5: OWX_DS2480.query sending out: e18888888888888888888888888888a800e3a5
2014.07.16 09:15:23 5: OWX_DS2480 read: After loop no. 4 received: cd249999999999999999999999999999f999
2014.07.16 09:15:23 5: OWX_SER::Search: new alarm device found AA.AAAAAAAAAAAA.AE
2014.07.16 09:15:23 5: OWX_DS2480.query sending out: e3c5
2014.07.16 09:15:23 5: OWX_DS2480.query sending out: e1ece3b5
2014.07.16 09:15:23 5: OWX_DS2480.query sending out: e18888888888888888888888888888a828e3a5
2014.07.16 09:15:25 3: OWX_ASYNC_RunTasks: 10.787E83020800.65 task timed out
2014.07.16 09:15:25 5: OWX_ASYNC_RunTasks: 10.787E83020800.65 TimeoutTime: 1405494925.113133, now: 1405494925.939639
2014.07.16 09:15:25 5: OWX_DS2480 read: After loop no. 2 received: cd249999999999999999999999999999f979
2014.07.16 09:15:25 5: OWX_SER::Search: new alarm device found AA.AAAAAAAAAAAA.6E
2014.07.16 09:15:25 5: OWX_DS2480.query sending out: e3c5
2014.07.16 09:15:26 5: OWX_DS2480.query sending out: e1ece3b5
2014.07.16 09:15:26 5: OWX_DS2480.query sending out: e18888888888888888888888888888a8a8e3a5
2014.07.16 09:15:26 5: OWX_ASYNC_RunTasks: 28.1307AC040000.68 schedule for timeout at 1405494927.943928
2014.07.16 09:15:26 5: OWX_ASYNC_Set request OWio1 FF ?
2014.07.16 09:15:26 5: OWX_DS2480 read: After loop no. 11 received: cd249999999999999999999999999999f9f9
2014.07.16 09:15:26 5: OWX_SER::Search: new alarm device found AA.AAAAAAAAAAAA.EE
2014.07.16 09:15:26 5: OWX_DS2480.query sending out: e3c5
2014.07.16 09:15:26 5: OWX_DS2480.query sending out: e1ece3b5
2014.07.16 09:15:26 5: OWX_DS2480.query sending out: e18888888888888888888888888888a802e3a5
2014.07.16 09:15:26 5: OWX_DS2480 read: After loop no. 6 received: cd249999999999999999999999999999f967
2014.07.16 09:15:26 5: OWX_SER::Search: new alarm device found AA.AAAAAAAAAAAA.5E
2014.07.16 09:15:26 5: OWX_DS2480.query sending out: e3c5
2014.07.16 09:15:26 5: OWX_DS2480.query sending out: e1ece3b5
2014.07.16 09:15:26 5: OWX_DS2480.query sending out: e18888888888888888888888888888a8a2e3a5
2014.07.16 09:15:26 5: OWX_DS2480 read: After loop no. 4 received: cd249999999999999999999999999999f9e7
2014.07.16 09:15:26 5: OWX_SER::Search: new alarm device found AA.AAAAAAAAAAAA.DE
2014.07.16 09:15:26 5: OWX_DS2480.query sending out: e3c5
2014.07.16 09:15:26 5: OWX_DS2480.query sending out: e1ece3b5
2014.07.16 09:15:26 5: OWX_DS2480.query sending out: e18888888888888888888888888888a80ae3a5
2014.07.16 09:15:26 5: OWX_DS2480 read: After loop no. 4 received: cd249999999999999999999999999999f99f
2014.07.16 09:15:26 5: OWX_SER::Search: new alarm device found AA.AAAAAAAAAAAA.BE
2014.07.16 09:15:26 5: OWX_DS2480.query sending out: e3c5
2014.07.16 09:15:26 5: OWX_DS2480.query sending out: e1ece3b5
2014.07.16 09:15:26 5: OWX_DS2480.query sending out: e18888888888888888888888888888a82ae3a5
2014.07.16 09:15:26 5: OWX_DS2480 read: After loop no. 4 received: cd249999999999999999999999999999f97f
2014.07.16 09:15:26 5: OWX_SER::Search: new alarm device found AA.AAAAAAAAAAAA.7E
2014.07.16 09:15:27 5: OWX_DS2480.query sending out: e3c5
2014.07.16 09:15:27 5: OWX_DS2480.query sending out: e1ece3b5
2014.07.16 09:15:27 5: OWX_DS2480.query sending out: e18888888888888888888888888888a8aae3a5
2014.07.16 09:15:27 5: OWX_DS2480 read: After loop no. 2 received: cd249999999999999999999999999999f9ff
2014.07.16 09:15:27 5: OWX_SER::Search: new alarm device found AA.AAAAAAAAAAAA.FE
2014.07.16 09:15:27 5: OWX_DS2480.query sending out: e3c5
2014.07.16 09:15:27 5: OWX_DS2480.query sending out: e1ece3b5
2014.07.16 09:15:27 5: OWX_DS2480.query sending out: e188888888888888888888888888880200e3a5
2014.07.16 09:15:27 5: OWX_DS2480 read: After loop no. 4 received: cd2499999999999999999999999999996799
2014.07.16 09:15:27 5: OWX_SER::Search: new alarm device found AA.AAAAAAAAAAAA.A5
2014.07.16 09:15:27 5: OWX_DS2480.query sending out: e3c5
2014.07.16 09:15:27 5: OWX_DS2480.query sending out: e1ece3b5
2014.07.16 09:15:27 5: OWX_DS2480.query sending out: e188888888888888888888888888882228e3a5
2014.07.16 09:15:27 5: OWX_DS2480 read: After loop no. 4 received: cd2499999999999999999999999999996779
2014.07.16 09:15:27 5: OWX_SER::Search: new alarm device found AA.AAAAAAAAAAAA.65
2014.07.16 09:15:27 5: OWX_DS2480.query sending out: e3c5
2014.07.16 09:15:27 5: OWX_DS2480.query sending out: e1ece3b5
2014.07.16 09:15:27 5: OWX_DS2480.query sending out: e1888888888888888888888888888822a8e3a5
2014.07.16 09:15:27 5: OWX_DS2480 read: After loop no. 4 received: cd24999999999999999999999999999967f9
2014.07.16 09:15:27 5: OWX_SER::Search: new alarm device found AA.AAAAAAAAAAAA.E5
2014.07.16 09:15:27 5: OWX_DS2480.query sending out: e3c5
2014.07.16 09:15:27 5: OWX_DS2480.query sending out: e1ece3b5
2014.07.16 09:15:27 5: OWX_DS2480.query sending out: e188888888888888888888888888882202e3a5
2014.07.16 09:15:27 5: OWX_DS2480 read: After loop no. 4 received: cd2499999999999999999999999999996767
2014.07.16 09:15:27 5: OWX_SER::Search: new alarm device found AA.AAAAAAAAAAAA.55
2014.07.16 09:15:27 5: OWX_DS2480.query sending out: e3c5
2014.07.16 09:15:27 5: OWX_DS2480.query sending out: e1ece3b5
2014.07.16 09:15:27 5: OWX_DS2480.query sending out: e1888888888888888888888888888822a2e3a5
2014.07.16 09:15:27 3: OWX_ASYNC_RunTasks: 28.1307AC040000.68 task timed out
2014.07.16 09:15:27 5: OWX_ASYNC_RunTasks: 28.1307AC040000.68 TimeoutTime: 1405494927.943928, now: 1405494927.947705
2014.07.16 09:15:27 5: OWX_ASYNC_RunTasks: 28.CA0FAC040000.04 schedule for timeout at 1405494929.951815
2014.07.16 09:15:27 5: OWX_DS2480 read: After loop no. 4 received: cd24999999999999999999999999999967e7
2014.07.16 09:15:27 5: OWX_SER::Search: new alarm device found AA.AAAAAAAAAAAA.D5
2014.07.16 09:15:28 5: OWX_DS2480.query sending out: e3c5
2014.07.16 09:15:28 5: OWX_DS2480.query sending out: e1ece3b5
2014.07.16 09:15:28 5: OWX_DS2480.query sending out: e18888888888888888888888888888220ae3a5
2014.07.16 09:15:28 5: OWX_ASYNC_Set request OWio1 FF ?
2014.07.16 09:15:28 5: OWX_DS2480 read: After loop no. 4 received: cd246b8888888888888888888888888888220a85
2014.07.16 09:15:28 3: OWX_DS2480: Search 2nd return has wrong parameter with length = 18
2014.07.16 09:15:28 5: OWX_Executor: item ProtoThreads=HASH(0x1c50800) for 10.787E83020800.65 eligible to run
2014.07.16 09:15:28 5: OWX_DS2480.query sending out: e3c5
2014.07.16 09:15:28 5: OWX_DS2480.query sending out: e15510787e830208006544
2014.07.16 09:15:28 5: OWX_DS2480 read: After loop no. 5 received: cd54100802000208842444
2014.07.16 09:15:28 5: AfterExecute: context: ProtoThreads=HASH(0x1c50800), success: 1, reset: 1, owx_dev: 10.787E83020800.65, writedata: 44, numread: 0, readdata:
2014.07.16 09:15:28 5: OWX_Executor: item ProtoThreads=HASH(0x1c50fa0) for 28.1307AC040000.68 eligible to run
2014.07.16 09:15:28 5: OWX_DS2480.query sending out: e3c5
2014.07.16 09:15:28 5: OWX_DS2480.query sending out: e155281307ac0400006844
2014.07.16 09:15:28 5: OWX_DS2480 read: After loop no. 5 received: cd54281000a40400002844
2014.07.16 09:15:28 5: AfterExecute: context: ProtoThreads=HASH(0x1c50fa0), success: 1, reset: 1, owx_dev: 28.1307AC040000.68, writedata: 44, numread: 0, readdata:
2014.07.16 09:15:28 5: OWX_Executor: item ProtoThreads=HASH(0x1b9fa58) for 28.CA0FAC040000.04 eligible to run
2014.07.16 09:15:28 5: OWX_DS2480.query sending out: e3c5
2014.07.16 09:15:28 5: OWX_DS2480.query sending out: e15528ca0fac0400000444
2014.07.16 09:15:28 5: OWX_DS2480 read: After loop no. 5 received: cd54284a00800400000444
2014.07.16 09:15:28 5: AfterExecute: context: ProtoThreads=HASH(0x1b9fa58), success: 1, reset: 1, owx_dev: 28.CA0FAC040000.04, writedata: 44, numread: 0, readdata:
2014.07.16 09:15:28 5: OWX_ASYNC_RunTasks: 28.CA0FAC040000.04 task not finished, next executetime: 1405494928.75427
2014.07.16 09:15:28 5: OWX_Executor: item ProtoThreads=HASH(0x1c125b0) for 10.541E0B000800.35 eligible to run
2014.07.16 09:15:28 5: OWX_DS2480.query sending out: e3c5
2014.07.16 09:15:28 5: OWX_DS2480.query sending out: e15510541e0b0008003544
2014.07.16 09:15:28 5: OWX_ASYNC_RunTasks: 10.541E0B000800.35 schedule for timeout at 1405494930.548059
2014.07.16 09:15:28 5: OWX_DS2480 read: After loop no. 3 received: cd54105402088408841444
2014.07.16 09:15:28 5: AfterExecute: context: ProtoThreads=HASH(0x1c125b0), success: 1, reset: 1, owx_dev: 10.541E0B000800.35, writedata: 44, numread: 0, readdata:
2014.07.16 09:15:28 5: OWX_ASYNC_RunTasks: 10.541E0B000800.35 task not finished, next executetime: 1405494929.44966
2014.07.16 09:15:28 5: OWX_Executor: item ProtoThreads=HASH(0x1992828) for 28.810671010000.D3 eligible to run
2014.07.16 09:15:28 5: OWX_DS2480.query sending out: e3c5
2014.07.16 09:15:28 5: OWX_DS2480.query sending out: e15528810671010000d344
2014.07.16 09:15:28 5: OWX_ASYNC_RunTasks: 28.810671010000.D3 schedule for timeout at 1405494930.681957
2014.07.16 09:15:28 5: OWX_DS2480 read: After loop no. 5 received: cd54280002100000005044
2014.07.16 09:15:28 5: AfterExecute: context: ProtoThreads=HASH(0x1992828), success: 1, reset: 1, owx_dev: 28.810671010000.D3, writedata: 44, numread: 0, readdata:
2014.07.16 09:15:28 5: OWX_ASYNC_RunTasks: 28.810671010000.D3 task not finished, next executetime: 1405494929.58378
2014.07.16 09:15:28 5: OWX_Executor: item ProtoThreads=HASH(0x1b9fa58) for 28.CA0FAC040000.04 eligible to run
2014.07.16 09:15:28 5: OWX_DS2480.query sending out: e3c5
2014.07.16 09:15:28 5: OWX_DS2480.query sending out: e15528ca0fac04000004beffffffffffffffffff
2014.07.16 09:15:28 5: OWX_ASYNC_RunTasks: 28.CA0FAC040000.04 schedule for timeout at 1405494930.817771
2014.07.16 09:15:28 5: OWX_DS2480 read: After loop no. 5 received: cd54284a00800400000482000000000000000000
2014.07.16 09:15:28 5: AfterExecute: context: ProtoThreads=HASH(0x1b9fa58), success: 1, reset: 1, owx_dev: 28.CA0FAC040000.04, writedata: be, numread: 9, readdata: 000000000000000000
2014.07.16 09:15:28 3: OWX_ASYNC_RunTasks: 28.CA0FAC040000.04 Error running task: invalid data
2014.07.16 09:15:28 5: OWX_Executor: item ProtoThreads=HASH(0x198adb0) for 28.905F9B010000.8B eligible to run
2014.07.16 09:15:28 5: OWX_DS2480.query sending out: e3c5
2014.07.16 09:15:29 5: OWX_DS2480.query sending out: e15528905f9b0100008b44
2014.07.16 09:15:29 5: OWX_ASYNC_RunTasks: 28.905F9B010000.8B schedule for timeout at 1405494930.962112
2014.07.16 09:15:29 5: OWX_DS2480 read: After loop no. 3 received: cd54289040880000008844
2014.07.16 09:15:29 5: AfterExecute: context: ProtoThreads=HASH(0x198adb0), success: 1, reset: 1, owx_dev: 28.905F9B010000.8B, writedata: 44, numread: 0, readdata:
2014.07.16 09:15:29 5: OWX_ASYNC_RunTasks: 28.905F9B010000.8B task not finished, next executetime: 1405494929.86472
2014.07.16 09:15:29 5: OWX_Executor: item ProtoThreads=HASH(0x1988be8) for 28.0E37AC040000.FD eligible to run
2014.07.16 09:15:29 5: OWX_DS2480.query sending out: e3c5
2014.07.16 09:15:29 5: OWX_DS2480.query sending out: e155280e37ac040000fd44
2014.07.16 09:15:29 5: OWX_ASYNC_RunTasks: 28.0E37AC040000.FD schedule for timeout at 1405494931.089840
2014.07.16 09:15:29 5: OWX_DS2480 read: After loop no. 3 received: cd54280281a40400000444
2014.07.16 09:15:29 5: AfterExecute: context: ProtoThreads=HASH(0x1988be8), success: 1, reset: 1, owx_dev: 28.0E37AC040000.FD, writedata: 44, numread: 0, readdata:
2014.07.16 09:15:29 5: OWX_ASYNC_RunTasks: 28.0E37AC040000.FD task not finished, next executetime: 1405494929.99159
2014.07.16 09:15:29 5: OWX_Executor: item ProtoThreads=HASH(0x1c93960) for 20.0C2C0C000000.59 eligible to run
2014.07.16 09:15:29 5: OWX_DS2480.query sending out: e3c5
2014.07.16 09:15:29 5: OWX_DS2480.query sending out: e155200c2c0c000000593c0f00ffff
2014.07.16 09:15:29 5: OWX_ASYNC_RunTasks: 20.0C2C0C000000.59 schedule for timeout at 1405494931.218082
2014.07.16 09:15:29 5: OWX_DS2480 read: After loop no. 3 received: cd5400048204820000480400800000
2014.07.16 09:15:29 5: AfterExecute: context: ProtoThreads=HASH(0x1c93960), success: 1, reset: 1, owx_dev: 20.0C2C0C000000.59, writedata: 3c0f00ffff, numread: 0, readdata:
2014.07.16 09:15:29 5: OWX_Executor: item ProtoThreads=HASH(0x1c93960) for 20.0C2C0C000000.59 eligible to run
2014.07.16 09:15:29 5: OWX_DS2480.query sending out: e3c5
2014.07.16 09:15:29 5: OWX_DS2480.query sending out: e155200c2c0c00000059aa0000ffffffffffffffffffff
2014.07.16 09:15:29 5: OWX_ASYNC_RunTasks: 20.0C2C0C000000.59 schedule for timeout at 1405494931.364264
2014.07.16 09:15:29 5: OWX_DS2480 read: After loop no. 5 received: cd540004820482000048aa000000000000000000000000
2014.07.16 09:15:29 5: AfterExecute: context: ProtoThreads=HASH(0x1c93960), success: 1, reset: 1, owx_dev: 20.0C2C0C000000.59, writedata: aa0000, numread: 10, readdata: 00000000000000000000
2014.07.16 09:15:29 3: OWX_ASYNC_RunTasks: 20.0C2C0C000000.59 Error running task: invalid CRC
2014.07.16 09:15:29 5: OWX_Executor: item ProtoThreads=HASH(0x1c125b0) for 10.541E0B000800.35 eligible to run
2014.07.16 09:15:29 5: OWX_DS2480.query sending out: e3c5
2014.07.16 09:15:29 5: OWX_DS2480.query sending out: e15510541e0b00080035beffffffffffffffffff
2014.07.16 09:15:29 5: OWX_ASYNC_RunTasks: 10.541E0B000800.35 schedule for timeout at 1405494931.507202
2014.07.16 09:15:29 5: OWX_DS2480 read: After loop no. 5 received: cd54105402088408841482000000000000000000
2014.07.16 09:15:29 5: AfterExecute: context: ProtoThreads=HASH(0x1c125b0), success: 1, reset: 1, owx_dev: 10.541E0B000800.35, writedata: be, numread: 9, readdata: 000000000000000000
2014.07.16 09:15:29 3: OWX_ASYNC_RunTasks: 10.541E0B000800.35 Error running task: invalid data
2014.07.16 09:15:29 5: OWX_Executor: item ProtoThreads=HASH(0x1992828) for 28.810671010000.D3 eligible to run
2014.07.16 09:15:29 5: OWX_DS2480.query sending out: e3c5
2014.07.16 09:15:29 5: OWX_DS2480.query sending out: e15528810671010000d3beffffffffffffffffff
2014.07.16 09:15:29 5: OWX_ASYNC_RunTasks: 28.810671010000.D3 schedule for timeout at 1405494931.650353
2014.07.16 09:15:29 5: OWX_DS2480 read: After loop no. 5 received: cd54280002100000005082000000000000000000
2014.07.16 09:15:29 5: AfterExecute: context: ProtoThreads=HASH(0x1992828), success: 1, reset: 1, owx_dev: 28.810671010000.D3, writedata: be, numread: 9, readdata: 000000000000000000
2014.07.16 09:15:29 3: OWX_ASYNC_RunTasks: 28.810671010000.D3 Error running task: invalid data
2014.07.16 09:15:29 5: OWX_Executor: item ProtoThreads=HASH(0x1bbf038) for 20.0C2C0C000000.59 eligible to run
2014.07.16 09:15:29 5: OWX_DS2480.query sending out: e3c5
2014.07.16 09:15:29 5: OWX_DS2480.query sending out: e155200c2c0c00000059aa1000ffffffffffffffffffff
2014.07.16 09:15:29 5: OWX_ASYNC_RunTasks: 20.0C2C0C000000.59 schedule for timeout at 1405494931.795116
2014.07.16 09:15:29 5: OWX_DS2480 read: After loop no. 5 received: cd540004820482000048aa100000000000000000000000
2014.07.16 09:15:29 5: AfterExecute: context: ProtoThreads=HASH(0x1bbf038), success: 1, reset: 1, owx_dev: 20.0C2C0C000000.59, writedata: aa1000, numread: 10, readdata: 00000000000000000000
2014.07.16 09:15:29 3: OWX_ASYNC_RunTasks: 20.0C2C0C000000.59 Error running task: invalid CRC
2014.07.16 09:15:29 5: OWX_Executor: item ProtoThreads=HASH(0x198adb0) for 28.905F9B010000.8B eligible to run
2014.07.16 09:15:29 5: OWX_DS2480.query sending out: e3c5
2014.07.16 09:15:30 5: OWX_DS2480.query sending out: e15528905f9b0100008bbeffffffffffffffffff
2014.07.16 09:15:30 5: OWX_ASYNC_RunTasks: 28.905F9B010000.8B schedule for timeout at 1405494931.938957
2014.07.16 09:15:30 5: OWX_DS2480 read: After loop no. 6 received: cd54289040880000008882000000000000000000
2014.07.16 09:15:30 5: AfterExecute: context: ProtoThreads=HASH(0x198adb0), success: 1, reset: 1, owx_dev: 28.905F9B010000.8B, writedata: be, numread: 9, readdata: 000000000000000000
2014.07.16 09:15:30 3: OWX_ASYNC_RunTasks: 28.905F9B010000.8B Error running task: invalid data
2014.07.16 09:15:30 5: OWX_Executor: item ProtoThreads=HASH(0x1988be8) for 28.0E37AC040000.FD eligible to run
2014.07.16 09:15:30 5: OWX_DS2480.query sending out: e3c5
2014.07.16 09:15:30 5: OWX_DS2480.query sending out: e155280e37ac040000fdbeffffffffffffffffff
2014.07.16 09:15:30 5: OWX_ASYNC_RunTasks: 28.0E37AC040000.FD schedule for timeout at 1405494932.082355
2014.07.16 09:15:30 5: OWX_DS2480 read: After loop no. 5 received: cd54280281a40400000482000000000000000000
2014.07.16 09:15:30 5: AfterExecute: context: ProtoThreads=HASH(0x1988be8), success: 1, reset: 1, owx_dev: 28.0E37AC040000.FD, writedata: be, numread: 9, readdata: 000000000000000000
2014.07.16 09:15:30 3: OWX_ASYNC_RunTasks: 28.0E37AC040000.FD Error running task: invalid data
2014.07.16 09:15:30 5: OWX_Executor: item ProtoThreads=HASH(0x1c33270) for 20.0C2C0C000000.59 eligible to run
2014.07.16 09:15:30 5: OWX_DS2480.query sending out: e3c5
2014.07.16 09:15:30 5: OWX_DS2480.query sending out: e155200c2c0c00000059aa0800ffffffffffffffffffff
2014.07.16 09:15:30 5: OWX_ASYNC_RunTasks: 20.0C2C0C000000.59 schedule for timeout at 1405494932.231879
2014.07.16 09:15:30 5: OWX_DS2480 read: After loop no. 5 received: cd540004820482000048aa088400000000000000000000
2014.07.16 09:15:30 5: AfterExecute: context: ProtoThreads=HASH(0x1c33270), success: 1, reset: 1, owx_dev: 20.0C2C0C000000.59, writedata: aa0800, numread: 10, readdata: 00000000000000000000
2014.07.16 09:15:30 3: OWX_ASYNC_RunTasks: 20.0C2C0C000000.59 Error running task: invalid CRC
2014.07.16 09:15:30 5: OWX_Executor: item ProtoThreads=HASH(0x1b77e30) for 28.A8A49B010000.11 eligible to run
2014.07.16 09:15:30 5: OWX_DS2480.query sending out: e3c5
2014.07.16 09:15:30 5: OWX_DS2480.query sending out: e15528a8a49b0100001144
2014.07.16 09:15:30 5: OWX_ASYNC_RunTasks: 28.A8A49B010000.11 schedule for timeout at 1405494932.370517
2014.07.16 09:15:30 5: OWX_DS2480 read: After loop no. 3 received: cd5428a8a4880000001044
2014.07.16 09:15:30 5: AfterExecute: context: ProtoThreads=HASH(0x1b77e30), success: 1, reset: 1, owx_dev: 28.A8A49B010000.11, writedata: 44, numread: 0, readdata:
2014.07.16 09:15:30 5: OWX_ASYNC_RunTasks: 28.A8A49B010000.11 task not finished, next executetime: 1405494931.27276
2014.07.16 09:15:30 5: OWX_Executor: item ProtoThreads=HASH(0x19927a8) for 10.0576A8020800.6D eligible to run
2014.07.16 09:15:30 5: OWX_DS2480.query sending out: e3c5
2014.07.16 09:15:30 5: OWX_DS2480.query sending out: e155100576a80208006d44
2014.07.16 09:15:30 5: OWX_ASYNC_RunTasks: 10.0576A8020800.6D schedule for timeout at 1405494932.497719
2014.07.16 09:15:30 5: OWX_DS2480 read: After loop no. 4 received: cd54100412a80208842444
2014.07.16 09:15:30 5: AfterExecute: context: ProtoThreads=HASH(0x19927a8), success: 1, reset: 1, owx_dev: 10.0576A8020800.6D, writedata: 44, numread: 0, readdata:
2014.07.16 09:15:30 5: OWX_ASYNC_RunTasks: 10.0576A8020800.6D task not finished, next executetime: 1405494931.39975
2014.07.16 09:15:30 5: OWX_ASYNC_RunTasks: 10.0576A8020800.6D schedule next at 1405494931.272764
2014.07.16 09:15:31 5: OWX_Executor: item ProtoThreads=HASH(0x1b77e30) for 28.A8A49B010000.11 eligible to run
2014.07.16 09:15:31 5: OWX_DS2480.query sending out: e3c5
2014.07.16 09:15:31 5: OWX_DS2480.query sending out: e15528a8a49b01000011beffffffffffffffffff
2014.07.16 09:15:31 5: OWX_ASYNC_RunTasks: 28.A8A49B010000.11 schedule for timeout at 1405494933.279999
2014.07.16 09:15:31 5: OWX_DS2480 read: After loop no. 8 received: cd5428a8a4880000001082000000000000000000
2014.07.16 09:15:31 5: AfterExecute: context: ProtoThreads=HASH(0x1b77e30), success: 1, reset: 1, owx_dev: 28.A8A49B010000.11, writedata: be, numread: 9, readdata: 000000000000000000
2014.07.16 09:15:31 3: OWX_ASYNC_RunTasks: 28.A8A49B010000.11 Error running task: invalid data
2014.07.16 09:15:31 5: OWX_Executor: item ProtoThreads=HASH(0x19927a8) for 10.0576A8020800.6D eligible to run
2014.07.16 09:15:31 5: OWX_DS2480.query sending out: e3c5
2014.07.16 09:15:31 5: OWX_DS2480.query sending out: e155100576a80208006dbeffffffffffffffffff
2014.07.16 09:15:31 5: OWX_ASYNC_RunTasks: 10.0576A8020800.6D schedule for timeout at 1405494933.426530
2014.07.16 09:15:31 5: OWX_DS2480 read: After loop no. 6 received: cd54100412a80208842482000000000000000000
2014.07.16 09:15:31 5: AfterExecute: context: ProtoThreads=HASH(0x19927a8), success: 1, reset: 1, owx_dev: 10.0576A8020800.6D, writedata: be, numread: 9, readdata: 000000000000000000
2014.07.16 09:15:31 3: OWX_ASYNC_RunTasks: 10.0576A8020800.6D Error running task: invalid data
2014.07.16 09:15:39 5: OWX_ASYNC_RunTasks: 26.10F326010000.00 finished task


Herzliche Grüße

Christian
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 16 Juli 2014, 10:45:04
Hallo Christian,

Zitat von: cwagner am 16 Juli 2014, 09:49:26
nch update force bin ich nun komplett synchron mit dem SVN.
[...]

2014.07.16 09:14:25 5: AfterExecute: context: ProtoThreads=HASH(0x1c937a0), success: 1, reset: 1, owx_dev: 28.0E37AC040000.FD, writedata: be, numread: 9, readdata: 000000000000000000


da scheint das update (noch) nicht zu funktionieren. Diese Logzeile ist in der aktuellen SVN-version von 00_OWX_ASYNC.pm (Revision 6261 vom 15.07.2014 (http://sourceforge.net/p/fhem/code/6261/tree/trunk/fhem/FHEM/00_OWX_ASYNC.pm#l989)) definitiv ersatzlos entfallen. In der Revision 6108 vom 13.06.2014 war sie noch drin (http://sourceforge.net/p/fhem/code/6108/tree/trunk/fhem/FHEM/00_OWX_ASYNC.pm#l1023).

Ich teste nachher selber mal, was man per fhem-update bekommt (das muss aus dem svn ja erst mal auf den update-server), ich arbeite ja lokal auf einem svn-workspace und kriege diese Verzögerung ja nicht direkt mit. (Einen SVN-workspace kannst Du Dir leicht mit 'svn checkout http://svn.code.sf.net/p/fhem/code/trunk/fhem' selber auschecken und dann immer mit 'svn update' auf dem letzen Stand halten...)

Gruß,

Norbert

Gruß,

Norbert
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: cwagner am 16 Juli 2014, 13:06:22
Hallo Norbert,

vielen Dank für den wertvollen Tipp mit SVN - nun habe ich die von Dir angesagten Versionen (geprüft mit version) auf dem System und tatsächlich kommen wir beim Switch auch einen Schritt weiter: Sein Status wird korrekt gezeigt, ABER: Beim ersten Versuch, zu schalten, gibt es wiederholbar ein hartes Beenden von FHEM. Wech isses! Das konnte ich dreimal wiederholen - solange ich nicht switche, läuft alles bingo.
Hier die letzten Zeilen des log bei Verbose 5 vor dem Verenden:
2014.07.16 12:40:51 5: OWX_ASYNC_Set request OWio1 FF ?
2014.07.16 12:40:52 5: OWX_ASYNC_Set request OWio1 FF ?
2014.07.16 12:40:54 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:40:54 5: OWX_DS2480.query sending out: e15528905f9b0100008b44
2014.07.16 12:40:54 5: OWX_ASYNC_RunTasks: Aussenluft schedule for timeout at 1405507256.035180
2014.07.16 12:40:54 5: OWX_DS2480 read: After loop no. 2 received: cd5528905f9b0100008b44
2014.07.16 12:40:54 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:40:54 5: OWX_DS2480.query sending out: e155281307ac0400006844
2014.07.16 12:40:54 5: OWX_ASYNC_RunTasks: Fortluft schedule for timeout at 1405507256.169702
2014.07.16 12:40:54 5: OWX_DS2480 read: After loop no. 3 received: cd55281307ac0400006844
2014.07.16 12:40:54 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:40:54 5: OWX_DS2480.query sending out: e155100576a80208006d44
2014.07.16 12:40:54 5: OWX_ASYNC_RunTasks: T_Heizung schedule for timeout at 1405507256.298042
2014.07.16 12:40:54 5: OWX_DS2480 read: After loop no. 3 received: cd55100576a80208006d44
2014.07.16 12:40:54 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:40:54 5: OWX_DS2480.query sending out: e15510787e830208006544
2014.07.16 12:40:54 5: OWX_ASYNC_RunTasks: T_Vorlauf_FBH schedule for timeout at 1405507256.425884
2014.07.16 12:40:54 5: OWX_DS2480 read: After loop no. 2 received: cd5510787e830208006544
2014.07.16 12:40:54 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:40:54 5: OWX_DS2480.query sending out: e155280e37ac040000fd44
2014.07.16 12:40:54 5: OWX_ASYNC_RunTasks: Abluft schedule for timeout at 1405507256.554741
2014.07.16 12:40:54 5: OWX_DS2480 read: After loop no. 3 received: cd55280e37ac040000fd44
2014.07.16 12:40:54 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:40:54 5: OWX_DS2480.query sending out: e15528ca0fac0400000444
2014.07.16 12:40:54 5: OWX_ASYNC_RunTasks: Zuluft schedule for timeout at 1405507256.682069
2014.07.16 12:40:54 5: OWX_DS2480 read: After loop no. 3 received: cd5528ca0fac0400000444
2014.07.16 12:40:54 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:40:54 5: OWX_DS2480.query sending out: e15528905f9b0100008bbeffffffffffffffffff
2014.07.16 12:40:54 5: OWX_ASYNC_RunTasks: Aussenluft schedule for timeout at 1405507256.842963
2014.07.16 12:40:55 5: OWX_DS2480 read: After loop no. 2 received: cd5528905f9b0100008bbe0b014b467fff0510a8
2014.07.16 12:40:55 5: OWX_ASYNC_RunTasks: Aussenluft finished task
2014.07.16 12:40:55 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:40:55 5: OWX_DS2480.query sending out: e155281307ac04000068beffffffffffffffffff
2014.07.16 12:40:55 5: OWX_ASYNC_RunTasks: Fortluft schedule for timeout at 1405507257.615115
2014.07.16 12:40:55 5: OWX_DS2480 read: After loop no. 3 received: cd55281307ac04000068be69014b467fff07105e
2014.07.16 12:40:55 5: OWX_ASYNC_RunTasks: Fortluft finished task
2014.07.16 12:40:55 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:40:55 5: OWX_DS2480.query sending out: e155100576a80208006dbeffffffffffffffffff
2014.07.16 12:40:55 5: OWX_ASYNC_RunTasks: T_Heizung schedule for timeout at 1405507257.760619
2014.07.16 12:40:55 5: OWX_DS2480 read: After loop no. 3 received: cd55100576a80208006dbe2d004b46ffff0310dd
2014.07.16 12:40:55 5: OWX_ASYNC_RunTasks: T_Heizung finished task
2014.07.16 12:40:55 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:40:56 5: OWX_DS2480.query sending out: e15510787e8302080065beffffffffffffffffff
2014.07.16 12:40:56 5: OWX_ASYNC_RunTasks: T_Vorlauf_FBH schedule for timeout at 1405507257.907127
2014.07.16 12:40:56 5: OWX_DS2480 read: After loop no. 2 received: cd5510787e8302080065be2f004b46ffff02109f
2014.07.16 12:40:56 5: OWX_ASYNC_RunTasks: T_Vorlauf_FBH finished task
2014.07.16 12:40:56 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:40:56 5: OWX_DS2480.query sending out: e155280e37ac040000fdbeffffffffffffffffff
2014.07.16 12:40:56 5: OWX_ASYNC_RunTasks: Abluft schedule for timeout at 1405507258.147732
2014.07.16 12:40:56 5: OWX_DS2480 read: After loop no. 3 received: cd55280e37ac040000fdbe77014b467fff09106f
2014.07.16 12:40:56 5: OWX_ASYNC_RunTasks: Abluft finished task
2014.07.16 12:40:56 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:40:56 5: OWX_DS2480.query sending out: e15528ca0fac04000004beffffffffffffffffff
2014.07.16 12:40:56 5: OWX_ASYNC_RunTasks: Zuluft schedule for timeout at 1405507258.287078
2014.07.16 12:40:56 5: OWX_DS2480 read: After loop no. 3 received: cd5528ca0fac04000004be21014b467fff0f104b
2014.07.16 12:40:56 5: OWX_ASYNC_RunTasks: Zuluft finished task
2014.07.16 12:41:12 5: OWX_ASYNC_PT_Kick: kicking DS14B20 temperature conversion
2014.07.16 12:41:12 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:41:12 5: OWX_DS2480.query sending out: e1cc44
2014.07.16 12:41:12 5: OWX_ASYNC_RunTasks: OWio1 schedule for timeout at 1405507274.826286
2014.07.16 12:41:12 5: OWX_DS2480 read: After loop no. 2 received: cdcc44
2014.07.16 12:41:13 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:41:14 5: OWX_DS2480.query sending out: e1f0e3b5
2014.07.16 12:41:14 5: OWX_DS2480.query sending out: e100000000000000000000000000000000e3a5
2014.07.16 12:41:14 5: OWX_ASYNC_RunTasks: OWio1 schedule for timeout at 1405507275.963892
2014.07.16 12:41:14 5: OWX_DS2480 read: After loop no. 3 received: cdf04509a000a008a0000000000000008222
2014.07.16 12:41:14 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:41:14 5: OWX_DS2480.query sending out: e1ece3b5
2014.07.16 12:41:14 5: OWX_DS2480.query sending out: e100000000000000000000000000000000e3a5
2014.07.16 12:41:14 5: OWX_ASYNC_RunTasks: OWio1 schedule for timeout at 1405507276.166066
2014.07.16 12:41:14 5: OWX_DS2480 read: After loop no. 3 received: cdec4102912aa82a0a800800800000002228
2014.07.16 12:41:14 5: OWX_SER::Search: new alarm device found 10.787E83020800.65
2014.07.16 12:41:14 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:41:14 5: OWX_DS2480.query sending out: e1ece3b5
2014.07.16 12:41:14 5: OWX_DS2480.query sending out: e100022000000000000000000000000000e3a5
2014.07.16 12:41:14 5: OWX_DS2480 read: After loop no. 3 received: cdec41023122a8028a00000080000000220a
2014.07.16 12:41:14 5: OWX_SER::Search: new alarm device found 10.541E0B000800.35
2014.07.16 12:41:14 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:41:14 5: OWX_DS2480.query sending out: e1ece3b5
2014.07.16 12:41:14 5: OWX_DS2480.query sending out: e100020200000000000000000000000000e3a5
2014.07.16 12:41:14 5: OWX_DS2480 read: After loop no. 2 received: cdec41022300282a8088080080000000a228
2014.07.16 12:41:14 5: OWX_SER::Search: new alarm device found 10.0576A8020800.6D
2014.07.16 12:41:14 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:41:14 5: OWX_DS2480.query sending out: e1ece3b5
2014.07.16 12:41:14 5: OWX_DS2480.query sending out: e180000000000000000000000000000000e3a5
2014.07.16 12:41:14 5: OWX_DS2480 read: After loop no. 3 received: cdec6880000000000000000000000000000000
2014.07.16 12:41:14 3: OWX_DS2480: Search 2nd return has wrong parameter with length = 17
2014.07.16 12:41:14 5: OWX_ASYNC_RunTasks: OWio1 finished task
2014.07.16 12:41:23 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:41:24 5: OWX_DS2480.query sending out: e1552968980c000000daf08800ffffffffffffffffffff


Auf der Konsole bit es noch diese Meldung:# Switch_Heizkeller unexpected thread state PT_WAITING without TimeoutTime at ./
FHEM/00_OWX_ASYNC.pm line 1085.


Außerdem kriege ich wiederholt:
# Argument "" isn't numeric in sprintf at ./FHEM/21_OWMULTI.pm line 427.

Ich habe mal einen Start mit verbose=5 gemacht. Vielleicht sind da nützliche INfos für Dich dabei:

...
014.07.16 12:50:04 3: Opening OWio1 device /dev/ttyUSB0
2014.07.16 12:50:04 3: Setting OWio1 baudrate to 9600
2014.07.16 12:50:04 3: OWio1 device opened
2014.07.16 12:50:04 2: OWX_SER: Serial device /dev/ttyUSB0@9600 defined
2014.07.16 12:50:05 5: OWX_DS2480.query sending out: c1
2014.07.16 12:50:06 5: OWX_DS2480 read: After loop no. 1274 received:  -> TIMEOUT
2014.07.16 12:50:06 5: OWX_DS2480.query sending out: 17455b0f91
2014.07.16 12:50:06 5: OWX_DS2480 read: After loop no. 22 received: 16445a0090
2014.07.16 12:50:06 3: OWX_SER::Detect 1-Wire bus OWio1: interface master DS2480 detected for the first time
...
014.07.16 12:50:18 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:50:18 5: OWX_DS2480.query sending out: e1f0e3b5
2014.07.16 12:50:18 5: OWX_DS2480.query sending out: e100000000000000000000000000000000e3a5
2014.07.16 12:50:18 5: OWX_ASYNC_RunTasks: OWio1 schedule for timeout at 1405507820.340727
2014.07.16 12:50:18 5: OWX_DS2480 read: After loop no. 1 received: cdf04509a000a008a0000000000000008222
2014.07.16 12:50:18 5: OWX_SER::Search: new device found 20.0C2C0C000000.59
2014.07.16 12:50:18 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:50:18 5: OWX_DS2480.query sending out: e1f0e3b5
2014.07.16 12:50:18 5: OWX_DS2480.query sending out: e100020000000000000000000000000000e3a5
2014.07.16 12:50:19 5: OWX_DS2480 read: After loop no. 1 received: cdf04503912aa82a0a800800800000002228
....
014.07.16 12:50:32 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:50:32 5: OWX_DS2480.query sending out: e15528ca0fac0400000444
2014.07.16 12:50:32 5: OWX_ASYNC_RunTasks: Zuluft schedule for timeout at 1405507834.595882
2014.07.16 12:50:32 5: OWX_DS2480 read: After loop no. 2 received: cd5528ca0fac0400000444
2014.07.16 12:50:32 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:50:32 5: OWX_DS2480.query sending out: e1552968980c000000daf08800ffffffffffffffffffff
2014.07.16 12:50:32 5: OWX_ASYNC_RunTasks: Switch_Heizkeller schedule for timeout at 1405507834.732516
2014.07.16 12:50:32 5: OWX_DS2480 read: After loop no. 2 received: cd552968980c000000daf08800ffff00000088ffffbb6f
2014.07.16 12:50:33 5: OWX_ASYNC_RunTasks: Switch_Heizkeller finished task
2014.07.16 12:50:33 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:50:33 5: OWX_DS2480.query sending out: e15528aee870010000b644
....
014.07.16 12:51:08 5: OWX_DS2480 read: After loop no. 3 received: cdec41023122a8028a00000080000000220a
2014.07.16 12:51:08 5: OWX_SER::Search: new alarm device found 10.541E0B000800.35
2014.07.16 12:51:08 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:51:08 5: OWX_DS2480.query sending out: e1ece3b5
2014.07.16 12:51:08 5: OWX_DS2480.query sending out: e100020200000000000000000000000000e3a5
2014.07.16 12:51:08 5: OWX_DS2480 read: After loop no. 3 received: cdec6c00000200000000000000000000000000
2014.07.16 12:51:08 3: OWX_DS2480: Search 2nd return has wrong parameter with length = 17
2014.07.16 12:51:08 5: OWX_ASYNC_RunTasks: OWio1 finished task
2014.07.16 12:51:18 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:51:18 5: OWX_DS2480.query sending out: e15510541e0b0008003544
2014.07.16 12:51:18 5: OWX_ASYNC_RunTasks: T_Warmwasser schedule for timeout at 1405507880.092018
2014.07.16 12:51:18 5: OWX_DS2480 read: After loop no. 1 received: cd5510541e0b0008003544
2014.07.16 12:51:18 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:51:18 5: OWX_DS2480.query sending out: e15528a8a49b0100001144
2014.07.16 12:51:18 5: OWX_ASYNC_RunTasks: T_Ruecklauf_Anhebung schedule for timeout at 1405507880.240401
2014.07.16 12:51:18 5: OWX_DS2480 read: After loop no. 2 received: cd5528a8a49b0100001144
2014.07.16 12:51:18 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:51:18 5: OWX_DS2480.query sending out: e155200c2c0c000000593c0f00ffff
2014.07.16 12:51:18 5: OWX_ASYNC_RunTasks: Umweltsensor schedule for timeout at 1405507880.366370
2014.07.16 12:51:18 5: OWX_DS2480 read: After loop no. 2 received: cd55200c2c0c000000593c0f003a03
2014.07.16 12:51:18 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:51:18 5: OWX_DS2480.query sending out: e155200c2c0c00000059aa0000ffffffffffffffffffff
2014.07.16 12:51:18 5: OWX_ASYNC_RunTasks: Umweltsensor schedule for timeout at 1405507880.495112
2014.07.16 12:51:18 5: OWX_DS2480 read: After loop no. 3 received: cd55200c2c0c00000059aa0000a2f939ba8fb13ee94924
2014.07.16 12:51:18 5: OWX_ASYNC_RunTasks: Umweltsensor finished task
2014.07.16 12:51:18 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:51:18 5: OWX_DS2480.query sending out: e155200c2c0c00000059aa1000ffffffffffffffffffff
2014.07.16 12:51:18 5: OWX_ASYNC_RunTasks: Umweltsensor schedule for timeout at 1405507880.641008
2014.07.16 12:51:18 5: OWX_DS2480 read: After loop no. 1 received: cd55200c2c0c00000059aa1000f5ff00b900b900ff11ba
2014.07.16 12:51:18 5: OWX_ASYNC_RunTasks: Umweltsensor finished task
....
2014.07.16 12:52:09 5:  Alarms = 10.787E83020800.65 10.541E0B000800.35 10.0576A8020800.6D 28.905F9B010000.8B 28.CA0FAC040000.04 28.0E37AC040000.FD 28.AEE870010000.B6 28.810671010000.D3 28.1307AC040000.68 29.68980C000000.DA                        #####Alarm auf einem Switch???
....
12:55:18 5: OWX_ASYNC_RunTasks: Umweltsensor schedule for timeout at 1405508120.339559
2014.07.16 12:55:18 5: OWX_DS2480 read: After loop no. 2 received: cd5400048204820000480400800000
2014.07.16 12:55:18 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:55:18 5: OWX_DS2480.query sending out: e155200c2c0c00000059aa0000ffffffffffffffffffff
2014.07.16 12:55:18 5: OWX_ASYNC_RunTasks: Umweltsensor schedule for timeout at 1405508120.467405
2014.07.16 12:55:18 5: OWX_DS2480 read: After loop no. 3 received: cd540004820482000048aa000000000000000000000000
2014.07.16 12:55:18 4: OWX_ASYNC_RunTasks: Umweltsensor Error task: invalid CRC at ./FHEM/21_OWAD.pm line 1622.

2014.07.16 12:55:18 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:55:18 5: OWX_DS2480.query sending out: e155200c2c0c00000059aa1000ffffffffffffffffffff
2014.07.16 12:55:18 5: OWX_ASYNC_RunTasks: Umweltsensor schedule for timeout at 1405508120.614009
2014.07.16 12:55:18 5: OWX_DS2480 read: After loop no. 3 received: cd540004820482000048aa100000000000000000000000
2014.07.16 12:55:18 4: OWX_ASYNC_RunTasks: Umweltsensor Error task: invalid CRC at ./FHEM/21_OWAD.pm line 1622.

2014.07.16 12:55:18 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:55:18 5: OWX_DS2480.query sending out: e155200c2c0c00000059aa0800ffffffffffffffffffff
2014.07.16 12:55:18 5: OWX_ASYNC_RunTasks: Umweltsensor schedule for timeout at 1405508120.757707
2014.07.16 12:55:18 5: OWX_DS2480 read: After loop no. 1 received: cd540004820482000048aa088400000000000000000000
2014.07.16 12:55:18 4: OWX_ASYNC_RunTasks: Umweltsensor Error task: invalid CRC at ./FHEM/21_OWAD.pm line 1622.

2014.07.16 12:55:18 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:55:19 5: OWX_DS2480.query sending out: e15528a8a49b01000011beffffffffffffffffff
2014.07.16 12:55:19 5: OWX_ASYNC_RunTasks: T_Ruecklauf_Anhebung schedule for timeout at 1405508120.927913
2014.07.16 12:55:19 5: OWX_DS2480 read: After loop no. 3 received: cd5428a8a4880000001082000000000000000000
2014.07.16 12:55:19 4: OWX_ASYNC_RunTasks: T_Ruecklauf_Anhebung Error task: invalid data at ./FHEM/21_OWTHERM.pm line 931.

2014.07.16 12:55:19 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:55:19 5: OWX_DS2480.query sending out: e15510541e0b00080035beffffffffffffffffff
2014.07.16 12:55:19 5: OWX_ASYNC_RunTasks: T_Warmwasser schedule for timeout at 1405508121.061381
2014.07.16 12:55:19 5: OWX_DS2480 read: After loop no. 3 received: cd54105402088408841482000000000000000000
2014.07.16 12:55:19 4: OWX_ASYNC_RunTasks: T_Warmwasser Error task: invalid data at ./FHEM/21_OWTHERM.pm line 931.

2014.07.16 12:55:19 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:55:19 5: OWX_DS2480.query sending out: e15528905f9b0100008b44
2014.07.16 12:55:19 5: OWX_ASYNC_RunTasks: Aussenluft schedule for timeout at 1405508121.204417
2014.07.16 12:55:19 5: OWX_DS2480 read: After loop no. 2 received: cd54289040880000008844
2014.07.16 12:55:19 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:55:19 5: OWX_DS2480.query sending out: e155281307ac0400006844
2014.07.16 12:55:19 5: OWX_ASYNC_RunTasks: Fortluft schedule for timeout at 1405508121.334384
2014.07.16 12:55:19 5: OWX_DS2480 read: After loop no. 2 received: cd54281000a40400002844
2014.07.16 12:55:19 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:55:19 5: OWX_DS2480.query sending out: e1552610f326010000004e0008
2014.07.16 12:55:19 5: OWX_ASYNC_RunTasks: TF_Galerie schedule for timeout at 1405508121.458127
2014.07.16 12:55:19 5: OWX_DS2480 read: After loop no. 3 received: cd54221010220000000042000884
2014.07.16 12:55:19 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:55:19 5: OWX_DS2480.query sending out: e1552610f326010000004800
2014.07.16 12:55:19 5: OWX_ASYNC_RunTasks: TF_Galerie schedule for timeout at 1405508121.583875
2014.07.16 12:55:19 5: OWX_DS2480 read: After loop no. 3 received: cd5422101022000000004800
2014.07.16 12:55:19 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:55:19 5: OWX_DS2480.query sending out: e1552610f3260100000044
2014.07.16 12:55:19 5: OWX_ASYNC_RunTasks: TF_Galerie schedule for timeout at 1405508121.711942
2014.07.16 12:55:19 5: OWX_DS2480 read: After loop no. 2 received: cd54221010220000000044
2014.07.16 12:55:19 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:55:19 5: OWX_DS2480.query sending out: e15528810671010000d344
2014.07.16 12:55:19 5: OWX_ASYNC_RunTasks: T_Ruecklauf schedule for timeout at 1405508121.842554
2014.07.16 12:55:19 5: OWX_DS2480 read: After loop no. 1 received: cd54280002100000005044
2014.07.16 12:55:20 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:55:20 5: OWX_DS2480.query sending out: e1552610f32601000000b4
2014.07.16 12:55:20 5: OWX_ASYNC_RunTasks: TF_Galerie schedule for timeout at 1405508121.990036
2014.07.16 12:55:20 5: OWX_DS2480 read: After loop no. 2 received: cd54221010220000000094
2014.07.16 12:55:20 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:55:20 5: OWX_DS2480.query sending out: e15528905f9b0100008bbeffffffffffffffffff
2014.07.16 12:55:20 5: OWX_ASYNC_RunTasks: Aussenluft schedule for timeout at 1405508122.114325
2014.07.16 12:55:20 5: OWX_DS2480 read: After loop no. 2 received: cd54289040880000008882000000000000000000
2014.07.16 12:55:20 4: OWX_ASYNC_RunTasks: Aussenluft Error task: invalid data at ./FHEM/21_OWTHERM.pm line 931.

2014.07.16 12:55:20 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:55:20 5: OWX_DS2480.query sending out: e155281307ac04000068beffffffffffffffffff
2014.07.16 12:55:20 5: OWX_ASYNC_RunTasks: Fortluft schedule for timeout at 1405508122.260324
2014.07.16 12:55:20 5: OWX_DS2480 read: After loop no. 3 received: cd54281000a40400002882000000000000000000
2014.07.16 12:55:20 4: OWX_ASYNC_RunTasks: Fortluft Error task: invalid data at ./FHEM/21_OWTHERM.pm line 931.

2014.07.16 12:55:20 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:55:20 5: OWX_DS2480.query sending out: e1552610f32601000000b800
2014.07.16 12:55:20 5: OWX_ASYNC_RunTasks: TF_Galerie schedule for timeout at 1405508122.404483
2014.07.16 12:55:20 5: OWX_DS2480 read: After loop no. 2 received: cd5422101022000000008800
2014.07.16 12:55:20 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:55:20 5: OWX_DS2480.query sending out: e155100576a80208006d44
2014.07.16 12:55:20 5: OWX_ASYNC_RunTasks: T_Heizung schedule for timeout at 1405508122.529893
2014.07.16 12:55:20 5: OWX_DS2480 read: After loop no. 2 received: cd54100412a80208842444
2014.07.16 12:55:20 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:55:20 5: OWX_DS2480.query sending out: e1552610f32601000000be00ffffffffffffffffff
2014.07.16 12:55:20 5: OWX_ASYNC_RunTasks: TF_Galerie schedule for timeout at 1405508122.658139
2014.07.16 12:55:20 5: OWX_DS2480 read: After loop no. 3 received: cd5422101022000000008200000000000000000000
2014.07.16 12:55:20 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:55:20 5: OWX_DS2480.query sending out: e1552610f326010000004e0000
2014.07.16 12:55:20 5: OWX_ASYNC_RunTasks: TF_Galerie schedule for timeout at 1405508122.800811
2014.07.16 12:55:20 5: OWX_DS2480 read: After loop no. 3 received: cd542210102200000000420000
2014.07.16 12:55:20 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:55:21 5: OWX_DS2480.query sending out: e1552610f326010000004800
2014.07.16 12:55:21 5: OWX_ASYNC_RunTasks: TF_Galerie schedule for timeout at 1405508122.927794
2014.07.16 12:55:21 5: OWX_DS2480 read: After loop no. 2 received: cd5422101022000000004800
2014.07.16 12:55:21 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:55:21 5: OWX_DS2480.query sending out: e1552610f32601000000b4
2014.07.16 12:55:21 5: OWX_ASYNC_RunTasks: TF_Galerie schedule for timeout at 1405508123.055741
2014.07.16 12:55:21 5: OWX_DS2480 read: After loop no. 2 received: cd54221010220000000094
2014.07.16 12:55:21 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:55:21 5: OWX_DS2480.query sending out: e15528810671010000d3beffffffffffffffffff
2014.07.16 12:55:21 5: OWX_ASYNC_RunTasks: T_Ruecklauf schedule for timeout at 1405508123.186734
2014.07.16 12:55:21 5: OWX_DS2480 read: After loop no. 3 received: cd54280002100000005082000000000000000000
2014.07.16 12:55:21 4: OWX_ASYNC_RunTasks: T_Ruecklauf Error task: invalid data at ./FHEM/21_OWTHERM.pm line 931.

2014.07.16 12:55:21 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:55:21 5: OWX_DS2480.query sending out: e1552610f32601000000b800
2014.07.16 12:55:21 5: OWX_ASYNC_RunTasks: TF_Galerie schedule for timeout at 1405508123.332248
2014.07.16 12:55:21 5: OWX_DS2480 read: After loop no. 2 received: cd5422101022000000008800
2014.07.16 12:55:21 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:55:21 5: OWX_DS2480.query sending out: e155100576a80208006dbeffffffffffffffffff
2014.07.16 12:55:21 5: OWX_ASYNC_RunTasks: T_Heizung schedule for timeout at 1405508123.459432
2014.07.16 12:55:21 5: OWX_DS2480 read: After loop no. 3 received: cd54100412a80208842482000000000000000000
2014.07.16 12:55:21 4: OWX_ASYNC_RunTasks: T_Heizung Error task: invalid data at ./FHEM/21_OWTHERM.pm line 931.

2014.07.16 12:55:21 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:55:21 5: OWX_DS2480.query sending out: e1552610f32601000000be00ffffffffffffffffff
2014.07.16 12:55:21 5: OWX_ASYNC_RunTasks: TF_Galerie schedule for timeout at 1405508123.603699
2014.07.16 12:55:21 5: OWX_DS2480 read: After loop no. 3 received: cd5422101022000000008200000000000000000000
2014.07.16 12:55:22 3: set PID_Mischer_FBH desired 74 : Please define PID_Mischer_FBH first
2014.07.16 12:55:22 3: CUL_HM set SW_04_FBH_Pumpe on
2014.07.16 12:55:22 2: output of TH_FBH_Pumpe IF (1) (set PID_Mischer_FBH desired {(34+(21-[TF_Galerie:temperature:d])*2)});set SW_04_FBH_Pumpe on;set PID_Mischer_FBH restart 100: Please define PID_Mischer_FBH first
Please define PID_Mischer_FBH first
2014.07.16 12:55:22 5: OWX_ASYNC_RunTasks: TF_Galerie finished task
2014.07.16 12:55:22 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:55:22 5: OWX_DS2480.query sending out: e15510787e830208006544
2014.07.16 12:55:22 5: OWX_ASYNC_RunTasks: T_Vorlauf_FBH schedule for timeout at 1405508124.210964
2014.07.16 12:55:22 5: OWX_DS2480 read: After loop no. 1 received: cd54100802000208842444
2014.07.16 12:55:22 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:55:22 5: OWX_DS2480.query sending out: e155280e37ac040000fd44
2014.07.16 12:55:22 5: OWX_ASYNC_RunTasks: Abluft schedule for timeout at 1405508124.361220
2014.07.16 12:55:22 5: OWX_DS2480 read: After loop no. 1 received: cd54280281a40400000444
2014.07.16 12:55:22 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:55:22 5: OWX_DS2480.query sending out: e15528ca0fac0400000444
2014.07.16 12:55:22 5: OWX_ASYNC_RunTasks: Zuluft schedule for timeout at 1405508124.481217
2014.07.16 12:55:22 5: OWX_DS2480 read: After loop no. 2 received: cd54284a00800400000444
2014.07.16 12:55:22 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:55:22 5: OWX_DS2480.query sending out: e1552968980c000000daf08800ffffffffffffffffffff
2014.07.16 12:55:22 5: OWX_ASYNC_RunTasks: Switch_Heizkeller schedule for timeout at 1405508124.608374
2014.07.16 12:55:22 5: OWX_DS2480 read: After loop no. 3 received: cd54282888048200004a10880000000000000000000000
2014.07.16 12:55:22 4: OWX_ASYNC_RunTasks: Switch_Heizkeller exited task: invalid data
2014.07.16 12:55:22 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:55:22 5: OWX_DS2480.query sending out: e15528aee870010000b644
2014.07.16 12:55:22 5: OWX_ASYNC_RunTasks: Dachfenster_Sued schedule for timeout at 1405508124.767994
2014.07.16 12:55:22 5: OWX_DS2480 read: After loop no. 2 received: cd5428a228100000009244
2014.07.16 12:55:23 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:55:23 5: OWX_DS2480.query sending out: e15510787e8302080065beffffffffffffffffff
2014.07.16 12:55:23 5: OWX_ASYNC_RunTasks: T_Vorlauf_FBH schedule for timeout at 1405508125.017697
2014.07.16 12:55:23 5: OWX_DS2480 read: After loop no. 3 received: cd54100802000208842482000000000000000000
2014.07.16 12:55:23 4: OWX_ASYNC_RunTasks: T_Vorlauf_FBH Error task: invalid data at ./FHEM/21_OWTHERM.pm line 931.

2014.07.16 12:55:23 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:55:23 5: OWX_DS2480.query sending out: e155280e37ac040000fdbeffffffffffffffffff
2014.07.16 12:55:23 5: OWX_ASYNC_RunTasks: Abluft schedule for timeout at 1405508125.167102
2014.07.16 12:55:23 5: OWX_DS2480 read: After loop no. 3 received: cd54280281a40400000482000000000000000000
2014.07.16 12:55:23 4: OWX_ASYNC_RunTasks: Abluft Error task: invalid data at ./FHEM/21_OWTHERM.pm line 931.

2014.07.16 12:55:23 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:55:23 5: OWX_DS2480.query sending out: e15528ca0fac04000004beffffffffffffffffff
2014.07.16 12:55:23 5: OWX_ASYNC_RunTasks: Zuluft schedule for timeout at 1405508125.314575
2014.07.16 12:55:23 5: OWX_DS2480 read: After loop no. 3 received: cd54284a00800400000482000000000000000000
2014.07.16 12:55:23 4: OWX_ASYNC_RunTasks: Zuluft Error task: invalid data at ./FHEM/21_OWTHERM.pm line 931.

2014.07.16 12:55:23 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:55:23 5: OWX_DS2480.query sending out: e15528aee870010000b6beffffffffffffffffff
2014.07.16 12:55:23 5: OWX_ASYNC_RunTasks: Dachfenster_Sued schedule for timeout at 1405508125.574074
2014.07.16 12:55:23 5: OWX_DS2480 read: After loop no. 3 received: cd5428a228100000009282000000000000000000
2014.07.16 12:55:23 4: OWX_ASYNC_RunTasks: Dachfenster_Sued Error task: invalid data at ./FHEM/21_OWTHERM.pm line 931.

2014.07.16 12:55:48 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:55:48 5: OWX_DS2480.query sending out: e15528905f9b0100008b44
2014.07.16 12:55:48 5: OWX_ASYNC_RunTasks: Aussenluft schedule for timeout at 1405508150.036951
2014.07.16 12:55:48 5: OWX_DS2480 read: After loop no. 2 received: cd54289040880000008844
2014.07.16 12:55:48 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:55:48 5: OWX_DS2480.query sending out: e155281307ac0400006844
2014.07.16 12:55:48 5: OWX_ASYNC_RunTasks: Fortluft schedule for timeout at 1405508150.175181
2014.07.16 12:55:48 5: OWX_DS2480 read: After loop no. 2 received: cd54281000a40400002844
2014.07.16 12:55:48 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:55:48 5: OWX_DS2480.query sending out: e155100576a80208006d44
2014.07.16 12:55:48 5: OWX_ASYNC_RunTasks: T_Heizung schedule for timeout at 1405508150.299948
2014.07.16 12:55:48 5: OWX_DS2480 read: After loop no. 3 received: cd54100412a80208842444
2014.07.16 12:55:48 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:55:48 5: OWX_DS2480.query sending out: e15510787e830208006544
2014.07.16 12:55:48 5: OWX_ASYNC_RunTasks: T_Vorlauf_FBH schedule for timeout at 1405508150.427909
2014.07.16 12:55:48 5: OWX_DS2480 read: After loop no. 3 received: cd54100802000208842444
2014.07.16 12:55:48 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:55:48 5: OWX_DS2480.query sending out: e155280e37ac040000fd44
2014.07.16 12:55:48 5: OWX_ASYNC_RunTasks: Abluft schedule for timeout at 1405508150.555879
2014.07.16 12:55:48 5: OWX_DS2480 read: After loop no. 3 received: cd54280281a40400000444
2014.07.16 12:55:48 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:55:48 5: OWX_DS2480.query sending out: e15528ca0fac0400000444
2014.07.16 12:55:48 5: OWX_ASYNC_RunTasks: Zuluft schedule for timeout at 1405508150.684583
2014.07.16 12:55:48 5: OWX_DS2480 read: After loop no. 3 received: cd54284a00800400000444
2014.07.16 12:55:48 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:55:48 5: OWX_DS2480.query sending out: e15528905f9b0100008bbeffffffffffffffffff
2014.07.16 12:55:48 5: OWX_ASYNC_RunTasks: Aussenluft schedule for timeout at 1405508150.843066
2014.07.16 12:55:49 5: OWX_DS2480 read: After loop no. 2 received: cd54289040880000008882000000000000000000
2014.07.16 12:55:49 4: OWX_ASYNC_RunTasks: Aussenluft Error task: invalid data at ./FHEM/21_OWTHERM.pm line 931.

2014.07.16 12:55:49 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:55:49 5: OWX_DS2480.query sending out: e155281307ac04000068beffffffffffffffffff
2014.07.16 12:55:49 5: OWX_ASYNC_RunTasks: Fortluft schedule for timeout at 1405508151.014499
2014.07.16 12:55:49 5: OWX_DS2480 read: After loop no. 3 received: cd54281000a40400002882000000000000000000
2014.07.16 12:55:49 4: OWX_ASYNC_RunTasks: Fortluft Error task: invalid data at ./FHEM/21_OWTHERM.pm line 931.

2014.07.16 12:55:49 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:55:49 5: OWX_DS2480.query sending out: e155100576a80208006dbeffffffffffffffffff
2014.07.16 12:55:49 5: OWX_ASYNC_RunTasks: T_Heizung schedule for timeout at 1405508151.150090
2014.07.16 12:55:49 5: OWX_DS2480 read: After loop no. 3 received: cd54100412a80208842482000000000000000000
2014.07.16 12:55:49 4: OWX_ASYNC_RunTasks: T_Heizung Error task: invalid data at ./FHEM/21_OWTHERM.pm line 931.

2014.07.16 12:55:49 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:55:49 5: OWX_DS2480.query sending out: e15510787e8302080065beffffffffffffffffff
2014.07.16 12:55:49 5: OWX_ASYNC_RunTasks: T_Vorlauf_FBH schedule for timeout at 1405508151.302629
2014.07.16 12:55:49 5: OWX_DS2480 read: After loop no. 3 received: cd54100802000208842482000000000000000000
2014.07.16 12:55:49 4: OWX_ASYNC_RunTasks: T_Vorlauf_FBH Error task: invalid data at ./FHEM/21_OWTHERM.pm line 931.

2014.07.16 12:55:49 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:55:49 5: OWX_DS2480.query sending out: e155280e37ac040000fdbeffffffffffffffffff
2014.07.16 12:55:49 5: OWX_ASYNC_RunTasks: Abluft schedule for timeout at 1405508151.437898
2014.07.16 12:55:49 5: OWX_DS2480 read: After loop no. 4 received: cd54280281a40400000482000000000000000000
2014.07.16 12:55:49 4: OWX_ASYNC_RunTasks: Abluft Error task: invalid data at ./FHEM/21_OWTHERM.pm line 931.

2014.07.16 12:55:49 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:55:49 5: OWX_DS2480.query sending out: e15528ca0fac04000004beffffffffffffffffff
2014.07.16 12:55:49 5: OWX_ASYNC_RunTasks: Zuluft schedule for timeout at 1405508151.581236
2014.07.16 12:55:49 5: OWX_DS2480 read: After loop no. 4 received: cd54284a00800400000482000000000000000000
2014.07.16 12:55:49 4: OWX_ASYNC_RunTasks: Zuluft Error task: invalid data at ./FHEM/21_OWTHERM.pm line 931.

2014.07.16 12:56:13 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:56:13 5: OWX_DS2480.query sending out: e1552968980c000000daf08800ffffffffffffffffffff
2014.07.16 12:56:13 5: OWX_ASYNC_RunTasks: Switch_Heizkeller schedule for timeout at 1405508175.153985
2014.07.16 12:56:13 5: OWX_DS2480 read: After loop no. 14 received: cd54282888048200004a10880000000000000000000000
2014.07.16 12:56:13 4: OWX_ASYNC_RunTasks: Switch_Heizkeller exited task: invalid data
2014.07.16 12:56:18 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:56:18 5: OWX_DS2480.query sending out: e15510541e0b0008003544
2014.07.16 12:56:18 5: OWX_ASYNC_RunTasks: T_Warmwasser schedule for timeout at 1405508180.049802
2014.07.16 12:56:18 5: OWX_DS2480 read: After loop no. 1 received: cd54105402088408841444
2014.07.16 12:56:18 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:56:18 5: OWX_DS2480.query sending out: e15528a8a49b0100001144
2014.07.16 12:56:18 5: OWX_ASYNC_RunTasks: T_Ruecklauf_Anhebung schedule for timeout at 1405508180.193814
2014.07.16 12:56:18 5: OWX_DS2480 read: After loop no. 3 received: cd5428a8a4880000001044
2014.07.16 12:56:18 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:56:18 5: OWX_DS2480.query sending out: e155200c2c0c000000593c0f00ffff
2014.07.16 12:56:18 5: OWX_ASYNC_RunTasks: Umweltsensor schedule for timeout at 1405508180.327868
2014.07.16 12:56:18 5: OWX_DS2480 read: After loop no. 3 received: cd5400048204820000480400800000
2014.07.16 12:56:18 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:56:18 5: OWX_DS2480.query sending out: e155200c2c0c00000059aa0000ffffffffffffffffffff
2014.07.16 12:56:18 5: OWX_ASYNC_RunTasks: Umweltsensor schedule for timeout at 1405508180.467168
2014.07.16 12:56:18 5: OWX_DS2480 read: After loop no. 4 received: cd540004820482000048aa000000000000000000000000
2014.07.16 12:56:18 4: OWX_ASYNC_RunTasks: Umweltsensor Error task: invalid CRC at ./FHEM/21_OWAD.pm line 1622.

2014.07.16 12:56:18 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:56:18 5: OWX_DS2480.query sending out: e155200c2c0c00000059aa1000ffffffffffffffffffff
2014.07.16 12:56:18 5: OWX_ASYNC_RunTasks: Umweltsensor schedule for timeout at 1405508180.619313
2014.07.16 12:56:18 5: OWX_DS2480 read: After loop no. 3 received: cd540004820482000048aa100000000000000000000000
2014.07.16 12:56:18 4: OWX_ASYNC_RunTasks: Umweltsensor Error task: invalid CRC at ./FHEM/21_OWAD.pm line 1622.

2014.07.16 12:56:18 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:56:18 5: OWX_DS2480.query sending out: e155200c2c0c00000059aa0800ffffffffffffffffffff
2014.07.16 12:56:18 5: OWX_ASYNC_RunTasks: Umweltsensor schedule for timeout at 1405508180.763910
2014.07.16 12:56:18 5: OWX_DS2480 read: After loop no. 3 received: cd540004820482000048aa088400000000000000000000
2014.07.16 12:56:18 4: OWX_ASYNC_RunTasks: Umweltsensor Error task: invalid CRC at ./FHEM/21_OWAD.pm line 1622.

2014.07.16 12:56:18 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:56:19 5: OWX_DS2480.query sending out: e15510541e0b00080035beffffffffffffffffff
2014.07.16 12:56:19 5: OWX_ASYNC_RunTasks: T_Warmwasser schedule for timeout at 1405508180.907393
2014.07.16 12:56:19 5: OWX_DS2480 read: After loop no. 1 received: cd54105402088408841482000000000000000000
2014.07.16 12:56:19 4: OWX_ASYNC_RunTasks: T_Warmwasser Error task: invalid data at ./FHEM/21_OWTHERM.pm line 931.

2014.07.16 12:56:19 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:56:19 5: OWX_DS2480.query sending out: e15528a8a49b01000011beffffffffffffffffff
2014.07.16 12:56:19 5: OWX_ASYNC_RunTasks: T_Ruecklauf_Anhebung schedule for timeout at 1405508181.074819
2014.07.16 12:56:19 5: OWX_DS2480 read: After loop no. 3 received: cd5428a8a4880000001082000000000000000000
2014.07.16 12:56:19 4: OWX_ASYNC_RunTasks: T_Ruecklauf_Anhebung Error task: invalid data at ./FHEM/21_OWTHERM.pm line 931.

2014.07.16 12:56:19 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:56:19 5: OWX_DS2480.query sending out: e15528905f9b0100008b44
2014.07.16 12:56:19 5: OWX_ASYNC_RunTasks: Aussenluft schedule for timeout at 1405508181.209975
2014.07.16 12:56:19 5: OWX_DS2480 read: After loop no. 2 received: cd54289040880000008844
2014.07.16 12:56:19 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:56:19 5: OWX_DS2480.query sending out: e155281307ac0400006844
2014.07.16 12:56:19 5: OWX_ASYNC_RunTasks: Fortluft schedule for timeout at 1405508181.335418
2014.07.16 12:56:19 5: OWX_DS2480 read: After loop no. 3 received: cd54281000a40400002844
2014.07.16 12:56:19 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:56:19 5: OWX_DS2480.query sending out: e1552610f326010000004e0008
2014.07.16 12:56:19 5: OWX_ASYNC_RunTasks: TF_Galerie schedule for timeout at 1405508181.470973
2014.07.16 12:56:19 5: OWX_DS2480 read: After loop no. 3 received: cd54221010220000000042000884
2014.07.16 12:56:19 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:56:19 5: OWX_DS2480.query sending out: e1552610f326010000004800
2014.07.16 12:56:19 5: OWX_ASYNC_RunTasks: TF_Galerie schedule for timeout at 1405508181.606338
2014.07.16 12:56:19 5: OWX_DS2480 read: After loop no. 3 received: cd5422101022000000004800
2014.07.16 12:56:19 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:56:19 5: OWX_DS2480.query sending out: e1552610f3260100000044
2014.07.16 12:56:19 5: OWX_ASYNC_RunTasks: TF_Galerie schedule for timeout at 1405508181.734010
2014.07.16 12:56:19 5: OWX_DS2480 read: After loop no. 3 received: cd54221010220000000044
2014.07.16 12:56:19 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:56:19 5: OWX_DS2480.query sending out: e155100576a80208006d44
2014.07.16 12:56:19 5: OWX_ASYNC_RunTasks: T_Heizung schedule for timeout at 1405508181.863644
2014.07.16 12:56:19 5: OWX_DS2480 read: After loop no. 1 received: cd54100412a80208842444
2014.07.16 12:56:20 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:56:20 5: OWX_DS2480.query sending out: e1552610f32601000000b4
2014.07.16 12:56:20 5: OWX_ASYNC_RunTasks: TF_Galerie schedule for timeout at 1405508181.993528
2014.07.16 12:56:20 5: OWX_DS2480 read: After loop no. 1 received: cd54221010220000000094
2014.07.16 12:56:20 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:56:20 5: OWX_DS2480.query sending out: e15528905f9b0100008bbeffffffffffffffffff
2014.07.16 12:56:20 5: OWX_ASYNC_RunTasks: Aussenluft schedule for timeout at 1405508182.126371
2014.07.16 12:56:20 5: OWX_DS2480 read: After loop no. 2 received: cd54289040880000008882000000000000000000
2014.07.16 12:56:20 4: OWX_ASYNC_RunTasks: Aussenluft Error task: invalid data at ./FHEM/21_OWTHERM.pm line 931.

2014.07.16 12:56:20 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:56:20 5: OWX_DS2480.query sending out: e155281307ac04000068beffffffffffffffffff
2014.07.16 12:56:20 5: OWX_ASYNC_RunTasks: Fortluft schedule for timeout at 1405508182.266594
2014.07.16 12:56:20 5: OWX_DS2480 read: After loop no. 3 received: cd54281000a40400002882000000000000000000
2014.07.16 12:56:20 4: OWX_ASYNC_RunTasks: Fortluft Error task: invalid data at ./FHEM/21_OWTHERM.pm line 931.

2014.07.16 12:56:20 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:56:20 5: OWX_DS2480.query sending out: e1552610f32601000000b800
2014.07.16 12:56:20 5: OWX_ASYNC_RunTasks: TF_Galerie schedule for timeout at 1405508182.410176
2014.07.16 12:56:20 5: OWX_DS2480 read: After loop no. 1 received: cd5422101022000000008800
2014.07.16 12:56:20 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:56:20 5: OWX_DS2480.query sending out: e15528810671010000d344
2014.07.16 12:56:20 5: OWX_ASYNC_RunTasks: T_Ruecklauf schedule for timeout at 1405508182.534551
2014.07.16 12:56:20 5: OWX_DS2480 read: After loop no. 2 received: cd54280002100000005044
2014.07.16 12:56:20 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:56:20 5: OWX_DS2480.query sending out: e1552610f32601000000be00ffffffffffffffffff
2014.07.16 12:56:20 5: OWX_ASYNC_RunTasks: TF_Galerie schedule for timeout at 1405508182.663243
2014.07.16 12:56:20 5: OWX_DS2480 read: After loop no. 3 received: cd5422101022000000008200000000000000000000
2014.07.16 12:56:20 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:56:20 5: OWX_DS2480.query sending out: e1552610f326010000004e0000
2014.07.16 12:56:20 5: OWX_ASYNC_RunTasks: TF_Galerie schedule for timeout at 1405508182.807368
2014.07.16 12:56:20 5: OWX_DS2480 read: After loop no. 2 received: cd542210102200000000420000
2014.07.16 12:56:20 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:56:21 5: OWX_DS2480.query sending out: e1552610f326010000004800
2014.07.16 12:56:21 5: OWX_ASYNC_RunTasks: TF_Galerie schedule for timeout at 1405508182.933639
2014.07.16 12:56:21 5: OWX_DS2480 read: After loop no. 3 received: cd5422101022000000004800
2014.07.16 12:56:21 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:56:21 5: OWX_DS2480.query sending out: e1552610f32601000000b4
2014.07.16 12:56:21 5: OWX_ASYNC_RunTasks: TF_Galerie schedule for timeout at 1405508183.061822
2014.07.16 12:56:21 5: OWX_DS2480 read: After loop no. 2 received: cd54221010220000000094
2014.07.16 12:56:21 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:56:21 5: OWX_DS2480.query sending out: e155100576a80208006dbeffffffffffffffffff
2014.07.16 12:56:21 5: OWX_ASYNC_RunTasks: T_Heizung schedule for timeout at 1405508183.192039
2014.07.16 12:56:21 5: OWX_DS2480 read: After loop no. 3 received: cd54100412a80208842482000000000000000000
2014.07.16 12:56:21 4: OWX_ASYNC_RunTasks: T_Heizung Error task: invalid data at ./FHEM/21_OWTHERM.pm line 931.

2014.07.16 12:56:21 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:56:21 5: OWX_DS2480.query sending out: e1552610f32601000000b800
2014.07.16 12:56:21 5: OWX_ASYNC_RunTasks: TF_Galerie schedule for timeout at 1405508183.338161
2014.07.16 12:56:21 5: OWX_DS2480 read: After loop no. 2 received: cd5422101022000000008800
2014.07.16 12:56:21 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:56:21 5: OWX_DS2480.query sending out: e15528810671010000d3beffffffffffffffffff
2014.07.16 12:56:21 5: OWX_ASYNC_RunTasks: T_Ruecklauf schedule for timeout at 1405508183.462844
2014.07.16 12:56:21 5: OWX_DS2480 read: After loop no. 3 received: cd54280002100000005082000000000000000000
2014.07.16 12:56:21 4: OWX_ASYNC_RunTasks: T_Ruecklauf Error task: invalid data at ./FHEM/21_OWTHERM.pm line 931.

2014.07.16 12:56:21 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:56:21 5: OWX_DS2480.query sending out: e1552610f32601000000be00ffffffffffffffffff
2014.07.16 12:56:21 5: OWX_ASYNC_RunTasks: TF_Galerie schedule for timeout at 1405508183.609230
2014.07.16 12:56:21 5: OWX_DS2480 read: After loop no. 3 received: cd5422101022000000008200000000000000000000
2014.07.16 12:56:21 5: OWX_ASYNC_RunTasks: TF_Galerie finished task
2014.07.16 12:56:21 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:56:21 5: OWX_DS2480.query sending out: e15510787e830208006544
2014.07.16 12:56:21 5: OWX_ASYNC_RunTasks: T_Vorlauf_FBH schedule for timeout at 1405508183.770579
2014.07.16 12:56:21 5: OWX_DS2480 read: After loop no. 2 received: cd54100802000208842444
2014.07.16 12:56:21 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:56:21 5: OWX_DS2480.query sending out: e155280e37ac040000fd44
2014.07.16 12:56:21 5: OWX_ASYNC_RunTasks: Abluft schedule for timeout at 1405508183.894290
2014.07.16 12:56:22 5: OWX_DS2480 read: After loop no. 2 received: cd54280281a40400000444
2014.07.16 12:56:22 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:56:22 5: OWX_DS2480.query sending out: e15528ca0fac0400000444
2014.07.16 12:56:22 5: OWX_ASYNC_RunTasks: Zuluft schedule for timeout at 1405508184.021228
2014.07.16 12:56:22 5: OWX_DS2480 read: After loop no. 3 received: cd54284a00800400000444
2014.07.16 12:56:22 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:56:22 5: OWX_DS2480.query sending out: e15510787e8302080065beffffffffffffffffff
2014.07.16 12:56:22 5: OWX_ASYNC_RunTasks: T_Vorlauf_FBH schedule for timeout at 1405508184.643436
2014.07.16 12:56:22 5: OWX_DS2480 read: After loop no. 1 received: cd54100802000208842482000000000000000000
2014.07.16 12:56:22 4: OWX_ASYNC_RunTasks: T_Vorlauf_FBH Error task: invalid data at ./FHEM/21_OWTHERM.pm line 931.

2014.07.16 12:56:22 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:56:23 5: OWX_DS2480.query sending out: e155280e37ac040000fdbeffffffffffffffffff
2014.07.16 12:56:23 5: OWX_ASYNC_RunTasks: Abluft schedule for timeout at 1405508184.963921
2014.07.16 12:56:23 5: OWX_DS2480 read: After loop no. 2 received: cd54280281a40400000482000000000000000000
2014.07.16 12:56:23 4: OWX_ASYNC_RunTasks: Abluft Error task: invalid data at ./FHEM/21_OWTHERM.pm line 931.

2014.07.16 12:56:23 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:56:23 5: OWX_DS2480.query sending out: e15528ca0fac04000004beffffffffffffffffff
2014.07.16 12:56:23 5: OWX_ASYNC_RunTasks: Zuluft schedule for timeout at 1405508185.095248
2014.07.16 12:56:23 5: OWX_DS2480 read: After loop no. 3 received: cd54284a00800400000482000000000000000000
2014.07.16 12:56:23 4: OWX_ASYNC_RunTasks: Zuluft Error task: invalid data at ./FHEM/21_OWTHERM.pm line 931.

2014.07.16 12:56:23 5: OWX_DS2480.query sending out: e3c5
2014.07.16 12:56:23 5: OWX_DS2480.query sending out: e1552968980c000000daf08800ffffffffffffffffffff



Und noch eine Beobachtung: In der Liste der geladenen Module taucht auch OWX.pm neben OWX_ASYNC.pm auf ?!?

Herzliche Grüße

Christian
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 16 Juli 2014, 14:50:15
Hallo Christian,


# Switch_Heizkeller unexpected thread state PT_WAITING without TimeoutTime at ./

ist gefixed.

OWX.pm wird tatsächlich geladen (da sind die CRC-funtionen drin).

Hallo Alexander,

im OWX_ASYNC_Kick war tatsächlich ein Fehler, habe ich auch behoben.

----

hab die verbliebenen 'die'-Aufrufe (für Dinge, die eigentlich nie vorkommen sollten) aus der OWX_ASYNC_RunTasks entfernt. Zum Testen daher bitte verbose am OWX_ASYNC mindestens auf 4 setzen, sonst sieht man solche Fehler nicht mehr.

Gruß,

Norbert

Titel: Antw:OWX asynchron überarbeitet
Beitrag von: cwagner am 16 Juli 2014, 16:45:50
Hallo Norbert,

jetzt bist Du in der 113. Minute :-)
Erstmals startet meine Installation nun vollständig und alle Devices laufen...

Diese beiden Log-Eintragungen fand ich bisher:
014.07.16 16:37:33 3: OWX_DS2480: Search 2nd return has wrong parameter with length = 17
2014.07.16 16:38:38 4: OWX_ASYNC_RunTasks: OWio1 task timed out


Dennoch scheint alles zu laufen.


Herzliche Grüße

Christian
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 16 Juli 2014, 18:12:27
Hallo Christian,

Zitat von: cwagner am 16 Juli 2014, 16:45:50
Diese beiden Log-Eintragungen fand ich bisher:
014.07.16 16:37:33 3: OWX_DS2480: Search 2nd return has wrong parameter with length = 17
2014.07.16 16:38:38 4: OWX_ASYNC_RunTasks: OWio1 task timed out


da ist eine Bussuche schief gegangen. Das kann viele Gründe haben. Wenn das nur sporadisch vorkommt, würde ich das jetzt mal nicht überbewerten.

Gruß,

Norbert
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: hexenmeister am 16 Juli 2014, 21:37:29
Hallo Norbert,
danke für die neue Version!

Habe sie eingespielt. Es läuft, keine Abstürze mehr, keine Fehlermeldungen. Aber irgfendwie werden nur Devices an einem der Controller aktualisiert...

Habe versucht, testweise einen Controller zu löschen. Prompt war FHEM weg:

Can't locate object method "exit" via package "OWX_DS2480" at ./FHEM/00_OWX_ASYNC.pm line 297.


Zieht man den Controller ab, läuft FHEM Amok:
2014.07.16 21:20:03.702 2: OWX: Error initializing OWio2: OWX_ASYNC_Init failed: OWX_SER: Serial device /dev/serial/by-id/usb-Prolific_Technology_Inc._USB-Serial_Controller-if00-port0@9600 not defined: No such file or directory
2014.07.16 21:20:03.816 3: Opening OWio2 device /dev/serial/by-id/usb-Prolific_Technology_Inc._USB-Serial_Controller-if00-port0
2014.07.16 21:20:03.819 3: Can't open /dev/serial/by-id/usb-Prolific_Technology_Inc._USB-Serial_Controller-if00-port0: No such file or directory

Immer und immer wieder die gleiche Meldung. Dafür waren plötzlich wieder die Geräte an dem ersten aktualisiert. Einmalig. dann wieder nichts.
Wieder einstecken, Reconnect funktioniert, die Devices an dem zweiten refreshed. Der erste will weiterhin nicht.

Zurück zu der synchronen Version. Devices werden wieder alle aktualisiert.
Mir scheint es so, dass es noch Proleme mit multiplen Controllern gibt.
Noch ein Unterschied ist mir aufgefallen. Die synchrone Version beachtet die gesetzte Intervalle, die asynchrone ignoriert sie (zählt nur das Intervall im Controller?)

LG,

Alexander
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: det. am 16 Juli 2014, 21:45:10
Hallo Norbert,
gute Arbeit! Auf RPI mit USB9097 (dem blauen aus dem China Shop) läuft OWX_ASYNC mit OWLCD und OWAD offenbar ohne Probleme und auf RPI mit USB 2480 (Eigenbau) macht es mit OWCOUNT und OWSWITCH auch was es soll.
Ich werde hier mal beobachten, was die User noch evtl. finden und dann am Wochenende mal wieder das Produktivsystem opfern.
An einem Testsystem ist läuft parallel noch OWX Sync wegen COC mit einem DS1820, das will nicht so richtig: 
ERRCOUNT
7
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: cwagner am 16 Juli 2014, 23:01:22
Hallo Norbert,

im Modul 21_OWSWITCH.pm  erlaubt bisher die Outputkanäle A...H mit Klarnamen zu versehen. Das habe ich auch erfolgreich benutzt - der Einfachkeihalber habe ich in komplizierten Konstrukten zur Verkürzung dann doch den Namen A...H statt des gemappten Namen verwendet.

Nach Umstellung von OWX auf OWX_ASYNC funktioniert nur der output-Name A...H, wenn kein gemappter Name festgelegt ist. Ansonsten muss ich offenbar den gemappten Namen verwenden.

Herzliche Grüße

Christian
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: hexenmeister am 16 Juli 2014, 23:28:16
Hi!

Das korrekte Auslesen meiner DS1820 war nicht von Dauer. Mit den neuen Versionen tat auch die synchrone Variante nicht sehr lange. Die Werte werden irgendwann nicht mehr aktualisiert.

im Log Hunderte von solchen Meldungen:

Use of uninitialized value $m in addition (+) at ./FHEM/00_OWX.pm line 1517.
Use of uninitialized value $string_part in concatenation (.) or string at ./FHEM/00_OWX.pm line 1519.
Use of uninitialized value $m in addition (+) at ./FHEM/00_OWX.pm line 1517.
Use of uninitialized value $string_part in concatenation (.) or string at ./FHEM/00_OWX.pm line 1519.
Use of uninitialized value $m in addition (+) at ./FHEM/00_OWX.pm line 1517.
Use of uninitialized value $string_part in concatenation (.) or string at ./FHEM/00_OWX.pm line 1519.
Use of uninitialized value $m in addition (+) at ./FHEM/00_OWX.pm line 1517.
...

Entweder mache ich etwas grundlegend falsch, oder es ist noch ein Wurm drin...

meine Definitionen dürften nicht ungewöhnlich sein:
# Controllers
#
#define OWio1 OWX_ASYNC /dev/serial/by-id/usb-FTDI_FT232R_USB_UART_A703DCZ6-if00-port0
define OWio1 OWX /dev/serial/by-id/usb-FTDI_FT232R_USB_UART_A703DCZ6-if00-port0
attr OWio1 alias 1wire Controller 1
attr OWio1 dokick 1
attr OWio1 group IO
attr OWio1 interval 60
attr OWio1 room IO_Devices
#
#define OWio2 OWX_ASYNC /dev/serial/by-id/usb-Prolific_Technology_Inc._USB-Serial_Controller-if00-port0
define OWio2 OWX /dev/serial/by-id/usb-Prolific_Technology_Inc._USB-Serial_Controller-if00-port0
attr OWio2 alias 1wire Controller 2
attr OWio2 dokick 1
attr OWio2 group IO
attr OWio2 interval 60
attr OWio2 room IO_Devices

define NN_TE_OWTS01.1W_Controller_Box1 OWTHERM DS18B20 FB3E06050000
attr NN_TE_OWTS01.1W_Controller_Box1 IODev OWio1
attr NN_TE_OWTS01.1W_Controller_Box1 alias 1wire Controller Gehaeuse
attr NN_TE_OWTS01.1W_Controller_Box1 event-on-change-reading temperature
attr NN_TE_OWTS01.1W_Controller_Box1 group 1wire Controller
attr NN_TE_OWTS01.1W_Controller_Box1 model DS1822
attr NN_TE_OWTS01.1W_Controller_Box1 room Technik
attr NN_TE_OWTS01.1W_Controller_Box1 tempConv onkick
attr NN_TE_OWTS01.1W_Controller_Box1 tempHigh 75
attr NN_TE_OWTS01.1W_Controller_Box1 tempLow 70
...


Grüße,

Alexander
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 17 Juli 2014, 07:24:37
Hallo Alexander,

Zitat von: hexenmeister am 16 Juli 2014, 23:28:16
im Log Hunderte von solchen Meldungen:

Use of uninitialized value $m in addition (+) at ./FHEM/00_OWX.pm line 1517.
Use of uninitialized value $string_part in concatenation (.) or string at ./FHEM/00_OWX.pm line 1519.
...


das spuckt OWX aus, wenn vom Busmaster beim Versuch zu lesen nix zurückkommt.

Zitat von: hexenmeister am 16 Juli 2014, 21:37:29
Habe versucht, testweise einen Controller zu löschen. Prompt war FHEM weg:

Can't locate object method "exit" via package "OWX_DS2480" at ./FHEM/00_OWX_ASYNC.pm line 297.

[...]

danke für diesen Hinweis. Fehlt im OWX_DS2480 wirklich, im OWX_FRM hab ich das drin.

Zitat von: hexenmeister am 16 Juli 2014, 23:28:16
Mir scheint es so, dass es noch Proleme mit multiplen Controllern gibt.

ja, scheint mir auch so. Und da das auch mit dem synchronen OWX auftritt, kann es eigentlich nur was mit der Initialisierung über die NotifyFn zu tun
haben, die ich in alle OWX-Clients eingebaut-habe. Ansonsten sind die beim synchronen OWX benutzten codepfade unverändert. Multiple Controller hatte ich nicht auf meinem Testplan (primär, weil mein Testaufbau nur einen Bus mit wechselnden Busmastern hat, das muss ich wohl dringend mal ändern...)

Zitat von: hexenmeister am 16 Juli 2014, 23:28:16
Noch ein Unterschied ist mir aufgefallen. Die synchrone Version beachtet die gesetzte Intervalle, die asynchrone ignoriert sie (zählt nur das Intervall im Controller?)

das soll so sein (beim OWX_ASYNC). Es hängt vom dokick-Attribut am Busmaster plus tempConv=onkick beim OWTHERM ab. Letzteres funktioniert mit dem synchronen OWX bisher nicht - und ich habe es bisher nur im asynchronen Code gefixed. Ich sehe keinen Sinn darin, bei tempConv=onkick noch zusätzlich die Aktualisierungen im Interval des OWTHERM-devices zu machen, wenn dabei sowieso kein Trigger der Temperaturmessung gemacht, sondern nur das letzte Ergebnis ausgelesen wird.

Gruß,

Norbert
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: hexenmeister am 17 Juli 2014, 08:36:40
Hallo Norbert,

ich habe erstmal die älteren Versionen aus Backup eingespielt (vor-vor-letzten müssten es sein. läuft jetzt synchron). Da gibt es keine Probleme mit mehreren Controllern.

Zitatdas spuckt OWX aus, wenn vom Busmaster beim Versuch zu lesen nix zurückkommt.
ah, ok. Wäre natürlich schöner, wenn eine sprechende Meldung dabei käme.

Zitatdas soll so sein (beim OWX_ASYNC)
ok, auch gut ;)

Danke und Grüße,

Alexander
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 17 Juli 2014, 13:01:35
also was ich bisher reproduzieren konnte:

A) 1. Busmaster OWX_ASYNC an FRM über Ethernet
   2. Busmaster OWX an DS2480
-> Devices an OWX werden nach dem Start einmalig korrekt ausgelesen, danach nur noch Fehler. Devices an OWX_ASYNC funktionieren sauber.

B) 1. Busmaster OWX_ASYNC an FRM über Ethernet
   2. Busmaster OWX_ASYNC an DS2480
-> läuft.

Andere Busmaster(kombinationen) habe ich grade nicht zur Hand, die liegen zu Hause.

D.h. ich bearbeite erst mal Fall A)...

Gruß,

Norbert
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 17 Juli 2014, 13:24:51
und schon behoben (http://sourceforge.net/p/fhem/code/6269/tree//trunk/fhem/FHEM/21_OWTHERM.pm?diff=51b78df35fcbc96f6b6b9d33:6268) :-)

Da am DS2480 nur ein OWTHERM hängt, teste ich jetzt noch mal die umgekehrte Kombi:

OWX an FRM over Ethernet + OWX_ASYNC an DS2480

(Am FRM hängt der ganze Zoo an OW-devices, am DS2480 grade nur ein DS18B20)

EDIT: bis darauf, dass das Webinterface beim Repeat-interval von 5 Sek an 8 synchronen OWX-devices recht zäh läuft, scheint alles zu gehen. D.h. ich warte jetzt wieder auf Euer Feedback zum Fix...

Gruß,

Norbert
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: hexenmeister am 17 Juli 2014, 13:55:54
Genau diese Kombination habe ich wiederum nicht. Aber zwei ds2480 kann ich heute Abend ausprobieren.

Danke und Grüße,

Alexander
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: det. am 17 Juli 2014, 20:35:46
Hallo Norbert,
auf den zwei RPI siehe Antwort #242 läuft es jetzt ohne Probleme sowohl der Mix aus OWX (COC) und OWX_ASYNC wie auch OWX_ASYNC und OWDevice. Morgen abend versuche ich es auf dem CUBIE2 mit 2xUSB 2480 und 26 div. 1-wire Devices - falls es hier nicht viel Gegenteiliges gibt.
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: hexenmeister am 17 Juli 2014, 22:34:04
Habe gerade getestet. Leider werden nur die Geräte auf dem zweiten (der Reihenfolge in der cfg nach) Controller aktualisiert.

LG,

Alexander

P.S. Im synchronen Modus scheint es zu funktionieren...
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 17 Juli 2014, 22:54:49
Hallo Detlef,

top, danke :-)

Hallo Alexander,

danke auch dir.. Gib'ts denn logmeldungen? (mit verbose=5 am OWX_ASYNC-device, das nicht aktualisiert). Config wie oben? zählt der Error-count an den nicht aktualisierenden DS18B20 hoch?

Gruß,

Norbert
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: hexenmeister am 17 Juli 2014, 23:10:47
Hi!

Config ist der gleiche. Mit Log 4 sah ich keine Meldungen, stelle jetzt mal auf 5. Das ist dann aber kaum beherschbar. Kann ich nach OWX o.ä. filtern?

Gerade mit async neu gestartet, melde mich in paar minuten...
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: hexenmeister am 17 Juli 2014, 23:26:08
so...
ErrorCount wird nicht hochgezählt (ist immer noch 0).
Auf der Err-Console ist nichts. Errors im Log kann ich auch nicht entdecken.

2014.07.17 23:21:41.921 5: OWX_ASYNC_Schedule master: OWio2, task: OWio2
2014.07.17 23:21:41.948 5: OWX_ASYNC_PT_Kick: kicking DS14B20 temperature conversion
2014.07.17 23:21:41.956 5: OWX_DS2480.query sending out: e3c5
2014.07.17 23:21:42.031 5: OWX_DS2480.query sending out: e1cc44
2014.07.17 23:21:42.035 5: OWX_ASYNC_RunTasks: OWio2 task schedule for timeout at 1405632103.952042
2014.07.17 23:21:42.046 5: OWX_DS2480 read: After loop no. 1 received: cdcc44
2014.07.17 23:21:43.067 5: OWX_ASYNC_PT_Kick: doing tempConv for DG_NN_OWTS01.Raum
2014.07.17 23:21:43.078 5: OWX_ASYNC_Schedule master: OWio2, task: DG_NN_OWTS01.Raum
2014.07.17 23:21:43.084 5: OWX_ASYNC_PT_Kick: doing tempConv for NN_TE_OWTS01.1W_Controller_Box2
2014.07.17 23:21:43.087 5: OWX_ASYNC_Schedule master: OWio2, task: NN_TE_OWTS01.1W_Controller_Box2
2014.07.17 23:21:43.102 5: OWX_DS2480.query sending out: e3c5
2014.07.17 23:21:43.178 5: OWX_DS2480.query sending out: e1f0e3b5
2014.07.17 23:21:43.183 5: OWX_DS2480.query sending out: e100000000000000000000000000000000e3a5
2014.07.17 23:21:43.187 5: OWX_ASYNC_RunTasks: OWio2 task schedule for timeout at 1405632105.095245
2014.07.17 23:21:43.225 5: OWX_DS2480 read: After loop no. 2 received: cdf08008262008028a80200000000000a088
2014.07.17 23:21:43.260 5: OWX_DS2480.query sending out: e3c5
2014.07.17 23:21:43.336 5: OWX_DS2480.query sending out: e1ece3b5
2014.07.17 23:21:43.342 5: OWX_DS2480.query sending out: e100000000000000000000000000000000e3a5
2014.07.17 23:21:43.346 5: OWX_ASYNC_RunTasks: OWio2 task schedule for timeout at 1405632105.253512
2014.07.17 23:21:43.374 5: OWX_DS2480 read: After loop no. 3 received: cdec8008262008028a80200000000000a088
2014.07.17 23:21:43.383 5: OWX_SER::Search: new alarm device found 28.45128B040000.AC
2014.07.17 23:21:43.392 5: OWX_DS2480.query sending out: e3c5
2014.07.17 23:21:43.468 5: OWX_DS2480.query sending out: e1ece3b5
2014.07.17 23:21:43.474 5: OWX_DS2480.query sending out: e180080a00000000000000000000000000e3a5
2014.07.17 23:21:43.500 5: OWX_DS2480 read: After loop no. 1 received: cdec80088e20020a8a802000000000008200
2014.07.17 23:21:43.509 5: OWX_SER::Search: new alarm device found 28.4B318B040000.09
2014.07.17 23:21:43.519 5: OWX_DS2480.query sending out: e3c5
2014.07.17 23:21:43.595 5: OWX_DS2480.query sending out: e1ece3b5
2014.07.17 23:21:43.600 5: OWX_DS2480.query sending out: e180080a00000000000000000000000000e3a5
2014.07.17 23:21:43.629 5: OWX_DS2480 read: After loop no. 3 received: cdec80088e20020a8a802000000000008200
2014.07.17 23:21:43.638 5:  Alarms = 28.45128B040000.AC 28.4B318B040000.09
2014.07.17 23:21:43.659 5: OWX_ASYNC_RunTasks: OWio2 task finished
2014.07.17 23:21:43.669 5: OWX_DS2480.query sending out: e3c5
2014.07.17 23:21:43.746 5: OWX_DS2480.query sending out: e1552845128b040000acbeffffffffffffffffff
2014.07.17 23:21:43.750 5: OWX_ASYNC_RunTasks: NN_TE_OWTS01.1W_Controller_Box2 task schedule for timeout at 1405632105.665828
2014.07.17 23:21:43.775 5: OWX_DS2480 read: After loop no. 1 received: cd552845128b040000acbe01024b467fff0f10a4
2014.07.17 23:21:43.784 5: T: 32.06 &deg;C ▾
2014.07.17 23:21:43.786 5: OWX_ASYNC_RunTasks: NN_TE_OWTS01.1W_Controller_Box2 task finished
2014.07.17 23:21:43.794 5: OWX_DS2480.query sending out: e3c5
2014.07.17 23:21:43.871 5: OWX_DS2480.query sending out: e155284b318b04000009beffffffffffffffffff
2014.07.17 23:21:43.875 5: OWX_ASYNC_RunTasks: DG_NN_OWTS01.Raum task schedule for timeout at 1405632105.791124
2014.07.17 23:21:43.915 5: OWX_DS2480 read: After loop no. 1 received: cd55284b318b04000009beb1014b467fff0f108d
2014.07.17 23:21:43.922 5: T: 27.06 &deg;C ▾
2014.07.17 23:21:43.925 5: OWX_ASYNC_RunTasks: DG_NN_OWTS01.Raum task finished


Sieht alles gut aus, nur taucht der erste Controller (OWio1) gar nicht erst auf (habe natürlich deutlich größeres Stück betrachtet, als der Auszug oben).
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 18 Juli 2014, 09:00:59
Zitat von: hexenmeister am 17 Juli 2014, 23:26:08
Sieht alles gut aus, nur taucht der erste Controller (OWio1) gar nicht erst auf.

gar nicht heißt 'nicht mal die Meldung beim define'?
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: hexenmeister am 18 Juli 2014, 10:14:41
Nein, ich habe nur gemeint "keine Meldung da, wo ich eine aktualisierung erwarten würde". Sorry für ungenaue Angaben.
Beim Define wird alles gefunden und (glaube ich, habe logs gerade nicht zur Hand) sogar einmalig aktualisiert. Dann ist aber Stille.
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 18 Juli 2014, 23:56:41
Zitat von: hexenmeister am 16 Juli 2014, 21:37:29
Habe versucht, testweise einen Controller zu löschen. Prompt war FHEM weg:

Can't locate object method "exit" via package "OWX_DS2480" at ./FHEM/00_OWX_ASYNC.pm line 297.


gefixed.

Zitat von: hexenmeister am 16 Juli 2014, 21:37:29
Zieht man den Controller ab, läuft FHEM Amok:
2014.07.16 21:20:03.702 2: OWX: Error initializing OWio2: OWX_ASYNC_Init failed: OWX_SER: Serial device /dev/serial/by-id/usb-Prolific_Technology_Inc._USB-Serial_Controller-if00-port0@9600 not defined: No such file or directory
2014.07.16 21:20:03.816 3: Opening OWio2 device /dev/serial/by-id/usb-Prolific_Technology_Inc._USB-Serial_Controller-if00-port0
2014.07.16 21:20:03.819 3: Can't open /dev/serial/by-id/usb-Prolific_Technology_Inc._USB-Serial_Controller-if00-port0: No such file or directory


auch gefixed. Abziehen und Wiederanstecken von DS2480 und/oder FRM sollte jetzt sauber funktionieren (geht natürlich nur, wenn die linux-Devicenamen beim Wiederanstecken die gleichen wie vorher sind...)

Das Thema 'mehrere parallele DS2480 Busmaster' muss ich noch mal untersuchen, da bin ich noch nicht mal zum testen gekommen, muss erst noch einen 2ten DS2480 für den Testaufbau fit machen...

Gruß,

Norbert

Titel: Antw:OWX asynchron überarbeitet
Beitrag von: hexenmeister am 19 Juli 2014, 01:07:21
Zitatgefixed
Danke :)
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: cwagner am 19 Juli 2014, 08:01:04
Moin, Norbert,

mit OWX_SER aus SVN ( Rev. 6273, reported Rev. 6271)

erhalte ich auf der Konsole fortlaufend diese Meldungen:

Use of uninitialized value $rin in vec at ./FHEM/OWX_SER.pm line 70.
Use of uninitialized value $rin in scalar assignment at ./FHEM/OWX_SER.pm line 70.
Use of uninitialized value $win in vec at ./FHEM/OWX_SER.pm line 71.
Use of uninitialized value $win in scalar assignment at ./FHEM/OWX_SER.pm line 71.

---------------------------
Bei den Modulen OWAD und OWMULTI habe ich kein attr tempconv mit dem ich auf onkick stellen könnte. Interessanterweise sind die jetzt deren Devices die einzigen, mit den ich timeout-Fehler im Log erhalte.

---------------------------
Bei OWTHERM habe ich festgestellt, dass das Attribut timeconv onkick dazu führt, dass keine Werte mehr ausgelesen werden.

Herzliche Grüße

Christian





Titel: Antw:OWX asynchron überarbeitet
Beitrag von: det. am 19 Juli 2014, 13:05:38
Hallo Norbert,
die Version, welche gestern über update zu beziehen war funktioniert bei mir perfekt auf dem CUBIE2 in der async. Variante bis auf OWID. Wenn die Tür zu ist, also PRESENT 1 ist alles ok, als ich die gestern Abend aufgelassen hatte und im Biergarten war - 80 Mails über geöffnete und geschlossene Bürotür -... flotiert zwischen PRESEN 0 und 1
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 19 Juli 2014, 14:09:47
Hallo Christian,

danke fürs Feedback.

Zitat von: cwagner am 19 Juli 2014, 08:01:04
Use of uninitialized value $rin in vec at ./FHEM/OWX_SER.pm line 70.

behoben (http://sourceforge.net/p/fhem/code/6275/tree//trunk/fhem/FHEM/OWX_SER.pm?diff=51b78df35fcbc96f6b6b9d33:6274). (Der Fehler trat bei mir nicht auf. Ist wohl abhängig von der perl-version, ob die 'vec'-funktion mit uninitialisierten Werten klarkommt oder nicht).

Zitat von: cwagner am 19 Juli 2014, 08:01:04
Bei den Modulen OWAD und OWMULTI habe ich kein attr tempconv mit dem ich auf onkick stellen könnte.

tempconv=onkick gibt's nur beim OWTHERM. Und eigentlich macht es auch nur da Sinn weil da der AD-Wandler in den DS18B20 so langsam ist (und auflösungsabhängig bis knapp 1 Sekunde braucht). Allerdings bringt die parallelisierung der Wandlung beim OWX_ASYNC keinen signifikanten Vorteil mehr, man spart sich nur noch den Traffic auf dem Bus ein - die 1-Sekunden Pause wird ja nicht mehr synchron gewartet. Beim DS2450 und DS2438 ist die AD-Wandlung sowieso deutlich schneller.

Zitat von: cwagner am 19 Juli 2014, 08:01:04Interessanterweise sind die jetzt deren Devices die einzigen, mit den ich timeout-Fehler im Log erhalte.
Ich hab mal das Timing im OWAD (http://sourceforge.net/p/fhem/code/6276/tree//trunk/fhem/FHEM/21_OWAD.pm?diff=51b78df35fcbc96f6b6b9d33:6275) und OWMULTI (http://sourceforge.net/p/fhem/code/6276/tree//trunk/fhem/FHEM/21_OWMULTI.pm?diff=51b78df35fcbc96f6b6b9d33:6275) etwas defensiver eingestellt. Berichte mal, ob es damit bei Dir besser läuft (bei mir gibt's mit OWX_SER keine Timeouts)

Zitat von: cwagner am 19 Juli 2014, 08:01:04
Bei OWTHERM habe ich festgestellt, dass das Attribut timeconv onkick dazu führt, dass keine Werte mehr ausgelesen werden.

am OWX_ASYNC-device ist attribute 'dokick=1' eingetellt?

Gruß,

Norbert
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 19 Juli 2014, 14:21:59
Zitat von: det. am 19 Juli 2014, 13:05:38flotiert zwischen PRESEN 0 und 1

Hallo Detlef,

darauf kann ich mir grade keinen Reim machen. Kannst Du mal alles posten, was da in Deiner Config mit reinspielt?

Gruß,

Norbert
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: det. am 19 Juli 2014, 14:34:33
Hallo Norbert,
der Code:define Tuer_Buero OWID 01 56EA4E0E0000
attr Tuer_Buero IODev 1wire_1
attr Tuer_Buero devStateIcon present:fts_door_right absent:fts_door_right_open
attr Tuer_Buero event-on-change-reading present
attr Tuer_Buero group Info
attr Tuer_Buero model DS2401
attr Tuer_Buero room Buero
attr Tuer_Buero stateFormat {ReadingsVal($name,"present",0) ? "present" : "absent"}


define FileLog_Tuer_Buero FileLog ./log/Tuer_Buero-%Y-%m.log Tuer_Buero
attr FileLog_Tuer_Buero logtype .*,text
attr FileLog_Tuer_Buero room hidden
define mail_Buerotuer notify .*Tuer_*.* { \
  my $zeit=sprintf("%%02d:%%02d",$hour,$min);;\
  my $text;;\
  my $status;;\
  $status=Value "@";;\
  $text ="@ $zeit Uhr $status";;\
  if (Value("HomeStatus") ne "present")\
{DebianMail('x@@x.de',$text,$text);;\
  }\
}
define SVG_FileLog_Tuer_Buero_1 SVG FileLog_Tuer_Buero:SVG_FileLog_Tuer_Buero_1:CURRENT
attr SVG_FileLog_Tuer_Buero_1 room Buero

das zugehörige Diagramm:

Titel: Antw:OWX asynchron überarbeitet
Beitrag von: cwagner am 19 Juli 2014, 15:04:22
Zitat von: ntruchsess am 19 Juli 2014, 14:09:47
behoben (http://sourceforge.net/p/fhem/code/6275/tree//trunk/fhem/FHEM/OWX_SER.pm?diff=51b78df35fcbc96f6b6b9d33:6274). (Der Fehler trat bei mir nicht auf. Ist wohl abhängig von der perl-version, ob die 'vec'-funktion mit uninitialisierten Werten klarkommt oder nicht).

Ich hab mal das Timing im OWAD (http://sourceforge.net/p/fhem/code/6276/tree//trunk/fhem/FHEM/21_OWAD.pm?diff=51b78df35fcbc96f6b6b9d33:6275) und OWMULTI (http://sourceforge.net/p/fhem/code/6276/tree//trunk/fhem/FHEM/21_OWMULTI.pm?diff=51b78df35fcbc96f6b6b9d33:6275) etwas defensiver eingestellt. Berichte mal, ob es damit bei Dir besser läuft (bei mir gibt's mit OWX_SER keine Timeouts)

am OWX_ASYNC-device ist attribute 'dokick=1' eingetellt?
Hallo Norbert,
so, dass Thema mit OWX_SER ist erfolgreich gefixt. Über das Verhalten der Sensoren berichte ich noch.
dokick=1 ist eingestellt.

Vielen Dank für die schnelle Reaktion.

Herzliche Grüße

Christian
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: T.ihmann am 19 Juli 2014, 15:31:49
Habe nach dem Update das Problem, daß ein DS18B20 nicht mehr richtig funktioniert. Sensor an der Haustür ist parasitär über 2 Kabel angebunden (mangels fehlender Leitungen) und liefert deshalb ab und zu mal 85°C als Fehlermeldung. Das hat bislang kein Problem dargestellt, beim nächsten Abrufen hat es wieder funktioniert, Werte hatte ich im Gplot ausgeblendet.
Jetzt ist es so, daß nach einem 85°C Wert keine erneute Abfrage erfolgt. Fragt man die Temperaturen manuell über get temperature ab so bekommt man folgende Fehlermeldung:

OWTHERM: Could not get values from device Haustuer_Temp, return was Can't call method "poll" without a package or object reference

Liebe Grüße,

T. Ihmann
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: cwagner am 19 Juli 2014, 16:08:35
Zitat von: T.ihmann am 19 Juli 2014, 15:31:49
ab und zu mal 85°C als Fehlermeldung. Das hat bislang kein Problem dargestellt, beim nächsten Abrufen hat es wieder funktioniert, Werte hatte ich im Gplot ausgeblendet.

Hallo,

verrätst Du, wie Du die 85 Grad, die mich auch ärgern, im Gplot ausgeblendet bekommst?

Herzliche Grüße

Christian
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: cwagner am 19 Juli 2014, 16:11:06
Zitat von: T.ihmann am 19 Juli 2014, 15:31:49
Fragt man die Temperaturen manuell über get temperature ab so bekommt man folgende Fehlermeldung:

OWTHERM: Could not get values from device Haustuer_Temp, return was Can't call method "poll" without a package or object reference


Hallo Norbert,
das hatte ich auch bei einem get alarm, hatte aber die falsche Ursache gesehen. Habe es gerade ausprobiert:

get alarm
get temperature
get present

führen alle zu dem "poll"-Fehler.

Die anderen gets geben sinnvolle Werte

Herzliche Grüße

Christian
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: T.ihmann am 19 Juli 2014, 20:46:32
Zitat von: cwagner am 19 Juli 2014, 16:08:35
Hallo,

verrätst Du, wie Du die 85 Grad, die mich auch ärgern, im Gplot ausgeblendet bekommst?

Herzliche Grüße

Christian

Du mußt die gplot Datei direkt editieren, geht nicht über Web-Interface

Beispiel:
#FileLog 4:Raumname.temperature\x3a.(?!85):15:
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: cwagner am 19 Juli 2014, 22:35:45
Vielen Dank...

Christian
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: cwagner am 20 Juli 2014, 21:12:36
Zitat von: ntruchsess am 19 Juli 2014, 14:09:47
Ich hab mal das Timing im OWAD (http://sourceforge.net/p/fhem/code/6276/tree//trunk/fhem/FHEM/21_OWAD.pm?diff=51b78df35fcbc96f6b6b9d33:6275) und OWMULTI (http://sourceforge.net/p/fhem/code/6276/tree//trunk/fhem/FHEM/21_OWMULTI.pm?diff=51b78df35fcbc96f6b6b9d33:6275) etwas defensiver eingestellt. Berichte mal, ob es damit bei Dir besser läuft (bei mir gibt's mit OWX_SER keine Timeouts)

Hallo Norbert,

die Erfahrung nach rund einem Tag: Die Temperaturfühler laufen toll, auch beim Switch habe ich keine Probleme.
Der DS2450, "betreut" vom OWAD,  hat häufiger über den Tag verteilt - ohne das ich ein Muster erkennen kann - diesen Fehler, manchmal mehrfach hintereinander:
2014.07.20 19:31:01 4: OWX_ASYNC_RunTasks: Umweltsensor task Error: invalid CRC at ./FHEM/21_OWAD.pm line 1610.
2014.07.20 20:07:32 4: OWX_ASYNC_RunTasks: Umweltsensor task Error: invalid CRC at ./FHEM/21_OWAD.pm line 1610.
2014.07.20 20:29:32 4: OWX_ASYNC_RunTasks: Umweltsensor task Error: invalid CRC at ./FHEM/21_OWAD.pm line 1610.

---------------
Nochmal eine Nachfrage: Bei OWTHERM gibt es ja das Attribut tempconv, bei dem ONKICK vorgeschlagen wird. Benutze ich dieses Attribut, werden die Temp-Devices nicht mehr aktualsiert. Ist dieses Attribut noch eine "Altlast" oder was muss ich mir da vorstellen?

Herzliche Grüße

Christian
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: Starkstrombastler am 20 Juli 2014, 23:18:55
Hallo,

ich habe aktuell ein neues Phänomen:

Nach Aufruf des OWX-ASYNC-Interfaces über die Weboberfläche
get OWusb devices
erhalte ich folgende Antwort:
interface DS2480 not active at ./FHEM/00_OWX_ASYNC.pm line 997.

Im Logfile erscheint:
2014.07.20 23:09:20.183 1: /dev/ttyUSB0 disconnected, waiting to reappear (OWusb)
2014.07.20 23:09:20.515 1: /dev/ttyUSB0 reappeared (OWusb)


Hat jemand eine Idee, was da bei mir los ist?
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 20 Juli 2014, 23:29:45
allo Christian, hallo T. Ihmann, hallo Detlef, hallo Starkstrombastler,

Zitat von: T.ihmann am 19 Juli 2014, 15:31:49OWTHERM: Could not get values from device Haustuer_Temp, return was Can't call method "poll" without a package or object reference
Zitat von: cwagner am 19 Juli 2014, 16:11:06
get alarm, get temperature, get present führen alle zu dem "poll"-Fehler.
Zitat von: Starkstrombastler am 20 Juli 2014, 23:18:55
get OWusb devices
erhalte ich folgende Antwort:
interface DS2480 not active at ./FHEM/00_OWX_ASYNC.pm line 997.

Das habe ich gerade behoben (http://sourceforge.net/p/fhem/code/6289/tree//trunk/fhem/FHEM/OWX_SER.pm?diff=51b78df35fcbc96f6b6b9d33:6288) und ins SVN commited. Da war in der Disconnect-erkennung ein Fehler, der bei den 'get'-befehlen den Adapter fälschlicherweise als disconnected erkannt (und deinitialisiert) hat.

Zitat von: det. am 19 Juli 2014, 13:05:38flotiert zwischen PRESEN 0 und 1

Das könnte damit eventuell auch behoben sein, hatte aber keine Zeit das genauer zu untersuchen....

Zitat von: cwagner am 20 Juli 2014, 21:12:36
Nochmal eine Nachfrage: Bei OWTHERM gibt es ja das Attribut tempconv, bei dem ONKICK vorgeschlagen wird. Benutze ich dieses Attribut, werden die Temp-Devices nicht mehr aktualsiert. Ist dieses Attribut noch eine "Altlast" oder was muss ich mir da vorstellen?

am OWX_ASYNC-device muss das Attribut 'dokick' auf 1 stehen, dann werden alle OWTHERM-devices bei denen tempConv auf 'onkick' steht im intervall des OWX_ASYNC-devices ausgelesen. Ist nicht direkt eine Altlast, der Gewinn dadurch ist beim asynchronen OWX alledings eher gering, weil die OWTHERMs ja beim Auslesen nicht mehr alles für 1 Sekunde blockieren. Kann man jetzt wohl getrost weglassen.

Gruß,

Norbert



Titel: Antw:OWX asynchron überarbeitet
Beitrag von: Franz Tenbrock am 28 Juli 2014, 15:01:11
Hallo
hatte bis zum update vorgestern mein 1wire prima am laufen.
nun geht gar nichts mehr.

hab im 1 Wire Rubrik den Hinweis gefunden hier gäbs die passende Diskussion
Bin ja bereit zu lesen
aber das ist im Moment etwas zu viel, weil ja uahc vieleFehler diskutiert werden

Schade das es im Wiki nichts gibt, dann könnte man dort nachschauen wie es funktioniert, was geändert werden muss.

Kann mich einer kurz anschieben ? Bin zur Zeit beruflich voll ausgelastet... :-(

Hier mein cfg code ( einige Zeilen , den Rest bekomme ich dann schon hin )

########################################################################
###########    1 Wire mit OWX   Temperaturen etc
#########################################################################

define USB9097 OWX /dev/ttyUSB0
attr USB9097 buspower real
attr USB9097 dokick 1
attr USB9097 loglevel 1
attr USB9097 room OWX
attr USB9097 verbose 5

#################     Heizung_VL ####################################

define Heizung_VL OWTHERM DS18B20 4A83CE040000
attr Heizung_VL IODev USB9097
attr Heizung_VL alias Heizung_VL
attr Heizung_VL group Temperatur
attr Heizung_VL model DS1822
attr Heizung_VL room OWX
attr Heizung_VL tempHigh 75
attr Heizung_VL tempLow 70
# attr Heizung_VL icon sani_heating_temp

define FileLog_Heizung_VL FileLog ./log/Heizung_VL-%Y.log Heizung_VL|Heizung_VL
attr FileLog_Heizung_VL logtype text
attr FileLog_Heizung_VL room OWX
define SVG_FileLog_Heizung_VL SVG FileLog_Heizung_VL:SVG_FileLog_Heizung_VL:CURRENT
attr SVG_FileLog_Heizung_VL group Test
attr SVG_FileLog_Heizung_VL plotsize 550,150
attr SVG_FileLog_Heizung_VL room OWX

Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 28 Juli 2014, 15:07:26
DS9097-Adapter werden von OWX_ASYNC (noch nicht) unterstützt, ich arbeite aber schon daran. Das 'normale' OWX funktioniert aber eigentlich (nach meinen eigenen Tests hier) unverändert weiter. Was gibt's bei Dir denn für Fehlermeldungen?

Gruß,

Norbert
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: Franz Tenbrock am 28 Juli 2014, 15:35:35
Hallo
Danke schon mal auch wenn es noch nicht hilft

Wenn ich mit get einen temp Wert holen will kommt das hier

OWTHERM: Could not get values from device Heizung_VL, return was 28.4A83CE040000.93 has returned invalid data

der dougie counter in der zisterne liefert  das hier

OWCOUNT: Could not get values from device Zisterne, reason: OWCOUNT: Could not get values from device Zisterne, reason: 1D.A2D993000002.89 has returned invalid dataOWCOUNT: Could not get values from device Zisterne, reason: 1D.A2D993000002.89 has returned invalid data


Ich hatte auch einen Kabelbruch am Stecker zum usb adapter, der ist aber wieder ok, hat das also eher nciht mit dem owx asyn zu tun?

Kabel im keller hatte ich eigentlich nicht angefasst
werde das aber auch wohl noch prüfen müssen ( in einer blöden engen ecke :-( )
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 28 Juli 2014, 16:01:42
Zitat von: Franz Tenbrock am 28 Juli 2014, 15:35:35
hat das also eher nciht mit dem owx asyn zu tun?
Wenn in Deiner fhem.cfg wie bisher 'OWX' drinsteht, dann hat es mit OWX_ASYNC nichts zu tun.

Gruß,

Norbert
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 31 Juli 2014, 22:34:47
OWX_ASYNC unterstützt ab heute das attribut 'buspower'.

Stellt man es auf 'parasitic', dann werden alle Aktionen auf dem 1-Wire bus streng serialisiert, so dass nichts in die Pause einer Temperaturwandlung hineinfunken kann.

Damit sollten Probleme bei parasitärer Stromversorgung in den Griff zu kriegen sein. Nachteilig ist der damit einhergehende reduzierte Durchsatz auf dem 1-Wire bus. Die Verarbeitung ist aber weiterhin asynchron, so dass das übrige FHEM nicht gebremst wird.

Ist ins SVN committet und kann in Kürze per update bezogen werden.

Gruß,

Norbert
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: cwagner am 03 August 2014, 09:46:50
Hallo Norbert,

habe alle updates der OWX(ASYNC)-Module jeweils mitgenommen und stelle fest, dass trotz nun 30-Sekunden-Takt, die Fehlermeldungen drastisch zurückgegangen sind. Selbst auf meinem lahmen System läuft es jetzt gut. Ganz vereinzelt (1-2mal am Tag bei 60.000 Meßvorgängen) erhalte ich:

2014.08.03 09:14:44 4: OWX_ASYNC_RunTasks: Fortluft task Error: invalid CRC at ./FHEM/21_OWTHERM.pm line 923.
2014.08.02 19:13:02 4: OWX_ASYNC_RunTasks: Zuluft task Error: OWX_DS2480 read timeout, bytes read: 9, expected: 11 at ./FHEM/OWX_DS2480.pm line 135.


Sehr herzlichen Dank für den tollen Job, den Du gemacht hast.

Christian
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 03 August 2014, 22:09:17
Zitat von: cwagner am 03 August 2014, 09:46:50
Ganz vereinzelt (1-2mal am Tag bei 60.000 Meßvorgängen) erhalte ich:
2014.08.03 09:14:44 4: OWX_ASYNC_RunTasks: Fortluft task Error: invalid CRC at ./FHEM/21_OWTHERM.pm line 923.
[...]
Sehr herzlichen Dank für den tollen Job, den Du gemacht hast.

Hallo Christian,

prima, danke für die Blumen. Mit einer Fehlerrate im >0.1% Bereich kann man glaube ich leben ;-) Wobei ich bei Gelegenheit einen automatischen Retry einbauen werde, damit käme man dann in den ppm-Bereich (solange keine systematischen Fehler vorliegen).

Gruß,

Norbert
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: fhem-challenge am 05 August 2014, 12:02:47
Zitat von: ntruchsess am 31 Juli 2014, 22:34:47
OWX_ASYNC unterstützt ab heute das attribut 'buspower'.

Stellt man es auf 'parasitic', dann werden alle Aktionen auf dem 1-Wire bus streng serialisiert, so dass nichts in die Pause einer Temperaturwandlung hineinfunken kann.

Damit sollten Probleme bei parasitärer Stromversorgung in den Griff zu kriegen sein. Nachteilig ist der damit einhergehende reduzierte Durchsatz auf dem 1-Wire bus. Die Verarbeitung ist aber weiterhin asynchron, so dass das übrige FHEM nicht gebremst wird.

Ist ins SVN committet und kann in Kürze per update bezogen werden.

Gruß,

Norbert

Hallo Norbert,

OWX_ASYNC lieft bei mir gut seit ca. Anfang/Mitte Juli. Nach dem Update der letzten Tage bekomme ich ein ...

Timeout at /opt/fhem/FHEM/00_OWX_ASYNC.pm line 1059.

... OWX geht hingegen.

Viele Grüße!

Andreas


Timeout at /opt/fhem/FHEM/00_OWX_ASYNC.pm line 1059.
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 05 August 2014, 13:19:38
Zitat von: fhem-challenge am 05 August 2014, 12:02:47
Timeout at /opt/fhem/FHEM/00_OWX_ASYNC.pm line 1059.

Wenn Du (bzw. fhem) was mach(s)t? Die Zeilennummer sagt mir, dass da ein 'get' oder 'set' gelaufen ist (was genau kann man da nicht sehen).

Gruß,

Norbert
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: det. am 05 August 2014, 19:03:11
Hallo Norbert,
das Timeout at ./FHEM/00_OWX_ASYNC.pm line 1059. kommt nach einem get .. devices.
Das wäre zu verschmerzen, aber auf dem Produktivsystem mit 2 USB Adaptern kommen danach auch keine Werte, auf dem TestRPI geht es. Bis gestern, vor dem Update war noch alles io.

Titel: Antw:OWX asynchron überarbeitet
Beitrag von: fhem-challenge am 06 August 2014, 10:03:55
Zitat von: det. am 05 August 2014, 19:03:11
Hallo Norbert,
das Timeout at ./FHEM/00_OWX_ASYNC.pm line 1059. kommt nach einem get .. devices.
Das wäre zu verschmerzen, aber auf dem Produktivsystem mit 2 USB Adaptern kommen danach auch keine Werte, auf dem TestRPI geht es. Bis gestern, vor dem Update war noch alles io.

Sorry Norbert,

hatte unklar beschrieben, wobei es passiert.

Ich mache ein get |ow| devices ... oder auch alarms ... also de facto bei allen get's auf das OWX_ASYNC.

Viele Grüße!

Andreas
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: sweetie-pie am 06 August 2014, 13:46:09
Zitat von: fhem-challenge am 06 August 2014, 10:03:55
Ich mache ein get |ow| devices ... oder auch alarms ... also de facto bei allen get's auf das OWX_ASYNC.

Ich bestätige das nur mal kurz, hier auch...
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 06 August 2014, 14:50:30
seid Ihr eigentlich alle auf dem letzten SVN-stand? Mein letzter relevanter Commit von Vorgestern (Revision 6362) ist nämlich erst heute früh unter den FHEM-code-changes aufgetaucht: http://forum.fhem.de/index.php/topic,25923.0.html
Ich weiß nicht, ob das vorher schon per fhem-update rübergekommen ist. Der Zwischenstand (Revision 6358 bis 6361) ist nämlich unvollständig, dafür habe ich die Revision 6362 nachgelegt. Die individuellen commits kommen aus meinem Git-mirror, ins SVN übertragen habe ich das eigentlich in einem Rutsch.

Gruß,

Norbert
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: sweetie-pie am 06 August 2014, 15:13:38
Heute Vormittag per fhem UPDATE gezogen:

$Id: 00_OWX_ASYNC.pm 6362 2014-08-04 21:08:27Z ntruchsess $


Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 06 August 2014, 22:44:30
hm... grade selber noch mal getestet, mit DS2480 Busmaster tuts, mit FRM gibt's Timeout. Sorry, da muss mir irgendein Seiteneffekt reingefluscht sein - da ich am frm-spezifischen code nix geändert hatte, habe ich damit auch nicht getestet, als ich die Bussuche für DS9097 überarbeitet habe.

Ich such dann mal genauer, krieg ich schon hin ;-)

Gruß,

Norbert
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 06 August 2014, 23:27:37
das Timeout-problem ist jetzt gefixed in r6368 (http://sourceforge.net/p/fhem/code/6368/). Der Fehler kam schon vor 2 Wochen mit Rev. 6289 (http://sourceforge.net/p/fhem/code/6289/) rein, als ich die Erkennung von Disconnects/Reconnects beim OWX_SER eingebaut habe.

Gruß,

Norbert
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: sweetie-pie am 07 August 2014, 09:32:36
Hallo,

sorry, ich glaube das war es noch nicht, es kommt der gleiche Fehler.

Frisch ausgescheckt und getestet:
# $Id: 00_OWX_ASYNC.pm 6362 2014-08-04 21:08:27Z ntruchsess $
# $Id: 11_OWX_FRM.pm 2013-03 - ntruchsess $
# $Id: OWX_DS2480.pm 6361 2014-08-04 21:08:18Z ntruchsess $
# $Id: OWX_Executor.pm 5927 2014-05-21 21:56:37Z ntruchsess $
# $Id: OWX_FRM.pm 6368 2014-08-06 21:22:43Z ntruchsess $
# $Id: OWX_SER.pm 6368 2014-08-06 21:22:43Z ntruchsess $


Screenshot vom Device im Anhang.

Ich habe so einen China-Adapter mit USB zu Seriell Chip ( USB-id 1a86:7523 -> HL-340 Chip) und einem DS2480.
OWX läuft zwar, aber bremst das System aus wie APPTIME zeigt.
                 name             function    max  count    total  average maxDly
tmr-OWTHERM_GetValues      HASH(0x9e2c048)   1139      6     6795  1132.50    909 HASH(OWX_28_ACAF2B040000)
tmr-OWTHERM_GetValues      HASH(0x9e2a0f8)   1138      6     6800  1133.33   1013 HASH(OWX_28_59C72B040000)
tmr-OWTHERM_GetValues      HASH(0x9e29eb8)   1136      6     6782  1130.33   1143 HASH(OWX_28_15AB2B040000)
tmr-OWTHERM_GetValues      HASH(0x9e2a338)   1136      6     6784  1130.67    678 HASH(OWX_28_121A2B040000)
tmr-OWTHERM_GetValues      HASH(0x9e2be08)   1136      6     6784  1130.67    514 HASH(OWX_28_C2D540040000)
tmr-OWTHERM_GetValues      HASH(0x9d109a8)   1133      6     6789  1131.50      3 HASH(OWX_10_E68C26000800)
tmr-OWTHERM_GetValues      HASH(0x9e2c288)   1133      6     6778  1129.67   1173 HASH(OWX_28_347D2B040000)
tmr-OWTHERM_GetValues      HASH(0x9e2c4c8)   1132      6     6777  1129.50    930 HASH(OWX_28_688A41040000)
tmr-OWTHERM_GetValues      HASH(0x9e2ee50)   1131      6     6782  1130.33    502 HASH(OWX_10_85FF2B000800)
tmr-OWTHERM_GetValues      HASH(0x9e2c708)   1130      6     6774  1129.00    789 HASH(OWX_28_68722B040000)
tmr-OWTHERM_GetValues      HASH(0x9e2c948)   1129      6     6770  1128.33    646 HASH(OWX_10_EB2D99010800)
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 07 August 2014, 10:36:08
Attribute 'buspower' steht aber nicht zufällig auf 'parasitic'?
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: sweetie-pie am 07 August 2014, 10:44:38
Nein, habe ich nicht gesetzt.
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 07 August 2014, 12:00:55
bleibt das reading 'state' der OWTHERM-devices auf 'defined' stehen?
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: sweetie-pie am 07 August 2014, 12:37:02
Soweit komme ich nicht...

Mein Ansatz war:
dann kommt der Fehler "Timeout at /opt/fhem/FHEM/00_OWX_ASYNC.pm line 1059."

Testweise hatte ich auch probiert, ein bereits definiertes (und mit OWX genutztes) OWTHERM-Device auf das IODev auf OWio1 umzubiegen.
Der Erfolg war, dass fhem sich dann nach kurzer Zeit ganz weggehängt hat. Leider muss ich immer auf meinem Produktivsystem testen, deshalb kann ich das jetzt nicht nochmal nachvollziehen.
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: det. am 07 August 2014, 14:14:19
Hallo Norbert,
bei mir geht auch nur das Produktivsystem mit dem Stand vom 2.8.14 - auf den ich das zurückgesetzt hatte. Der RPI mit den letzten Änderungen war heute morgen nicht erreichbar, Gas und Wasser nicht geloggt etc. Da ist was passiert. Ich werde produktiv erst wieder updaten, wenn hier zu lesen ist, dass es stabil läuft und natürlich auf dem RPI mittesten.
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 07 August 2014, 14:24:36
Zitat von: det. am 07 August 2014, 14:14:19
bei mir geht auch nur das Produktivsystem mit dem Stand vom 2.8.14 - auf den ich das zurückgesetzt hatte.
Kannst Du das präzisieren (sprich: welche SVN-revision ist das genau)? Gibt es Fehlermeldungen im Log oder auf STDOUT/STDERR?
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: det. am 07 August 2014, 19:05:53
Hallo Norbert,
oh ist nicht so einfach zu erklären... # $Id: 00_OWX_ASYNC.pm 6338 2014-07-31 20:29:24Z ntruchsess $ läuft produktiv ohne Beanstandungen mit 2 DS2480b auf dem Cubie2.
nach update force heute auf dem RPI # $Id: 00_OWX_ASYNC.pm 6362 2014-08-04 21:08:27Z ntruchsess $ scheint es auch wieder zu laufen.
Da ich auf dem RPI parallel noch OWServer laufen habe, bringt das die Listbox von OWX_ASYNC offenbar durcheinander - die sehen beide wie bei OWServer aus, nur das bei OWX_ASYNC  der letzte Eintrag - get devices - fehlt...
Zusätzlich hatte das update vom 5.8. noch die regexp bei FHEM2FHEM vermurkst, was mit Deinen Modulen garnichts zu tun hat. Das hat zusätzlich noch verhindert, das die OWCOUNT Werte im Produktivsystem Kurven zeichnen konnten. Wie gesagt, nicht so einfach, manchmal kommt eben mehreres Übel zusammen.
und zum Schluss - Fehlermeldungen...keine
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 08 August 2014, 00:10:20
das ist für mich leider nicht so ganz greifbar, bei mir reproduziert sich das nicht. Ich habe daher erst mal das TimeoutHandling dahingehend verbessert, dass jetzt nicht mehr der Task an sich, sondern jede individuelle Kommunikation Ihren eigenen Timeout bekommt, damit z.B. Bussuchen mit vielen Devices nicht wg. vorzeitigem Timeout abbrechen, sondern nur, wenn die Kommunikation tatsächlich deutlich gestört oder verzögert abläuft. Zusätzlich ist der Timeout-wert jetzt nicht mehr hartcodiert, sondern per Attribut 'timeout' am OWX_ASYNC-device konfigurierbar.

Gruß,

Norbert
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 08 August 2014, 00:37:48
In der Initialisierung-sequence der Devices habe ich auch noch was gefunden (und in rev 6379 behoben (http://sourceforge.net/p/fhem/code/6379/)), das die saubere Initialisierung übersprungen hat...

Gruß,

Norbert
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: det. am 08 August 2014, 16:24:35
Hallo Norbert,
kurze Zwischenmeldung - vielen Dank für Deine Arbeit - Rev. 6379 macht es auf beiden Systemen und die Erkennung aller angeschlossenen Device funktioniert auch.
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: det. am 09 August 2014, 09:16:10
neuer Zustand heute morgen,
auf dem Cubie2 haben die Thermometer gestern 23.29 Uhr die letzten Werte geliefert, die anderen Sensoren gehen alle, im Log steht natürlich nix. Gefunden werden bei get devices alle und als present angezeigt.
Auf RPI auch mit mehreren Busmastern u.a. das Kristech Teil ist dieses Verhalten bisher nicht zu beobachten.
Ist mir klar, das eine hilfreiche Fehlerbeschreibung anders aussieht - wie soll ich testen, damit die Log ausgabe zu gebrauchen ist?


noch was aufgefallen: die Thermometer haben alle um 23.24 Uhr ein Alarm Reading - also genau 5min vor dem letzt ausgelesenen Wert - wobei bei keinem die Alarmbedingungen erfüllt waren


Fehler ist reproduzierbar, heute 10.11 Uhr FHEM Neustart - Thermometer funktionieren bis 11.11 Uhr, genau 5 min davor um 11.06 Uhr wieder ein Alarm Reading auf allen


Fix: ohne dokick und mit onread geht's
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: hexenmeister am 10 August 2014, 19:57:20
Hallo!

Nach dem heutigen Update hatte ich probleme mit meiner 1wir Installation. FHEM fuhr erst nach mehrmaligen harten "töten" hoch.
Im Log waren laufend Meldungen in der Art:
2014.08.10 13:37:53.083 1: OWX: 1-Wire bus OWio1: interface not found, answer was 0x16
2014.08.10 13:37:55.700 1: OWX: 1-Wire bus OWio1: interface not found, answer was 0x16
2014.08.10 13:37:58.324 1: OWX: 1-Wire bus OWio1: interface not found, answer was 0x16
2014.08.10 13:38:00.971 1: OWX: 1-Wire bus OWio1: interface not found, answer was 0x16
2014.08.10 13:38:03.588 1: OWX: 1-Wire bus OWio1: interface not found, answer was 0x16
2014.08.10 13:38:06.198 1: OWX: 1-Wire bus OWio1: interface not found, answer was 0x16 0x01
2014.08.10 13:38:08.816 1: OWX: 1-Wire bus OWio1: interface not found, answer was 0x16
2014.08.10 13:38:11.434 1: OWX: 1-Wire bus OWio1: interface not found, answer was 0x16
2014.08.10 13:38:14.060 1: OWX: 1-Wire bus OWio1: interface not found, answer was 0x16 0x44
2014.08.10 13:38:16.692 1: OWX: 1-Wire bus OWio1: interface not found, answer was 0x16
2014.08.10 13:38:19.304 1: OWX: 1-Wire bus OWio1: interface not found, answer was 0x16
2014.08.10 13:38:21.949 1: OWX: 1-Wire bus OWio1: interface not found, answer was 0x16
2014.08.10 13:38:24.592 1: OWX: 1-Wire bus OWio1: interface not found, answer was 0x16 0x44
2014.08.10 13:38:27.222 1: OWX: 1-Wire bus OWio1: interface not found, answer was 0x16
2014.08.10 13:38:29.833 1: OWX: 1-Wire bus OWio1: interface not found, answer was 0x16
2014.08.10 13:38:32.444 1: OWX: 1-Wire bus OWio1: interface not found, answer was 0x16
2014.08.10 13:38:35.056 1: OWX: 1-Wire bus OWio1: interface not found, answer was 0x16
2014.08.10 13:38:37.670 1: OWX: 1-Wire bus OWio1: interface not found, answer was 0x16
2014.08.10 13:38:40.300 1: OWX: 1-Wire bus OWio1: interface not found, answer was 0x16
2014.08.10 13:38:42.922 1: OWX: 1-Wire bus OWio1: interface not found, answer was 0x16
2014.08.10 13:38:45.570 1: OWX: 1-Wire bus OWio1: interface not found, answer was 0x16
2014.08.10 13:38:48.216 1: OWX: 1-Wire bus OWio1: interface not found, answer was 0x16
2014.08.10 13:38:50.833 1: OWX: 1-Wire bus OWio1: interface not found, answer was 0x5a 0x00 0x93
2014.08.10 13:38:51.407 1: OWX: 1-Wire bus OWio1: interface master DS2480 detected for the first time
2014.08.10 13:38:51.573 1: OWX: 1-Wire bus OWio2: interface master DS2480 re-detected


Das ist das letzte Stück. Irgendwann ging es dann doch. Mit ASYNC ging es sofort besser. Leider war der Adapter nach ein Paar Stunden Betrieb wohl nicht mehr ansprechbar. Keine Fehlermeldungen, die Werte wurden einfach nicht mehr aktualisiert.

Kann jemand ein Reim daraus machen?
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: det. am 11 August 2014, 09:19:01
Hallo Hexenmeister,
schau mal in meinen letzten Post. Kann Deine Beobachtung zum Teil bestätigen, wobei bei meinem System definitiv nur die Thermometer Device betroffen sind, alle LCD, Switch, DS2438 funktionieren bzw. liefern weiter Werte.
Da ich parallel auf 2 RPI teste, wo der Effekt nicht auftritt - ist es mglw. ein Timingproblem der schnelleren Hardware?
Bei mir konnte ich die Sache umgehen, indem ich die Adapter auf dokik 0 und die Thermometer auf onread gesetzt habe. Ganz schön viel Arbeit, da jedes einzeln umgestellt werden muß, aber damit läuft es jetzt seit gestern Mittag stabil durch.
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: hexenmeister am 11 August 2014, 10:44:52
Hallo det.,

danke für den TIp, muss ich ausprobieren.
An Timing habe ich auch schon gedacht. Als ob der Antwort von dem COntroller nicht (lange genung) abgewartet wird. Darau deutet auch die unterschiedliche Anzahl der Zahlen hinter "... answer was". Mal steht da nichts, mal 0x16, manchmal 0x16 0x44. Aber wenn es einmal geht, dann geht es.

Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 11 August 2014, 12:01:37
Zitat von: hexenmeister am 10 August 2014, 19:57:20
Im Log waren laufend Meldungen in der Art:
2014.08.10 13:37:53.083 1: OWX: 1-Wire bus OWio1: interface not found, answer was 0x16
...

Das ist das letzte Stück. Irgendwann ging es dann doch. Mit ASYNC ging es sofort besser.
Da hat der Busmaster wohl seine Synchronisation auf die Geschwindigkeit der seriellen Schnittstelle verloren. Ein Neustart des Interfaces (Abziehen und wieder anstecken hätte vermutlich sofort geholfen. Dass es mit OWX_ASYNC dann ging hat einen Grund: Da habe ich das forcieren eines Resets mit Neusynchronisation eingebaut (funktioniert nur bei DS2480 die nicht über Netzwerk angebunden sind, weil für den Reset die Baudrate umgeschaltet werden muss). Im normalen OWX ist dieser Reset bei der Initialisierung (noch) nicht drin.

Zitat von: hexenmeister am 10 August 2014, 19:57:20
Leider war der Adapter nach ein Paar Stunden Betrieb wohl nicht mehr ansprechbar. Keine Fehlermeldungen, die Werte wurden einfach nicht mehr aktualisiert.
Zitat von: det. am 11 August 2014, 09:19:01
Da ich parallel auf 2 RPI teste, wo der Effekt nicht auftritt - ist es mglw. ein Timingproblem der schnelleren Hardware?
Bei mir konnte ich die Sache umgehen, indem ich die Adapter auf dokik 0 und die Thermometer auf onread gesetzt habe.

Das ist eine interessante Info, ich vermute mal, dass die DS18B20 hin und wieder Schwierigkeiten mit der bei 'dokick=1' parallel zur Temperaturwandung laufenden  Bussuche haben. (Bei OWX läuft das ja streng seriell). Auf schnellen Rechnern ist es wahrschienlicher, dass das tatsächlich parallel läuft. Da kann ich mal was am Timing drehen und die dokick-bussuche zeitlich von der Temparaturwandlung abkoppeln. Vieleicht wird's dann besser.
Und den Fehlerzähler des OWTHERM werde ich am Besten auch mal umbauen. Nach 5 Fehlern seit FHEM-start die Sensoren einfach abzuschalten ist nicht wirklich zielführend ;-)

Gruß,

Norbert
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: hexenmeister am 11 August 2014, 13:06:01
Hallo Norbert,

danke für die Erklärung.
Auf die Idee den Adapter abzuziehen bin ich auch gekommen. Leider hat das nichts gebracht. Nur (mehrfache) FHEM Neustart brachte Besserung.

Grüße,

Alexander

Titel: Antw:OWX asynchron überarbeitet
Beitrag von: det. am 11 August 2014, 13:12:59
Zitat von: ntruchsess am 11 August 2014, 12:01:37
Und den Fehlerzähler des OWTHERM werde ich am Besten auch mal umbauen. Nach 5 Fehlern seit FHEM-start die Sensoren einfach abzuschalten ist nicht wirklich zielführend ;-)
Gruß,
Norbert
Hallo Norbert,
Fehlerzähler bei meinen DS1820 war immer 0. Was bedeutet das Alarmevent 5 min vor Ende der Vorstellung? Auch bei Verbose 4 hatte ich keinerlei Meldungen im LOG.
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 11 August 2014, 14:24:40
Zitat von: det. am 11 August 2014, 13:12:59
Fehlerzähler bei meinen DS1820 war immer 0. Was bedeutet das Alarmevent 5 min vor Ende der Vorstellung?
Das bedeutet, dass die Devices beim Alarm-search geantwortet haben. Warum? Keine Ahnung, da kann ich nur mutmaßen - die Alarm-trigger-register der DS18B20 sind eigentlich im EEPROM und dürften nicht einfach mal so Ihren Zustand verlieren. Aber offensichtlich hat irgendwas die Sensoren so durcheinandergebracht, dass sie meinten eine Alarm-condition zu haben. Dazu reicht es natürlich auch, dass die AD-Wandlung gestört war (dann kommt typischerweise der Wert für 85°C raus -> Alarm).

Gruß,

Norbert
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: cwagner am 12 August 2014, 07:08:05
Moin Norbert,

leider muss ich berichten, dass die Stabilität sich in meiner Konstellation wieder verschlechtert hat. 5 Tage die neue Konstellation, 5mal Abschuss des FHEM ohne nutzbare Infos im Log im laufenden Galopp.
Auffällig: Das Timing ist offenbar wieder kritischer - es gibt mehr Log-Einträge wegen fehlerhafter Bytes (aber mit anderen Zeilen und Modulbnamen) und

-NEU- fehlerhafter Alarm-Meldungen:
2014.08.12 06:57:57 4: OWX_ASYNC_PT_Kick: Failure in alarm-search: OWX_DS2480 read timeout, bytes read: 13, expected: 18 at ./FHEM/OWX_DS2480.pm line 224.

2014.08.11 11:45:12 4: OWX_ASYNC_PT_Kick: Failure in search: OWX_DS2480: Search 2nd return has wrong parameter with length = 17 at ./FHEM/OWX_DS2480.pm line 359.
2014.08.11 15:14:52 4: OWX_ASYNC_PT_Kick: Failure in alarm-search: OWX_DS2480 read timeout, bytes read: 14, expected: 18 at ./FHEM/OWX_DS2480.pm line 224.


Im Einsatz aus dem SVN:
# $Id: 21_OWAD.pm 6378 2014-08-07 22:01:18Z ntruchsess $
# $Id: 21_OWMULTI.pm 6379 2014-08-07 22:31:34Z ntruchsess $
# $Id: 21_OWSWITCH.pm 6379 2014-08-07 22:31:34Z ntruchsess $
# $Id: 21_OWTHERM.pm 6379 2014-08-07 22:31:34Z ntruchsess $
# $Id: 00_OWX.pm 6362 2014-08-04 21:08:27Z ntruchsess $
# $Id: 00_OWX_ASYNC.pm 6378 2014-08-07 22:01:18Z ntruchsess $
#


Herzliche Grüße

Christian
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: det. am 12 August 2014, 10:32:44
Zitat von: ntruchsess am 11 August 2014, 14:24:40
... Dazu reicht es natürlich auch, dass die AD-Wandlung gestört war (dann kommt typischerweise der Wert für 85°C raus -> Alarm).
Gruß,
Norbert
Ich habe aber keine 85°C Fehler in meinen LOG's - und ohne dokick läuft es mit OWX_ASYNC auf dem Cubie seit Wochenende stabil.
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 12 August 2014, 12:19:20
Zitat von: cwagner am 12 August 2014, 07:08:05
-NEU- fehlerhafter Alarm-Meldungen:
2014.08.12 06:57:57 4: OWX_ASYNC_PT_Kick: Failure in alarm-search: OWX_DS2480 read timeout, bytes read: 13, expected: 18 at ./FHEM/OWX_DS2480.pm line 224.

EDIT: hab gerade gesehen, dass genau an der Stelle im OWX_DS2480 ja noch ein Bruchstück vom 'alten' timeoutcheck drin war. Das ist jetzt entfernt (https://github.com/ntruchsess/fhem-mirror/commit/06f72570e57250e1bf83a5edb504035f23fec678). Der entsprechende aktuelle TimeoutCheck ist im Rahmen des Protothreads-refactoring längst in den zentralen Scheduler (OWX_ASYNC_RunTasks) umgezogen.

-> Bitte testen: OWX_DS2480.pm (https://github.com/ntruchsess/fhem-mirror/raw/06f72570e57250e1bf83a5edb504035f23fec678/fhem/FHEM/OWX_DS2480.pm) (noch nicht im SVN, weil ich hier wg. Firewall gerade nur ins Github committen kann, alle anderen Files müssen der letzte SVN-stand sein).

EDIT 2:
Zitat von: hexenmeister am 11 August 2014, 13:06:01
Auf die Idee den Adapter abzuziehen bin ich auch gekommen. Leider hat das nichts gebracht. Nur (mehrfache) FHEM Neustart brachte Besserung.

o.g. timeoutcheck hatte möglicherweise auch eine Auswirkung auf die Initialisierung im OWX_ASYNC.
-> hier die zum verlinkten OWX_DS2480.pm passende OWX_SER.pm (https://github.com/ntruchsess/fhem-mirror/raw/855d42fac2abc96b89685d851c9b0ca549951e47/fhem/FHEM/OWX_SER.pm)

Beides kommt irgendwann heute abend, wenn ich es selber getestet habe ins SVN, also morgen wie üblich per update...

EDIT 3: link auf OWX_SER.pm aktualisiert...

Gruß,

Norbert
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: det. am 12 August 2014, 16:58:13
Hallo Norbert,
es ist wie verhext, auf dem RPI gehts mit Deinen verlinkten geänderten Dateien, auf dem CUBIE kommt:
OWX_ASYNC_Init failed: Not a SCALAR reference at ./FHEM/OWX_SER.pm line 238.mit der Version
# $Id: OWX_SER.pm 6392 2014-08-11 15:25:00Z ntruchsess $ läufts auch da.
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 12 August 2014, 17:20:27
sorry, ein Tippfehler (https://github.com/ntruchsess/fhem-mirror/commit/855d42fac2abc96b89685d851c9b0ca549951e47). Die Perlversion auf dem Pi hat das wohl akzeptiert, die auf dem Cubie nicht.

-> OWX_SER.pm (https://github.com/ntruchsess/fhem-mirror/raw/855d42fac2abc96b89685d851c9b0ca549951e47/fhem/FHEM/OWX_SER.pm)

Gruß,

Norbert
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: det. am 12 August 2014, 17:29:25
na kein Problem, dazu testen wir ja mit. Ist heute eben freudiges FHEM Neustarten angesagt!
Danke, jetzt geht es. Sag bitte bescheid, wenn ich dokick wieder einschalten soll.
Übrigens funktioniert inzwischen der Türkontakt mit dem DS2401 wie gewünscht.


dokick ist an - ich beobachte und schreibe Morgen, ob noch Werte kommen oder nicht.
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 12 August 2014, 18:08:46
na schalt dokick doch mal ein - ich weiß ehrlich nicht genau, ob der heutige Patch da wirklich was hilft, weil ich nicht weiß, ob der von Christian gemeldete Timeout sachlich richtig (es wären tatsächlich keine Daten mehr gekommen), oder falsch (hat viel zu früh zugeschlagen) war. Auf meinem Testsystem macht das Timing ja (auch mit dokick) praktisch keine Probleme - aber das sagt wenig, wenn es um quasiparallele Verarbeitung geht ist das Timing ja immer Plattformabhängig.

Gruß,

Norbert
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 12 August 2014, 23:26:18
zur Info: der heutige patch von OWX_SER und OWX_DS2480 ist jetzt im SVN (http://sourceforge.net/p/fhem/code/6398/).

Gruß,

Norbert
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: det. am 13 August 2014, 12:18:29
Zitat von: ntruchsess am 12 August 2014, 18:08:46
na schalt dokick doch mal ein - ich weiß ehrlich nicht genau, ob der heutige Patch da wirklich was hilft, weil ich nicht weiß, ob der von Christian gemeldete Timeout sachlich richtig (es wären tatsächlich keine Daten mehr gekommen), oder falsch (hat viel zu früh zugeschlagen) war. Auf meinem Testsystem macht das Timing ja (auch mit dokick) praktisch keine Probleme - aber das sagt wenig, wenn es um quasiparallele Verarbeitung geht ist das Timing ja immer Plattformabhängig.
Gruß, Norbert
Hallo Norbert,
das war es leider noch nicht, ein Zweig mit 13 DS1820 fiel heute morgen gegen 4 ohne jegliche LOG Einträge aus (immer nur die Thermometer, die anderen Devices gehen weiter) - habe das dokick auf 0 gesetzt und neu gestartet - geht bisher wieder. Der andere Zweig, da hatte ich zum Test nur einen DS1820 auf onkick gesetzt, alle anderen auf onread gelassen. da hat genau dieser heute früh gegen 7 aufgehört, Werte zu liefern.
Habe alle wieder auf onread - für mich ist das eigentlich so ok, der Server ist schnell genug um damit klar zu kommen.
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: sweetie-pie am 16 August 2014, 11:56:16
Hallo zusammen,

ich war ein paar Tage weg, jetzt habe ich auch mal wieder getestet...

Zunächst mal heute morgen ein Update gemacht:
# $Id: 00_OWX_ASYNC.pm 6378 2014-08-07 22:01:18Z ntruchsess $
# $Id: 00_OWX.pm 6392 2014-08-11 15:25:00Z ntruchsess $
# $Id: 11_OWX_FRM.pm 2013-03 - ntruchsess $
# $Id: 21_OWAD.pm 6378 2014-08-07 22:01:18Z ntruchsess $
# $Id: 21_OWCOUNT.pm 6379 2014-08-07 22:31:34Z ntruchsess $
# $Id: 21_OWID.pm 6263 2014-07-16 12:42:19Z ntruchsess $
# $Id: 21_OWLCD.pm 6378 2014-08-07 22:01:18Z ntruchsess $
# $Id: 21_OWMULTI.pm 6379 2014-08-07 22:31:34Z ntruchsess $
# $Id: 21_OWSWITCH.pm 6379 2014-08-07 22:31:34Z ntruchsess $
# $Id: 21_OWTEMP.pm 6164 2014-06-25 13:40:30Z ntruchsess $
# $Id: 21_OWTHERM.pm 6379 2014-08-07 22:31:34Z ntruchsess $
# $Id: OWX_DS2480.pm 6398 2014-08-12 21:22:18Z ntruchsess $
# $Id: OWX_Executor.pm 5927 2014-05-21 21:56:37Z ntruchsess $
# $Id: OWX_FRM.pm 6378 2014-08-07 22:01:18Z ntruchsess $
# $Id: OWX_SER.pm 6398 2014-08-12 21:22:18Z ntruchsess $


Bis eben hatte ich meine 11 Sensoren mit OWX betrieben, was allerdings das System ausbremste. Nun wollte ich nochmal OWX_ASYNC testen. Dazu habe ich alle Devices und den Adapter gelöscht. Die Config geschrieben und fhem neu gestartet.

Dann habe ich OWX_ASYNC neu angelegt:
Der Adapter wir erkannt und initialisiert. Das get Devices wirft abwechselnd immer solche oder ähnliche Fehlermeldungen:
OWX_SER::Search CRC failed : CC.CD0C00000000.00 at ./FHEM/OWX_SER.pm line 390.
OWX_SER::Search CRC failed : CC.CD0C00000000.00 at ./FHEM/OWX_SER.pm line 390.
OWX_DS2480: Search 2nd return has wrong parameter with length = 17 at ./FHEM/OWX_DS2480.pm line 354.
OWX_DS2480: Search 2nd return has wrong parameter with length = 22 at ./FHEM/OWX_DS2480.pm line 354.
OWX_DS2480: Search 2nd return has wrong parameter with length = 19 at ./FHEM/OWX_DS2480.pm line 354.


Jetzt kommt das viel größere Problem:
Weil es das ASYNC nicht richtig lüppt, wollte ich zurück zu den normalen OWX. Also alles gelöscht, config geschrieben, Neustart.
OWX eingerichtet, adapter wird erkannt, get Devices ausgeführt und nun kommt:
OWX: 1-Wire devices found on bus OWio1
00.000000000000      unknown    OWX_00_000000000000


*PANIK*

Es werden keine Devices mehr am Bus gefunden. Das sagt das Log dazu:
2014.08.16 11:26:41 1: OWX: Serial device /dev/ttyUSB1 defined
2014.08.16 11:26:41 1: OWX: 1-Wire bus OWio1: interface master DS2480 re-detected
2014.08.16 11:26:50 1: OWX: 1-Wire devices found on bus OWio1 (OWX_00_000000000000)


Ich habe aus lauter Not schon meine Installation auseinander gerupft um den Bus zu verkleinern und noch einen anderen Adapter versucht, alles ohne Erfolg.. immer mit den gleichen Ergebnis.

Kann mit bitte jemand sagen, welche Module ich genau zurückspielen muss? Ich habe den Zusammenhang der Module noch nicht ganz verstanden.

00_OWX.pm und 00_OWX_ASYNC.pm greifen beide auf OWX_SER.pm und dann auf  21_OWTHERM.pm zu?
Was machen den die anderen Module wie  21_OWTEMP.pm?
Ist das Problem evtl. weil ich eine Uralt-Installation habe die historisch gewachsen ist?

Hier noch weiter Systeminfos:
root@zeus:~# perl -v

This is perl, v5.10.1 (*) built for i486-linux-gnu-thread-multi

Copyright 1987-2009, Larry Wall

Perl may be copied only under the terms of either the Artistic License or the
GNU General Public License, which may be found in the Perl 5 source kit.

Complete documentation for Perl, including FAQ lists, should be found on
this system using "man perl" or "perldoc perl".  If you have access to the
Internet, point your browser at http://www.perl.org/, the Perl Home Page.

root@zeus:~# uname -a
Linux zeus 2.6.32-64-generic #128-Ubuntu SMP Tue Jul 15 08:34:12 UTC 2014 i686 GNU/Linux


Gruß
  Holger
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 16 August 2014, 22:25:18
Hallo Holger,
Ich hab grade testweise ein FHEM-5.5 aus dem tar-file installiert und per update auf aktuellen Stand gebracht und sowohl OWX, als auch OWX_ASYNC mit einem DS2480 Busmaster from scratch neu aufgesetzt. Tat alles wie es soll. Merkwürdig dass es bei Dir nicht klappt. Die Versionen die bei Dir per update rüberkommen sind sehen soweit auch korrekt aus (abgesehen davon, dass einige mittlerweile gelöschte Dateien bei Dir noch vorhanden sind: 11_OWX_FRM.pm und OWX_Executor.pm gibt's im SVN gar nicht mehr, da hat das Löschen beim update wohl nicht funktioniert... (21_OWTEMP wird übrigens nicht mehr aktiv gepflegt, da durch OWTHERM ersetzt)

Hast Du die Hardware mal durchgestartet? OWX kann den Busmaster nämlich nicht wirklich resetten, wenn der nicht mehr auf die Baudrate synchronisiert ist, dann kann es sein, dass die Buskommunikation nicht mehr geht.

Wg. Downgrade: das normale 00_OWX.pm hat keine Abhängigkeiten zu OWX_SER oder so, das redet direkt mit OWTHERM und Konsorten.

Gruß,

Norbert



Titel: Antw:OWX asynchron überarbeitet
Beitrag von: det. am 17 August 2014, 09:17:02
Hallo. Norbert,
Hast Du inzwischen eine Idee, warum OWTHERM mit OWX_ASYNC auf schnellen Servern nicht dauerhaft läuft? Auf den RPI gibts bei mir den Effekt nicht. Da geht es mit mehreren USB Adaptern und dem Kristech über Netzwerk prima seit letzterem Wochenende.
Das Löschen von überflüssigen Modulen scheint nicht automatisch zu funktionieren. Die sind bei mir auch alle noch da. Da wäre ein Hinweis, welche alle genau nicht mehr nötig sind hier gut.
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: sweetie-pie am 17 August 2014, 23:50:43
Hallo Norbert,

zunächst vielen Dank für deine Bemühungen.

Zunächst die gute Nachricht: Es läuft nun offenbar...  :)

Nun die schlechte Nachricht: Ich weiß nicht woran es schlussendlich lag...  :(

Ich habe mit update force alles geupdated und dann alle alten Module per Hand ausgemistet.
Dann habe ich weiterhin festgestellt, dass sich gelegentlich mein ttyUSB ändert, deswegen habe ich mal einen symbolischen Link via udev-rules angelegt und verwende nun diesen in der Parametrierung.

Ich werde  nun mal ein wenig testen. Danke...

Gruß
Holger
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 18 August 2014, 10:04:08
Hallo Detlev,

Zitat von: det. am 17 August 2014, 09:17:02Hast Du inzwischen eine Idee, warum OWTHERM mit OWX_ASYNC auf schnellen Servern nicht dauerhaft läuft?

Ich vermute, dass die Temperaturwandlung fehlschlägt, wenn der DS18B20 während der Wandlung bei einer Bussuche angesprochen wird. Genau das passiert bei der Kombination 'dokick/onkick'. Vieleicht kannst Du das ja mal mit 'attr power=parasitic' testen, dann wird alles serialisiert abgearbeitet und die 'dokick'-Bussuche sollte erst nach dem Auslesen der Sensoren drankommen. (Dabei dürfen die Intervalle natürlich nicht zu kurz sein, weil der 1-Wire-bus während der 1-Sekunden Gedenkpause vom OWTHERM dann ja für andere Aufgaben blockiert ist).

Zitat von: det. am 17 August 2014, 09:17:02Das Löschen von überflüssigen Modulen scheint nicht automatisch zu funktionieren. Die sind bei mir auch alle noch da. Da wäre ein Hinweis, welche alle genau nicht mehr nötig sind hier gut.

Ich zähl mal auf, welche Dateien benötigt werden:

00_OWX.pm (für Arduino, DS2480, DS9097, CUNO, owfs aka OWServer)
00_OWX_ASYNC.pm (für Arduino, DS2480 und DS9097)
10_FRM.pm (für Arduino, sowohl OWX als auch OWX_ASYNC)
10_OWServer.pm (für owfs)
21_OWAD.pm
21_OWCOUNT.pm
21_OWID.pm
21_OWLCD.pm
21_OWMULTI.pm
21_OWSWITCH.pm
21_OWTHERM.pm
OWX_DS2480.pm (für OWX_ASYNC mit DS2480 und DS9097)
OWX_DS9097.pm (für OWX_ASYNC mit DS9097)
OWX_FRM.pm (für OWX_ASYNC mit Arduino)
OWX_SER.pm (für OWX_ASYNC mit DS2480 und DS9097)
GPUtils.pm (für OWX_ASYNC)
lib/ProtoThreads.pm (für OWX_ASYNC)

die 11_OWX_*.pm und OWX_Executor.pm sind obsolet (sollten aber abgesehen von sinnlosen Einträgen in der Commandref keinen Schaden anrichten, wenn sie noch rumliegen)

Gruß,

Norbert
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: fhem-challenge am 18 August 2014, 13:48:26
Hi Norbert,

obwohl ich ja auch seit langem das Problem mit OWX_ASYNC auf schnellen Rechner habe, stelle ich aber teilweise Unterschiede in den Releases von OWX_ASYNC fest. Seit dem vorletzten "update" habe ich wieder deutlich mehr Ausfälle meiner DS18B20. Mit der OWX_ASYNC ca. Anfang August hatte ich nach ca. 1 Tag die Ausfälle (reproduzierbar da ich zwischen den OQX_ASYNC Versionen wechsele und das Problem damit mitwechselt). Seit dem vorletzten Update ca. all 3-4 Stunden. Ich nutze "doKick", deaktiviere es aber heute einmal und melde mich, wenn ich hier etwas "erkennen" kann.

Anonsten "resettet" meine "Not-"Funktion den Firmata...

check_owx_async {
my @@device=devspec2array("TYPE=OWTHERM");
my $must_reset = 0;
my $watch_time = "900";
my $iodev = "";
foreach(@@device)
{
my $state_time = $defs{$_}{READINGS}{"temperature"}{TIME};
my $last_activity_since = int(time - time_str2num($state_time));
if ($last_activity_since > $watch_time)
{
my $iodev_ow = AttrVal($_,"IODev","");
$iodev = AttrVal($iodev_ow,"IODev","");
fhem ("get $_ temperature");
$must_reset = 1
}
}
if ($must_reset == 1)
{
if ($iodev)
{
fhem ("set $iodev reset");
Log 3,"Warnung: $iodev wird neu gestartet, da OWX_ASYNC nicht erreichbar ist"
}
doWarning($iodev,"OWX_ASYNC meldet sich nicht und wurde neu gestartet")
}
}



...nicht schön,  aber ich hoffe, das ich die Funktion bald loswerde :-)


Viele Grüße!

Andreas
Zitat von: ntruchsess am 18 August 2014, 10:04:08
Hallo Detlev,

Ich vermute, dass die Temperaturwandlung fehlschlägt, wenn der DS18B20 während der Wandlung bei einer Bussuche angesprochen wird. Genau das passiert bei der Kombination 'dokick/onkick'. Vieleicht kannst Du das ja mal mit 'attr power=parasitic' testen, dann wird alles serialisiert abgearbeitet und die 'dokick'-Bussuche sollte erst nach dem Auslesen der Sensoren drankommen. (Dabei dürfen die Intervalle natürlich nicht zu kurz sein, weil der 1-Wire-bus während der 1-Sekunden Gedenkpause vom OWTHERM dann ja für andere Aufgaben blockiert ist).

Ich zähl mal auf, welche Dateien benötigt werden:

00_OWX.pm (für Arduino, DS2480, DS9097, CUNO, owfs aka OWServer)
00_OWX_ASYNC.pm (für Arduino, DS2480 und DS9097)
10_FRM.pm (für Arduino, sowohl OWX als auch OWX_ASYNC)
10_OWServer.pm (für owfs)
21_OWAD.pm
21_OWCOUNT.pm
21_OWID.pm
21_OWLCD.pm
21_OWMULTI.pm
21_OWSWITCH.pm
21_OWTHERM.pm
OWX_DS2480.pm (für OWX_ASYNC mit DS2480 und DS9097)
OWX_DS9097.pm (für OWX_ASYNC mit DS9097)
OWX_FRM.pm (für OWX_ASYNC mit Arduino)
OWX_SER.pm (für OWX_ASYNC mit DS2480 und DS9097)
GPUtils.pm (für OWX_ASYNC)
lib/ProtoThreads.pm (für OWX_ASYNC)

die 11_OWX_*.pm und OWX_Executor.pm sind obsolet (sollten aber abgesehen von sinnlosen Einträgen in der Commandref keinen Schaden anrichten, wenn sie noch rumliegen)

Gruß,

Norbert
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 18 August 2014, 16:00:58
Zitat von: fhem-challenge am 18 August 2014, 13:48:26...nicht schön,  aber ich hoffe, das ich die Funktion bald loswerde :-)

Das nenn ich mal einen kreativen Workaround. Ich hätte nicht gedacht, dass irgedwer mit 'set <FRM> reset' tatsächlich was anfangen kann, das habe ich damals eigentlich nur der Vollständigkeit halber mit rein genommen.
Das resetten des FRM-devices hilft wohl indirect: Beim reset der Firmata kappt der Arduino temporär die Verbindung, beim anschließenden reconnect triggert FRM eine Neuinitialisierung des OWX_ASYNC-devices, welches wiederum alle konfigurierten Clients reinitialisiert ;-)

Ich bau mal den Fehlercounter im OWTHERM um - das ist aktuell so designed, dass es (hardcoded) nach 5 Fehlern den Sensor praktisch abstellt (intervall auf 9999 Sekunden). Ich halte das für nicht wirklich schlau, ich mach das mal konfigurierbar.

Gruß,

Norbert
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: det. am 18 August 2014, 18:08:31
Zitat von: ntruchsess am 18 August 2014, 10:04:08
Ich vermute, dass die Temperaturwandlung fehlschlägt, wenn der DS18B20 während der Wandlung bei einer Bussuche angesprochen wird. Genau das passiert bei der Kombination 'dokick/onkick'. Vieleicht kannst Du das ja mal mit 'attr power=parasitic' testen, dann wird alles serialisiert abgearbeitet und die 'dokick'-Bussuche sollte erst nach dem Auslesen der Sensoren drankommen. (Dabei dürfen die Intervalle natürlich nicht zu kurz sein, weil der 1-Wire-bus während der 1-Sekunden Gedenkpause vom OWTHERM dann ja für andere Aufgaben blockiert ist
Gruß,

Norbert
sorry, der Versuch meldet:
ZitatOWX_ASYNC: ignoring attribute dokick because buspower is parasitic
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 18 August 2014, 18:24:24
Zitat von: det. am 18 August 2014, 18:08:31
OWX_ASYNC: ignoring attribute dokick because buspower is parasitic

oh, ja klar. Hätte ich doch noch mal in meinen eigenen code schauen sollen ;-)
D.h ich hab mir den dokick-task grade noch mal genauer angesehen - das Temperaturwandlungsdelay ist ja im Task selber, nur das Auslesen selbst kann quasiparallel zur Bussuche erfolgen... Aber irgendwo da liegt der Wurm begraben. Ich muss ihn nur noch finden ;-)
Auf die Parallelverarbeitung will ich an der Stelle aber nicht komplett verzichten - die ist unverzichtbar, wenn man schnell auf Veränderungen am present-reading (z.B. OWID) reagieren will.

Gruß,

Norbert
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: det. am 18 August 2014, 18:46:15
Zitat von: ntruchsess am 18 August 2014, 18:24:24Auf die Parallelverarbeitung will ich an der Stelle aber nicht komplett verzichten - die ist unverzichtbar, wenn man schnell auf Veränderungen am present-reading (z.B. OWID) reagieren will.
Gruß,
Norbert
Hallo Norbert,
um mal was positives zu berichten, die Probleme mit OWID sind gelöst, das geht jetzt prima. Um das Intervall dort dauerhaft auf 15 zu setzen, muß das Intervallin OWX-ASYNC dann auch auf 15 gesetzt sein? Bisher stellt sich das nach jeden Neustart wieder auf 300 zurück. Das ist für Türkontakte nicht optimal.
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: fhem-challenge am 19 August 2014, 09:00:45
Zitat von: ntruchsess am 18 August 2014, 16:00:58
Das nenn ich mal einen kreativen Workaround. Ich hätte nicht gedacht, dass irgedwer mit 'set <FRM> reset' tatsächlich was anfangen kann, das habe ich damals eigentlich nur der Vollständigkeit halber mit rein genommen.
Das resetten des FRM-devices hilft wohl indirect: Beim reset der Firmata kappt der Arduino temporär die Verbindung, beim anschließenden reconnect triggert FRM eine Neuinitialisierung des OWX_ASYNC-devices, welches wiederum alle konfigurierten Clients reinitialisiert ;-)

Ich bau mal den Fehlercounter im OWTHERM um - das ist aktuell so designed, dass es (hardcoded) nach 5 Fehlern den Sensor praktisch abstellt (intervall auf 9999 Sekunden). Ich halte das für nicht wirklich schlau, ich mach das mal konfigurierbar.

Gruß,

Norbert


Ja, [Firmata] reset hilft in der Tat. Darüber hinaus hatte ich noch mit dem Configurable Firmata Sketch ein Problem (ich lasse es auf dem Mega 2560 laufen). In einigen "unklaren" Konstellationen hängte sich sogar bei Abfrage der TempWerte durch FHEM auch der Arduino auf. Das habe ich nun durch den neuen Bootloader im Arduino Mega unter Verwendung des Watchdogs lösen können.

Ich muss den Aufwand deshalb treiben, da ich (vielleicht zu früh), diese Umgebung auch produktiv einsetze (Heizungs und Poolsteuerung).

Viele Grüße!

Andreas
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: cwagner am 20 August 2014, 06:44:19
Hi Norbert,

nachdem, wie berichtet owx_async nun bei mir recht stabil läuft und ich den Performance-Gewinn sehr schätzen gelernt habe, gehe ich nun den verbleibenden, regelmäßigen Fehlermeldungen nach, die ich gar nicht verstehe:
2014.08.19 23:09:59 4: OWX_ASYNC_RunTasks: OWio1 task exited: OWX: 1-Wire devices found on bus OWio1
20.0C2C0C000000      DS2450         Umweltsensor
10.787E83020800      DS18S20/DS1920 T_Vorlauf_FBH
10.541E0B000800      DS18S20/DS1920 T_Warmwasser
10.0576A8020800      DS18S20/DS1920 T_Heizung
28.905F9B010000      DS18B20        Aussenluft
28.A8A49B010000      DS18B20        T_Ruecklauf_Anhebung
28.CA0FAC040000      DS18B20        Zuluft
28.0E37AC040000      DS18B20        Abluft
28.AEE870010000      DS18B20        Dachfenster_Sued
28.810671010000      DS18B20        T_Ruecklauf
28.1307AC040000      DS18B20        Fortluft
26.10F326010000      DS2438         TF_Galerie
29.68980C000000      DS2408         Switch_Heizkeller

2014.08.20 00:08:05 1: OWX_SER::Search CRC failed : 18.541E0B000800.35
2014.08.20 00:08:05 4: OWX_ASYNC_PT_Kick: Failure in alarm-search: OWX_SER::Search CRC failed : 18.541E0B000800.35 at ./FHEM/OWX_SER.pm line 390.

2014.08.20 00:54:31 1: OWX_SER::Search CRC failed : 20.0C2C0C000000.FF
2014.08.20 00:54:31 4: OWX_ASYNC_PT_Kick: Failure in search: OWX_SER::Search CRC failed : 20.0C2C0C000000.FF at ./FHEM/OWX_SER.pm line 390.

2014.08.20 03:34:40 1: OWX_SER::Search CRC failed : 20.0C2C0C0000F8.FF
2014.08.20 03:34:40 4: OWX_ASYNC_PT_Kick: Failure in search: OWX_SER::Search CRC failed : 20.0C2C0C0000F8.FF at ./FHEM/OWX_SER.pm line 390.

2014.08.20 03:37:44 1: OWX_SER::Search CRC failed : 20.0C2C0CFEFFFF.FF
2014.08.20 03:37:44 4: OWX_ASYNC_PT_Kick: Failure in alarm-search: OWX_SER::Search CRC failed : 20.0C2C0CFEFFFF.FF at ./FHEM/OWX_SER.pm line 390.

2014.08.20 04:15:14 1: OWX_SER::Search CRC failed : 20.0C2C0C80FFFF.FF
2014.08.20 04:15:15 4: OWX_ASYNC_PT_Kick: Failure in search: OWX_SER::Search CRC failed : 20.0C2C0C80FFFF.FF at ./FHEM/OWX_SER.pm line 390.

2014.08.20 04:21:18 1: OWX_SER::Search CRC failed : 20.0C2C0C0000FF.FF
2014.08.20 04:21:18 4: OWX_ASYNC_PT_Kick: Failure in alarm-search: OWX_SER::Search CRC failed : 20.0C2C0C0000FF.FF at ./FHEM/OWX_SER.pm line 390.
2014.08.20 06:26:25 2: OWX: 1-Wire devices found on bus OWio1 (Umweltsensor,T_Vorlauf_FBH,T_Warmwasser,T_Heizung,Aussenluft,T_Ruecklauf_Anhebung,Zuluft,Abluft,Dachfenster_Sued,T_Ruecklauf,Fortluft,TF_Galerie,Switch_Heizkeller)
2014.08.20 06:26:25 4: OWX_ASYNC_RunTasks: OWio1 task exited: OWX: 1-Wire devices found on bus OWio1
20.0C2C0C000000      DS2450         Umweltsensor
10.787E83020800      DS18S20/DS1920 T_Vorlauf_FBH
10.541E0B000800      DS18S20/DS1920 T_Warmwasser
10.0576A8020800      DS18S20/DS1920 T_Heizung
28.905F9B010000      DS18B20        Aussenluft
28.A8A49B010000      DS18B20        T_Ruecklauf_Anhebung
28.CA0FAC040000      DS18B20        Zuluft
28.0E37AC040000      DS18B20        Abluft
28.AEE870010000      DS18B20        Dachfenster_Sued
28.810671010000      DS18B20        T_Ruecklauf
28.1307AC040000      DS18B20        Fortluft
26.10F326010000      DS2438         TF_Galerie
29.68980C000000      DS2408         Switch_Heizkeller


Das Spannende: followalarms =off auf OWio1 und es gibt keine Devices 18.541E0B000800.35 und 20.0C2C0C0000FF.FF. Ich finde auch kein Device mit dieser Nummer in meinen CFGs.

Was kann ich gegebenenfalls noch tun, um die auszumerzen? Warum aber wird überhaupt nach einem Alarm auf denen gesucht?

Herzliche Grüße

Christian
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 20 August 2014, 09:43:04
Zitat von: fhem-challenge am 19 August 2014, 09:00:45Das habe ich nun durch den neuen Bootloader im Arduino Mega unter Verwendung des Watchdogs lösen können.
Ich muss den Aufwand deshalb treiben, da ich (vielleicht zu früh), diese Umgebung auch produktiv einsetze (Heizungs und Poolsteuerung).

Hallo Andreas,

Watchdog ist etwas, was in der Arduino-(software)-plattform einfach fehlt um die Teile produktiv in Steuerungen einzusetzen. Die Teile sind ohne abgestimmte Entstörmaßnahmen sowieso nicht EMV-fest (http://de.wikipedia.org/wiki/Elektromagnetische_Vertr%C3%A4glichkeit) genug und stürzen gerade in Verbindung mit z.b. billigen Relaisplatinen ja gerne mal ab. Ich denke man findet keinen µC in einer komerziellen Steuerung auf dem kein Watchdog realisiert ist.

vieleicht magst Du dazu ja mal ein kleines Tutorial ins Wiki stellen?

Gruß,

Norbert
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ntruchsess am 20 August 2014, 09:53:20
Zitat von: cwagner am 20 August 2014, 06:44:19

2014.08.20 00:08:05 1: OWX_SER::Search CRC failed : 18.541E0B000800.35
2014.08.20 00:08:05 4: OWX_ASYNC_PT_Kick: Failure in alarm-search: OWX_SER::Search CRC failed : 18.541E0B000800.35 at ./FHEM/OWX_SER.pm line 390.
...
10.541E0B000800      DS18S20/DS1920 T_Warmwasser


Das Spannende: followalarms =off auf OWio1 und es gibt keine Devices 18.541E0B000800.35 und 20.0C2C0C0000FF.FF. Ich finde auch kein Device mit dieser Nummer in meinen CFGs.

Was kann ich gegebenenfalls noch tun, um die auszumerzen? Warum aber wird überhaupt nach einem Alarm auf denen gesucht?

Hallo Christian,

die Alarm-suche sucht nicht geziehlt nach dem Device 18.541E0B000800.35, sondern findet es. Das passiert offenbar weil das 10.541E0B000800 bei der Alarm-search falch geantwortet hat. (Das gibt natürlich einen CRC-fehler, dafür ist der CRC ja da!). Das hat mit followAlarms auch nichts zu tun (das Attribut ist ein nicht ausimplementiertes Relikt vermutlich von Peter Henning, in OWX_ASYNC tut es bisher auch noch nichts). Eigentlich könnte man es weglassen - oder die Durchführung der Alarm-search von diesem Attribut abhängig machen (so das man sie ganz abstellen kann). Ich wüßte auch nicht, was man als sinnvolle Folgeaktion außer setzen des 'alarm'-readings implementieren könnte (auf das Reading kann man ja mit einem notify reagieren).
Ich vermute mal stark, dass das Problem daher kommt, dass beim OWX_ASYNC die Alarm-search läuft während die DS18B20 gerade Ihre Temperaturwandlung machen. Das ändere ich gerade.

Gruß,

Norbert
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: T.ihmann am 27 August 2014, 10:42:18
Zitat von: fhem-challenge am 18 August 2014, 13:48:26
Anonsten "resettet" meine "Not-"Funktion den Firmata...


Wo kommt diese Not-Funktion denn hin, in 99MyUtils.pm ? Und wie wird sie gestartet ?
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: fhem-challenge am 27 August 2014, 11:26:24
Zitat von: T.ihmann am 27 August 2014, 10:42:18
Wo kommt diese Not-Funktion denn hin, in 99MyUtils.pm ? Und wie wird sie gestartet ?

Das kann beliebig gemacht werden.

Da ich davon ausgehe, dass die Funktion irgendwann wieder überflüssig wird, habe ich diese ganz bewusst nicht in der 99MyUtils.pm abgelegt.

Die Funktion rufe ich lediglich periodisch mit "trigger check_owc_async" auf (alle 5 Minuten im Rahmen von anderen periodischen Überprüfungen in FHEM, die ich dort mache) auf.

Du kannst die Funktion so verwenden, lediglich "doWarning($iodev,"OWX_ASYNC meldet sich nicht und wurde neu gestartet")" solltest Du raus nehmen, da das eine meiner 99Utils... Funktionen für die Alarmierung ist, die Du sicherlich nicht hast (und auch nicht brauchst).

Oder Du machst einfach ein ...

define check_owx +*00:05:00 trigger check_owx_async

... für ein Check, alle 5 Minuten.


Weiter Voraussetzung für die Funktion ist natürlich, dass Du am OW-Bus auch Sensoren hast, die vom Typ (TYPE=OWTHERM) sind, sonst findet die Funktion nicht das zugehörige "iodev". Also wenn du klassischer Weise DS18B20 o.Ä. hast, und die dann seit x-Sekunden kein Event mehr auslösen.

Viele Grüße!

Andreas

check_owx_async {
my @@device=devspec2array("TYPE=OWTHERM");
my $must_reset = 0;
my $watch_time = "900";
my $iodev = "";
foreach(@@device)
{
my $state_time = $defs{$_}{READINGS}{"temperature"}{TIME};
my $last_activity_since = int(time - time_str2num($state_time));
if ($last_activity_since > $watch_time)
{
my $iodev_ow = AttrVal($_,"IODev","");
$iodev = AttrVal($iodev_ow,"IODev","");
fhem ("get $_ temperature");
$must_reset = 1
}
}
if ($must_reset == 1)
{
if ($iodev)
{
fhem ("set $iodev reset");
Log 3,"Warnung: $iodev wird neu gestartet, da OWX_ASYNC nicht erreichbar ist"
}
doWarning($iodev,"OWX_ASYNC meldet sich nicht und wurde neu gestartet")
}
}
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: Achim am 01 Februar 2015, 17:46:23
Hallo,

meine Antwort passt nicht so ganz zu dem Thema, das Problem wurde hier aber kurz angesprochen (und ich habe es in keinem anderen Thread gefunden)

http://forum.fhem.de/index.php/topic,13580.msg161589.html#msg161589 (http://forum.fhem.de/index.php/topic,13580.msg161589.html#msg161589)

die Zeileattr Wohnzimmer_LF_DS1 stateFormat {sprintf("Luftfeuchte: %.1f /% Temperatur: %.1f °C",ReadingsVal($name,"relHumidity",0), ReadingsVal($name,"temperature",0))}verursacht folgende Fehlermeldung im fhemlog
Zitat2015.02.01 17:13:47 1: PERL WARNING: Invalid conversion in sprintf: "% T" at (eval 775) line 1.
Nach langem Suchen, Testen und Lesen habe ich in "Einführung in Perl, Ausgabe 6" (nicht lachen...) auf Seite 95 die Lösung gefunden. Das %-Zeichen wird nicht durch den Backslash zum "normalen" ASCII Zeichen sondern durch ein zweites %-Zeichen. Folgende Zeile bringt keine Fehlermeldung mehr:attr Wohnzimmer_LF_DS1 stateFormat {sprintf("Luftfeuchte: %.1f %% Temperatur: %.1f °C",ReadingsVal($name,"relHumidity",0), ReadingsVal($name,"temperature",0))}

Viele Grüße
Achim
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: stromer-12 am 09 Februar 2015, 18:45:29
Zitat von: Achim am 01 Februar 2015, 17:46:23
die Zeileattr Wohnzimmer_LF_DS1 stateFormat {sprintf("Luftfeuchte: %.1f /% Temperatur: %.1f °C",ReadingsVal($name,"relHumidity",0), ReadingsVal($name,"temperature",0))}verursacht folgende Fehlermeldung im fhemlogNach langem Suchen, Testen und Lesen habe ich in "Einführung in Perl, Ausgabe 6" (nicht lachen...) auf Seite 95 die Lösung gefunden. Das %-Zeichen wird nicht durch den Backslash zum "normalen" ASCII Zeichen sondern durch ein zweites %-Zeichen.

Nur du hast gar kein Backslash verwendet, sondern einen Slash.
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: Achim am 10 Februar 2015, 21:02:09
Hallo,

ist ein Schreibfehler in meiner Mail. Ich habe es auch noch einmal mit einem Backslash getestet. Mit Backslash gibt es auch den Error.

Viele Grüße
Achim
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: bads am 27 Februar 2015, 13:10:42
Ich kämpfe mit dauernden Abstürzen bei OWX_AYNC.

Die Anbindung an FHEM erfolgt über die Configurable-Firmate auf einem NANO mit einem Ethernet Shield ENC28J60. Soweit läuft alles etwa 3-4 Stunden durch, dann bricht die Verbindung zum Nano ab.

Bei Ausführen des Befehls "set FRMDevice reset", schmiert dann FHEM gnadenlos ab. Im Log ist nichts zu sehen, obwohl "verbose 5" beim FRM-Device gesetzt wurde.

Solange die Verbindung läuft, kann ein "set FRMDevice reset" ausgeführt werden und FHEM stürzt nicht ab. Der Effekt tritt erst auf, wenn die Verbindung abgebrochen ist.

Jetzt glaube ich nicht, dass meine Konfiguration ungewöhnlich ist, aber ich weiss im Moment nicht so richtig weiter.

Irgendwelche Ideen?

[EDIT] Das sind die internals gerade nach einem Neustart von FHEM und Reset vom Nano (Strom ab und an)

Zitat
Internals:
   DEF        3030 global
   DeviceName 3030
   FD         5
   NAME       FRMHeizung
   NOTIFYDEV  global
   NR         281
   NTFY_ORDER 50-FRMHeizung
   PORT       3030
   STATE      listening
   TYPE       FRM
   Readings:
     2015-02-27 09:38:06   error           Unhandled sysex command
Attributes:
   model      nano
   verbose    5

Internals:
   ALARM      0
   ASYNC      1
   DEF        DS18B20 992590060000
   ERRCOUNT   1
   INTERVAL   300
   IODev      OWio1
   NAME       Temp.HZ.FBVorlauf
   NOTIFYDEV  global
   NR         283
   NTFY_ORDER 50-Temp.HZ.FBVorlauf
   OW_FAMILY  28
   OW_ID      992590060000
   PRESENT    0
   ROM_ID     28.992590060000.23
   STATE      defined
   TYPE       OWTHERM
   owg_temp
   owg_th
   owg_tl
   Readings:
     2015-02-27 12:13:07   alarm           0
     2015-02-27 12:18:19   present         0
     2015-02-27 12:49:00   state           defined
     2015-02-27 12:13:17   temperature     29.4375
   Tempf:
     factor     1
     offset     0
Attributes:
   IODev      OWio1
   event-on-change-reading state
   interval   300
   model      DS18B20
   room       OWX
   tempConv   onread
   tempHigh   75
   tempLow    18

Internals:
   ALARM      0
   ASYNC      1
   DEF        DS18B20 6FFC8F060000
   ERRCOUNT   1
   INTERVAL   60
   IODev      OWio1
   NAME       Temp.HZ.Vorlauf
   NOTIFYDEV  global
   NR         284
   NTFY_ORDER 50-Temp.HZ.Vorlauf
   OW_FAMILY  28
   OW_ID      6FFC8F060000
   PRESENT    0
   ROM_ID     28.6FFC8F060000.EC
   STATE      defined
   TYPE       OWTHERM
   owg_temp
   owg_th
   owg_tl
   Readings:
     2015-02-27 12:13:07   alarm           0
     2015-02-27 12:18:19   present         0
     2015-02-27 12:49:00   state           defined
     2015-02-27 12:13:19   temperature     54.6875
   Tempf:
     factor     1
     offset     0
Attributes:
   IODev      OWio1
   event-on-change-reading state
   interval   60
   model      DS18B20
   room       OWX
   tempConv   onread
   tempHigh   75
   tempLow    18

Internals:
   ALARM      0
   ASYNC      1
   DEF        DS18B20 1E3A90060000
   ERRCOUNT   1
   INTERVAL   300
   IODev      OWio1
   NAME       Temp.HZ.Zuluft
   NOTIFYDEV  global
   NR         285
   NTFY_ORDER 50-Temp.HZ.Zuluft
   OW_FAMILY  28
   OW_ID      1E3A90060000
   PRESENT    0
   ROM_ID     28.1E3A90060000.5F
   STATE      defined
   TYPE       OWTHERM
   owg_temp
   owg_th
   owg_tl
   Readings:
     2015-02-27 12:13:07   alarm           0
     2015-02-27 12:18:19   present         0
     2015-02-27 12:49:00   state           defined
     2015-02-27 12:13:18   temperature     12.625
   Tempf:
     factor     1
     offset     0
Attributes:
   IODev      OWio1
   event-on-change-reading state
   interval   300
   model      DS18B20
   room       OWX
   tempConv   onread
   tempHigh   75
   tempLow    5

Internals:
   DEF        9
   INTERFACE  firmata
   IODev      FRMHeizung
   NAME       OWio1
   NOTIFYDEV  global
   NR         282
   NTFY_ORDER 50-OWio1
   PIN        9
   PRESENT    0
   ROM_ID     FF
   STATE      Init Failed: OWio1, FRMHeizung is not connected
   TYPE       OWX_ASYNC
   dokick     ignored
   interval   60
   ALARMDEVS:
   DEVS:
   Tasks:
Attributes:
   IODev      FRMHeizung
   buspower   parasitic
   dokick     1
   interval   60
   room       OWX

Titel: Antw:OWX asynchron überarbeitet
Beitrag von: Achim am 27 Februar 2015, 16:18:30
Hallo,

aus eigener Erfahrung liegt das Problem nicht auf der FHEM Seite sondern auf der Arduino/Firmata Seite. Wie viel freien Speicher hast du für lokale Variablen nach dem Kompilieren des Sketches? 400 Bytes würde ich jetzt mal als Minimum ansehen. Und die neuste Version (2.06) von Norbert verwenden.
In der Message http://forum.fhem.de/index.php/topic,16681.msg150242.html#msg150242 (http://forum.fhem.de/index.php/topic,16681.msg150242.html#msg150242) sind die Links zu der benötigten Firmware gelistet.

Viele Grüße
Achim

Titel: Antw:OWX asynchron überarbeitet
Beitrag von: bads am 27 Februar 2015, 20:45:16
Hallo Achim,

ich nutze Configurable Firmata V2.06. Nach dem Compilieren kommt:

.tmp\FirmataWorks.cpp.hex
Binäre Sketchgröße: 24.344 Bytes (von einem Maximum von 30.720 Bytes)

Das sollte doch ausreichen? Ich habe fast alles auskommentiert, UDP ausgeschaltet etc., alles was irgendwo einmal als hilfreich kommentiert wurde um Speicher zu sparen.

Guido
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: Achim am 27 Februar 2015, 20:50:15
Hallo Guido,

nicht die Sketchgröße ist entscheidend sondern Teile der "zweiten Zeile"
ZitatDer Sketch verwendet 23.162 Bytes (75%) des Programmspeicherplatzes. Das Maximum sind 30.720 Bytes.
Globale Variablen verwenden 1.545 Bytes (75%) des dynamischen Speichers, 503 Bytes für lokale Variablen verbleiben. Das Maximum sind 2.048 Bytes.

Viele Grüße
Achim
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: bads am 27 Februar 2015, 21:03:58
Ähem :(

Bei mir ist keine zweite Zeile. Ich nutze IDE 1.06. Muss das irgendwo eingestellt werden?

[EDIT] Mit dem Programm avr-size bekomme ich anscheinend den Wert, wenn ich mcu korrekt angegeben habe

avr-size -C --mcu=atmega328 FirmataWorks.cpp.elf
AVR Memory Usage
----------------
Device: atmega328

Program:   24344 bytes (74.3% Full)
(.text + .data + .bootloader)

Data:       1568 bytes (76.6% Full)
(.data + .bss + .noinit)


Danke
Guido
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: Achim am 28 Februar 2015, 09:43:15
Hallo Guido,

ich verwende die 1.6.0 Version. Ich habe erst vor kurzem die "alten" 1.0.x Versionen gelöscht. Ich bin mir nicht  sicher ob dies ein Feature der neuen IDE ist oder ob man das konfigurieren kann.

Viele Grüße
Achim
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: bads am 01 März 2015, 11:34:07
Gestern kam das in China bestellte W5100 Ethernet Shield für den Nano. Mit diesem Shield ist der Speicherverbrauch etwa
10% geringer.

Trotzdem ist nach 8 Stunden mit obiger Konfiguration Schluss und der Arduino antwortet nicht mehr, auch nicht mit PING mehr zu erreichen. Ein "set FRMDevice reset" bringt FHEM auch sofort zum Absturz.

Zitat
avr-size -C --mcu=atmega328 WZ5000.cpp.elf
AVR Memory Usage
----------------
Device: atmega328

Program:   23578 bytes (72.0% Full)
(.text + .data + .bootloader)

Data:       1338 bytes (65.3% Full)
(.data + .bss + .noinit)

Es sieht für mich nach einem Memory-Leak in der Configurable-Firmata aus, wo ich aber ohne Kenntnisse des Codes nicht weiter komme.

Hat denn jemand eine funktionierende 1-Wire/Configurable Firmata Konfiguration, die über Wochen oder Monate ohne Probleme funktioniert? Wenn ja, wie habt ihr das hinbekommen?

Danke
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: Tweak am 21 März 2015, 08:03:01
Sorry für den etwas überflüssigen Beitrag, aber ich wollte einfach mal Danke sagen für diese ausgezeichnete Erweiterung!
Durch das OWX_ASYNC haben sich bei mir so viele Probleme von selbst erledigt das ist einfach nur perfekt!

Ich frage 26 Temp-Sensoren + ein paar Zähler über einen Busmaster ab das war zuvor eine "Katastrophe" wenn ich das im Vergleich zu jetzt mal so sagen darf.

Wirklich top Arbeit!

Lg
Manuel
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: Prof. Dr. Peter Henning am 21 März 2015, 10:10:22
 >:( Die "Katastrophe" bitte sonstwohin stecken - in den einzelnen Modulen von OWX steckt nämlich genausoviel Arbeit, wie in der asynchronen Erweiterung.

pah
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: Tweak am 22 März 2015, 06:35:25
Zitat von: Prof. Dr. Peter Henning am 21 März 2015, 10:10:22
>:( Die "Katastrophe" bitte sonstwohin stecken - in den einzelnen Modulen von OWX steckt nämlich genausoviel Arbeit, wie in der asynchronen Erweiterung.

pah

Hallo pah,
So war das doch nicht gemeint. Ich meinte das eher in Bezug auf meine Installatiobsweise! Ohne das owx gäbe ja gar kein asynchrones.
Bitte daher nicht falsch verstehen.
ihr leistet hier wirklich ganz große Arbeit! Und zwar alle!

LG
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: Prof. Dr. Peter Henning am 22 März 2015, 06:48:04
Gut, also wieder herausziehen.

LG

pah
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: ext23 am 23 März 2015, 10:10:18
Guten Morgen,

ich habe vor zwei Tagen auch von OWX auf OWX-ASYNC umgestellt. Ich habe das Empfinden, dass die GUI ein wenig flotter reagiert, aber so 100% sicher bin ich mir nicht. Ansonsten merke ich bei meiner Konstellation von MP00202 und 3x iButtonID sowie LCD kein wirklichen Unterschid. Sprich es funktioniert alles wie es soll. Einzig das AppTime sieht etwas anders aus. Vorher hatte ich immer ein maxDly von 3500 pro iButton jetzt ist es immer 0, finde ich auch etwas komisch aber nunja.

                                name             function    max  count    total  average maxDly
                       RPi_RFXTRX433      FHEM2FHEM_Ready  31064 1196429    34065     0.03      0 HASH(RPi_RFXTRX433)
                             MP00202       OWX_ASYNC_Read   5463 1639414 11607913     7.08      0 HASH(MP00202)
            Notify_Schluessel_Daniel          notify_Exec   5462     11    19193  1744.82      0 HASH(Notify_Schluessel_Daniel); HASH(fl_iButton_blau)
                          az_OW_LCD1            OWLCD_Get   5445     30    43480  1449.33      0 HASH(az_OW_LCD1); az_OW_LCD1; gpio
                             RPi_CUL       FHEM2FHEM_Read   5002   4424    17018     3.85      0 HASH(RPi_CUL)
                       RPi_RFXTRX433       FHEM2FHEM_Read   5002   4423    12242     2.77      0 HASH(RPi_RFXTRX433)
                                 WEB              FW_Read   4018    343    29170    85.04      0 HASH(WEB)
             Notify_Schluessel_Anett          notify_Exec   3349      9    12172  1352.44      0 HASH(Notify_Schluessel_Anett); HASH(fl_iButton_gelb)
                           AVRNETIO2           ECMD_Ready   3003 1933177548  7948228     0.00      0 HASH(AVRNETIO2)
                              HMLAN1          HMLAN_Ready   3001 628626     3006     0.00      0 HASH(HMLAN1)
                             RPi_CUL      FHEM2FHEM_Ready   1262 544688     1264     0.00      0 HASH(RPi_CUL)
                              HMLAN1           HMLAN_Read   1155  16028    78571     4.90      0 HASH(HMLAN1)
                    Fester_Alarm_Bad          notify_Exec   1139     32    12855   401.72      0 HASH(Fester_Alarm_Bad); HASH(bz_Fenster)
                                CUL1             CUL_Read    922   1258     4538     3.61      0 HASH(CUL1)
   Notify_FS20_FB_02_Kanal_10_toggle          notify_Exec    918      2     1835   917.50      0 HASH(Notify_FS20_FB_02_Kanal_10_toggle); HASH(FS20_FB_02_Kanal10)
                          az_SISPM_4          SIS_PMS_Set    914     36     4209   116.92      0 HASH(az_SISPM_4); az_SISPM_4; toggle
             FB_FS20_01_Taste_02_off          notify_Exec    789      2     1577   788.50      0 HASH(FB_FS20_01_Taste_02_off); HASH(Fernbedienung01_Taste02)
                         tmr-at_Exec     HASH(0x299167f0)    556      1      556   556.00    108 HASH(Alarm_PushMessage_OpenDoor_Eingang_SGS2)
                            PushSGS2     PushNotifier_Set    546      4     1058   264.50      0 HASH(PushSGS2); PushSGS2; message; Türalarm!
                         tmr-at_Exec     HASH(0x293ce668)    526      1      526   526.00      0 HASH(Alarm_PushMessage_OpenDoor_Eingang_SGS2)
                         tmr-at_Exec     HASH(0x2ecb22b8)    398      1      398   398.00    515 HASH(Alarm_PushMessage_OpenDoor_Eingang_OPO)


Gruß
Daniel
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: Scotty80 am 14 Mai 2015, 21:53:00
Hallo,

nachdem ich auf meiner Test-Station problemlos mehrere Temperatursensoren mit OXY_ASYNC zum Laufen bekommen habe, mag es mir nun in der "Praxis" nicht so recht gelingen.
Folgende Situation:
Zwei 1-W-Busse mit jeweils einem E-Service-Ethernet-Adapter.
Mit:
define 1WireEG OWX_ASYNC 192.168.2.221:23 bzw. define 1WireOG OWX_ASYNC 192.168.2.220:8888
in Fhem definiert - dies funktionierte auf diese Art und Weise in der Test-Version einwandfrei.
Nach einem "get devices" kommt folgende Fehlermeldung:
015.05.14 21:47:15 5: OWX_ASYNC_Schedule master: 1WireEG, task: 1WireEG
2015.05.14 21:47:16 5: SW: e3c5
2015.05.14 21:47:16 5: SW: e1f0e3b5
2015.05.14 21:47:16 5: SW: e100000000000000000000000000000000e3a5
2015.05.14 21:47:16 5: OWX_DS2480 read: After loop no. 2 received: cff0ffffffffffffffffffffffffffffffff
2015.05.14 21:47:16 1: OWX_SER::Search CRC failed : FF.FFFFFFFFFFFF.FF
2015.05.14 21:47:16 4: OWX_ASYNC_PT_Kick: Failure in search: OWX_SER::Search CRC failed : FF.FFFFFFFFFFFF.FF at /opt/fhem/FHEM/OWX_SER.pm line 390.

2015.05.14 21:47:16 5: OWX_ASYNC_RunTasks: 1WireEG task finished


Hat jemand eine Idee, wo das Problem liegt?

Gruß Scotty
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: det. am 14 Mai 2015, 22:42:32
Hallo Scotty,
Beschreib doch mal die Unterschiede zwischen Testsystem und Praxis - andere (schnellere?) Hardware eventuell eingesetzt? Bei mir funktionierte die asynchrone Version auf RPI perfekt, auf Cubie2 und CubieTruck überhaupt nicht. Bin schon lange wieder bei der Version OWX und habe zeitkritische Sachen einfach auf einem zweiten Server laufen.
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: Prof. Dr. Peter Henning am 15 Mai 2015, 05:52:24
Schaut bitte auch die Alpha-Versionen für das neue Backend an, sind hier zu finden: http://forum.fhem.de/index.php/topic,37122.0.html.

LG

pah
Titel: Antw:OWX asynchron überarbeitet
Beitrag von: Scotty80 am 19 Mai 2015, 18:49:50
Zitat von: det. am 14 Mai 2015, 22:42:32
Hallo Scotty,
Beschreib doch mal die Unterschiede zwischen Testsystem und Praxis - andere (schnellere?) Hardware eventuell eingesetzt? Bei mir funktionierte die asynchrone Version auf RPI perfekt, auf Cubie2 und CubieTruck überhaupt nicht. Bin schon lange wieder bei der Version OWX und habe zeitkritische Sachen einfach auf einem zweiten Server laufen.

Der einzige Unterschied besteht darin, dass in der Praxisvariante deutlich mehr Temperatursensoren (DS18B20) vorhanden sind, ca. 10 Stück pro Bus. Perfekte Lineare Topologie. Ansonsten alles gleich zur Testvariante. Die Ethernet-Adapter funktionieren, sind ebenfalls getestet.
Das bringt mich der Vermutung nahe, dass der Elektriker die Kabel falsch zugeordnet hat.
Nun die Frage: Gibt es eine Möglichkeit, die 3 Adern des 1-Wire-Busses z.B. anhand der Widerstände zueinander zu identifizieren? Oder auch anders formuliert: Man hat 3 Drähte und weiß jedoch nicht, welcher welcher ist. Wie finde ich es heraus? (Natürlich ist gemeint, ohne die einzelnen Sensoren wieder auszugraben)

Gruß Scotty

Sooo... war ein Verdrahtungsfehler. Fehler beseitigt, nun funktioniert alles prima.
Trotzdem würde mich interessieren, welche Widerstände zwischen den einzelnen Adern eines DS18B20 existieren.