DS18B20 auf HM-CC-RT-DN abbilden (Wer hat HM-Temp-Fühler mit RT in Betrieb?)

Begonnen von Bene, 13 Dezember 2013, 20:43:55

Vorheriges Thema - Nächstes Thema

martinp876

Hi Jan,

kannst du einmal die rohmessages schicken? Gerne gezippt. Insbesondere wenn es mit HMUSB oder HMLAN aufgenommen wurde.
Die Berechnung habe ich schon für den den VD realisiert - das konnte man übernehmen.

Mit vorsicht ist die Berechnung in Perl zu sehen, da Perl in dieser Größenordnung rundet.

Unteressant ist die Formel sowieso. Da am Ende nur Bits 16-23 genutzt werden braucht man alles über Bit 24 nicht. somit kann man mit 12996205 anstelle von 1103515245  rechnen.

ohne rundungsprobleme sollte es so gehen
  my $idl = hex(substr($dst,4,2))*256+$msgCnt;
  my $lo = int(($idl*0x4e6d +12345)/0x10000)&0xff;
  my $hi = ($hash->{helper}{vd}{idh}+$idl*198)&0xff;
  my $nextTimer = (($lo+$hi)&0xff)/4 + 120;


Wäre gut (und logisch) wenn es hier genauso wie bei dem VD geht
Gruss Martin

jab

Hi Martin,

ich hab das Perl Programm mal gegengetestet:

my $dst = "1F4C66";
for (my $msgCnt=0; $msgCnt<104; $msgCnt++) {
        my $idh = hex(substr($dst,2,2))*20077;
        my $idl = hex(substr($dst,4,2))*256+$msgCnt;
        my $lo = int(($idl*0x4e6d +12345)/0x10000)&0xff;
        my $hi = ($idh+$idl*198)&0xff;
        my $nextTimer = (($lo+$hi)&0xff)/4 + 120;
        print $nextTimer;
        print "\n";
}

Das ergibt den gleichen Output. Sollte also gehen :-). Anhängend die Raw Messages seit heute Mittag.

EDIT: Eine Sache ist mir aufgefallen: Die HMID sollter hier nicht $dst sondern $src sein. Sprich ich verwende die HMID des Senders (Tempsensor) und nicht des Empfängers (HM-CC-RT-DN).


Gruß,
Jan

martinp876

Hi Jan,

so - dann kann man man ans implementieren denken. Sollte so laufen wie beim VD. Es gibt also ein Kommando
virtTemp <temp>

damit setzt man die temperatur, die beim nächsten Aufwachen übertragen wird.
Das Kommando wird einem virtuellen Channel freigeschaltet wenn er mit min einem RT Channel 01 gepeert ist.
mit
virtTemp off wird alles gestoppt. ansonsten wird immer der aktuellen Wert übertragen.

Ok so weit?

Gruss Martin


jab

Hi Martin,

das klingt gut! Ggf kann man direkt virtHumidity mitimplementieren. Ist ja praktisch das gleiche.


Gruß,
Jan

Thorsten Pferdekaemper

Hi,
cool, dass es tatsächlich weitergeht. Es wäre schon genial, wenn man günstigere (und kleinere!) Temperatursensoren verwenden könnte.
Von wegen virtHumidity: Welche Geräte können damit was anfangen?
Gruß,
   Thorsten
FUIP

jab

Hi Thorsten,

vermutlich keine aktuell. Aber der Messagetyp enthält beide Informationen. Ist aber auch kein Problem wenn Humidity 0 ist.

Gruß,
Jan

martinp876

Hi

Version 4768 hat es implementiert - bitte testen. Mit einem RT habe ich es noch nicht gepeert
Kommando ist virtTemp <value>.

Was soll ein virtHumidity bringen? Der einzige sinn von virtTemp ist der Anschluss von Fremddevices an Aktoren, die es verarbeiten können. Gibt es dies auch für humidity?

Gruss Martin

Thorsten Pferdekaemper

Hi,
ich werde das leider erst nächste Woche testen können, hab's mir aber fest vorgenommen...
Gruß,
   Thorsten
FUIP

DosiRocker

wird dies dann auch mit dem S300TH (bzw. jedem Temperatursensor?) funktionieren, bzw. funktioniert dies schon?
Gruß,
Martin
Cubietruck: CUNO 868;CUL HM
1 Wire: 1 OWAD, 13 OTHERM
10 FS20 ST; 3 HMS100WD; 1 EM1000;  4 S300TH;
4 HM_CC_RT_DN, HM_SEC_SC
AVM 7390 als FHEM2FHEM, Raspberry Pi

jab

Hi DosiRocker,

das wird mit jedem Gerät gehen, das in FHEM ausgelesen werden kann. Vorgehen ist dann so:
- Notify auf den echten Sensor legen
- Wenn sich der Wert ändert kommt der Notify und setzt den Wert auf das dummy device
- Das dummy Device schickt den letzten gesetzten Wert periodisch über Funk

Ich werde das am Wochenende testen wenn ich mir etwas Zeit dafür nehmen kann.


Gruß,
Jan

DosiRocker

Zitat von: jab am 31 Januar 2014, 16:34:31
Hi DosiRocker,

das wird mit jedem Gerät gehen, das in FHEM ausgelesen werden kann. Vorgehen ist dann so:
- Notify auf den echten Sensor legen
- Wenn sich der Wert ändert kommt der Notify und setzt den Wert auf das dummy device
- Das dummy Device schickt den letzten gesetzten Wert periodisch über Funk

Ich werde das am Wochenende testen wenn ich mir etwas Zeit dafür nehmen kann.


Gruß,
Jan

das hört sich super an, danke für die Rückmeldung. Fast schon schade, daß ich ab morgen für ein paar Tage in Urlaub fahre.
Das dummy Device ist dann mit dem RT gepeert, oder; verstehe ich das so richtig?
Ich könnte evtl. ab Ende nächster Woche mittesten mit S300TH und DS18B20, wenn Bedarf besteht (und ihr Lust habt mir das Einrichten des Dummy Devices zu erklären)  ;D

Martin
Cubietruck: CUNO 868;CUL HM
1 Wire: 1 OWAD, 13 OTHERM
10 FS20 ST; 3 HMS100WD; 1 EM1000;  4 S300TH;
4 HM_CC_RT_DN, HM_SEC_SC
AVM 7390 als FHEM2FHEM, Raspberry Pi

Bene

Hallo zusammen, 

mit Freude verfolge ich die aktuellen Entwicklungen!
Es sollte selbstverständlich sein, dass ich als Tester zur Verfügung stehe, wa?!! :-)

Vielen Dank für eure Mühe!

Bene

martinp876

Hi,

ich habe gerade gelesen, dass ein RT auch die Humidity eines externen Sensors auswerten kann - jedenfalls behauptet das ELV im Prospekt zum RT-TC.
Somit werde ich also die Humidity einbauen - scheint ja sinn zu machen.
Option wäre "on top" des temp sensors  -humidity wird es also nicht ohne temp geben, temp abre ohen humidity

Gruss Martin

Thorsten Pferdekaemper

FUIP

jab

Abend,

so ich habe das bei mir mal ausprobiert. Funktioniert hervorragend bei mir! Jetzt brauche ich nur noch echte Temperatursensoren. Danke Martin!


Gruß,
Jan