Selbstbau HM_WDS10_TH_O mit Luftdruckmessung

Begonnen von trilu, 23 Februar 2014, 12:23:22

Vorheriges Thema - Nächstes Thema

trilu

@hexenmeister
kannst du mal ein get regList von deinem HM-Sen-MDIR-O posten?

himtronics

Zitat von: Dirk am 25 Februar 2014, 14:08:59
Auf den ersten Blick würde ich sagen dass das Tranceiver-Modul hier nicht mit dem CC1101 kompatibel ist.
Also müsste man zumindest die Firmware von Trilu dafür speziell anpassen.

Ist ein CC1110, im Prinzip ein CC1101 mit 8051 CORE und einem serial port. Aber stimmt schon,
die Firmware müsste man anpassen.

hexenmeister

Zitatein get regList von [...] HM-Sen-MDIR-O

Klar doch ;)

fhem> get UM_VH_HMBL01.Eingang regList
list:         register | range              | peer     | description
   0: pairCentral      |   0 to 16777215    |          | pairing to central
   1: brightFilter     |   0 to 7           |          | brightness filter - ignore light at night
   1: captInInterval   |     literal        |          | capture within interval options:on,off
   1: evtFltrNum       |   1 to 15          |          | sensitivity - read each n-th puls
   1: evtFltrPeriod    | 0.5 to 7.5s        |          | event filter period
   1: ledOnTime        |   0 to 1.275s      |          | LED ontime
   1: minInterval      |     literal        |          | minimum interval in sec options:240,60,120,30,15
   4: peerNeedsBurst   |     literal        | required | peer expects burst options:on,off

Maintainer: MQTT_GENERIC_BRIDGE, SYSMON, SMARTMON, systemd_watchdog, MQTT, MQTT_DEVICE, MQTT_BRIDGE
Contrib: dev_proxy

hexenmeister

ZitatDer TSL2561 kann bei Helligkeitsänderungen Interrupts auslösen. Somit muss der nicht ständig gepollt werden.
Den kenne ich (noch) nicht, muss mir ansehen bezüglich Daten/Verfügbarkeit/Preis.
Kann man da die Schwelle einstellen? ansonsten ändert sich der Wert öffter, als ich polle ;)
Ich sehe das nicht als Problem, der µC muss je immer mal wieder aufwachen. Bei mir werden Sensoren (BMP085, DHT22, BH1750) komplett abgeschaltet (stromlos) und nur einmal pro Minute zur Messung wieder 'geweckt'.
Bei BH1750 gefällt mir die Möglichkeit, durch Registermanipulation die Empfindlichkit so zu regeln, dass man sowohl Werte um die 0,1 (richtig dunkel, draußen eig. nicht zu erreichen) als auch über 100.000 (direkte Mittagssonnne im Sommer bei wolkenlosem Himmel) messen kann. Damit die Empfindlichkeit automatisch geregelt wird, musste ich zwar einen Treiber selbst schreiben, dies ist aber bei den Dingern ja nicht wirklich schwer (hier, evtl. kann jemand gebrauchen: https://github.com/hexenmeister/AS_BH1750) ;)
Maintainer: MQTT_GENERIC_BRIDGE, SYSMON, SMARTMON, systemd_watchdog, MQTT, MQTT_DEVICE, MQTT_BRIDGE
Contrib: dev_proxy

Dirk

Zitat von: hexenmeister am 25 Februar 2014, 18:08:56
Kann man da die Schwelle einstellen? ansonsten ändert sich der Wert öffter, als ich polle ;)
Ja. Aus dem Datasheet: "Programmable Interrupt Function with User-Defined Upper and Lower Threshold Settings" und "Programmable Analog Gain and Integration Time Supporting 1,000,000-to-1 Dynamic Range"

ZitatIch sehe das nicht als Problem, der µC muss je immer mal wieder aufwachen. Bei mir werden Sensoren (BMP085, DHT22, BH1750) komplett abgeschaltet (stromlos) und nur einmal pro Minute zur Messung wieder 'geweckt'.
So könnte man aber sofort bei bestimmten Helligkeitsänderungen eine Nachricht an FHEM verschicken. Bei Temperatur/Feuchte und Luftdruck sollte es ausreichen alle 2-3 Min. zu pollen. Spart noch etwas mehr Energie.

