Differenz-Temperatur-Sensor HM-WDS30-OT2-SM

Begonnen von cwagner, 16 Juli 2013, 18:10:44

Vorheriges Thema - Nächstes Thema

cwagner

#45
Moin, Martin,

Du bist ja rege(n) unterwegs und die Stichworte zu den updates von HMConfig und 10_CUL_HM machten mich neugierig. Deshalb habe ich heute meine Baustelle, den Differenz-Temperatur-Sensor, mal neu angelernt.

Und siehe da, nun wurden automatisch drei weitere Channel angelegt, die aber wie die beiden ersten (noch?) keinen Status haben. Anbei das aktuelle Listing des Device:

Internals:
   CUL_0_MSGCNT 244
   CUL_0_RAWMSG A16C9865320BEDC0000000041012B42031E43FE0D4401F3FB
   CUL_0_RSSI -76.5
   CUL_0_TIME 2013-08-04 18:02:03
   DEF        20BEDC
   EVENTS     244
   IODev      CUL_0
   LASTInputDev CUL_0
   MSGCNT     244
   NAME       T_Ruecklauf
   NR         470
   STATE      RESPONSE TIMEOUT:RegisterRead
   TYPE       CUL_HM
   channel_01 T_Ruecklauf_Th_01
   channel_02 T_Ruecklauf_Th_02
   channel_03 T_Ruecklauf_Th_03
   channel_04 T_Ruecklauf_Th_04
   channel_05 T_Ruecklauf_Weather
   lastMsg    No:C9 - t:53 s:20BEDC d:000000 0041012B42031E43FE0D4401F3
   protCmdDel 0
   protLastRcv 2013-08-04 18:02:03
   protResndFail 1 last_at:2013-08-04 17:09:30
   protSnd    9 last_at:2013-08-04 17:09:25
   protState  CMDs_done_events:1
   rssi_at_CUL_0 avg:-80.41 min:-85.5 max:-75.5 lst:-76.5 cnt:244
   Readings:
     2013-08-04 16:37:08   Activity        alive
     2013-08-04 17:09:25   CommandAccepted yes
     2013-08-04 08:17:15   PairedTo        0xF11234
     2013-08-04 08:17:15   R-burstRx       off
     2013-08-04 08:17:15   R-cyclicInfoMsgDis 0
     2013-08-04 08:17:15   R-intKeyVisib   invisib
     2013-08-04 08:17:15   R-localResDis   off
     2013-08-04 08:17:15   R-pairCentral   0xF11234
     2013-08-04 08:17:15   R-paramSel      T1_T2
     2013-08-04 18:02:03   Val_temp_T1     29.9
     2013-08-04 18:02:03   Val_temp_T1-T2  -49.9
     2013-08-04 18:02:03   Val_temp_T2     79.8
     2013-08-04 18:02:03   Val_temp_T2-T1  49.9
     2013-08-04 17:09:30   state           RESPONSE TIMEOUT:RegisterRead
     Regl_00::
       VAL       
   Reaginds:
   Helper:
     burstEvtCnt 1
     mId        00A8
     rxType     12
     Respwait:
     Role:
       dev        1
     Rssi:
       At_cul_0:
         avg        -80.4118852459017
         cnt        244
         lst        -76.5
         max        -75.5
         min        -85.5
     Shadowreg:
       RegL_00:     01:00 02:01 0A:F1 0B:12 0C:34 11:00 18:00 1B:03  00:00
Attributes:
   actCycle   000:05
   actStatus  alive
   expert     2_full
   firmware   1.1
   model      HM-WDS30-OT2-SM
   peerIDs    00000000,
   room       InArbeit
   serialNr   KEQ0178415
   subType    THSensor
   userReadings temperature
   webCmd     getConfig


Herzliche Grüße

