<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>http://wiki.fhem.de/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Tom+Major</id>
	<title>FHEMWiki - Benutzerbeiträge [de]</title>
	<link rel="self" type="application/atom+xml" href="http://wiki.fhem.de/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Tom+Major"/>
	<link rel="alternate" type="text/html" href="http://wiki.fhem.de/wiki/Spezial:Beitr%C3%A4ge/Tom_Major"/>
	<updated>2026-04-05T20:25:17Z</updated>
	<subtitle>Benutzerbeiträge</subtitle>
	<generator>MediaWiki 1.43.6</generator>
	<entry>
		<id>http://wiki.fhem.de/w/index.php?title=HomeMatic_Asksin_Library&amp;diff=34024</id>
		<title>HomeMatic Asksin Library</title>
		<link rel="alternate" type="text/html" href="http://wiki.fhem.de/w/index.php?title=HomeMatic_Asksin_Library&amp;diff=34024"/>
		<updated>2020-10-19T12:01:07Z</updated>

		<summary type="html">&lt;p&gt;Tom Major: Hinweis auf verschiedene Funkchips hinzugefügt&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Todo|Bitte beachten: 1. Entwurf und noch ausbaubedürftig. Es fehlen noch einige Inhalte, Anmerkungen usw. usf.}}&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Asksin Library für HomeMatic&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== Sinn bzw. Ziel ==&lt;br /&gt;