Den "Treiber" des BH1750 in das Sketch einzubauen dürfte aber auch nicht viel Aufwand sein.

Der DHT22 fängt halt erst bei 3,3 Versorgungsspannung an. Da wird eine Energieversorgung mit nur 2 Zellen schwierig. Und der CC1101 geht nur bis Max. 3.6V.
Also bräuchte man hier immer einen Spannungsregler für die 3,3 V Komponenten. Dieser macht bei batteriebetriebenen Sensoren einen nicht unerheblichen Teil des Energieverbrauches aus.

Gruß
Dirk

hexenmeister

Scheint ein gutes Device zu sein ;) (und ist bei ALi recht günstig)

"Treiber" ist natürlich etwas übertrieben, die Dinger sind ja sehr einfach gestrickt.
Der DHT22 funktioniert praktisch ab etwa 3V. Und RFM12B bis etwas über 4V.
Einen Regler möchte ich natürlich auch nicht haben, daher versorge ich mein Prototyp mit einem 3,7 Lithium-Akku.
Mit einem vollgeladenen Akku (18650 mit 4,5Ah) läuft es schon seit 2.2.14 und die Spannung fiel von 4,096 auf aktuell 4,022.
Das dürfte über einen Jahr durchhalten ;) Später gedenke ich 1-2 Stück von 14500er (1,6Ah) benutzen. Sind billig und brauchen nicht zu viel Platz.

Ich muss aber gestehen, Deine Hardware gefällt mir noch besser, werde bestimmt auch nachbauen ;)
Maintainer: MQTT_GENERIC_BRIDGE, SYSMON, SMARTMON, systemd_watchdog, MQTT, MQTT_DEVICE, MQTT_BRIDGE
Contrib: dev_proxy

marc2

#51
Moin !

Vielleicht wäre es in Sachen Bewegungsmelder keine schlechte Idee, sich einfach mal günstige
Melder am Markt anzuschauen. Ggf. gibt es ja einen günstigen, bei dem man schlicht nur das
Innenleben erweitern oder austauschen muss (analog, zu Dirk's Taster Projekt).

Mir würde allerdings im ersten Schritt eine anständige FW für den HM-Sen-MDIR-O reichen. Die
originale finde ich ziemlich mies, da man z.B. das Versenden der Helligkeitwerte nicht deaktivieren
kann. Nicht jeder braucht das, aber man kann diesen zyklischen Elektrosmog nicht abschalten  >:(

Gruß, Marc

marc2

Hallo Dirk !

Zitat von: Dirk am 24 Februar 2014, 21:32:49
Hier nochmal ein Link mit 5 Modulen. Die sind dann etwas günstiger:
http://www.aliexpress.com/item/5pcs-lot-CC1101-868MHz-wireless-module-distance-for-300m-Free-shipping/1104732817.html
Ich, und bestimmt auch Trilu haben bestimmt noch ein Paar Module übrig.

Danke für die Infos ! Ich habe mir mal präventiv fünf Stück geordert.

Gruß, Marc

hexenmeister

ZitatNicht jeder braucht das, aber man kann diesen zyklischen Elektrosmog nicht abschalten  >:(
Ich denke nicht, dass beim Abschalten von Helligkeitsmeldungen eine messbare Verringerung der durchschnittlichen Belastung nachgewiesen werden kann.
Dann muss man schon komplett auf HomeMatic (Handy, WLAN, Staubsauger, Mixer, El. Zahnbürsten, Microwellen- und Ceranherde und vieles andere) verzichten und in ein Beton/Stahl/Blei-Bunker umzihen. Dann könnte ein empfindliches Gerät (vielleicht) eine Veränderung anzeigen. ;)
Spaß bei Seite, wäre in so einem Fall nicht ein drahtgebundenes Gerät besser geeignet?

Grüße,


Alexander
Maintainer: MQTT_GENERIC_BRIDGE, SYSMON, SMARTMON, systemd_watchdog, MQTT, MQTT_DEVICE, MQTT_BRIDGE
Contrib: dev_proxy

trilu

ZitatIch denke nicht, dass beim Abschalten von Helligkeitsmeldungen eine messbare Verringerung der durchschnittlichen Belastung nachgewiesen werden kann.
Ich schon  ;D

Die Frage ist ja, wie wird der Helligkeitswert versendet, ist es ein oder zwei Byte mehr in einer Message vom Bewegungsmelder, dann ist die Ersparnis marginal.
Eben nur der Unterschied von 15 Byte zu 13 Byte, 8%
Wird er in einer eigenen Message versendet, dann ist das erheblich....


   1: brightFilter     |   0 to 7           |          | brightness filter - ignore light at night
   1: captInInterval   |     literal        |          | capture within interval options:on,off
   1: evtFltrNum       |   1 to 15          |          | sensitivity - read each n-th puls
   1: evtFltrPeriod    | 0.5 to 7.5s        |          | event filter period
   1: minInterval      |     literal        |          | minimum interval in sec options:240,60,120,30,15


Die Flags sind ja nicht selbsterklärend - Kannst du die ein wenig beschreiben?
Mit "brightFilter" kann man vermutlich einen Helligkeitswert definieren ab dem der PIR Sensor arbeitet?
0 ist unabhängig von Helligkeit, 7 ist keine Reaktion bei Nacht?

"evtFltrPeriod" wenn ein Impuls gesendet wurde, wird die Zeit x gewartet bis wieder einer gesendet wird?
Bei den anderen Werten fällt mir nicht wirklich was ein...

hexenmeister

#55
Für die Belastungt des HomeMatik-FunkBandes - vielleicht, für die Gesamtbelastung im ganzem EM-Spektrum - wohl kaum. Das wird kaum ein Bruchteil einer Promille ausmachen, daher würde ich mit Elektrosmog nicht argumentieren. aber Schwamm drüber... ;)

Das Gerät liefert bei mir alle 4 Minuten (einstellbar) einen Helligkeitswert. Bei erkannten Bewegungen kommen Meldungen meines wissens sofort.

ZitatDie Flags sind ja nicht selbsterklärend - Kannst du die ein wenig beschreiben?
Wegen 'nicht selbsterklärend' kann ich sie auch nur teilweise erklären ;)