Christian
PI 2B+/5 Raspbian 12, Perl 5.36.0, FHEM 6.3: 295 Module in ConfigDB: Steuerung Heizkessel, FBH, Solarthermie, kontr. Lüftung mit WRG. Smarthome u.a. HMCUL, 1-Wire (FT232RL ; DS2480B), EnOcean (TCM EPS3), MQTT2. DOIF, PID20, Threshold, OWX; Micropelt IRTV, Volkszähler, SolarForecast; MariaDB

martinp876

Hallo Christian,

das sind die Kanäle nach xml.
den 5. Kanal scheint man peeren zu koennen, die Kanaele 1-4 nicht.
Melden können alle Temperaturen.
Warum HM hierfür 4channels definiert hat ist mir nicht klar, auch nicht ob die alle etwas melden, oder ob die alle gepeert werden können und dann senden.

Das Lesen der Register ist in deinem Fall schief gegangen - hat das einen Bekannten Grund? Ansonsten bitte logs vom getConfig schicken (roh messages ;-))

funktioniert paramSel?
Gruss Martin

martinp876

Hallo Christian,

ich denke jetzt das Konzept der HM channels des WDS30 verstanden zu haben. Daher würde ich gerne aufräumen. Das bedeuted, dass die Readings
temp_T1","temp_T2","temp_T1-T2","temp_T2-T1

entfallen. Diese müssen eigentlich in den Channels stehen. Also
chan1:T1
chan2:T2
chan3:T1-T2
chen4:T2-T1

Chan5 wird dann aus einer anderen message "gespeist"

Dies Konzept ist dann "generell" und kann für weitere Devices genutzt werden.

Soweit schon einmal die "Warnung" - ich hoffe,es gibt keine "Komplikationen"
Gruss Martin


cwagner

Moin, moin, die "Warnung" kam exakt richtig, gerade wollte ich mich nach einer Woche ohne Zeit für FHEM hinsetzen und schauen, ob ich a) noch Hausaufgaben von Dir zu erledigen haben und b) meinen nun endlich fertiggestellen 4fach-Aktor zum Agieren auf Basis der Temeperaturdifferenz in ein THRESHOLD einbauen. Da warte ich dann erst einmal auf Deinen update.

Nach wie vor finde ich es sehr gut und vereinfachend, dass die Differenz von T1 und T2 ebenfalls gemeldet wird - Wenn das dann als Event und im Reading auftaucht, bin ich bezüglich des WDS30 am Ziel. Er wird dann sogar zwei einzelne WDS-30-TO ablösen können.

Gutes Gelingen

Christian
PI 2B+/5 Raspbian 12, Perl 5.36.0, FHEM 6.3: 295 Module in ConfigDB: Steuerung Heizkessel, FBH, Solarthermie, kontr. Lüftung mit WRG. Smarthome u.a. HMCUL, 1-Wire (FT232RL ; DS2480B), EnOcean (TCM EPS3), MQTT2. DOIF, PID20, Threshold, OWX; Micropelt IRTV, Volkszähler, SolarForecast; MariaDB

Raschi1210

Ich habe mir ebenfalls diesen Temperaturfühler organisiert aber ich bekomme einfach keine 2 Temperaturen angezeigt.
Nur den Unterschied.
Gibts evtl eine zusammengefasste Anleitung wie man das machen kann?
Ich bin irgendwie aus dem ganzen nicht schlau geworden.
Danke

oneted

Hallo Martin (martinp876),

ich habe mir nun auch einen HM-WDS30-OT2 gekauft und via FHEM eingebunden.
Wenn du mit deinen "Aufräumarbeiten" fertig bist, würde ich mich gerne fürs Testing anbieten. Bitte um Info, falls es etwas Neues gibt.

danke
lg
Michael

FHEM Update Version vom 10.08.13
# $Id: 10_CUL_HM.pm 3657 2013-08-10 05:24:24Z martinp876 $

