Hallo Zusammen,
ich möchte euch mein erstes produktives Device vorstellen, einen selbstgebauten WDS10 Wettersensor mit zusätzlicher Luftdruckmessung.
Basis für das ganze ist ein Panstamp Modul, wobei ein Arduino Pro Mini mit CC1101 Modul auch gehen würde.
Als Sensoren habe ich einen SHT10 für Temperatur und Luftfeuchte und einen BMP180 für Luftdruck verwendet, beide habe ich freundlicherweise
von Dirk bekommen. Martin876 hat den verlängerten String in FHEM integriert, so dass mit einer aktuellen FHEM HM Version dem Empfang nichts
im Wege steht.
Die Schaltung besteht im Wesentlichen aus einem Panstamp, den beiden Sensoren, einem Config Taster, einem Kondensator und zwei Batterien.
Der SHT10 ist an Pin A0 (data) und Pin A1 (clock) angeschlossen, sowie VCC und GND
Der BMP180 ist ein i2c Sensor und folglich an Pin A4 und A5 angeschlossen.
Der 100nF Kondensator hängt zwischen dem Programmieranschluss (DTR) und dem Reset Pin des Panstamp, so dass man den Panstamp auch mit
einem FTDI Adapter programmieren kann.
Die Dual Led hängt an Pin D7 und D6 und zeigt die verschiedenen Zustände des Sensors an, also ob ein ACK kam, wann gesendet wird, usw...
Softwareseitig ist auch eine Low Batterie Erkennung eingebaut, die Schaltschwelle lässt sich im Source Code setzen: "hm.battery.setVoltage(30);"
Derzeit ist sie zu Testzwecken auf 3,0 Volt gesetzt, ich denke das das Modul bis runter auf 2,7 Volt zuverlässig arbeiten sollte. Die Tests stehen aber
noch aus.
Das Timing habe ich von hier: "
http://forum.fhem.de/index.php/topic,17485.0.html"
Ob es so passt und sich der Temperaturfühler mit dem HM-CC-RT-DN koppeln lässt, kann ich leider nicht sagen, da ich keinen HM-CC-RT-DN besitze.
Die gesendeten Messages sehen dann so aus, in Klammern seht ihr das Timing (milli Sekunden Systemzeit Arduino):
0E 01 A2 70 6F B7 4C 63 19 63 00 D6 2E 03 FE (l:15)(59359)
0A 01 80 02 63 19 63 6F B7 4C 00 (l:11)(59480)
0E 02 A2 70 6F B7 4C 63 19 63 00 D2 2E 03 FE (l:15)(202407)
0A 02 80 02 63 19 63 6F B7 4C 00 (l:11)(202528)
0E 03 A2 70 6F B7 4C 63 19 63 00 CD 2F 03 FE (l:15)(398872)
0A 03 80 02 63 19 63 6F B7 4C 00 (l:11)(398993)
0E 04 A2 70 6F B7 4C 63 19 63 00 C9 2F 03 FE (l:15)(579913)
0A 04 80 02 63 19 63 6F B7 4C 00 (l:11)(580034)
0E 05 A2 70 6F B7 4C 63 19 63 00 C6 30 03 FE (l:15)(745398)
0A 05 80 02 63 19 63 6F B7 4C 00 (l:11)(745519)
0E 06 A2 70 6F B7 4C 63 19 63 00 C4 30 03 FE (l:15)(895094)
0A 06 80 02 63 19 63 6F B7 4C 00 (l:11)(895215)
0E 07 A2 70 6F B7 4C 63 19 63 00 C2 31 03 FE (l:15)(1029429)
0A 07 80 02 63 19 63 6F B7 4C 00 (l:11)(1029548)
0E 08 A2 70 6F B7 4C 63 19 63 00 C0 31 03 FE (l:15)(1217157)
0A 08 80 02 63 19 63 6F B7 4C 00 (l:11)(1217277)
0E 09 A2 70 6F B7 4C 63 19 63 00 BF 31 03 FE (l:15)(1389287)
0A 09 80 02 63 19 63 6F B7 4C 00 (l:11)(1389408)
0E 0A A2 70 6F B7 4C 63 19 63 00 BE 31 03 FE (l:15)(1545744)
0A 0A 80 02 63 19 63 6F B7 4C 00 (l:11)(1545865)
0E 0B A2 70 6F B7 4C 63 19 63 00 BD 32 03 FE (l:15)(1686865)
0A 0B 80 02 63 19 63 6F B7 4C 00 (l:11)(1686984)
Kurze Erklärung zu den gesendeten Messages.
0E 0B A2 70 6F B7 4C 63 19 63 00 BD 32 03 FE
0E - Länge des Strings in Byte
0B - Messagecounter
A2 - Message flags
70 - Weather Event (Art der Message)
6F B7 4C - eigene HM ID (kann in der Register.h gesetzt werden)
63 19 63 - meine Zentrale (wird beim pairen gesetzt)
00 BD - Temperatur in zehntel Grad, hier also 18,9 Grad
32 - Luftfeuchtigkeit in %, Hex 32 ist 50% in Decimal
03 FE - Luftdruck, 1022 hPa NN, also über Meeresspiegel
Die eigene Höhe über Meeresspiegel muss derzeit im Sourcecode gesetzt werden, und zwar so:
"sensTHP.config(A0, A1, 0, &sht10, &bmp085, 570);"
Ich werde versuchen das ganze noch in einen, von FHEM veränderbaren, Register Wert zu gießen, so das die Konfiguration in
Zukunft variabel ist.
Ich hatte das Modul auch noch nicht im Tiefkühlschrank, ob die Minus Werte passen, weiß ich folglich nicht.
Das Gehäuse, bzw. die Öffnung für den Temperaturfühler, ist auch noch Verbesserungsfähig. Hier werde ich die Tage mal den Baumarkt
besuchen und schauen was es für Verschraubungen gibt

Dirk hat auch angekündigt eine Platine für die Sensoren entwerfen zu wollen - zusätzlich wird es dann auch noch einen Helligkeitssensor geben...
Der Sensor lässt sich mit FHEM und auch der Original HM Config Software pairen und verhält sich (hoffentlich) wie der Originale...
Die Sourcen zum Sensor liegen hier: "
https://github.com/trilu2000/AskSin"
Zum Schluss noch ein paar Bilder...