minInterval - ist wohl klar
brightFilter - s. hier: http://forum.fhem.de/index.php/topic,10226.msg57438.html#msg57438
(grob - eliminiert die Helligkeitsschwankungen durch Durchschittsberechnungen)
(und PIRSensor arbeitet immer unabhängig von Helligkeit. Diese wird wohl von dem gepairten Gerät ausgewertet)
evtFltrNum und evtFltrPeriod - kann ich nur raten. Stehen bei mir beide auf 1. Ich vermute, dies bedeutet, dass in einem Interval von <evtFltrPeriod> Sekunden <evtFltrNum>-Stück einzelner Messungen aufsummiert werden. oder so ähnlich...
captInInterval - keine Ahnung.
Es gibt noch R-ledOnTime und R-pairCentral, die nicht mit regList geliefert werden. Beide sind jedoch selbsterklärend.

Maintainer: MQTT_GENERIC_BRIDGE, SYSMON, SMARTMON, systemd_watchdog, MQTT, MQTT_DEVICE, MQTT_BRIDGE
Contrib: dev_proxy

marc2

Hi !

Mir ist schon klar, das die Belastung minimal ist. Wir leben aber in einer Welt, in der man ständig, von allen Seiten
und über eine weites Frequenzspektrum hinweg EM-Feldern ausgesetzt ist. Da ist es legitim zu fordern, dass man
wenigstens die Anteile - und seinen sie noch so klein - die überflüssig sind auch abschalten kann. Ich habe derzeit
drei  HM-Sen-MDIR-O, welche dreimal die gleiche Information liefern, was vollkommen überflüssig ist. Abgesehen
davon, werden die Batterien unnötig belastet, da das maximale Intervall der Übertragung 3 Minuten beträgt.

Prinzipiell nutze ich bei Sensoren, die zyklisch Messwerte liefern, 1w Sensoren, nur die drei Bewegungsmelder
sind noch nicht ersetzt.  Wie auch immer, es wäre halt schön, wenn man es abklemmen könnte ....

Der Artikel zum HM-Sen-MDIR-O ist übrigens bei ELV kostenlos verfügbar (eigenartig, sonst kostet das immer ein
paar Cent ...): http://www.elv-downloads.de/bilder/journal/2013_02/03/130377_hm_sen_mdir_o.pdf

