Menu [hide]
  Wiki
  Forums

FHZ1000 Protocol

backlinks print PDF
similar 5 comments
After you have successfuly installed the device driver you can talk to the box like to an ordinary modem - serial:

Init serial port and device

with 9600;N;1 no handshake

SB=StartByte LL=Length TT=TelegrammType BC=CRC HH=Housecode
(LL = Length of TT + BC + Data)
BC = CRC of Data (TT + BC is not included)

DirSBLLTTBCData (all numbers are hex) Comment
<-8106c98202 01 1f 60Say hello ?!
->810bc96101 02 1f 02 78 07 1c 22 80
<-8106c92c02 01 1f 0aSay-hello (alternate)
->810bc99f01 02 1f 02 78 05 b6 49 FF Say-hello response (alternate)
<-810804afc9 01 84 57 02 08Request Status/Serial
->810fc9??01 02 84 01 08 07 80 xx xx xx xx 51 0fSerial Number
<-81050450c9 01 86HMS Init (if required)
<-81050461c9 01 97HMS Stop
<-81050460c9 01 96FS20 Init (if required)
<-81060462c9 01 96 02FS20 Init (alternate)
<-810b04??02 01 83 HH HH 65 ff 66 ffFHT80b Init (if required) (every FHT80b device eats up memory ...)
<-810ac9??02 01 61 jj mm tt ss mmset Date Time
<-8105044fc9 01 85Get free Memory
->8107c9??01 02 85 01 2323 bytes free ?


FS20 Components


DirSBLLTTBCDataComment
<-810904??02 01 01 HH HH xx yyAktor schalten xx=Key yy=Function
oder:
->810b04??01 01 a0 01 HH HH xx ?? yySensor Message xx=Key yy=Function


yyFunktion
00Aus
01-10Dimmen direkt
11Ein
12Dimmen Eintastenmodus
13Dimmen runter
14Dimmen rauf
15Umschalten
16Timerprogrammierung start/stop
1bAuslieferungszustand


Markisensteuerung FS20 MS-2