- Listing

  CUL_HM_HM_WDS30_OT2_SM_20BXXX (MISSING ACK)
  CUL_HM_HM_WDS30_OT2_SM_20BXXX_Th_01 (???)
  CUL_HM_HM_WDS30_OT2_SM_20BXXX_Th_02 (???)
  CUL_HM_HM_WDS30_OT2_SM_20BXXX_Th_03 (???)
  CUL_HM_HM_WDS30_OT2_SM_20BXXX_Th_04 (???)
  CUL_HM_HM_WDS30_OT2_SM_20BXXX_Weather (???)

   Readings:  CUL_HM_HM_WDS30_OT2_SM_20BXXX
     2013-08-17 01:30:54   Activity        alive
     2013-08-17 01:38:40   CommandAccepted yes
     2013-08-17 01:52:47   Val_temp_T1     30.9
     2013-08-17 01:52:47   Val_temp_T1-T2  5.2
     2013-08-17 01:52:47   Val_temp_T2     25.7
     2013-08-17 01:52:47   Val_temp_T2-T1  -5.2
     2013-08-17 01:38:46   state           MISSING ACK

martinp876

Ist in 3756 eingebaut, bitte testen.
Auch HMConfig 3755 mitnehmen.

Die Readings T1, T2 und auch die Differenz werden in den stats der 4 channels angezeigt. Die Werte/Inhalte haben sich nicht geaendert.
Die vorigen Readings werden nicht mehr upgedated und werden entsprechend verschwinden, wenn man rebooted.

Gruss Martin

cwagner

#52
Moin, Martin,
das ist ein guter Fortschritt (wie übrigens auch (off topic) die Teilung der set und get Befehle in fhemweb). Das Listing meines Device sieht nun so aus (lediglich in den Kanälen, ja bei mir noch als eigene Devices existieren und gepeered sind, tut sich nichts, vermutlich kann ich die löschen, nicht?)

Im Status erscheinen die Temperaturen aber noch nicht.

Internals:
   CUL_0_MSGCNT 251
   CUL_0_RAWMSG A167C865320BEDC000000004100DA42018143FF594400A7FA
   CUL_0_RSSI -77
   CUL_0_TIME 2013-08-21 06:59:17
   DEF        20BEDC
   EVENTS     251
   IODev      CUL_0
   LASTInputDev CUL_0
   MSGCNT     251
   NAME       T_Ruecklauf
   NR         470
   STATE      CMDs_done_events:1
   TYPE       CUL_HM
   channel_01 T_Ruecklauf_Th_01
   channel_02 T_Ruecklauf_Th_02
   channel_03 T_Ruecklauf_Th_03
   channel_04 T_Ruecklauf_Th_04
   channel_05 T_Ruecklauf_Weather
   lastMsg    No:7C - t:53 s:20BEDC d:000000 004100DA42018143FF594400A7
   protCmdDel 0
   protLastRcv 2013-08-21 06:59:17
   protResndFail 1 last_at:2013-08-20 20:51:30
   protSnd    4 last_at:2013-08-20 20:54:11
   protState  CMDs_done_events:1
   rssi_at_CUL_0 avg:-76.47 min:-92.5 max:-73.5 lst:-77 cnt:251
   Readings:
     2013-08-21 02:31:00   Activity        alive
     2013-08-21 06:59:17   Chan_41         21.8
     2013-08-21 06:59:17   Chan_42         38.5
     2013-08-21 06:59:17   Chan_43         -16.7
     2013-08-21 06:59:17   Chan_44         16.7
     2013-08-20 20:54:11   CommandAccepted yes
     2013-08-20 20:54:11   state           CMDs_done_events:1
   Helper:
     burstEvtCnt 1
     mId        00A8
     rxType     12
     Respwait:
     Role:
       dev        1
     Rssi:
       At_cul_0:
         avg        -76.4760956175298
         cnt        251
         lst        -77
         max        -73.5
         min        -92.5
     Shadowreg:
       RegL_00:    02:01 0A:F1 0B:12 0C:34
