XiaomiBTLESens: Unterschied zwischen den Versionen

Aus FHEMWiki
K (→‎Readings: aus commandref)
K (Kategorie Bluetooth ergänzt)
 
(11 dazwischenliegende Versionen von 5 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
{{Infobox Modul
{{Infobox Modul
|ModPurpose=Auslesen eines Xiaomi Flower Sensors
|ModPurpose=Auslesen unterstützter Xiaomi BTLE Sensoren
|ModType=d
|ModType=d
|ModForumArea=Sonstige Systeme
|ModForumArea=Sonstige Systeme
|ModTechName=74_XiaomiFlowerSens.pm
|ModTechName=74_XiaomiBTLESens.pm
|ModOwner=CoolTux <br/>({{Link2FU|13684|Forum}} / [[Benutzer:CoolTux|Wiki]])
|ModOwner=CoolTux <br/>({{Link2FU|13684|Forum}} / [[Benutzer:CoolTux|Wiki]])
}}
}}


==Beschreibung==
==Beschreibung==
Mit diesem Modul ist es möglich den XiaomiFlowerMonitor (Device [[Xiaomi Flower Sensor]]) auszulesen und die entsprechenden Daten als Readings darzustellen.
Mit diesem Modul ist es möglich, diverse BTLE Sensoren der Firma Xiaomi auszulesen und die entsprechenden Daten als Readings darzustellen, z. B. den XiaomiFlowerMonitor (XiaomiFlowerSens).
{{Hinweis|Das Modul ist der Nachfolger und eine Verallgemeinerung des '''''bisherigen Moduls XiaomiFlowerSens''''' (74_XiaomiFlowerSens). Letzteres ist weiter erreichbar, wird aber nicht mehr weiterentwickelt oder fehlerbereinigt.}}


Voraussetzung zur Verwendung des Modules ist:
== Voraussetzung zur Verwendung des Modules ==
Auf dem Rechner wird
* libjson-perl
* libjson-perl
* bluez (gatttool und hcitool)
* bluez (gatttool und hcitool)
vorausgesetzt.


Mittels <code>hcitool lescan</code> bekommt man die BT-MAC, die benötigte Bluetooth MAC Adresse.
Für die Konfiguration wird die Bluetooth-Adresse (BT-MAC) des jeweiligen Sensors benötigt, die mit Hilfe von
<code>hcitool lescan</code>  
aus der Liste der vom Rechner erkannten aktiven Bluetooth Low Energy Geräten der Umgebung herausgefunden werden kann. Die Identifikation eines konkreten Sensors kann durch Vergleich der Liste mit und ohne aktivem Sensor (Batterie entfernen!) geschehen.
{{Hinweis|Auf einem Debian Wheezy scheint es Probleme mit dem Bluetooth Stack zu geben. Selbst wenn man ein aktuelles BT 5.x selbst kompiliert und installiert gibt spätestens das gatttool keine Daten mehr aus. Es sollte daher unbedingt auf Debian Jessie gewechselt werden (empfohlen wird eine Neuinstallation).}}


 
==Definition==
===Definition===
<code>define <name> XiaomiBTLESens <BT-MAC></code>
<code>define <name> XiaomiFlowerSens <BT-MAC></code>


'''Beispiel:'''
'''Beispiel:'''
:<code>define Weihnachtskaktus XiaomiBTLESens C4:7C:8D:62:42:6F</code>


<code>define Weihnachtskaktus XiaomiFlowerSens C4:7C:8D:62:42:6F</code>
Diese Anweisung erstellt ein XiaomiBTLESens Device mit dem Namen Weihnachtskaktus und der BT-MAC C4:7C:8D:62:42:6F.
 
Als nächstes sollte auf jeden Fall das Attribut model gesetzt werden, um das korrekte Gerät anzusprechen.
Diese Anweisung erstellt ein XiaomiFlowerSens Device mit dem Namen Weihnachtskaktus und der BT MAC C4:7C:8D:62:42:6F.
 


===Readings===
==Readings==
* state - aktueller Status des Device.
* state - aktueller Status des Device.
* battery - Status der Batterie in Abhängigkeit des batteryLevel Readings.
* battery - Status der Batterie in Abhängigkeit des batteryLevel Readings.
Zeile 37: Zeile 41:
* temperature - Umgebungstemperatur
* temperature - Umgebungstemperatur


===Set===
==Set==
* statusRequest - einmaliges abrufen der Daten vom Sensor
* devicename - setzt einen Devicenamen


==Get==
* sensorData - aktive Abfrage der Sensors Werte
* devicename - liest den Devicenamen aus
* firmware - liest die Firmeware aus


===Attribute===
==Attribute==
* interval - Intervallzeit in Sekunden, nach der der nächste automatische Datenabruf erfolgen soll
* interval - Intervallzeit in Sekunden, nach der der nächste automatische Datenabruf erfolgen soll
* disable - deaktiviert die den Abruf
* model - Auswahl eines unterstützten Gerätes
* minFertility - min Fruchtbarkeits-Grenzwert für ein Ereignis minFertility low  
* disable - deaktiviert die Kommunikation mit dem Gerät, den Abruf von Daten
* maxFertility - max Fruchtbarkeits-Grenzwert für ein Ereignis maxFertility high  
* disabledForIntervals - deaktiviert das Gerät für den angegebenen Zeitintervall (13:00-18:30 or 13:00-18:30 22:00-23:00)
* minMoisture - min Feuchtigkeits-Grenzwert für ein Ereignis minMoisture low  
* minFertility - min. Fruchtbarkeits-Grenzwert für ein Ereignis minFertility low  
* maxMoisture - max Feuchtigkeits-Grenzwert für ein Ereignis maxMoisture high  
* maxFertility - max. Fruchtbarkeits-Grenzwert für ein Ereignis maxFertility high  
* minTemp - min Temperatur-Grenzwert für ein Ereignis minTemp low  
* minMoisture - min. Feuchtigkeits-Grenzwert für ein Ereignis minMoisture low  
* maxTemp - max Temperatur-Grenzwert für ein Ereignis maxTemp high  
* maxMoisture - max. Feuchtigkeits-Grenzwert für ein Ereignis maxMoisture high  
* minlux - min Helligkeits-Grenzwert für ein Ereignis minlux low  
* minTemp - min. Temperatur-Grenzwert für ein Ereignis minTemp low  
* maxlux - max Helligkeits-Grenzwert für ein Ereignis maxlux high  
* maxTemp - max. Temperatur-Grenzwert für ein Ereignis maxTemp high  
* minlux - min. Helligkeits-Grenzwert für ein Ereignis minlux low  
* maxlux - max. Helligkeits-Grenzwert für ein Ereignis maxlux high  
*:Beispiele für min/max-Ereignisse:
*:Beispiele für min/max-Ereignisse:
*::2017-03-16 11:08:05 XiaomiFlowerSens Dracaena minMoisture low
*::2017-03-16 11:08:05 XiaomiFlowerSens Dracaena minMoisture low
*::2017-03-16 11:08:06 XiaomiFlowerSens Dracaena maxTemp high
*::2017-03-16 11:08:06 XiaomiFlowerSens Dracaena maxTemp high
* sshHost - FQDN oder IP-Adresse eines entfernten SSH-Systems. Das SSH-System ist auf eine Zertifikat basierte Authentifizierung zu konfigurieren. Am elegantesten geschieht das mit einer .ssh/config Datei auf dem SSH-Client.
* sshHost - FQDN oder IP-Adresse eines entfernten SSH-Systems. Das SSH-System ist auf Keyfile basierte Authentifizierung zu konfigurieren. Am elegantesten geschieht das mit einer .ssh/config Datei auf dem SSH-Client.
 
[[Kategorie:Bluetooth]]

Aktuelle Version vom 21. Januar 2022, 12:16 Uhr

XiaomiBTLESens
Zweck / Funktion
Auslesen unterstützter Xiaomi BTLE Sensoren
Allgemein
Typ Gerätemodul
Details
Dokumentation EN / DE
Support (Forum) Sonstige Systeme
Modulname 74_XiaomiBTLESens.pm
Ersteller CoolTux
(Forum / Wiki)
Wichtig: sofern vorhanden, gilt im Zweifel immer die (englische) Beschreibung in der commandref!


Beschreibung

Mit diesem Modul ist es möglich, diverse BTLE Sensoren der Firma Xiaomi auszulesen und die entsprechenden Daten als Readings darzustellen, z. B. den XiaomiFlowerMonitor (XiaomiFlowerSens).

Info blue.png
Das Modul ist der Nachfolger und eine Verallgemeinerung des bisherigen Moduls XiaomiFlowerSens (74_XiaomiFlowerSens). Letzteres ist weiter erreichbar, wird aber nicht mehr weiterentwickelt oder fehlerbereinigt.


Voraussetzung zur Verwendung des Modules

Auf dem Rechner wird

  • libjson-perl
  • bluez (gatttool und hcitool)

vorausgesetzt.

Für die Konfiguration wird die Bluetooth-Adresse (BT-MAC) des jeweiligen Sensors benötigt, die mit Hilfe von hcitool lescan aus der Liste der vom Rechner erkannten aktiven Bluetooth Low Energy Geräten der Umgebung herausgefunden werden kann. Die Identifikation eines konkreten Sensors kann durch Vergleich der Liste mit und ohne aktivem Sensor (Batterie entfernen!) geschehen.

Info blue.png
Auf einem Debian Wheezy scheint es Probleme mit dem Bluetooth Stack zu geben. Selbst wenn man ein aktuelles BT 5.x selbst kompiliert und installiert gibt spätestens das gatttool keine Daten mehr aus. Es sollte daher unbedingt auf Debian Jessie gewechselt werden (empfohlen wird eine Neuinstallation).


Definition

define <name> XiaomiBTLESens <BT-MAC>

Beispiel:

define Weihnachtskaktus XiaomiBTLESens C4:7C:8D:62:42:6F

Diese Anweisung erstellt ein XiaomiBTLESens Device mit dem Namen Weihnachtskaktus und der BT-MAC C4:7C:8D:62:42:6F. Als nächstes sollte auf jeden Fall das Attribut model gesetzt werden, um das korrekte Gerät anzusprechen.

Readings

  • state - aktueller Status des Device.
  • battery - Status der Batterie in Abhängigkeit des batteryLevel Readings.
  • batteryLevel - Füllstand der Batterie in Prozent.
  • fertility - Nährstoffgehalt des Pflanzenbodens (Dünger) - Bodenleitfähigkeit
  • firmware - aktuelle Firmware auf dem Device
  • lux - aktuelle Lichtintensität
  • moisture - Wassergehalt (Feuchtigkeit) des Pflanzenbodens
  • temperature - Umgebungstemperatur

Set

  • devicename - setzt einen Devicenamen

Get

  • sensorData - aktive Abfrage der Sensors Werte
  • devicename - liest den Devicenamen aus
  • firmware - liest die Firmeware aus

Attribute

  • interval - Intervallzeit in Sekunden, nach der der nächste automatische Datenabruf erfolgen soll
  • model - Auswahl eines unterstützten Gerätes
  • disable - deaktiviert die Kommunikation mit dem Gerät, den Abruf von Daten
  • disabledForIntervals - deaktiviert das Gerät für den angegebenen Zeitintervall (13:00-18:30 or 13:00-18:30 22:00-23:00)
  • minFertility - min. Fruchtbarkeits-Grenzwert für ein Ereignis minFertility low
  • maxFertility - max. Fruchtbarkeits-Grenzwert für ein Ereignis maxFertility high
  • minMoisture - min. Feuchtigkeits-Grenzwert für ein Ereignis minMoisture low
  • maxMoisture - max. Feuchtigkeits-Grenzwert für ein Ereignis maxMoisture high
  • minTemp - min. Temperatur-Grenzwert für ein Ereignis minTemp low
  • maxTemp - max. Temperatur-Grenzwert für ein Ereignis maxTemp high
  • minlux - min. Helligkeits-Grenzwert für ein Ereignis minlux low
  • maxlux - max. Helligkeits-Grenzwert für ein Ereignis maxlux high
    Beispiele für min/max-Ereignisse:
    2017-03-16 11:08:05 XiaomiFlowerSens Dracaena minMoisture low
    2017-03-16 11:08:06 XiaomiFlowerSens Dracaena maxTemp high
  • sshHost - FQDN oder IP-Adresse eines entfernten SSH-Systems. Das SSH-System ist auf Keyfile basierte Authentifizierung zu konfigurieren. Am elegantesten geschieht das mit einer .ssh/config Datei auf dem SSH-Client.