-         

Seite 1 von 3 123 LetzteLetzte
Ergebnis 1 bis 10 von 29

Thema: 868 MHz Protokoll f. Heizung FHT80 und HMS - Infos gesucht

  1. #1
    Neuer Benutzer Öfters hier
    Registriert seit
    08.04.2005
    Beiträge
    26

    868 MHz Protokoll f. Heizung FHT80 und HMS - Infos gesucht

    Anzeige

    Hallo,

    ich Suche Informationen zu den Protokollen von FHT80 und HMS die in den ELV Produkten verwendet werden.
    Die verfügbaren Informationen aus dem Forum über das FS20 Protokoll kenne ich, beinhalten aber nichts zu FHT80 und HMS Komponenten.

    Einiges habe ich schon dekodiert und herausgefunden. Vielleicht kann man sich ja austauschen.

    Andreas

  2. #2
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    19.08.2004
    Beiträge
    197
    Dass die sich im 2 bis 3 Minutentakt unterhalten und über den Anmeldevorgang die Synchronisierung beginnt, d.h. die Synchronisierungzeit gestartet wird, habe ich auch rausgefunden.
    Man müßte einen Logicanalyser haben. Die genaue Zeit kann man mit einfachen Mitteln ausmessen.
    Hat man das Protokoll, kann man auch zentrale Steuerungsaufgaben machen, träum träum....

  3. #3
    Neuer Benutzer Öfters hier
    Registriert seit
    08.04.2005
    Beiträge
    26
    Nun, ich habe eien 868 Mhz Empfänger am Atmega32 und lese die Impulse mit. Ich kann die Syncbits der Übertragungssequenz und die Informationsbits erkennen. Die Informationsbits kann ich auch in Bytes zusammenfassen, Parity prüfen und die CRC checken. Ich kann den Hauscode und die Moduladresse dekodieren. Was mir noch unklar ist sind die Bedeutung der nachfolgenden Befehle oder Codes und die Deutung der übertragenen Werte. Also wie ist z.B. die Temperatur verschlüsselt ? (Highbyte / Lowbyte, Zahlenformat etc.
    Die vom ATMega erfassten Daten gebe ich über RS232 an den PC und protokolliere sie mit.
    Über die Analyse dieser Daten kommt man sicher auf einige Infos. Ist aber etwas mühsam. Aber vielleicht hat jemand schon ein paar Codes etc. herausgefunden ?

    Interessiert das hier sonst keine(n) ?

  4. #4
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    19.08.2004
    Beiträge
    197
    Ich kann die Daten der FHT's ebenfalls protokollieren, darin sind die Adr's, Hauscode, Temperaturen und Stellungsmeldungen zu den Stellmotoren enthalten.

    Wie liest du denn mit? Über RS232 ?

  5. #5
    Neuer Benutzer Öfters hier
    Registriert seit
    08.04.2005
    Beiträge
    26
    ja, rs232.
    sieht dann im Moment so aus:

    HC:54-19 ADR:0 ARG:166 ARG:0 CRC:251 (Bits:67 Bytes:7 End:3696)
    0000000000001-00110110000010011100000000010100110000000000011111 0111
    HC:87-70 ADR:0 ARG:166 ARG:0 CRC:79 (Bits:67 Bytes:7 End:4736)
    0000000000001-01010111101000110100000000010100110000000000001001 1111
    HC:76-0 ADR:159 CRC:0 (Bits:48 Bytes:3 End:3584)
    1110100011010000000001-01001100000000000010011111
    HC:95-66 ADR:0 ARG:166 ARG:8 CRC:91 (Bits:67 Bytes:7 End:4864)
    0000000000001-01011111001000010000000000010100110000001000101011 0111
    HC:76-17 ADR:183 CRC:17 (Bits:48 Bytes:3 End:3792)
    1100100001000000000001-01001100000010001010110111

  6. #6
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    19.08.2004
    Beiträge
    197
    SByte1 = 1 ---> Adr
    SByte2 = 49--> Adr
    SByte3 = 0
    DByte1 = 6--> Ventilstellung mit Wert 0 ?
    DByte2 = 0
    DByte3 = 0

  7. #7
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    19.08.2004
    Beiträge
    197
    Edit:

    SByte1 = 4
    SByte2 = 54
    SByte3 = 66
    DByte1 = 9
    DByte2 = 233
    DByte3 = 0

    Das müste 23,3 Grad sein ?

    SByte1 = 4
    SByte2 = 54
    SByte3 = 0
    DByte1 = 6
    DByte2 = 11
    DByte3 = 0
    Dasd müste Ventilstellung: 4,296875 % sein ?


    SByte1 = 4
    SByte2 = 54
    SByte3 = 0
    DByte1 = 6
    DByte2 = 24
    DByte3 = 0
    das Ventilstellung : 9,375 % sein ?
    Das würde bedeuten: Ventilstellung 255 = 100%

  8. #8
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    19.08.2004
    Beiträge
    197
    Wenn ich dein AVR-Programm, das seriell die Daten in meinen Rechner gleichzeitig mit meinen Log-Files schreibt, könnte ich den Zusammenhang deutlicher erkennen, weil du andere Adressen hast usw.
    So wie ich das sehe, bedeutet der Wert nach den Adressen den Modus der nachfolgenden Daten. Also 6 z. B. für die Ventilstellung, 9 für die Temp: hier 19,6 Grad.
    SByte1 = 1
    SByte2 = 49
    SByte3 = 66
    DByte1 = 9
    DByte2 = 196
    DByte3 = 0

    Ev kannst du mir mal einen Plan und das Programm für den AVR per PN mailen.
    Es fängt mit dem Synchronisieren an 12x 0, 1x1: dann blicke ich aber nicht durch dein Zahlenwerk durch...
    Hauscode, Adresse, Argument, CRC, ist klar, kann ich aber nicht von BCD nach Dez konvertieren passt irgendwie nicht.
    Sind das mehrere FHT's ?


    HC:54-19 ADR:0 ARG:166 ARG:0 CRC:251 (Bits:67 Bytes:7 End:3696)
    0000000000001-00110110000010011100000000010100110000000000011111 0111
    HC:87-70 ADR:0 ARG:166 ARG:0 CRC:79 (Bits:67 Bytes:7 End:4736)
    0000000000001-01010111101000110100000000010100110000000000001001 1111
    HC:76-0 ADR:159 CRC:0 (Bits:48 Bytes:3 End:3584)
    1110100011010000000001-01001100000000000010011111
    HC:95-66 ADR:0 ARG:166 ARG:8 CRC:91 (Bits:67 Bytes:7 End:4864)
    0000000000001-01011111001000010000000000010100110000001000101011 0111
    HC:76-17 ADR:183 CRC:17 (Bits:48 Bytes:3 End:3792)
    1100100001000000000001-01001100000010001010110111

  9. #9
    Neuer Benutzer Öfters hier
    Registriert seit
    08.04.2005
    Beiträge
    26
    Es sind mehrere FHT´s, gesamt 12 FHT, 35 Schalter/Dimmer, 14 PIRI´s, 12 4-Kanalsender, 12 HMS Komponenten, Wetter etc.

    Zum Aufbau des Codes an einem Beispiel:
    die Startbits bestehen aus 12 low+1high, danach die datenbits, immer 8+1prüfbit. Ich mach mal Trennstriche zwischen den Bitblöcken und & vor dem Prüfbit zur Verdeutlichung.
    Die ersten 2 Bytes (hier HC genannt) sind bei FHT die Adresse, das 3. Byte (hier ADR) der Code, danach die Daten (ARG, ARG) und die CRC.

    HC:54-19 ADR:0 ARG:166 ARG:0 CRC:251 (Bits:67 Bytes:7 End:3696)
    0000000000001-00110110&0-00010011&1-00000000&0-10100110&0-00000000&0-11111011&1

    Hier nochmal ein kompletter Block von einem FHT-Regler:
    HC:32-23 ADR:125 ARG:103 ARG:49 CRC:88 (Bits:67 Bytes:7 End:4512)
    0000000000001-00100000100010111001111101001100111100110001101011 0001
    HC:32-23 ADR:125 ARG:119 ARG:49 CRC:104 (Bits:67 Bytes:7 End:3312)
    1000000000001-00100000100010111001111101001110111000110001101101 0001
    HC:32-23 ADR:66 ARG:105 ARG:186 CRC:168 (Bits:67 Bytes:7 End:3584)
    0000000000001-00100000100010111001000010001101001010111010110101 0001
    HC:32-23 ADR:66 ARG:105 ARG:186 CRC:168 (Bits:69 Bytes:7 End:3872)
    100000000000001-00100000100010111001000010001101001010111010110101 0001
    HC:32-23 ADR:66 ARG:121 ARG:186 CRC:184 (Bits:66 Bytes:7 End:332
    100000000001-00100000100010111001000010001111001110111010110111 0000
    HC:32-23 ADR:67 ARG:105 ARG:0 CRC:239 (Bits:68 Bytes:7 End:3440)
    10000000000001-00100000100010111001000011101101001000000000011101 1111
    HC:32-23 ADR:67 ARG:121 ARG:0 CRC:255 (Bits:66 Bytes:7 End:3744)
    100000000001-00100000100010111001000011101111001100000000011111 1110
    HC:32-23 ADR:75 ARG:103 ARG:0 CRC:245 (Bits:67 Bytes:7 End:2992)
    0000000000001-00100000100010111001001011001100111100000000011110 1010
    HC:32-23 ADR:75 ARG:119 ARG:0 CRC:5 (Bits:66 Bytes:7 End:300
    100000000001-00100000100010111001001011001110111000000000000000 1010
    HC:32-23 ADR:68 ARG:105 ARG:0 CRC:240 (Bits:68 Bytes:7 End:4432)
    10000000000001-00100000100010111001000100001101001000000000011110 0000
    HC:32-23 ADR:68 ARG:121 ARG:0 CRC:0 (Bits:66 Bytes:7 End:3840)
    000000000001-00100000100010111001000100001111001100000000000000 0000
    HC:32-23 ADR:75 ARG:103 ARG:0 CRC:245 (Bits:68 Bytes:7 End:2864)
    00000000000001-00100000100010111001001011001100111100000000011110 1010
    HC:32-23 ADR:75 ARG:119 ARG:0 CRC:5 (Bits:66 Bytes:7 End:3904)
    000000000001-00100000100010111001001011001110111000000000000000 1010
    HC:32-23 ADR:126 ARG:103 ARG:0 CRC:40 (Bits:67 Bytes:7 End:348
    0000000000001-00100000100010111001111110001100111100000000000101 0000

  10. #10
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    19.08.2004
    Beiträge
    197
    Sorry, ich hatte keine Zeit vorher, und war auch noch verwirrt, habe die Dekodierung jetzt erkannt.
    HC:54-19 ADR:0 ARG:166 ARG:0 CRC:251 (Bits:67 Bytes:7 End:3696)
    0000000000001 ---------------> enrspricht 12 mal 0, 1 mal 1, wie im FS20
    00110110&0-00010011&1------> das soll 54 19 sein
    00000000&0-10100110&0------>
    00000000&0-11111011&1------>

    (alles Dez)
    wie geschrieben bekomme ich meine Logfiles und kann daraus die Rückschliüsse ziehen, die ich oben geschildert habe.
    Kannst du denn mit deinem AVR auch senden um etwas aus zuprobieren?
    Mich würde eine Verbindung zum Stellventil reizen, ohne FHT.....
    Ich habe festgestellt, die synchronisieren sich beim Anmelden.
    Und zwar machen die ein Zeitfenster ab, in dem sich das Stellventil bereit macht, Daten zu empfangen.
    Was es für Daten sind habe ich noch nicht rausbekommen, weil ich nur das Telegram der FHT mitlesen kann. Ev. besteht gar kein Unterschied.
    Das müsste Rückmeldung in Automatic oder in Automatic schalten sein :
    SByte1 = 1
    SByte2 = 49
    SByte3 = 126
    DByte1 = 7
    DByte2 = 42
    DByte3 = 0



    Das müste in Manuel schalten sein
    SByte1 = 1
    SByte2 = 49
    SByte3 = 126
    DByte1 = 7
    DByte2 = 1
    DByte3 = 0
    Das müste in Automatic schalten sein
    SByte1 = 1
    SByte2 = 49
    SByte3 = 126
    DByte1 = 7
    DByte2 = 0
    DByte3 = 0



    Das müste Ventilstellung 18,75 sein ---> DByte2= 255 = 100 %
    SByte1 = 1
    SByte2 = 49
    SByte3 = 0
    DByte1 = 6
    DByte2 = 48
    DByte3 = 0

    SByte1 = 1
    SByte2 = 49
    SByte3 = 0
    DByte1 = 6
    DByte2 = 43 das ist Ventilstellung 16,79688 %
    DByte3 = 0

    SByte1 = 1
    SByte2 = 49
    SByte3 = 0
    DByte1 = 6
    DByte2 = 38 das ist Ventilstellung 14,84375 %
    DByte3 = 0

    SByte1 = 1
    SByte2 = 49
    SByte3 = 0
    DByte1 = 6
    DByte2 = 32 das 12,5 % ventilstellung
    DByte3 = 0

    das müste 21 grad meldung sein
    SByte1 = 1
    SByte2 = 49
    SByte3 = 66
    DByte1 = 9
    DByte2 = 210
    DByte3 = 0

    das 21,2 grad
    SByte1 = 1
    SByte2 = 49
    SByte3 = 66
    DByte1 = 9
    DByte2 = 212
    DByte3 = 0

Seite 1 von 3 123 LetzteLetzte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •