CUL 433 + CUL_TCM97001 + KW-9010

Begonnen von BerndDA, 17 Oktober 2015, 13:12:41

Vorheriges Thema - Nächstes Thema

BerndDA

Hallo,

leider kann ich den Temperatursensor KW-9010 mit der oben genannten Kombination nicht decodieren.
So weit ich das Modul 14_CUL_TCM97001 verstehe, gibt es dort auch noch keine Unterstützung für den Sensor KW-9010 (Conrad Renkforce).
Das Modul 14_FHEMduino_Env erkennt den Sensor.
Ich würde gerne bei der Portierung behilflich sein, da ich auf ein CUL gewechselt bin. Weiß jemand wer für das Modul verantwortlich ist?

Viele Grüße
Bernd

bjoernh

Zitat von: BerndDA am 17 Oktober 2015, 13:12:41
Hallo,

leider kann ich den Temperatursensor KW-9010 mit der oben genannten Kombination nicht decodieren.
So weit ich das Modul 14_CUL_TCM97001 verstehe, gibt es dort auch noch keine Unterstützung für den Sensor KW-9010 (Conrad Renkforce).
Das Modul 14_FHEMduino_Env erkennt den Sensor.
Ich würde gerne bei der Portierung behilflich sein, da ich auf ein CUL gewechselt bin. Weiß jemand wer für das Modul verantwortlich ist?

Viele Grüße
Bernd
Ich ;-)


Hast Du mit dem CUL bei eingeschalteten X25 irgendwelche Ausgaben?

BerndDA

Hi ;-)
Denke das Debug ist garnicht nötig. Es wird ein TCM97001_unknown Gerät angelegt.
Die Rohdaten sind auch als Status sichtbar. Es fehlt einfach nur die Dekodierung nach Temperatur und Luftfeuchte.

Grüße!
Bernd

bjoernh

Zitat von: BerndDA am 23 Oktober 2015, 10:05:01
Hi ;-)
Denke das Debug ist garnicht nötig. Es wird ein TCM97001_unknown Gerät angelegt.
Die Rohdaten sind auch als Status sichtbar. Es fehlt einfach nur die Dekodierung nach Temperatur und Luftfeuchte.

Grüße!
Bernd
Dann schreib mal bitte eine kleine Messreihe
Hexwert, Temperatur Luftfeuchte usw.

BerndDA

Hi,

sorry für die späte Rückmeldung.
Hier mal eine Beispielmessreihe (rawmsg temp hum) Kanal = 2, Batterie = OK, forced send = 0:
5922B07BC042 21.2 66
5922B0BB4040 21.2 65
592AB0BBC03E 21.3 65
5926B0BB2044 21.4 65

Hier der passende Code/Erklärung aus 14_FHEMduino_Env (ab Zeile 122):

  # Re: Tchibo Wetterstation 433 MHz - Dekodierung mal ganz einfach
  # See also http://forum.arduino.cc/index.php?PHPSESSID=ffoeoe9qeuv7rf4fh0d637hd74&topic=136836.msg1536416#msg1536416
  #                 /------------------------------------- Random ID part one     
  #                /    / -------------------------------- Channel switch       
  #               /    /  /------------------------------- Random ID part two     
  #              /    /  /  / ---------------------------- Battery state 0 == Ok     
  #             /    /  /  / / --------------------------- Trend (continous, rising, falling     
  #            /    /  /  / /  / ------------------------- forced send     
  #           /    /  /  / /  /  / ----------------------- Temperature
  #          /    /  /  / /  /  /          /-------------- Temperature sign bit. if 1 then temp = temp - 4096
  #         /    /  /  / /  /  /          /  /------------ Humidity
  #        /    /  /  / /  /  /          /  /       /----- Checksum
  #       0110 00 10 1 00 1  000000100011  00001101 1101
  #       0110 01 00 0 10 1  100110001001  00001011 0101
  # Bit   0    4  6  8 9  11 12            24       32

Als Beispiel die letzte Messung:
‭0101 10 01 0 01 0   011010110000  10111011 0010000001000100‬
Temperatur (Reihenfolge invertiert): 11010110 = 214 (/10)
Feuchtigkeit (Reihenfolge invertiert): 11011101 =  221 (-156) = 65

Grüße
Bernd

bjoernh

Zitat von: BerndDA am 31 Oktober 2015, 13:09:05
Hi,

sorry für die späte Rückmeldung.
Hier mal eine Beispielmessreihe (rawmsg temp hum) Kanal = 2, Batterie = OK, forced send = 0:
5922B07BC042 21.2 66
5922B0BB4040 21.2 65
592AB0BBC03E 21.3 65
5926B0BB2044 21.4 65