Leider liefert er keine weitergehenden Erkenntnisse zu den Registern, aber zumindest den Schaltplan Ein paar
Informationen hatte Martin schon einmal zur Verfügung gestellt: http://forum.fhem.de/index.php/topic,12266.msg73109.html#msg73109
Und der bereits erwähnte Thread liefert die Information zum brightFilter, der einen in den Wahnsinn treibt, wenn man
die Erklärung nicht kennt !

Gruß, Marc


Dirk

#57
Hallo zusammen

heute habe ich die Gehäuse bekommen.
Anbei mal ein Bild auch vom Innenleben mit "ausgedruckter Platine" und Batteriehalter.
Ich wollte mal sehen ob das ganze da so reinpasst.
Der Batteriehalter nimmt 2 AA-Batterien auf. Dadurch sollte ein mehrjähriger Betrieb des Sensors mit einer Batterieladung möglich sein.

Anbei auch schon mal der Schaltplan und das Platinenlayout vom Sensor. Vielleicht hat der eine oder andere noch Verbesserungsvorschläge.
Auf der Platine kann entweder ein Arduino-Mini-Pro bestückt / Aufgesteckt werden, oder alternativ ein Atmega328 mit entsprechender Außenbeschaltung bestückt werden.
Die Sensoren für Feuchte/Temperatur, Luftdruck und Helligkeit können alle oder auch nur einzeln bestückt werden.
Aus Platzgründen sind Sie Sensoren ohne Adapter direkt auf der Platine zu bestücken.
Da nicht jeder SMD löten kann und vor allem der BMP180 nur Sinnvoll mit Reflow oder Heisßluft gelötet werden kann, würde ich euch die entsprechenden Sensoren schon auf die Platine bestücken.
Somit ist dann "nur" noch der Arduino und das Funkmodul zu bestücken.
Für jemand der gar nicht löten möchte / kann, finden wir bestimmt auch eine Lösung :)


Den Wettersensor2 den ich geplant habe, ist für das "Gehäuse2". Da dieses Wasser und somit auch Luftdicht verschlossen werden kann ist es perfekt für den Außeneinsatz.
Daher habe ich hier auch "nur" den Helligkeitssensor und den Luftdrucksensor gepant. Der I2C-Bus ist hier allerdings auf einen Stecker geführt, so dass man ggf. noch externe I2C-Sensoren anschließen kann.
Um den Luftdrucksensor sinnvoll zu benutzen ist es hier dann aber erforderlich ein kleines Loch in das Gehäuse zu bohren. Wenn man das an der Unterseite macht, dann ist das Gehäuse immer noch Spritzwasserdicht.
Da das Gehäuse etwas kleiner ist, passt hier nur ein Batteriehalter mit 2 AAA-Zellen rein.

Viele Grüße
Dirk

Update:
Der Helligkeitssensor macht im Gehäuse1 natürlich nur Sinn, wenn der auch etwas Licht abbekommt.
Meine Idee ist daher ein kleines Loch im Deckel in einer Art "Lichtleiter". Ein kleiner 3 mm Acrylstab sollte da funktionieren.

Update2:
Update: Schematic gelöscht. Überarbeitet Version ist hier:
http://forum.fhem.de/index.php/topic,20620.msg143914.html#msg143914

hexenmeister

Na, das sieht ja schon super aus!
Hast Du schon eine Vorstellung, was so eine halbbestückte Platine kosten soll?

Grüße,

Alexander
Maintainer: MQTT_GENERIC_BRIDGE, SYSMON, SMARTMON, systemd_watchdog, MQTT, MQTT_DEVICE, MQTT_BRIDGE
Contrib: dev_proxy

Dirk

ZitatHast Du schon eine Vorstellung, was so eine halbbestückte Platine kosten soll?
Noch nicht. Das wird dann auch davon abhängen welche Sensoren da alle bestückt werden.
Vielleicht organisiere ich auch eine Sammelbestellung dann muss nicht jeder alles selber bestellen.
Ich werde das die Tage mal durchrechnen.

Luftdruck z.B. wird jeder in der Regel nur einmal benötigen.

Gruß
Dirk