DirSBLLTTBCDataComment (CT=Counter (if you have more than 1 FS20 MS-2), DI=Direction, TI=Time-Code
<-810a04??02 01 01 HH HH CT DI TI DI : 38 = Down, 39 = UP


Secondscorresponding TI-Code
104
208
30c
418
51a
61c
71e
828
929
102a
112b
122c
132d
142e
152f
303f



"raw" findings ...


//
// Init FHZ1000PC (Standard) mit FHT80b und HMS
//
<- 81 06 c9 82 02 01 1f 60 // Say hello ?!
-> 81 0b c9 61 01 02 1f 02 78 07 1c 22 80

<- 81 08 04 af c9 01 84 57 02 08 // Request Status/Serial
-> 81 0f c9 __ 01 02 84 01 08 07 80 xx xx xx xx 51 0f // Seriennummer

<- 81 05 04 50 c9 01 86 // HMS Init
<- 81 05 04 60 c9 01 96 // FS20 Init
<- 81 0b 04 __ 02 01 83 HH HH 65 ff 66 ff // FHT80b Init
<- 81 0a c9 __ 02 01 61 jj mm tt ss mm // Datum Uhrzeit

<- 81 05 04 4f c9 01 85 // Speicherabfrage
-> 81 07 c9 ac 01 02 85 01 23 // 23 ?bytes? frei

jedes FHT80b device eats up memory ...
<- 81 0b 04 __ 02 01 83 HH HH 65 ff 66 ff // FHT80b Init

<- 81 05 04 4f c9 01 85 // Speicherabfrage
-> 81 07 c9 a5 01 02 85 01 1c // 1c ?bytes? frei

aso ...

// FHZ1000PC
<- 81 0a c9 __ 02 01 61 jj mm tt ss mm // Uhrzeit 50 mal am Anfang einer Minute

<- 81 05 04 4f c9 01 85 // Speicherabfrage
-> 81 07 c9 __ 01 02 85 01 xx // xx = ?bytes? frei 

// FHT80b
// SB=StartByte LL=Laenge TT=TelegrammType BC=BlockCheck ST=Status
// HH=Hauscode
// SB LL TT BC             CODE  FUNKT ST Param
-> 81 0c 04 __ 09 09 a0 01 HH HH 00 00 _6 xx // Istwert Stellantrieb
-> 81 0c 04 __ 09 09 a0 01 HH HH 00 00 2c xx // Synczeit
-> 81 0c 04 __ 09 09 a0 01 HH HH 14 00 69 xx // Montag von1  in 1/6 Stunde (10 Min.)
-> 81 0c 04 __ 09 09 a0 01 HH HH 15 00 69 xx // Montag bis1
-> 81 0c 04 __ 09 09 a0 01 HH HH 16 00 69 xx // Montag von2 (90 = frei)
-> 81 0c 04 __ 09 09 a0 01 HH HH 17 00 69 xx // Montag bis2
-> 81 0c 04 __ 09 09 a0 01 HH HH 18 00 69 xx // Dienstag von1
-> 81 0c 04 __ 09 09 a0 01 HH HH 19 00 69 xx // bis 1
-> 81 0c 04 __ 09 09 a0 01 HH HH 1a 00 69 xx // von2
-> 81 0c 04 __ 09 09 a0 01 HH HH 1b 00 69 xx // bis2
-> 81 0c 04 __ 09 09 a0 01 HH HH 1c 00 69 xx //Mittwoch von1
-> 81 0c 04 __ 09 09 a0 01 HH HH 1d 00 69 xx 
-> 81 0c 04 __ 09 09 a0 01 HH HH 1e 00 69 xx 
-> 81 0c 04 __ 09 09 a0 01 HH HH 1f 00 69 xx 
-> 81 0c 04 __ 09 09 a0 01 HH HH 20 00 69 xx // Donnerstag
-> 81 0c 04 __ 09 09 a0 01 HH HH 21 00 69 xx 
-> 81 0c 04 __ 09 09 a0 01 HH HH 22 00 69 xx
-> 81 0c 04 __ 09 09 a0 01 HH HH 23 00 69 xx 
-> 81 0c 04 __ 09 09 a0 01 HH HH 24 00 69 xx // Freitag
-> 81 0c 04 __ 09 09 a0 01 HH HH 25 00 69 xx
-> 81 0c 04 __ 09 09 a0 01 HH HH 26 00 69 xx 
-> 81 0c 04 __ 09 09 a0 01 HH HH 27 00 69 xx 
-> 81 0c 04 __ 09 09 a0 01 HH HH 28 00 69 xx // Samstag
-> 81 0c 04 __ 09 09 a0 01 HH HH 29 00 69 xx 
-> 81 0c 04 __ 09 09 a0 01 HH HH 2a 00 69 xx 
-> 81 0c 04 __ 09 09 a0 01 HH HH 2b 00 69 xx 
-> 81 0c 04 __ 09 09 a0 01 HH HH 2c 00 69 xx // Sonntag
-> 81 0c 04 __ 09 09 a0 01 HH HH 2d 00 69 xx 
-> 81 0c 04 __ 09 09 a0 01 HH HH 2e 00 69 xx 
-> 81 0c 04 __ 09 09 a0 01 HH HH 2f 00 69 xx
-> 81 0c 04 __ 09 09 a0 01 HH HH 3e 00 69 xx // 0=auto 1=manuell 2=Urlaub
-> 81 0c 04 __ 09 09 a0 01 HH HH 3f 00 69 xx // Urlaub Endeuhrzeit oder Endetag
-> 81 0c 04 __ 09 09 a0 01 HH HH 40 00 69 xx // Urlaub Endetag 10=heute 11=morgen 0x=Endemonat
-> 81 0c 04 __ 09 09 a0 01 HH HH 41 00 69 xx // aktuelle Solltemperatur (x*0.5)
-> 81 0c 04 __ 09 09 a0 01 HH HH 42 00 69 xx // ist Temperatur (x/10) - LowByte
-> 81 0c 04 __ 09 09 a0 01 HH HH 43 00 69 xx // ist Temperatur (x/10) - HighByte
-> 81 0c 04 __ 09 09 a0 01 HH HH 44 00 69 xx // bit0=Batterie 0=OK 1=leer bit5=Fenster 0=zu 1=offen
-> 81 0c 04 __ 09 09 a0 01 HH HH 4b 00 67 xx // ?????
-> 81 0c 04 __ 09 09 a0 01 HH HH 82 00 69 xx // Tag Temperatur (x*0.5)
-> 81 0c 04 __ 09 09 a0 01 HH HH 84 00 69 xx // Nacht Temperatur (x*0.5)
-> 81 0c 04 __ 09 09 a0 01 HH HH 85 00 69 04 // ????? 
-> 81 0c 04 __ 09 09 a0 01 HH HH 8a 00 69 xx // Fenster offen Temperatur (x*0.5)
-> 81 0c 04 __ 09 09 a0 01 HH HH 7e 00 67 xx // ?????

<- 81 09 04 __ 02 01 83 HH HH 3e xx  // Modus setzen 00=auto 01=manu 02=Urlaub
-> 81 0b 04 __ 83 09 83 01 HH HH 3e xx yy // Übernahmequittung yy=Speicherstelle 
<- 81 09 04 __ 02 01 83 HH HH 41 xx  // Solltemp setzen (x=soll/0.5)
Die anderen Register können genauso verändert werden.

//HMS100TF
-> 81 0e 04 __ 05 10 a0 01 HH HH 00 00 ss tt gu ff  // Temp = (utt*0.04) Feuchte = (ffg*100/4096)
   						                     // Status bit7=Negative Temp.  bit6=Batterie

// another Init FHZ1000PC (Studio) mit FHT80b und HMS (use Init example from above!)
<- 81 06 c9 2c 02 01 1f 0a 
-> 81 0b c9 fb 01 02 1f 02 78 07 b6 22 80 
<- 81 08 04 ba c9 01 84 5e 0b 03 
-> 81 0a c9 ea 01 02 84 01 03 01 5b 03 
<- 81 05 04 50 c9 01 86  // HMS init
<- 81 0b 04 __ 02 01 83 HH HH 65 ff 66 ff // FHT80b 1
<- 81 0b 04 __ 02 01 83 HH HH 65 ff 66 ff // FHT80b 2
<- 81 06 04 62 c9 01 96 02 // FS20 Init
<- 81 0a c9 af 02 01 61 05 0a 0e 16 18 // Datum Uhrzeit


Created by: k1ssme last modification: Wednesday 20 of August, 2008 [20:05:07 UTC] by alexirion


Posted messages

Top Hide all
author message
Pjotrek
Etwas stimmt nicht...
on: Wed 30 of Nov, 2005 [13:22 UTC] score: 0.00
cry
Etwas stimmt nicht mit:
//ST-2
81 09 04 __ 02 01 01 a0 01 HH HH xx yy
Als Länge steht 09, aber die angezeigte Länge ist 11 (0x0b)!




author message
jolo
Weitere Infos zum FHT80 Protokoll
on: Thu 09 of Feb, 2006 [18:35 UTC] score: 0.00
Hallo,

vielen Dank für die Entschlüsselung des Protokolls. Ich kann vielleicht ein wenig beitragen.
Die Sequenz
81 0c 04 __ 09 09 a0 01 HH HH 85 00 69 04 // ?????
müsste für die Alarm-Temperatur? Differenz stehen.

Die Sequenz
81 0c 04 __ 09 09 a0 01 HH HH 43 00 69 xx // ?????
ist eine "Hilfstemperatur".
Die tatsächliche Temperatur wird lt. der FHZ1000PC.dll Beschreibung folgendermassen berechnet:

tatsächliche Temp = (Hilfstemperatur * 255 + Ist Temperatur ) / 10

Allerdings habe ich unter der Hilfstemperatur ausser null noch keine vernünftigen Werte erhalten.

Die Sequenz
81 0c 04 __ 09 09 a0 01 HH HH 7e 00 67 xx // ?????
steht für die manuelle Temperatur.

In der Sequenz
81 0c 04 __ 09 09 a0 01 HH HH 44 00 69 xx // bit0=Batterie 0=OK 1=leer bit5=Fenster 0=zu 1=offen
müsste noch ein bit4 abzugreifen sein, das für Störung steht. Dieses konnte ich aber mangels Simulation einer Störung noch nicht sicher verifizieren.


HTH
Grüsse Johannes


author message
jolo
Berechnung der %-Werte des Stellantriebs
on: Thu 09 of Feb, 2006 [19:57 UTC] score: 0.00
Hallo,

der Istwert des Stellantriebs ist ein hex-Wert. Den Integer-Wert? erhält man über:

int Wert Stellantrieb = hex Wert / 255 * 100 + 0.5 "%"

HTH
Johannes


author message
IllusionFACTORY
HMS100TFK
on: Sun 21 of Feb, 2010 [09:14 UTC] score: 0.00
Hallo, zusammen,

hier die Messages, die von einem Tür-Fenster-Kontakt? HMS100TFK:

zu:
HR: 81 0E 04 CC 02 14 A0 01 F4 21 00 00 00 00 00 00
auf
HR: 81 0E 04 CD 02 14 A0 01 F4 21 00 00 01 00 00 00

Gruß,
Martin



Page: 1/1
1 

Online users
We have 2 online users
Google ads
RSS Wiki RSS File Galleries RSS Forums
[ Execution time: 0.47 secs ]   [ Memory usage: 13.08MB ]   [ 105 database queries used ]   [ GZIP Enabled ]   [ Server load: 0.11 ]