Hier der passende Code/Erklärung aus 14_FHEMduino_Env (ab Zeile 122):

  # Re: Tchibo Wetterstation 433 MHz - Dekodierung mal ganz einfach
  # See also http://forum.arduino.cc/index.php?PHPSESSID=ffoeoe9qeuv7rf4fh0d637hd74&topic=136836.msg1536416#msg1536416
  #                 /------------------------------------- Random ID part one     
  #                /    / -------------------------------- Channel switch       
  #               /    /  /------------------------------- Random ID part two     
  #              /    /  /  / ---------------------------- Battery state 0 == Ok     
  #             /    /  /  / / --------------------------- Trend (continous, rising, falling     
  #            /    /  /  / /  / ------------------------- forced send     
  #           /    /  /  / /  /  / ----------------------- Temperature
  #          /    /  /  / /  /  /          /-------------- Temperature sign bit. if 1 then temp = temp - 4096
  #         /    /  /  / /  /  /          /  /------------ Humidity
  #        /    /  /  / /  /  /          /  /       /----- Checksum
  #       0110 00 10 1 00 1  000000100011  00001101 1101
  #       0110 01 00 0 10 1  100110001001  00001011 0101
  # Bit   0    4  6  8 9  11 12            24       32

Als Beispiel die letzte Messung:
‭0101 10 01 0 01 0   011010110000  10111011 0010000001000100‬
Temperatur (Reihenfolge invertiert): 11010110 = 214 (/10)
Feuchtigkeit (Reihenfolge invertiert): 11011101 =  221 (-156) = 65

Grüße
Bernd

Hallo Bernd,

würdest Du mal bitte das angehängte Modul testen.
Ich denke damit müssten die KWs gehen.
Evtl stimmen aber noch nicht alle Werte, da brauche ich dann deine Rückmeldung,

Gruß
Björn

BerndDA

Hi,

klappt leider noch nicht mit der Version.
Habe den Sensor gelöscht. Er wird danach wieder als CUL_TCM97001_Unknown angelegt.
Auch das manuelle Setzen des Models auf KW9010 hilft nicht. Das wird beim nächsten Signal wieder auf unknown gesetzt.
Brauchst Du noch irgendwas von mir, was weiter hilft?

Grüße
Bernd

bjoernh

Zitat von: BerndDA am 26 November 2015, 17:01:28
Hi,

klappt leider noch nicht mit der Version.
Habe den Sensor gelöscht. Er wird danach wieder als CUL_TCM97001_Unknown angelegt.
Auch das manuelle Setzen des Models auf KW9010 hilft nicht. Das wird beim nächsten Signal wieder auf unknown gesetzt.
Brauchst Du noch irgendwas von mir, was weiter hilft?

Grüße
Bernd
Mach mal bitte "attr global verbose 5"
Und schau mal in die Ausgaben vom fhem logfile. Diese sind dann evtl hilfreich.

Sidey

Hi,

ich tippe mal darauf, dass die CRC Berechnung nicht stimmt.



  for (my $i = 0 ; $i < 8 ; $i++) {
  $calculatedChecksum +=($value >> ($i*4));
  }
  $calculatedChecksum &= 0xF;


Ich hatte es so mal umgesetzt, aber das hat meiner Meinung nach auch nicht immer gestimmt.

Grüße Sidey
Signalduino, Homematic, Raspberry Pi, Mysensors, MQTT, Alexa, Docker, AlexaFhem

Maintainer von: SIGNALduino, fhem-docker, alexa-fhem-docker, fhempy-docker

yogiflop

Hallo Björn,

ich habe hier auch den einen oder anderen KW9010 laufen und kann dir mal ein bißchen was aus dem Logfile zukommen lassen.


2015.11.25 20:52:15.383 5: SIGNALduino/RAW READ: /�MS
2015.11.25 20:52:15.386 5: SIGNALduino/RAW READ: �MS/;P0=-4710;P2=496;P3=-194
2015.11.25 20:52:15.389 5: SIGNALduino/RAW READ: �MS;P0=-4710;P2=496;P3=-194/6;P5=-8904;D=2523
2015.11.25 20:52:15.392 5: SIGNALduino/RAW READ: �MS;P0=-4710;P2=496;P3=-1946;P5=-8904;D=2523/232323232023232323
2015.11.25 20:52:15.395 5: SIGNALduino/RAW READ: �MS;P0=-4710;P2=496;P3=-1946;P5=-8904;D=2523232323232023232323/23202320202020232
2015.11.25 20:52:15.398 5: SIGNALduino/RAW READ: �MS;P0=-4710;P2=496;P3=-1946;P5=-8904;D=252323232323202323232323202320202020232/020232323232323202
2015.11.25 20:52:15.403 5: SIGNALduino/RAW READ: �MS;P0=-4710;P2=496;P3=-1946;P5=-8904;D=252323232323202323232323202320202020232020232323232323202/32323202020232023;CP=2;SP=5;O
2015.11.25 20:52:15.405 5: SIGNALduino/RAW READ: �MS;P0=-4710;P2=496;P3=-1946;P5=-8904;D=25232323232320232323232320232020202023202023232323232320232323202020232023;CP=2;SP=5;O/;�

2015.11.25 20:52:15.405 4: SIGNALduino/msg READ: �MS;P0=-4710;P2=496;P3=-1946;P5=-8904;D=25232323232320232323232320232020202023202023232323232320232323202020232023;CP=2;SP=5;O;�
2015.11.25 20:52:15.408 4: Found matched Protocol id 0 -> weather1
2015.11.25 20:52:15.409 5: Starting demodulation at Position 2
2015.11.25 20:52:15.409 5: converted Data to (s0417B023A000)
2015.11.25 20:52:15.445 5: SIGNALduino dispatch s0417B023A000
2015.11.25 20:52:15.788 5: SIGNALduino/RAW READ: /�MS;P0=-195
2015.11.25 20:52:15.791 5: SIGNALduino/RAW READ: �MS;P0=-195/2;P1=491;P2=-4028;
2015.11.25 20:52:15.793 5: SIGNALduino/RAW READ: �MS;P0=-1952;P1=491;P2=-4028;/P3=-8908;D=1
2015.11.25 20:52:15.796 5: SIGNALduino/RAW READ: �MS;P0=-1952;P1=491;P2=-4028;P3=-8908;D=1/31010101010
2015.11.25 20:52:15.798 5: SIGNALduino/RAW READ: �MS;P0=-1952;P1=491;P2=-4028;P3=-8908;D=131010101010/121010101010121012
2015.11.25 20:52:15.800 5: SIGNALduino/RAW READ: �MS;P0=-1952;P1=491;P2=-4028;P3=-8908;D=131010101010121010101010121012/121212101212
2015.11.25 20:52:15.802 5: SIGNALduino/RAW READ: �MS;P0=-1952;P1=491;P2=-4028;P3=-8908;D=131010101010121010101010121012121212101212/10101010101
2015.11.25 20:52:15.805 5: SIGNALduino/RAW READ: �MS;P0=-1952;P1=491;P2=-4028;P3=-8908;D=13101010101012101010101012101212121210121210101010101/012101010121
2015.11.25 20:52:15.807 5: SIGNALduino/RAW READ: �MS;P0=-1952;P1=491;P2=-4028;P3=-8908;D=13101010101012101010101012101212121210121210101010101012101010121/212101210;CP=1;SP=
2015.11.25 20:52:15.809 5: SIGNALduino/RAW READ: �MS;P0=-1952;P1=491;P2=-4028;P3=-8908;D=13101010101012101010101012101212121210121210101010101012101010121212101210;CP=1;SP=/3;O;�

2015.11.25 20:52:15.810 4: SIGNALduino/msg READ: �MS;P0=-1952;P1=491;P2=-4028;P3=-8908;D=13101010101012101010101012101212121210121210101010101012101010121212101210;CP=1;SP=3;O;�
2015.11.25 20:52:15.815 4: Found matched Protocol id 0 -> weather1
2015.11.25 20:52:15.816 5: Starting demodulation at Position 2
2015.11.25 20:52:15.817 5: converted Data to (s0417B023A000)
2015.11.25 20:52:15.818 4: Dropped (s0417B023A000) due to short time or equal msg


grüße Marc

P.s.: Bei mir wird es auch als unkown angezeigt.
CubieTruck mit FHEM 5.7
433MHz, 868MHz HMLan
div. Baumarktsteckdosen, 3x HM
div. MiLight's

bjoernh

Zitat von: BerndDA am 26 November 2015, 17:01:28
Hi,

klappt leider noch nicht mit der Version.
Habe den Sensor gelöscht. Er wird danach wieder als CUL_TCM97001_Unknown angelegt.
Auch das manuelle Setzen des Models auf KW9010 hilft nicht. Das wird beim nächsten Signal wieder auf unknown gesetzt.
Brauchst Du noch irgendwas von mir, was weiter hilft?

Grüße
Bernd
Hallo Bernd,

probierst Du mal bitte die angehängte Version.

Gruß
Björn

BerndDA

Hallo Björn,

klappt leider noch nicht. Wird noch als "unknown" erkannt.


2015.12.06 18:50:00 4: CUL_Parse: nanoCUL s894B30DBB034
2015.12.06 18:50:00 4: CUL_TCM97001 CUL_TCM97001_137 137 (894B30DBB034) length: 12 RSSI: -48
2015.12.06 18:50:00 4: CUL_TCM97001 Define Name: CUL_TCM97001_137  Model defined: Eurochron
2015.12.06 18:50:00 4: CUL_TCM97001 Device not implemented yet name Unknown msg 894B30DBB034


grüße
bernd

Sidey

Ich habe mir das Thema mit dem KW9010 heute noch mal angesehen...
Da waren ein paar Fehler in der Implementierung. Ich habe die mal korrigiert und auch ein paar Debug ausgaben angepasst.

Ich habe hier keinen KW9010, aber mit den mir vorliegenden Testdaten wurde ein Gerät angelegt.


Viel Spaß beim ausprobieren.
Signalduino, Homematic, Raspberry Pi, Mysensors, MQTT, Alexa, Docker, AlexaFhem

Maintainer von: SIGNALduino, fhem-docker, alexa-fhem-docker, fhempy-docker

amunra

Super Job Sidey - läuft! Danke für die super schnelle Umsetzung.

bjoernh

#14
Zitat von: amunra am 07 Januar 2017, 00:39:57
Super Job Sidey - läuft! Danke für die super schnelle Umsetzung.
Ich schaue es mir nachher mal an und übernehme das Modul dann in fhem.

Ist eingecheckt.