&lt;br /&gt;
Ziel ist es, eine Arduino-Library (lib) zu entwickeln mit der es möglich ist, eigene Hardware auf Basis eines Arduino in ein HomeMatic-Netzwerk einzubinden. Es soll mit dieser lib auch möglich sein, vorhandene HM-Aktoren mit eigener Hardware zu peeren, so dass eine Interaktion zwischen den Geräten auch ohne laufendem FHEM-Server möglich ist.&lt;br /&gt;
&lt;br /&gt;
Später soll sie &amp;lt;ins&amp;gt;vielleicht&amp;lt;/ins&amp;gt; auch die Grundlage sein um vorhandene HomeMatic-Hardware neu zu programmieren.&lt;br /&gt;
&lt;br /&gt;
Stand 12. November 2013 wird ein HomeMatic-Dimmer abgebildet. Das wird aber nicht der einzige {{Link2Forum|Topic=14140|Message=106875|LinkText=Einsatzzweck}} bleiben.&lt;br /&gt;
&lt;br /&gt;
== Software ==&lt;br /&gt;
&lt;br /&gt;
=== Arduino ===&lt;br /&gt;
&lt;br /&gt;
Da es sich um eine Arduino-Library handelt, müssen Sie sich für deren Nutzung eine entsprechende [http://arduino.cc/de/Guide/Environment Entwicklungsumgebung] einrichten. Diese gibt es für [http://arduino.cc/en/Main/Software Linux, OS X und Windows].&lt;br /&gt;
&lt;br /&gt;
=== Library ===&lt;br /&gt;
&lt;br /&gt;
Die Library ist seit dem 16. November 2013 in der jeweils aktuellsten Fassung im {{Link2Forum|Topic=14140|Message=88923|LinkText=ersten Threadbeitrag}} zu finden. Die Verwendung der Library unterliegt der [http://creativecommons.org/licenses/by-nc-sa/3.0/de/ CC-BY-NC-SA-Lizenz].&lt;br /&gt;
&lt;br /&gt;
Die Library besteht aus 4 Dateien:&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;sketch_aug05a.ino&#039;&#039; ist der Userbereich. Hier kann man die gerätespezifischen Funktionen programmieren.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;register.h&#039;&#039; ist der Config-Bereich. Im oberen Teil sind die Variablen für Seriennummer usw. Im unteren Teil kommen die Registerdefinitionen rein. Also die Config für List0, List1 usw.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;asksin.h&#039;&#039; (die Kopfzeilen des eigentlichen Programms) und &lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;asksin.cpp&#039;&#039;, das ist der HM-Kommunikationsbereich. Jegliches HM-Handling soll hier statt finden und keinen Benutzereingriff benötigen.&lt;br /&gt;
&lt;br /&gt;
Für die &#039;&#039;register.h&#039;&#039; gibt es ein Config-Tool in Perl (noch nicht verfügbar). Die Gerätedefinition wird in diesem Tool vorgenommen, der Output in die &#039;&#039;register.h&#039;&#039; kopiert und gut. &lt;br /&gt;
&lt;br /&gt;
Da der eigentliche Sketch den Namen &#039;&#039;sketch_aug05a.ino&#039;&#039; trägt, das Verzeichnis, in dem die &#039;&#039;gezippten&#039;&#039; Dateien entpackt werden, aber nach dem Schema &#039;&#039;TTMMJJ-sketch_aug05a&#039;&#039; (TT = Tag, MM = Monat und JJ = Jahr der Veröffentlichung der Lib) benannt ist, sollten Sie den Verzeichnisnamen auf &#039;&#039;sketch_aug05a&#039;&#039; umbenennen. Ansonsten können Sie den Sketch nach dem Öffnen der Arduino-IDE nicht öffnen. Der Name des Haupt-Sketches und des Verzeichnisses müssen also gleich sein.&lt;br /&gt;
&lt;br /&gt;
Weiteres, auch zur Funktionsweise, siehe {{Link2Forum|Topic=14140|Message=102672|LinkText=hier}} und {{Link2Forum|Topic=14140|Message=104644|LinkText=hier}} (Forenbeiträge).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Beispiel der Ausgaben:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Folgende Ausgabe erscheint nach dem Übertragen des Sketches (&amp;quot;arduinisch&amp;quot; für Programm) auf den Arduino im seriellen Terminal der Arduino-IDE:&lt;br /&gt;
&lt;br /&gt;
 Port open&lt;br /&gt;
 CC1101_init: 12..............................................3 - ready&lt;br /&gt;
 &lt;br /&gt;
 Available commands:&lt;br /&gt;
   p                - start pairing with master&lt;br /&gt;
   b[0] b[n] s      - send a string, b[0] is length (50 bytes max)&lt;br /&gt;
 &lt;br /&gt;
   i[0]. i[1]. e    - show eeprom content, i[0]. start address, i[1]. length&lt;br /&gt;
   i[0]. b[1] f     - write content to eeprom, i[0]. address, i[1] byte&lt;br /&gt;
   c                - clear eeprom complete, write 0 from start to end&lt;br /&gt;
 &lt;br /&gt;
   t                - gives an overview of the device configuration&lt;br /&gt;
 &lt;br /&gt;
   $nn for HEX input (e.g. $AB,$AC ); b[] = byte, i[]. = integer&lt;br /&gt;
 &lt;br /&gt;
 Serial: PS00000001, Model ID: 00 57 , HMID: 2F B7 4A&lt;br /&gt;
 Paired: F1 47 12&lt;br /&gt;
 &lt;br /&gt;
 FreeMem: 1232 byte&#039;s&lt;br /&gt;
&lt;br /&gt;
Und so sieht das ganze auf Ihrem Bildschirm aus: [[Datei:2013-11-12 - Asksin-Screenshot - CutUSM1200x802_85P.jpeg|500px|mini|right|Ansicht der Arduino IDE und des Seriellen-Ausgabefensters mit den Ausgaben der Asksin Library]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Achtung:&#039;&#039;&#039; Um in der seriellen Konsole (Aufruf per Klick auf das Lupensymbol rechts oben im Fenster der IDE) die Ausgaben zu sehen, müssen Sie noch die Baud-Rate rechts unten im Fenster von 9.600 auf 57.600 ändern (dies ist die im Asksin-Sketch eingestellte Datenübertragungsrate). Bei einer verkehrten Baud-Rate erscheinen maximal irgendwelche Sonderzeichen.&lt;br /&gt;
&lt;br /&gt;
== Hardware ==&lt;br /&gt;
Als Ersatz für die HomeMatic Sensoren und Aktoren kommen panStamps [http://www.panstamp.com/ (Hersteller Webseite] / [[panStamp|Wiki Artikel)]] oder [http://arduino.cc/de/Main/ArduinoBoardProMini Arduino Pro Mini] (mit 3,3 V, dazu gleich mehr) zusammen mit Transceivern aus dem Frequenzbereich 868 MHz zum Einsatz.&lt;br /&gt;
&lt;br /&gt;
=== panStamp ===&lt;br /&gt;
Vorteile:&lt;br /&gt;
* Transceiver on-board&lt;br /&gt;
* klein&lt;br /&gt;
* preiswert&lt;br /&gt;
&lt;br /&gt;
Nachteile:&lt;br /&gt;
* nicht immer/überall verfügbar&lt;br /&gt;
&lt;br /&gt;
=== Arduino Pro Mini 3,3 V mit separatem Transceiver ===&lt;br /&gt;
&lt;br /&gt;
Bitte achten Sie darauf, nur Arduino Pro Minis mit 3,3 V zu verwenden, da die Transceiver-Module auch nur mit dieser Spannung arbeiten. Es gehen zwar notfalls auch Arduino-Boards mit 5 Volt, aber die Spannungsversorgung und Signal-/Datenleitungen der Transceiver-Module müssen dann per &amp;quot;Level-Converter&amp;quot; angepasst werden.&lt;br /&gt;
&lt;br /&gt;
Vorteile:&lt;br /&gt;
* verfügbar&lt;br /&gt;
&lt;br /&gt;
Nachteile:&lt;br /&gt;
* teurer als panStamps&lt;br /&gt;
* Volumen größer als panStamps&lt;br /&gt;
&lt;br /&gt;
==== Transceiver-Module ====&lt;br /&gt;
Beim [[panStamp]] ist das Modul bereits on-board. Am preiswertesten fährt man bei den Arduinos mit den Bausätzen vom HomeMatic [[HM-LC-Sw1-Ba-PCB]] oder [[MAX#Fensterkontakte|vom MAX! Fensterkontakt]].&lt;br /&gt;
&lt;br /&gt;
Module aus dem FS20-Bereich funktionieren &amp;lt;ins&amp;gt;nicht&amp;lt;/ins&amp;gt;, da diese eine andere Signalmodulation haben. RFM12-Module können ebenfalls &amp;lt;ins&amp;gt;nicht&amp;lt;/ins&amp;gt; verwendet werden. Auch die &amp;quot;CC1101 w/ co-processor shield for Arduino&amp;quot; von Busware werden &amp;lt;ins&amp;gt;nicht&amp;lt;/ins&amp;gt; unterstützt.&lt;br /&gt;
&lt;br /&gt;
[[Datei:Tranceiver_CutGradScaleUSM800x600_85P_IMGP8367.JPG|200px|thumb|right|Transceiver - links kurz und breit, rechts lang und schmal]]&lt;br /&gt;
&lt;br /&gt;
===== HomeMatic HM-LC-Sw1-Ba-PCB =====&lt;br /&gt;
Kurzes, aber breites Transceiver-Modul. Die &#039;&#039;&#039;1&#039;&#039;&#039;-reihigen Löt-Kontakte haben allerdings einen Abstand von 2 mm, was bei der Anbringung von Pfostenleisten berücksichtigt werden muss (üblicher sind 2,54 mm).&lt;br /&gt;
&lt;br /&gt;
Siehe nebenstehendes Foto links.&lt;br /&gt;
&lt;br /&gt;
===== MAX! Fensterkontakt =====&lt;br /&gt;
Längeres aber schmaleres Transceiver-Modul. Die &#039;&#039;&#039;2&#039;&#039;&#039;-reihigen Kontakte haben das üblichere Raster von 2,54 mm, jedoch sind schon einige Löterfahrungen erforderlich um das Modul sauber zu entlöten.&lt;br /&gt;
&lt;br /&gt;
Siehe nebenstehendes Foto rechts.&lt;br /&gt;
&lt;br /&gt;
===== CC1101 =====&lt;br /&gt;
&lt;br /&gt;
Die CC1101-Module sind regulär für den 433MHz Bereich gedacht, können aber auf 868 MHz umgestellt werden. Dies geht allerdings zu Lasten der Sende- und Empfangsleistung.&lt;br /&gt;
&lt;br /&gt;
===== Achtung, verschiedene Funkchips =====&lt;br /&gt;
&lt;br /&gt;
Es gibt beide Modulausführungen (breit und schmal) mit Funkchip CC1101 von Texas Instruments (-TI) und SiliconLabs (-SL).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Nur&#039;&#039;&#039; die &#039;&#039;&#039;-TI&#039;&#039;&#039; Variante ist mit Stand 10/2020 für AskSinPP geeignet, die -SL Variante wird nicht unterstützt!&lt;br /&gt;
&lt;br /&gt;
siehe auch:&lt;br /&gt;
[https://github.com/pa-pa/AskSinPP/issues/210 How is it possible to use the AskSinPP libary with the original trx-868 RF module]&lt;br /&gt;
&lt;br /&gt;
==== Verbindung Transceiver mit Arduino Pro Mini ====&lt;br /&gt;
&lt;br /&gt;
Zur Zeit (November 2013) gelten folgende Pin-Belegungen:&lt;br /&gt;
&lt;br /&gt;
===== Breites Modul =====&lt;br /&gt;
&lt;br /&gt;
[[Datei:2013-11-13 - Fritzing-Screenshot - breit - CutUSM_800x600_85P.jpeg|200px|thumb|right|Verkabelung des breiten Transceiver-Moduls mit einem Arduino Pro Mini 3,3 V]]&lt;br /&gt;
&lt;br /&gt;
 TRX868 - Pins von links nach rechts (metallisches &lt;br /&gt;
 Abschirmblech - im Schema gelb - sichtbar, Antenne oben)&lt;br /&gt;
 &lt;br /&gt;
  1   2   3   4   5   6   7   8&lt;br /&gt;
          2 mm Raster (!)&lt;br /&gt;
 &lt;br /&gt;
          Arduino         &lt;br /&gt;
 TRX868   ProMini 3.3V!  Beschreibung     Farbe&lt;br /&gt;
 =================================================&lt;br /&gt;
 1           11          SPI Mosi         weiß&lt;br /&gt;
 2           13          SPI SCK          violett&lt;br /&gt;
 3           12          SPI MISO         grün&lt;br /&gt;
 4 (n.c.)    (3)         PWM -LED-GND     ---&lt;br /&gt;
 5            2          GDO0             gelb&lt;br /&gt;
 6           10          SPI chip select  blau&lt;br /&gt;
 7           GND         GND              schwarz&lt;br /&gt;
 8           VCC         3.3V             rot&lt;br /&gt;
 =================================================&lt;br /&gt;
 &lt;br /&gt;
TRX868-Pin 4 ist GDO2 und war anfangs mit Pin 3 des Arduino verbunden. GDO2 wird nicht mehr verwendet und Pin 3 (PWM) kann nun anderweitig genutzt werden.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===== Schmales Modul =====&lt;br /&gt;
[[Datei:2013-11-13 - Fritzing-Screenshot - schmal -CutUSM_800x601_85P.jpeg|200px|thumb|right|Verkabelung des schmalen Transceiver-Moduls mit einem Arduino Pro Mini 3,3 V]]&lt;br /&gt;
&lt;br /&gt;
 TRX868 - Pins von links nach rechts (metallisches &lt;br /&gt;
 Abschirmblech - im Schema gelb - sichtbar, Antenne oben)&lt;br /&gt;
 &lt;br /&gt;
  1   3   5   7&lt;br /&gt;
  2   4   6   8&lt;br /&gt;
  2,54 mm Raster&lt;br /&gt;
 &lt;br /&gt;
          Arduino         &lt;br /&gt;
 TRX868   ProMini 3.3V!  Beschreibung     Farbe&lt;br /&gt;
 =================================================&lt;br /&gt;
 1         VCC           3.3V&lt;br /&gt;
 2         GND           GND&lt;br /&gt;
 3          11           SPI Mosi&lt;br /&gt;
 4          13           SPI SCK&lt;br /&gt;
 5          12           SPI MISO&lt;br /&gt;
 6 (n.c.)   (3)          -- frei --&lt;br /&gt;
 7           2           GD00 &lt;br /&gt;
 8          10           SPI chip select&lt;br /&gt;
 =================================================&lt;br /&gt;
&lt;br /&gt;
Der Arduino-Pin 3 (PWM) ist nun frei für die eigene Verwendung und kann z.B. als GND für eine zu dimmende LED eingesetzt werden&lt;br /&gt;
&lt;br /&gt;
&amp;lt; Schema folgt &amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Links ==&lt;br /&gt;
* {{Link2Forum|Topic=14140|LinkText=Foren-Thread}}&lt;br /&gt;
* [http://www.elv.de/max-fensterkontakt-arr.html MAX! Fensterkontakt Bausatz]]&lt;br /&gt;
* [http://www.elv.de/homematic-schaltaktor-fuer-batteriebetrieb-komplettbausatz.html HomeMatic Schaltaktor Bausatz]&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:HomeMatic_Components]]&lt;/div&gt;</summary>
		<author><name>Tom Major</name></author>
	</entry>
	<entry>
		<id>http://wiki.fhem.de/w/index.php?title=Universalsensor&amp;diff=31943</id>
		<title>Universalsensor</title>
		<link rel="alternate" type="text/html" href="http://wiki.fhem.de/w/index.php?title=Universalsensor&amp;diff=31943"/>
		<updated>2019-12-12T19:19:17Z</updated>

		<summary type="html">&lt;p&gt;Tom Major: Update Link auf HB-UNI-Sensor1 Schaltplan und Platine&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Datei:Universalsensor-CC1101-Innen.jpg|200px|thumb|right|Universalsensor im Innengehäuse]]&lt;br /&gt;
[[Datei:Universalsensor-CC1101-Aussen.jpg|200px|thumb|right|Universalsensor im Außengehäuse]]&lt;br /&gt;
&lt;br /&gt;
== Übersicht ==&lt;br /&gt;
Die [[Universalsensor]]-Platine ist eine Hardwareplattform, um verschiedene Sensorwerte auch über unterschiedliche Übertragungsverfahren z.B. für die eigene Homeautomatisierung verfügbar zu machen.&lt;br /&gt;
&lt;br /&gt;
Hier werden die unterschiedliche Platinenlayouts, welche z.B. für einen Innensensor und einen Außensensor verwendet werden können, vorgestellt.&lt;br /&gt;
&lt;br /&gt;
Als Übertragungsmedien sind ein Funkmodul (CC1101) oder ein RS485 Transceiver (LT1785 oder kompatibel) vorgesehen.&lt;br /&gt;
&lt;br /&gt;
Mit dem Funkmodul ist eine Anbindung an Funksysteme im 868&amp;amp;nbsp;MHz oder auch 433&amp;amp;nbsp;MHz-Band möglich. Hiermit kann der Sensor z.B. in ein HomeMatic Funksystem integriert werden, aber auch andere Funksysteme sind über eine entsprechende Firmware realisierbar. Mit dem RS485 Transceiver ist z.B. auch eine Integration in das HomeMatic-Wired System möglich.&lt;br /&gt;
&lt;br /&gt;
Das Platinenlayout der Sensoren enthält zwei Pinleisten, welche Arduino-Kompatibel sind. Als Mikrocontroller ist ein Atmega 328p bestückt. Über diese Erweiterungsports können zusätzlich eigene Sensoren oder auch Aktoren angeschlossen werden, diese müssen dann aber über eine Erweiterung der bestehenden Firmware oder mit einer eigenen Firmware angesprochen werden.&lt;br /&gt;
&lt;br /&gt;
Die Spannungsversorgung erfolgt über zwei AA bzw. AAA Batterien. Damit eine möglichst gute Ausnutzung der Batteriekapazität erzielt wird und auch Sensoren mit 3,3&amp;amp;nbsp;V Spannungsversorgung benutzt werden können, kann ein MAX1724 Step-Up-Converter bestückt werden. Dieser stellt eine stabile Spannungsversorgung von 3,3&amp;amp;nbsp;V zur Verfügung. Als Mindest-Eingangsspannung sind hier dann lediglich 1,2&amp;amp;nbsp;V notwendig. Somit ist eine Versorgung auch aus nur einer Batteriezelle denkbar.&lt;br /&gt;
&lt;br /&gt;
Alternativ kann eine Spannungsversorgung über einen Schaltregler erfolgen. Diese Versorgung kommt bei der Bestückungsversion mit RS485-Transceiver zum Einsatz, aber auch bei Benutzung mit dem Funkmodul kann diese Spannungsversorgung eingesetzt werden.&lt;br /&gt;
&lt;br /&gt;
Der Schaltregler erlaubt einen recht breiten Eingangsspannungsbreich von 7&amp;amp;nbsp;V bis 24&amp;amp;nbsp;V. Außerdem steht damit intern zusätzlich zu den 3,3&amp;amp;nbsp;V eine Spannung von 5&amp;amp;nbsp;V zur Verfügung.&lt;br /&gt;
&lt;br /&gt;
== Innensensor ==&lt;br /&gt;
[[Datei:Universalsensor-CC1101-Innen platine.jpg|200px|thumb|right|Universalsensor-Platine für das Innengehäuse. Hier noch ohne Bestückungsoption für RS485 und ohne bestückten SHT10 (Temperatur / Luftfeuchte)]]&lt;br /&gt;
&lt;br /&gt;
Das Layout des Innensensors unterstützt standardmäßig folgende Sensorbestückung:&lt;br /&gt;
* Temperatur / Feuchte (SHT10)&lt;br /&gt;
* Temperatur / Luftdruck (BMP180)&lt;br /&gt;
* Helligkeit (TSL2561)&lt;br /&gt;
Zusätzlich können über die zwei Pinleisten eigene Sensoren z.B. über eine Erweiterungsplatine angeschlossen werden. Als Beispiel ist hier eine Firmwareversion genannt, bei der mehrere 1-Wire Sensoren an den Sensor angeschlossen und abgefragt werden können. Zusätzlich zu den unterschiedlichen bestückbaren Sensoren kann der Innensensor alternativ zum Funkmodul mit einem RS485 Transceiver bestückt werden. Als Spannungsversorgung steht eine Batterieversorgung (1,2-3&amp;amp;nbsp;V) oder eine Spannungsversorgung über einen Schaltregler (7-24&amp;amp;nbsp;V) zur Verfügung.&lt;br /&gt;
&lt;br /&gt;
== Außensensor ==&lt;br /&gt;
[[Datei:Universalsensor-CC1101-Aussen_platine.jpg|200px|thumb|right|Universalsensor-Platine für das Außengehäuse mit Beschreibung der I2C-Anschlussbelegung.]]&lt;br /&gt;
&lt;br /&gt;
Die Platine des Außensensors ist deutlich kompakter als die des Innensensors, daher ist in dieser Version derzeit nur das Funkmodul bestückbar. Andere Übertragungsverfahren wie z.B. RS485 müssten hier extern realisiert werden. Das Layout des Außensensors unterstützt standardmäßig folgende Sensorbestückung:&lt;br /&gt;
* Temperatur / Luftdruck (BMP180)&lt;br /&gt;
* Helligkeit (TSL2561)&lt;br /&gt;
Weitere Sensoren, z.B. ein SHT10 für Temperatur/Luftfeuchte, können über den nach außen geführten I2C-Bus angeschlossen werden. Natürlich existiert auch beim Außensensor die Möglichkeit, weitere Sensoren oder auch Aktoren über die beiden Pinleisten anzuschließen.&lt;br /&gt;
&lt;br /&gt;
{{Link2Forum|Topic=20620|Message=182690|LinkText=Dieser Forenbeitrag}} beschreibt, wie der SHT10 auch innerhalb eines Gehäuses benutzt werden kann.&lt;br /&gt;
&lt;br /&gt;
Um die Platine im Gehäuse zu fixieren, wird auf einer Seite des Batteriehalters ein kleiner Schaumstoffblock aufgeklebt (siehe nebenstehendes Foto)&lt;br /&gt;
&lt;br /&gt;
== Helligkeitssensor ==&lt;br /&gt;
[[Datei:SHT10_breakout.jpg|200px|thumb|right|SHT10 Breakout-Board für den Außensensor.]]&lt;br /&gt;
[[Datei:CC1101-Sensor-Außen_mit_Filterfolie.JPG|200px|thumb|right|Das Außengehäuse mit Filterfolie.]]&lt;br /&gt;
[[Datei:Innensensor_Loch_für_Acrylstab_Maße.jpg|200px|thumb|right|Bohrvorlage für den Acrylstab im Innengehäuse.]]&lt;br /&gt;
Der Helligkeitssensor braucht zum sinnvollen Einsatz natürlich die Möglichkeit, vom Umgebungslicht beleuchtet zu werden. Da der Sensor im Innengehäuse in der Nähe der Lüftungsschlitze sitzt, wird er dadurch bereits beleuchtet, allerdings fällt hier nur wenig Licht auf den Sensor. Daher ist bei dieser Messmethode die erreichbare Auflösung sehr gering.&lt;br /&gt;
&lt;br /&gt;
Die bessere Lösung ist es, in die Abdeckung des Sensorgehäuses ein 5&amp;amp;nbsp;mm großes Loch zu bohren. In das Loch wird ein kurzer Stift aus Acrylglas eingesetzt (siehe Bild mit der Bohrvorlage).  Achtung, das Loch ist in horizontaler Ausrichtung nicht genau mittig. Der Acrylstab hat nicht genau 5&amp;amp;nbsp;mm Durchmesser. Es sind 5,2 mm. Man kann dennoch ein 5 mm Loch bohren. Das Einschieben des Stabes in das Loch geht dann allerdings ziemlich schwer. Vor dem Einschieben kann man den Acrylstab an der Innenseite noch leicht anfasen. Dann lässt er sich leichter in das Loch schieben. Die Länge des Acrylstabes Beträgt 17&amp;amp;nbsp;mm.&lt;br /&gt;
&lt;br /&gt;
Im Außensensor ist die ausreichende Beleuchtung bereits durch die transparente Gehäuseoberseite gewährleistet. Allerdings wird der Sensor in direkter Sonneneinstrahlung übersteuern. Daher kann hier zwischen Sensor und Deckel eine Filterfolie eingelegt werden. Die getestete Filterfolie lässt dann nur noch etwa 25% des Lichtes durch. Dadurch ist eine Lage ausreichend, damit der Sensor auch im Sommer bei voller Sonneneinstrahlung nicht mehr übersteuert. Durch den bekannten Filterwert der Folie lässt sich so auch gut ein Umrechnungsfaktor für die Heligkeitsmessung in Lux z.B. in FHEM hinterlegen.&lt;br /&gt;
&lt;br /&gt;
Eine Testreihe mit der Folie im Vergleich mit einem kommerziellen Luxmeter hat den Faktor 0,265 ergeben. Mit Folie bekommt man mit einer Division durch 0,265 auf den aktuellen Lux-Wert:&lt;br /&gt;
:&amp;lt;code&amp;gt;$lux = $lum/0.265&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Um den Wert mit Folie unterhalb des Devices angezeigt zu bekommen, muss man hierfür ein userreading erstellen.&lt;br /&gt;
Die erfolgt mit folgendem Befehl:&lt;br /&gt;
:&amp;lt;code&amp;gt;attr Outdoor.Helligkeit userReadings luminosity2 { ReadingsVal(&amp;quot;Outdoor.Helligkeit&amp;quot;,&amp;quot;luminosity&amp;quot;,0)/0.265;;  }&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Der Devicename (hier im Beispiel &#039;&#039;Outdoor.Helligkeit&#039;&#039;) muss gegen den eigenen Devicenamen ausgetauscht werden.&lt;br /&gt;
&lt;br /&gt;
Werden zwei Folien benutzt muss der Wert von 0.265 angepasst werden.&lt;br /&gt;
&lt;br /&gt;
Nun ist es möglich, den richtigen Wert unter dem Reading &#039;&#039;luminosity2&#039;&#039; abzufragen.&lt;br /&gt;
&lt;br /&gt;
== Firmware ==&lt;br /&gt;
[[Datei:CC1101-Sensor_Firmwareupdate_mit_dem_Raspberry_Pi.jpg|200px|thumb|right|Firmwareupdate mit dem Raspberry Pi.]]&lt;br /&gt;
&lt;br /&gt;
Aktuell existieren für den Sensor drei verschiedene Firmwareversionen:&lt;br /&gt;
* [[HB-UW-Sen-THPL]] HB-UW-Sen-THPL-I, HB-UW-Sen-THPL-O (Version 0.15)&lt;br /&gt;
: HomeMatic-kompatibler Temperatur / Feuchte / Luftdruck / Helligkeitssensor für das  Innengehäuse oder Außengehäuse&lt;br /&gt;
* [https://github.com/TomMajor/SmartHome/tree/master/HB-UNI-Sensor1 HB-UNI-Sensor1]&lt;br /&gt;
: Neuauflage des Universalsensors in 2018 für Temperatur, Luftdruck, Luftfeuchte, Helligkeit mit neuer AskSinPP Bibliothek&lt;br /&gt;
* HWB-ONEWIRE (Experimentel)&lt;br /&gt;
: HomeMatic-Wired Kompatibles 1-Wire-Temperatursensor-interface&lt;br /&gt;
&lt;br /&gt;
HB-UW-Sen-THPL-I und HB-UW-Sen-THPL-O unterscheiden sich nur durch die Geräte-ID (F101 für HB-UW-Sen-THPL-I, F102 für HB-UW-Sen-THPL-O). Dadurch ist es möglich, dass die Sensoren z.B. in der CCU über ein eigenes Icon verfügen.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Configtaster&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Drückt man den Configtaster auf der Platine im Betrieb 1x, so startet man das [[HomeMatic_Devices_pairen|Pairing]]. Die LED fängt langsam an zu blinken. Drückt man den Taster nun nochmal, aber deutlich länger, blinkt die LED sehr schnell (jetzt loslassen). Jetzt kann der Sensor resettet werden. Dazu drückt man den Taster erneut, bis die LED ausgeht. Der Sensor hat sich nun zurückgesetzt.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Firmwarekonfiguration&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Auf einige Einstellungen des Sensors lässt sich über die Kommandozeile Einfluss nehmen. Dazu &lt;br /&gt;
:&amp;lt;code&amp;gt;set &amp;lt;sensorname&amp;gt; regSet &amp;lt;register&amp;gt; &amp;lt;wert&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
eingeben. Die folgenden Register stehen dabei zur Verfügung:&lt;br /&gt;
;altitude&lt;br /&gt;
:Die Höhe des Sensors über NN in Metern. Ist ein Luftdrucksensor vorhanden, dann wird der ermittelte Druck automatisch in Druck auf NN umgerechnet.&lt;br /&gt;
;burstRx (noch experimentell)&lt;br /&gt;
:Hierbei bleibt der Sensor dauerhaft empfangsbereit (bei höherem Batterieverbrauch). Damit soll es möglich sein, die Sensorwerte on demand vom Sensor anzufordern.&lt;br /&gt;
;ledMode&lt;br /&gt;
:&#039;&#039;on&#039;&#039; die LED leuchtet, wenn der Sensor Daten überträgt, &#039;&#039;off&#039;&#039; die LED leuchtet beim Übertragen der Daten nicht&lt;br /&gt;
;lowBatLimitTHPL&lt;br /&gt;
:Batteriespannung, ab der die Warnung für den Batteriewechsel ausgegeben wird.&lt;br /&gt;
;pairCentral&lt;br /&gt;
:???&lt;br /&gt;
;transmDevTryMax&lt;br /&gt;
:Anzahl der Wiederholungssendungen, sofern kein ACK empfangen wurde.&lt;br /&gt;
&lt;br /&gt;
[[Datei:Universalsensor-RS485_mit_1-Wire-Sensoren.jpg|200px|thumb|right|Universalsensor-RS485-Version. Hier mit angeschlossenen 1-Wire Temperatursensoren]]&lt;br /&gt;
&lt;br /&gt;
[[Datei:Universalsensor-RS485-Innen_Platine.jpg|200px|thumb|right|Universalsensor-RS485-Version. Hier mit optional bestückten SHT10 (Temperatur / Luftfeuchte), BMP180 (Luftdruck), TSL2561 (Helligkeit)]]&lt;br /&gt;
&lt;br /&gt;
== OTA (OverTheAir) Firmwareupdate ==&lt;br /&gt;
Die Firmware des Sensor lässt sich, sofern er den so genannten OTAU-Bootloader besitzt, einfach per Funk updaten (OTA-Update = &#039;&#039;&#039;O&#039;&#039;&#039;ver &#039;&#039;&#039;T&#039;&#039;&#039;he &#039;&#039;&#039;A&#039;&#039;&#039;ir, also Update per Funk).&lt;br /&gt;
&lt;br /&gt;
Das Firmwareupdate funktioniert aktuell nur mit [[CUL]]/[[COC]] oder [[HM-CFG-USB USB Konfigurations-Adapter|HM-CFG-USB]] unter Linux ([[HomeMatic_Firmware_Update#Firmware_Update_mit_CUL.2FHM-CFG-USB_unter_FHEM|Update mit CUL oder HM-CFG-USB unter Linux]]), mit dem &amp;quot;HomeMatic Firmware Update Tool&amp;quot; unter Windows ([[HomeMatic_Firmware_Update#Firmware_Update_mit_HM-CFG-USB_unter_Windows|Update mit HM-CFG-USB unter Windows]]) oder mit einer CCU2. Ein &amp;lt;code&amp;gt;set sensorname fwUpdate dateiname&amp;lt;/code&amp;gt; in der Kommandozeile von FHEM funktioniert derzeit noch nicht.&lt;br /&gt;
&lt;br /&gt;
Für das Update mit flash-ota ist folgendes zu machen:&lt;br /&gt;
# [[HomeMatic_Firmware_Update#Firmware_Update_mit_CUL.2FHM-CFG-USB_unter_FHEM|flash-ota herunterladen und installieren]].&lt;br /&gt;
# Firmware aus dem ZIP rausholen: https://github.com/kc-GitHub/Wettersensor/archive/v0.14_beta.zip&lt;br /&gt;
# flash-ota starten. Z.B. so: &amp;lt;code&amp;gt;sudo ./flash-ota -c /dev/ttyACM0 -f &amp;lt;firmware-file.eq3&amp;gt; -s &amp;lt;seriennummer&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
# eine Batterie aus dem Sensor heraus nehmen, Configtaste drücken und gedrückt halten, Batterie wieder einlegen während die Configtaste weiter gedrückt bleibt.&lt;br /&gt;
# Jetzt sollte der Updateprozess starten.&lt;br /&gt;
# Sensor mit FHEM neu pairen. Dann erscheint auch die neue Firmwareversion in FHEM.&lt;br /&gt;
&lt;br /&gt;
== Weitere Firmwareupdate-Möglichkeiten ==&lt;br /&gt;
Alternativ kann der Atmega328p auf der Platine mit einem Arduino-kompatiblen Bootloader ausgerüstet werden.&lt;br /&gt;
Damit lässt sich dann das Firmwareupdate per USB-UART-Adapter oder auch über den UART-Anschluss von einem [[Raspberry Pi]] einspielen.&lt;br /&gt;
&lt;br /&gt;
== RS485-Version mit 1-Wire Temperatursensoren ==&lt;br /&gt;
Hier ist eine experimentelle Firmware, mit der man derzeit die RS485-Version des Sensors in ein 1-Wire - HomeMatic-Wired Interface &amp;quot;verwandeln&amp;quot; kann. Weiteres ist unter [[HWB-1WIRE-TMP10]] nachzulesen.&lt;br /&gt;
&lt;br /&gt;
== Inbetriebnahme ==&lt;br /&gt;
# Das FHEM-Modul für den Sensor muss installiert werden. Dazu folgenden Befehl in das FHEM-Befehlsfeld eingeben: &amp;lt;br&amp;gt;  &amp;lt;code&amp;gt;update HMConfig_SenTHPL.pm &amp;lt;nowiki&amp;gt;https://raw.githubusercontent.com/kc-GitHub/Wettersensor/master/Contrib/control-fhem.txt&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
# Anschließend muss FHEM neu gestartet werden: &amp;lt;code&amp;gt;shutdown restart&amp;lt;/code&amp;gt;&lt;br /&gt;
# Batterien in den Sensor einlegen&lt;br /&gt;
# [[HomeMatic_Devices_pairen|CUL in den Pairingmodus schalten]]&lt;br /&gt;
# Configtaster auf dem Universalsensor drücken&lt;br /&gt;
&lt;br /&gt;
== Zurücksetzen auf Werkseinstellungen ==&lt;br /&gt;
# Configtaster drücken -&amp;gt; LED blinkt&lt;br /&gt;
# Configtaster lange drücken (ca. 5-10 sek.) -&amp;gt; LED blinkt schnell&lt;br /&gt;
# Configtaster noch mal lange drücken (ca. 5-10 sek.) -&amp;gt; LED blinkt kurz und hört dann auf&lt;br /&gt;
&lt;br /&gt;
== Links ==&lt;br /&gt;
* [https://github.com/kc-GitHub/Wettersensor Firmware der CC1101 (Funk) Version]&lt;br /&gt;
* [https://github.com/kc-GitHub/HM485-Lib/tree/thorsten Firmware der RS485 (Wired) Version]&lt;br /&gt;
* [https://github.com/kc-GitHub/Wettersensor/raw/master/Schematic/Schematic-RF.pdf Schaltplan und Platinenlayout der CC1101 (Funk) Version]&lt;br /&gt;
* [https://github.com/kc-GitHub/HM485-Lib/raw/thorsten/Schematic/Schematic-WIRED.pdf Schaltplan und Platinenlayout der RS485 (Wired) Version]&lt;br /&gt;
* [https://github.com/TomMajor/SmartHome/tree/master/HB-UNI-Sensor1 Firmware der 2018 Version]&lt;br /&gt;
* [https://github.com/TomMajor/SmartHome/tree/master/HB-UNI-Sensor1#schaltplan Schaltplan und Platinenlayout der 2018 Version]&lt;br /&gt;
* {{Link2Forum|Topic=20620|LinkText=Thread im FHEM-Forum}}&lt;br /&gt;
* {{Link2Forum|Topic=22952|LinkText=Thread im FHEM-Forum zur Entwicklung der Wired-Firmware}}&lt;br /&gt;
[[Kategorie:HomeBrew]]&lt;br /&gt;
[[Kategorie:HomeMatic Components]]&lt;br /&gt;
[[Kategorie:868MHz]]&lt;/div&gt;</summary>
		<author><name>Tom Major</name></author>
	</entry>
	<entry>
		<id>http://wiki.fhem.de/w/index.php?title=Universalsensor&amp;diff=29981</id>
		<title>Universalsensor</title>
		<link rel="alternate" type="text/html" href="http://wiki.fhem.de/w/index.php?title=Universalsensor&amp;diff=29981"/>
		<updated>2019-03-25T00:12:41Z</updated>

		<summary type="html">&lt;p&gt;Tom Major: Links auf neue 2018 Version des Universalsensors hinzugefügt, für Firmware, Schaltung und Platinenlayout.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Datei:Universalsensor-CC1101-Innen.jpg|200px|thumb|right|Universalsensor im Innengehäuse]]&lt;br /&gt;
[[Datei:Universalsensor-CC1101-Aussen.jpg|200px|thumb|right|Universalsensor im Außengehäuse]]&lt;br /&gt;
&lt;br /&gt;
== Übersicht ==&lt;br /&gt;
Die [[Universalsensor]]-Platine ist eine Hardwareplattform, um verschiedene Sensorwerte auch über unterschiedliche Übertragungsverfahren z.B. für die eigene Homeautomatisierung verfügbar zu machen.&lt;br /&gt;
&lt;br /&gt;
Hier werden die unterschiedliche Platinenlayouts, welche z.B. für einen Innensensor und einen Außensensor verwendet werden können, vorgestellt.&lt;br /&gt;
&lt;br /&gt;
Als Übertragungsmedien sind ein Funkmodul (CC1101) oder ein RS485 Transceiver (LT1785 oder kompatibel) vorgesehen.&lt;br /&gt;
&lt;br /&gt;
Mit dem Funkmodul ist eine Anbindung an Funksysteme im 868&amp;amp;nbsp;MHz oder auch 433&amp;amp;nbsp;MHz-Band möglich. Hiermit kann der Sensor z.B. in ein HomeMatic Funksystem integriert werden, aber auch andere Funksysteme sind über eine entsprechende Firmware realisierbar. Mit dem RS485 Transceiver ist z.B. auch eine Integration in das HomeMatic-Wired System möglich.&lt;br /&gt;
&lt;br /&gt;
Das Platinenlayout der Sensoren enthält zwei Pinleisten, welche Arduino-Kompatibel sind. Als Mikrocontroller ist ein Atmega 328p bestückt. Über diese Erweiterungsports können zusätzlich eigene Sensoren oder auch Aktoren angeschlossen werden, diese müssen dann aber über eine Erweiterung der bestehenden Firmware oder mit einer eigenen Firmware angesprochen werden.&lt;br /&gt;
&lt;br /&gt;
Die Spannungsversorgung erfolgt über zwei AA bzw. AAA Batterien. Damit eine möglichst gute Ausnutzung der Batteriekapazität erzielt wird und auch Sensoren mit 3,3&amp;amp;nbsp;V Spannungsversorgung benutzt werden können, kann ein MAX1724 Step-Up-Converter bestückt werden. Dieser stellt eine stabile Spannungsversorgung von 3,3&amp;amp;nbsp;V zur Verfügung. Als Mindest-Eingangsspannung sind hier dann lediglich 1,2&amp;amp;nbsp;V notwendig. Somit ist eine Versorgung auch aus nur einer Batteriezelle denkbar.&lt;br /&gt;
&lt;br /&gt;
Alternativ kann eine Spannungsversorgung über einen Schaltregler erfolgen. Diese Versorgung kommt bei der Bestückungsversion mit RS485-Transceiver zum Einsatz, aber auch bei Benutzung mit dem Funkmodul kann diese Spannungsversorgung eingesetzt werden.&lt;br /&gt;
&lt;br /&gt;
Der Schaltregler erlaubt einen recht breiten Eingangsspannungsbreich von 7&amp;amp;nbsp;V bis 24&amp;amp;nbsp;V. Außerdem steht damit intern zusätzlich zu den 3,3&amp;amp;nbsp;V eine Spannung von 5&amp;amp;nbsp;V zur Verfügung.&lt;br /&gt;
&lt;br /&gt;
== Innensensor ==&lt;br /&gt;
[[Datei:Universalsensor-CC1101-Innen platine.jpg|200px|thumb|right|Universalsensor-Platine für das Innengehäuse. Hier noch ohne Bestückungsoption für RS485 und ohne bestückten SHT10 (Temperatur / Luftfeuchte)]]&lt;br /&gt;
&lt;br /&gt;
Das Layout des Innensensors unterstützt standardmäßig folgende Sensorbestückung:&lt;br /&gt;
* Temperatur / Feuchte (SHT10)&lt;br /&gt;
* Temperatur / Luftdruck (BMP180)&lt;br /&gt;
* Helligkeit (TSL2561)&lt;br /&gt;
Zusätzlich können über die zwei Pinleisten eigene Sensoren z.B. über eine Erweiterungsplatine angeschlossen werden. Als Beispiel ist hier eine Firmwareversion genannt, bei der mehrere 1-Wire Sensoren an den Sensor angeschlossen und abgefragt werden können. Zusätzlich zu den unterschiedlichen bestückbaren Sensoren kann der Innensensor alternativ zum Funkmodul mit einem RS485 Transceiver bestückt werden. Als Spannungsversorgung steht eine Batterieversorgung (1,2-3&amp;amp;nbsp;V) oder eine Spannungsversorgung über einen Schaltregler (7-24&amp;amp;nbsp;V) zur Verfügung.&lt;br /&gt;
&lt;br /&gt;
== Außensensor ==&lt;br /&gt;
[[Datei:Universalsensor-CC1101-Aussen_platine.jpg|200px|thumb|right|Universalsensor-Platine für das Außengehäuse mit Beschreibung der I2C-Anschlussbelegung.]]&lt;br /&gt;
&lt;br /&gt;
Die Platine des Außensensors ist deutlich kompakter als die des Innensensors, daher ist in dieser Version derzeit nur das Funkmodul bestückbar. Andere Übertragungsverfahren wie z.B. RS485 müssten hier extern realisiert werden. Das Layout des Außensensors unterstützt standardmäßig folgende Sensorbestückung:&lt;br /&gt;
* Temperatur / Luftdruck (BMP180)&lt;br /&gt;
* Helligkeit (TSL2561)&lt;br /&gt;
Weitere Sensoren, z.B. ein SHT10 für Temperatur/Luftfeuchte, können über den nach außen geführten I2C-Bus angeschlossen werden. Natürlich existiert auch beim Außensensor die Möglichkeit, weitere Sensoren oder auch Aktoren über die beiden Pinleisten anzuschließen.&lt;br /&gt;
&lt;br /&gt;
{{Link2Forum|Topic=20620|Message=182690|LinkText=Dieser Forenbeitrag}} beschreibt, wie der SHT10 auch innerhalb eines Gehäuses benutzt werden kann.&lt;br /&gt;
&lt;br /&gt;
Um die Platine im Gehäuse zu fixieren, wird auf einer Seite des Batteriehalters ein kleiner Schaumstoffblock aufgeklebt (siehe nebenstehendes Foto)&lt;br /&gt;
&lt;br /&gt;
== Der Helligkeitssensor ==&lt;br /&gt;
[[Datei:SHT10_breakout.jpg|200px|thumb|right|SHT10 Breakout-Board für den Außensensor.]]&lt;br /&gt;
[[Datei:CC1101-Sensor-Außen_mit_Filterfolie.JPG|200px|thumb|right|Das Außengehäuse mit Filterfolie.]]&lt;br /&gt;
[[Datei:Innensensor_Loch_für_Acrylstab_Maße.jpg|200px|thumb|right|Bohrvorlage für den Acrylstab im Innengehäuse.]]&lt;br /&gt;
Der Helligkeitssensor braucht zum sinnvollen Einsatz natürlich die Möglichkeit, vom Umgebungslicht beleuchtet zu werden. Da der Sensor im Innengehäuse in der Nähe der Lüftungsschlitze sitzt, wird er dadurch bereits beleuchtet, allerdings fällt hier nur wenig Licht auf den Sensor. Daher ist bei dieser Messmethode die erreichbare Auflösung sehr gering.&lt;br /&gt;
&lt;br /&gt;
Die bessere Lösung ist es, in die Abdeckung des Sensorgehäuses ein 5&amp;amp;nbsp;mm großes Loch zu bohren. In das Loch wird ein kurzer Stift aus Acrylglas eingesetzt (siehe Bild mit der Bohrvorlage).  Achtung, das Loch ist in horizontaler Ausrichtung nicht genau mittig. Der Acrylstab hat nicht genau 5&amp;amp;nbsp;mm Durchmesser. Es sind 5,2 mm. Man kann dennoch ein 5 mm Loch bohren. Das Einschieben des Stabes in das Loch geht dann allerdings ziemlich schwer. Vor dem Einschieben kann man den Acrylstab an der Innenseite noch leicht anfasen. Dann lässt er sich leichter in das Loch schieben. Die Länge des Acrylstabes Beträgt 17&amp;amp;nbsp;mm.&lt;br /&gt;
&lt;br /&gt;
Im Außensensor ist die ausreichende Beleuchtung bereits durch die transparente Gehäuseoberseite gewährleistet. Allerdings wird der Sensor in direkter Sonneneinstrahlung übersteuern. Daher kann hier zwischen Sensor und Deckel eine Filterfolie eingelegt werden. Die getestete Filterfolie lässt dann nur noch etwa 25% des Lichtes durch. Dadurch ist eine Lage ausreichend, damit der Sensor auch im Sommer bei voller Sonneneinstrahlung nicht mehr übersteuert. Durch den bekannten Filterwert der Folie lässt sich so auch gut ein Umrechnungsfaktor für die Heligkeitsmessung in Lux z.B. in FHEM hinterlegen.&lt;br /&gt;
&lt;br /&gt;
Eine Testreihe mit der Folie im Vergleich mit einem kommerziellen Luxmeter hat den Faktor 0,265 ergeben. Mit Folie bekommt man mit einer Division durch 0,265 auf den aktuellen Lux-Wert:&lt;br /&gt;
:&amp;lt;code&amp;gt;$lux = $lum/0.265&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Um den Wert mit Folie unterhalb des Devices angezeigt zu bekommen, muss man hierfür ein userreading erstellen.&lt;br /&gt;
Die erfolgt mit folgendem Befehl:&lt;br /&gt;
:&amp;lt;code&amp;gt;attr Outdoor.Helligkeit userReadings luminosity2 { ReadingsVal(&amp;quot;Outdoor.Helligkeit&amp;quot;,&amp;quot;luminosity&amp;quot;,0)/0.265;;  }&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Der Devicename (hier im Beispiel &#039;&#039;Outdoor.Helligkeit&#039;&#039;) muss gegen den eigenen Devicenamen ausgetauscht werden.&lt;br /&gt;
&lt;br /&gt;
Werden zwei Folien benutzt muss der Wert von 0.265 angepasst werden.&lt;br /&gt;
&lt;br /&gt;
Nun ist es möglich, den richtigen Wert unter dem Reading &#039;&#039;luminosity2&#039;&#039; abzufragen.&lt;br /&gt;
&lt;br /&gt;
== Firmware ==&lt;br /&gt;
[[Datei:CC1101-Sensor_Firmwareupdate_mit_dem_Raspberry_Pi.jpg|200px|thumb|right|Firmwareupdate mit dem Raspberry Pi.]]&lt;br /&gt;
&lt;br /&gt;
Aktuell existieren für den Sensor drei verschiedene Firmwareversionen:&lt;br /&gt;
* [[HB-UW-Sen-THPL]] HB-UW-Sen-THPL-I, HB-UW-Sen-THPL-O (Version 0.15)&lt;br /&gt;
: HomeMatic-kompatibler Temperatur / Feuchte / Luftdruck / Helligkeitssensor für das  Innengehäuse oder Außengehäuse&lt;br /&gt;
* [https://github.com/TomMajor/SmartHome/tree/master/HB-UNI-Sensor1 HB-UNI-Sensor1]&lt;br /&gt;
: Neuauflage des Universalsensors in 2018 für Temperatur, Luftdruck, Luftfeuchte, Helligkeit mit neuer AskSinPP Bibliothek&lt;br /&gt;
* HWB-ONEWIRE (Experimentel)&lt;br /&gt;
: HomeMatic-Wired Kompatibles 1-Wire-Temperatursensor-interface&lt;br /&gt;
&lt;br /&gt;
HB-UW-Sen-THPL-I und HB-UW-Sen-THPL-O unterscheiden sich nur durch die Geräte-ID (F101 für HB-UW-Sen-THPL-I, F102 für HB-UW-Sen-THPL-O). Dadurch ist es möglich, dass die Sensoren z.B. in der CCU über ein eigenes Icon verfügen.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Configtaster&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Drückt man den Configtaster auf der Platine im Betrieb 1x, so startet man das [[HomeMatic_Devices_pairen|Pairing]]. Die LED fängt langsam an zu blinken. Drückt man den Taster nun nochmal, aber deutlich länger, blinkt die LED sehr schnell (jetzt loslassen). Jetzt kann der Sensor resettet werden. Dazu drückt man den Taster erneut, bis die LED ausgeht. Der Sensor hat sich nun zurückgesetzt.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Firmwarekonfiguration&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Auf einige Einstellungen des Sensors lässt sich über die Kommandozeile Einfluss nehmen. Dazu &lt;br /&gt;
:&amp;lt;code&amp;gt;set &amp;lt;sensorname&amp;gt; regSet &amp;lt;register&amp;gt; &amp;lt;wert&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
eingeben. Die folgenden Register stehen dabei zur Verfügung:&lt;br /&gt;
;altitude&lt;br /&gt;
:Die Höhe des Sensors über NN in Metern. Ist ein Luftdrucksensor vorhanden, dann wird der ermittelte Druck automatisch in Druck auf NN umgerechnet.&lt;br /&gt;
;burstRx (noch experimentell)&lt;br /&gt;
:Hierbei bleibt der Sensor dauerhaft empfangsbereit (bei höherem Batterieverbrauch). Damit soll es möglich sein, die Sensorwerte on demand vom Sensor anzufordern.&lt;br /&gt;
;ledMode&lt;br /&gt;
:&#039;&#039;on&#039;&#039; die LED leuchtet, wenn der Sensor Daten überträgt, &#039;&#039;off&#039;&#039; die LED leuchtet beim Übertragen der Daten nicht&lt;br /&gt;
;lowBatLimitTHPL&lt;br /&gt;
:Batteriespannung, ab der die Warnung für den Batteriewechsel ausgegeben wird.&lt;br /&gt;
;pairCentral&lt;br /&gt;
:???&lt;br /&gt;
;transmDevTryMax&lt;br /&gt;
:Anzahl der Wiederholungssendungen, sofern kein ACK empfangen wurde.&lt;br /&gt;
&lt;br /&gt;
[[Datei:Universalsensor-RS485_mit_1-Wire-Sensoren.jpg|200px|thumb|right|Universalsensor-RS485-Version. Hier mit angeschlossenen 1-Wire Temperatursensoren]]&lt;br /&gt;
&lt;br /&gt;
[[Datei:Universalsensor-RS485-Innen_Platine.jpg|200px|thumb|right|Universalsensor-RS485-Version. Hier mit optional bestückten SHT10 (Temperatur / Luftfeuchte), BMP180 (Luftdruck), TSL2561 (Helligkeit)]]&lt;br /&gt;
&lt;br /&gt;
== OTA (OverTheAir) Firmwareupdate ==&lt;br /&gt;
Die Firmware des Sensor lässt sich, sofern er den so genannten OTAU-Bootloader besitzt, einfach per Funk updaten (OTA-Update = &#039;&#039;&#039;O&#039;&#039;&#039;ver &#039;&#039;&#039;T&#039;&#039;&#039;he &#039;&#039;&#039;A&#039;&#039;&#039;ir, also Update per Funk).&lt;br /&gt;
&lt;br /&gt;
Das Firmwareupdate funktioniert aktuell nur mit [[CUL]]/[[COC]] oder [[HM-CFG-USB USB Konfigurations-Adapter|HM-CFG-USB]] unter Linux ([[HomeMatic_Firmware_Update#Firmware_Update_mit_CUL.2FHM-CFG-USB_unter_FHEM|Update mit CUL oder HM-CFG-USB unter Linux]]), mit dem &amp;quot;HomeMatic Firmware Update Tool&amp;quot; unter Windows ([[HomeMatic_Firmware_Update#Firmware_Update_mit_HM-CFG-USB_unter_Windows|Update mit HM-CFG-USB unter Windows]]) oder mit einer CCU2. Ein &amp;lt;code&amp;gt;set sensorname fwUpdate dateiname&amp;lt;/code&amp;gt; in der Kommandozeile von FHEM funktioniert derzeit noch nicht.&lt;br /&gt;
&lt;br /&gt;
Für das Update mit flash-ota ist folgendes zu machen:&lt;br /&gt;
# [[HomeMatic_Firmware_Update#Firmware_Update_mit_CUL.2FHM-CFG-USB_unter_FHEM|flash-ota herunterladen und installieren]].&lt;br /&gt;
# Firmware aus dem ZIP rausholen: https://github.com/kc-GitHub/Wettersensor/archive/v0.14_beta.zip&lt;br /&gt;
# flash-ota starten. Z.B. so: &amp;lt;code&amp;gt;sudo ./flash-ota -c /dev/ttyACM0 -f &amp;lt;firmware-file.eq3&amp;gt; -s &amp;lt;seriennummer&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
# eine Batterie aus dem Sensor heraus nehmen, Configtaste drücken und gedrückt halten, Batterie wieder einlegen während die Configtaste weiter gedrückt bleibt.&lt;br /&gt;
# Jetzt sollte der Updateprozess starten.&lt;br /&gt;
# Sensor mit FHEM neu pairen. Dann erscheint auch die neue Firmwareversion in FHEM.&lt;br /&gt;
&lt;br /&gt;
== Weitere Firmwareupdate-Möglichkeiten ==&lt;br /&gt;
Alternativ kann der Atmega328p auf der Platine mit einem Arduino-kompatiblen Bootloader ausgerüstet werden.&lt;br /&gt;
Damit lässt sich dann das Firmwareupdate per USB-UART-Adapter oder auch über den UART-Anschluss von einem [[Raspberry Pi]] einspielen.&lt;br /&gt;
&lt;br /&gt;
== RS485-Version mit 1-Wire Temperatursensoren ==&lt;br /&gt;
Hier ist eine experimentelle Firmware, mit der man derzeit die RS485-Version des Sensors in ein 1-Wire - HomeMatic-Wired Interface &amp;quot;verwandeln&amp;quot; kann. Weiteres ist unter [[HWB-1WIRE-TMP10]] nachzulesen.&lt;br /&gt;
&lt;br /&gt;
== Inbetriebnahme ==&lt;br /&gt;
# Das FHEM-Modul für den Sensor muss installiert werden. Dazu folgenden Befehl in das FHEM-Befehlsfeld eingeben: &amp;lt;br&amp;gt;  &amp;lt;code&amp;gt;update HMConfig_SenTHPL.pm &amp;lt;nowiki&amp;gt;https://raw.githubusercontent.com/kc-GitHub/Wettersensor/master/Contrib/control-fhem.txt&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
# Anschließend muss FHEM neu gestartet werden: &amp;lt;code&amp;gt;shutdown restart&amp;lt;/code&amp;gt;&lt;br /&gt;
# Batterien in den Sensor einlegen&lt;br /&gt;
# [[HomeMatic_Devices_pairen|CUL in den Pairingmodus schalten]]&lt;br /&gt;
# Configtaster auf dem Universalsensor drücken&lt;br /&gt;
&lt;br /&gt;
== Zurücksetzen auf Werkseinstellungen ==&lt;br /&gt;
# Configtaster drücken -&amp;gt; LED blinkt&lt;br /&gt;
# Configtaster lange drücken (ca. 5-10 sek.) -&amp;gt; LED blinkt schnell&lt;br /&gt;
# Configtaster noch mal lange drücken (ca. 5-10 sek.) -&amp;gt; LED blinkt kurz und hört dann auf&lt;br /&gt;
&lt;br /&gt;
== Links ==&lt;br /&gt;
* [https://github.com/kc-GitHub/Wettersensor Firmware der CC1101 (Funk) Version]&lt;br /&gt;
* [https://github.com/kc-GitHub/HM485-Lib/tree/thorsten Firmware der RS485 (Wired) Version]&lt;br /&gt;
* [https://github.com/kc-GitHub/Wettersensor/raw/master/Schematic/Schematic-RF.pdf Schaltplan und Platinenlayout der CC1101 (Funk) Version]&lt;br /&gt;
* [https://github.com/kc-GitHub/HM485-Lib/raw/thorsten/Schematic/Schematic-WIRED.pdf Schaltplan und Platinenlayout der RS485 (Wired) Version]&lt;br /&gt;
* [https://github.com/TomMajor/SmartHome/tree/master/HB-UNI-Sensor1 Firmware der 2018 Version]&lt;br /&gt;
* [https://github.com/TomMajor/SmartHome/tree/master/PCB/Sensor_PLHT Schaltplan und Platinenlayout der 2018 Version]&lt;br /&gt;
* {{Link2Forum|Topic=20620|LinkText=Thread im FHEM-Forum}}&lt;br /&gt;
* {{Link2Forum|Topic=22952|LinkText=Thread im FHEM-Forum zur Entwicklung der Wired-Firmware}}&lt;br /&gt;
[[Kategorie:HomeBrew]]&lt;br /&gt;
[[Kategorie:HomeMatic Components]]&lt;br /&gt;
[[Kategorie:868MHz]]&lt;/div&gt;</summary>
		<author><name>Tom Major</name></author>
	</entry>
</feed>