Zum Ende der Metadaten springen
Zum Anfang der Metadaten

Sie zeigen eine alte Version dieser Seite an. Zeigen Sie die aktuelle Version an.

Unterschiede anzeigen Seitenhistorie anzeigen

« Vorherige Version anzeigen Version 8 Nächste Version anzeigen »

Modul-Update

Um die Module auf den aktuellsten Stand zu bringen:

update

Logging reduzieren

Am Raspberry Pi (auf SD-Karte) ist es besser, wenn nicht zu viel geschrieben wird:

attr global verbose 1

1 ist nur Fehler. Vor der fertigen Einrichtung kann man den Verbose-Level auf Standard (3) lassen. Die Levels: https://wiki.fhem.de/wiki/Verbose

Webschnittstelle von FHEM

Beispiele - Zugriff von Loxone auf FHEM

Einzelnen Status auslesen

http://<fhem>:8083/fhem&cmd={Value("Haustuer")}&XHR=1

URL-Encoded:

http://<fhem>:8083/fhem&cmd=%7BValue%28%22Haustuer%22%29%7D&XHR=1


Rückgabe
closed

 

Dies kann in einem Virtuellen HTTP-Eingang und Eingangsbefehl abgefragt werden (ist aber eher aufwändig für einen einzelnen Wert). Da der virtuelle Eingangsbefehl keine Strings interpretieren kann, muss dort mit \1 der ASCII-Code des ersten Zeichens interpretiert und mit einem Status-Baustein ausgewertet werden. 

 

Gesamten Status abfragen

Diese Abfrage gibt eine JSON-Liste aller EnOcean-Sensoren aus. (Filter TYPE=EnOcean - siehe FHEM-Filter)

http://<fhem>:8083/fhem&cmd=JSONList2 TYPE=EnOcean STATE&XHR=1

URL-Encoded

http://<fhem>:8083/fhem&cmd=JSONList2%20TYPE=EnOcean%20STATE&XHR=1

Rückgabe
{
  "Arg":"TYPE=EnOcean STATE",
  "Results": [
  {
    "Name":"Fenster_Dusche",
    "Internals": {      "STATE": "closed"    }
  },
  {
    "Name":"Haustuer",
    "Internals": {      "STATE": "closed"    }
  }  ],
  "totalResultsReturned":2
}

Dies kann mit einem Virtuellen HTTP-Eingang und Eingangsbefehlen für jeden Sensor abgerufen werden.

Einzelnen Status setzen

http://<fhem>:8083/fhem?cmd.Haustuer=set%20Haustuer%20open

Setzt den Status der Haustür auf "offen". Auf gleiche Weise kann ein Ausgang von FHEM gesetzt werden.

Der Aufruf kann durch einen Loxone Virtuellen Ausgangsbefehl erfolgen.

Beispiele - Zugriff von FHEM auf Loxone

Statusänderung von FHEM an Loxone senden

Beispiel Fenstergriff mit drei Positionen (geschlossen, offen, gekippt).

In der FHEM-Config wird für jede Stellung ein Notify mit einem http-Kommando hinterlegt. In Loxone ist ein virtueller Eingang Eno_Dusche_Fenster (analog) angelegt. Mit einem Statusbaustein wird der Wert des virtuellen Eingangs (0, 1, 2) ausgewertet. 

define Fenster_Dusche_closed notify Fenster_Dusche:closed.*  "curl http://admin:admin@miniserver/dev/sps/io/Eno_Dusche_Fenster/0"
define Fenster_Dusche_open notify Fenster_Dusche:open.*  "curl http://admin:admin@miniserver/dev/sps/io/Eno_Dusche_Fenster/1"
define Fenster_Dusche_tilted notify Fenster_Dusche:tilted.*  "curl http://admin:admin@miniserver/dev/sps/io/Eno_Dusche_Fenster/2"

Um variable Werte (z.B. Temperaturen von FHEM an Loxone zu übergeben kann ein notify in dieser Art verwendet werden:

define Temperatur2Lox notify Heizung:Temp-Aussen:.*  "curl http://admin:admin@miniserver/dev/sps/io/Aussentemperatur/$EVTPART1"

Enocean und FHEM

Wenn EnoceanPi nicht erkannt wird

Einlernen eines Enocean Sensors

set <Device> teach <time in sec>

Beispiel: 

set TCM_ESP3_0 teach 30

Schaltet FHEM in den Lernmodus. Beim Betätigen des Sensors (bzw. beim Drücken einer Lerntaste, sofern verfügbar) wird der Enocean-Sensor in FHEM eingelernt und automatisch eine Konfiguration angelegt.

Umbenennen eines Gerätes

Enocean-Geräte werden in FHEM mit deren Seriennummer angelegt. Um den Sensor einen sprechenden Namen zu geben, folgenden Befehl verwenden:

rename <Alter Name> <Neuer Name>

Dabei wird der Sensor in der gesamten fhem-Konfiguration umbenannt.

"Loxone-RGB" in FHEM-RGB umrechnen

Gemeint ist die Loxone-RGB-Angabe aus den Lichtbausteinen, z.B. 100100100 umrechnen in HEX-Angaben (FFFFFF) für FHEM.

FHEM-Einrichtung

Aus einem Template ein 99_myUtils.pm erzeugen und darin an die vorgesehene Stelle folgende Funktion einfügen:

# Loxone RGB in HEX-RGB umrechnen 
sub percent2rgb($)            
{                             
  my($percent) = @_;          
                              
  # my($r,$g,$b) = ($percent =~ m/(\d\d\d)(\d\d\d)(\d\d\d)/);
  my $r = substr $percent, -3;
  my $g = substr $percent, -6, 3;
  my $b = substr $percent, -9, 3;
                            
  return sprintf( "%02X%02X%02X", $r*2.55+0.5, $g*2.55+0.5, $b*2.55+0.5 );
}

Aufruf aus Loxone

Beispielsweise, für WifiLight (Farbwechsel in 3 Sekunden)

HTTP
set PR_LED RGB {(percent2rgb('<v>'))} 3
  • Keine Stichwörter