Forum: Mikrocontroller und Digitale Elektronik Funkthermometer Controlbits


von Dirk K (Gast)


Angehängte Dateien:

Lesenswert?

Hallo,
ich habe mit Funkmodulen und einem AVR den Bit-Stream eines
Funkthermometers ausgewertet. Den 44-Bit-Stream habe ich soweit
entschlüsselt und kann Werte an das Thermometer senden, aber nur die
bekannten Werte. Denn die letzen 4 Bit und das 4 Bit im 3 Byte scheinen
Kontrollwerte zu sein. Ich habe eine mal ne Datei angehängt mit den
übertragenen Bits bei verschiedenen Temperaturen und verschiedenen
Adressen. Vielleicht kann mir jemand bei der Berechnung der
Kontrollbits (mit P gekennzeichnet) helfen. Ich bekomme es nicht hin.
Gruß Dirk

von Thomas J. (Gast)


Lesenswert?

Hallo Dirk,

Die vier 0-Bits am Anfang dienen scheinbar nur zum Einschwingen des
Empfängers, sie gehören nicht zum Messwert. Ich habe diese Bits
testweise weggelassen und der Messwert wurde trotzdem akzeptiert.

Das Protokoll sieht so aus:

8-Bit Sensortyp
7-Bit Adresse
1-Bit Messwert-Parität
4-Bit Messwert 10er
4-Bit Messwert 1er
4-Bit Messwert 0,1er
4-Bit Messwert 10er
4-Bit Messwert 1er
4-Bit Prüfsumme

Das Paritätsbit wird über die 3 Nibbles des Messwertes gebildet.
Die Prüfsumme ist der 4-Bit Rest der Summe aller Nibbles.


Datenpacket : A0 D1 58 35 85

583 = 0101 1000 0011   > Parität = 1
A+0+D+1+5+8+3+5+8 = 35 > Prüsumme = 5


Datenpacket : A0 D0 60 06 03

600 = 0110 0000 0000   > Parität = 0
A+0+D+0+6+0+0+6+0 = 23 > Prüfsumme = 3


Gruß Thomas

von Dirk K (Gast)


Lesenswert?

Hallo Thomas,

vielen Dank für Deine ausführliche Hilfe. Jetzt funktioniert es. Ich
habe mir schon fast gedacht, daß die letzten 4 Bits eine Prüfsumme
sind. Ich hatte das Parität-Bit für Teil der Prüfsumme gehalten, also 5
Bit Prüfsumme und bin dann nicht weiter gekommen.

Gruß Dirk

von Dirk K. (dirk_k)


Angehängte Dateien:

Lesenswert?

Hallo,
ich habe ein Funkthermometer von der Fa. Mebus. Bisher habe ich
folgendes herausgefunden:
Übertragung
- 433Mhz, AM
- Es werden 36 Bits übertragen,
- 0.5ms High und 4ms Low ==> Bit 1
- 0.5ms High und 2ms Low ==> Bit 0

Codierung
Bits 1-4 Adresse ???
Bits 5-6 wahrscheinlich die Kanalschalterstellung
Bits 7-12 ????
Bits 13-24 Temperatur (LSB zuerst) ==> Temperatur = 12BitWert/10
Bits 25-28 1 Stelle der Luftfeuchte (LSB zuerst)
Bits 29-32 10 Stelle der Luftfeucht (LSB zuerst)
Bits 33-36 Prüfsumme = 15 - (Summe der 4 Nibbles)

Wenn die Bits 1-4 und 7-12 nicht geändert werden, kann man jede
beliebige Temperatur und Luftfeuchte senden. Der Empfänger zeigt
übrigens sofort an.
Weiß jemand näheres über die Bits 1-4 und 7-12??

Gruß Dirk

von Dirk K (Gast)


Lesenswert?

Hallo,

weiß niemand etwas über die Bits?

Gruß Dirk

von Joe (Gast)


Lesenswert?

Hallo Dirk,

bin gerade an Mebus-kompatiblen Sendern dran.

Du schreibst die Prüfsumme ist die Summe von vier Nibbles. Welche meinst 
Du damit?

Bits 5 bis 6 sind definitiv die Kanalnummern (ab 1 losgezählt).

Vor dem Datenrahmen gibt es noch eine SYNC-Sequenz, die wie ein HI-Bit 
aussieht, nur mit ca. 9ms deutlich länger ist.

von Dirk K. (dirk_k)


Angehängte Dateien:

Lesenswert?

Hallo,

was ich da mal geschrieben habe, verstehe ich heute selber nicht mehr, 
naja nach 4,5Jahren wahrscheinlich normal, aber es müßte so gehen:

LSB vorne, Beipiel an der ersten Zeile mit -8.6°C und 45%Luftfeuchte:

1)Nibble: 7
2)Nibble: 14
3)Nibble: 12
4)        10
5)        10
6)        15
7)         5
8)         4
9)         2 Prüfsumme
--> Summe = 77
Nur die untersten 4 Bit --> 77 & 15 = 13
dann, 15 - 13 = 2 = Prüfsumme


Nochmal bei 43,2°C und 20%
1)Nibble: 7
2)Nibble: 14
3)Nibble: 12
4)         0
5)        11
6)         1
7)         0
8)         2
9)         0 Prüfsumme
--> Summe = 47
Nur die untersten 4 Bit --> 47 & 15 = 15
dann, 15 - 15 = 0 = Prüfsumme

Temperatur = (0 +11*16 + 1*256) / 10 = 43,2
Luftfeuchte =  0*1 + 2 *10 = 20

Bits 1-4 Adresse ???
Bits 5-6 wahrscheinlich die Kanalschalterstellung
Bits 7-12 ????

Die 5-6 waren die Kanalschalterstellung, aber 1-4 und 7-12 haben sich 
immer verändert, wenn man den Kanal ändert. Ich habe die Bedeutung der 
Bits nie klären können. Vielleicht postet du mal die Bedeutung.

Ich habe mir die Bits aufgeschrieben und dann einfach mit gesendet bzw. 
beim Empfang ignoriert. Das hat ca. 4 Jahre in einer Heizungssteuerung 
funktioniert. Die Regelparameter konnte ich dann im Thermometer im 
Wohnzimmer auf den Kanälen 2 und 3 abfragen.

Anbei noch ein Auszug aus dem Programm für den Sendestream (nicht als 
Beispiel für gute Programmierung gedacht)

Gruß Dirk

von ein Lesender (Gast)


Lesenswert?

Hallo,

wird bei den nur-Temperatur-Sensoren nicht manchmal (oder gar immer?) 
noch ein Batterie-Zustands-Bit mitgesendet?

Also ein Bit, womit die Wetterstation dann ein Battterie-ist-leer Symbol 
anzeigt?

Die H*g*r Bar 888 vom Sperrmüll macht das jedenfalls.
Ohne zu wissen, ob die Anzeige "Batterie leer" stimmt.
Ich empfange nur anderen ihre Funksensoren ;-)

n8

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.