Attributes:
   actCycle   000:05
   actStatus  alive
   expert     2_full
   firmware   1.1
   model      HM-WDS30-OT2-SM
   peerIDs    00000000,
   room       InArbeit
   serialNr   KEQ0178415
   subType    THSensor
   userReadings temperature
   webCmd     getConfig



Herzliche Grüße

Christian
PI 2B+/5 Raspbian 12, Perl 5.36.0, FHEM 6.3: 295 Module in ConfigDB: Steuerung Heizkessel, FBH, Solarthermie, kontr. Lüftung mit WRG. Smarthome u.a. HMCUL, 1-Wire (FT232RL ; DS2480B), EnOcean (TCM EPS3), MQTT2. DOIF, PID20, Threshold, OWX; Micropelt IRTV, Volkszähler, SolarForecast; MariaDB

martinp876

Hallo Christian,

also die Event Filtertime sollte jetzt funktionieren.

Das mit den Channels hat nicht so funktioniert - 2 Tipfehler von mir.

Es wir wie folgt aussehen:
T_Ruecklauf_Th_01 21.8
T_Ruecklauf_Th_02 38.5
T_Ruecklauf_Th_03 -16.7
T_Ruecklauf_Th_04 16.7

die Readings Chan_01 bis 04 werden nur erstellt wenn die Channels nicht existieren. Die führende "4" wird wegfallen. Das die Werte nicht in die Channels geschriben wurden war ein Bug.

Ich hoffe das ist immer noch ok - so ist jedenfalls die Implementierung von HM zu lesen.

Gruss Martin

cwagner

Moin, Martin,
wieder ein Stück weiter, aber in den Channels gibt es noch kein Reading und im Device beinhaltet der Status noch keine Temperaturen. Hier der aktuelle Stand nach Neustart mit den aktuellsten Versionen der HMConfig.pm und 10_CUL_HM:
Internals:
   CUL_0_MSGCNT 9
   CUL_0_RAWMSG A0E51A01020BEDCF112340100000000FA
   CUL_0_RSSI -77
   CUL_0_TIME 2013-08-21 22:12:01
   DEF        20BEDC
   EVENTS     9
   IODev      CUL_0
   LASTInputDev CUL_0
   MSGCNT     9
   NAME       T_Ruecklauf
   NR         470
   STATE      RESPONSE TIMEOUT:PeerList
   TYPE       CUL_HM
   channel_01 T_Ruecklauf_Th_01
   channel_02 T_Ruecklauf_Th_02
   channel_03 T_Ruecklauf_Th_03
   channel_04 T_Ruecklauf_Th_04
   channel_05 T_Ruecklauf_Weather
   lastMsg    No:51 - t:10 s:20BEDC d:F11234 0100000000
   protCmdDel 7
   protLastRcv 2013-08-21 22:12:01
   protResndFail 2 last_at:2013-08-21 22:12:07
   protSnd    5 last_at:2013-08-21 22:12:01
   protState  CMDs_done_events:1
   rssi_at_CUL_0 avg:-77.05 min:-77.5 max:-76.5 lst:-77 cnt:9
   Readings:
     2013-08-21 22:12:00   Chan_01         55.6
     2013-08-21 22:12:00   Chan_02         56.8
     2013-08-21 22:12:00   Chan_03         -1.2
     2013-08-21 22:12:00   Chan_04         1.2
     2013-08-21 22:12:00   CommandAccepted yes
     2013-08-21 22:12:00   PairedTo        0xF11234
     2013-08-21 22:12:00   R-burstRx       off
     2013-08-21 22:12:00   R-cyclicInfoMsgDis 0
     2013-08-21 22:12:00   R-intKeyVisib   invisib
     2013-08-21 22:12:00   R-localResDis   off
     2013-08-21 22:12:00   R-pairCentral   0xF11234
     2013-08-21 22:12:00   R-paramSel      T2_T1
     2013-08-21 22:12:00   RegL_00:          01:00 02:01 0A:F1 0B:12 0C:34 11:00 18:00 1B:04  00:00
     2013-08-21 22:12:07   state           RESPONSE TIMEOUT:PeerList
   Helper:
     burstEvtCnt 1
     mId        00A8
     rxType     12
     Role:
       dev        1
     Rssi:
       At_cul_0:
         avg        -77.0555555555556
         cnt        9
         lst        -77
         max        -76.5
         min        -77.5
     Shadowreg:
Attributes:
   actCycle   000:05
   actStatus  alive
   expert     2_full
   firmware   1.1
   model      HM-WDS30-OT2-SM
   peerIDs    00000000,
   room       InArbeit
   serialNr   KEQ0178415
   subType    THSensor
   userReadings temperature
   webCmd     getConfig


===================================================
Seit diesem bzw. dem vorangegangenen update fällt mir im fhem.log nach dem Start diese sich einige Dutzend Male wiederholende Fehlerzeile auf:
2013.08.21 22:03:16 3: Opening CUL_0 device /dev/ttyACM0
2013.08.21 22:03:16 3: Setting CUL_0 baudrate to 9600
2013.08.21 22:03:16 3: CUL_0 device opened
2013.08.21 22:03:16 3: CUL_0: Possible commands: BCFiAZEGMRTVWXefmltux
2013.08.21 22:03:16 2: Switched CUL_0 rfmode to HomeMatic
2013.08.21 22:03:18 3: attribut not allowed for channels
2013.08.21 22:03:18 3: attribut not allowed for channels
2013.08.21 22:03:18 3: attribut not allowed for channels
2013.08.21 22:03:18 3: attribut not allowed for channels
....



Herzliche Grüße

Christian
PI 2B+/5 Raspbian 12, Perl 5.36.0, FHEM 6.3: 295 Module in ConfigDB: Steuerung Heizkessel, FBH, Solarthermie, kontr. Lüftung mit WRG. Smarthome u.a. HMCUL, 1-Wire (FT232RL ; DS2480B), EnOcean (TCM EPS3), MQTT2. DOIF, PID20, Threshold, OWX; Micropelt IRTV, Volkszähler, SolarForecast; MariaDB

martinp876

Hallo Christian

muss mich für die Schlamperei langsam entschuldigen :(. Ich kann es halt nicht final testen - aber etwas mehr sorgfalt....

in der Zeile 875
      if($modules{CUL_HM}{defptr}{$chId}){
sollte stehen
      if($modules{CUL_HM}{defptr}{$src.$chId}){
Dann aber sollte es klappen.

Das File steht mir 3766 in SVN korrigiert

Gruss Martin

Raschi1210

Habe auch alle Updates gemacht, aber habe nirgendwo die 4 Channels für die verschiedenen Temperaturen.
Was mach ich da falsch?

Bitte um Info

martinp876

hm - seltsam.

ich hoffe, der update ist korrekt verlaufen.

Die Channels müssen die 4 ersten channels sein, die sind ja noch da, oder?
Wenn sie angelegt sind werden sie Daten/Werte in den "state" dieser Channels geschrieben.

Wenn die Info nicht hilft müssen wir genauer nachsehen.

Gruss Martin

betateilchen

Zitat von: Raschi1210 schrieb am Fr, 23 August 2013 07:51Habe auch alle Updates gemacht, aber habe nirgendwo die 4 Channels für die verschiedenen Temperaturen.
Was mach ich da falsch?

Einfach nochmal pairen. Das Softwareupdate alleine reicht nicht.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

Raschi1210

Hallo

Ich denke, da diese nicht da sind, dass ich etwas falsch gemacht habe
Werden diese nicht automatisch angelegt

Danke für die info

fg