Archiv der Kategorie: osbn

[fhem] Icons nicht klickbar

Als ich die erste Funksteckdose im FHEM angelegt hatte, sah die Konfiguration wie folgt aus:

define Licht_Telefon dummy
attr Licht_Telefon eventMap on:an off:aus
attr Licht_Telefon room Flur

Die Steckdosen werden zur Zeit alle zeitgesteuert geschaltet und somit ist mir erst spät aufgefallen, das die Icons nach einem Update nicht mehr klickbar waren.

Damit die Steckdose wieder über das Icon ein und ausgeschaltet werden können, wird ein weiteres Attribute benötigt:
attr Licht_Telefon devStateIcon an:on:off aus:off:on

Die Werte an:on:off setzen sich wie folgt zusammen

an – Wenn der Status an ist, greifen die nachkommenden Werte
on – legt das zu verwendende Icon fest
off – Status der beim klicken gesetzt wird

Insgesamt sieht es bei mir jetzt so aus

define Licht_Telefon dummy
attr Licht_Telefon eventMap on:an off:aus
attr Licht_Telefon devStateIcon an:on:off aus:off:on
attr Licht_Telefon room Flur

Als ich die Attribute über den eingebauten Editor hinterlegt hatte und speicherte, kam es zu folgender Fehlermeldung:

unknown attribute devStateIcon

Die Zeile selbst war korrekt, denn wenn ich über das Eingabefeld im webfrontend „attr Licht_Telefon devStateIcon an:on:off aus:off:on“ absendete, kam es zu keiner Fehlermeldung und es funktionierte.

Nach einem Neustart des fhem, waren die Icons jedoch klickbar so wie es laut der Konfiguration sein sollte.

Hilfe bei dem Problem bekam ich im übrigen über das FHEM Forum.

Isc-dhcp-server startet nicht

Ein Kollege brachte mir seinen Raspberry Pi vorbei, auf dem er raspbmc installiert hatte. Zusätzlich richtete er ihn als Access point ein, jedoch hatte seit kurzem das Problem, das der isc-dhcp-server nicht mehr startete.

Beim manuellen starten über die Kommandozeile kam folgendes:
/etc/init.d/isc-dhcp-server start
[FAIL] Starting ISC DHCP server: dhcpd[....] check syslog for diagnostics. ... failed!
failed!

Zunächst schaute ich in die /var/log/syslog

Nov 16 20:42:19 raspbmc dhcpd: For info, please visit https://www.isc.org/softw>
Nov 16 20:42:19 raspbmc dhcpd: Wrote 2 leases to leases file.
Nov 16 20:42:19 raspbmc dhcpd:.
Nov 16 20:42:19 raspbmc dhcpd: No subnet declaration for wlan1 (no IPv4 address>
Nov 16 20:42:19 raspbmc dhcpd: ** Ignoring requests on wlan1. If this is not w>
Nov 16 20:42:19 raspbmc dhcpd: you want, please write a subnet declaration
Nov 16 20:42:19 raspbmc dhcpd: in your dhcpd.conf file for the network segme>
Nov 16 20:42:19 raspbmc dhcpd: to which interface wlan1 is attached. **
Nov 16 20:42:19 raspbmc dhcpd:.
Nov 16 20:42:19 raspbmc dhcpd:.
Nov 16 20:42:19 raspbmc dhcpd: Not configured to listen on any interfaces!

Um einen Fehler in der Konfiguration auszuschließen, überprüfte ich die /etc/default/isc-dhcp-server, die /etc/network/interfaces und /etc/dhcp/dhcpd.conf.
Einen Fehler konnte ich nicht finden.
Bei ifconfig fiel mir jedoch auf, das das WLAN interface nicht die zugewiesene IP Adresse bekommen hatte.
Nach einem /etc/init.d/network restart auf der Kommandozeile, war die konfigurierte IP Adresse zugewiesen und auch der DHCP Server konnte gestartet werden.

Workaround

Nach einer Recherche im Internet fand ich heraus, das ich nicht der einzigste war der das Problem hatte. In einem Forum stieß ich auf einen Eintrag, das beim Hochfahren des Systems sich die interfaces und der DHCP Server in die quere kommen. Eine konkrete Lösung für das Problem fand ich jedoch nicht, also habe ich als workaround folgendes in der /etc/rc.local vor exit 0 eingetragen.

ifdown wlan1
ifup wlan1
sleep 20
service isc-dhcp-server start

Falls jemand eine andere Lösung hat, immer her damit.

[Fhem] am Wochenende bleibt die Lampe aus

Um am frühen Morgen geweckt zu werden gibt es Wecker, Radios, Handys, Kinder oder ein Aufwachlicht. Jedoch möchte der ein oder Andere am Wochenende gerne länger schlafen.

Wenn ein Aktor am Wochenende (Samstag/Sonntag) zu einer anderen Zeit beziehungsweise gar nicht geschaltet werden soll, kann über die Variable $we eine entsprechende Abfrage erstellt werden. Am Wochenende hat die Variable den Wert 1, unter der Woche den Wert 0.

Folgende Zeile schaltet die Lampe um 6:30 ein, jedoch nicht am Wochenende:


define Licht_SchlafzimmerAn at *06:30 { if ((!$we)) { fhem "set Licht_Schlafzimmer on" } }

Temperatursensoren in FHEM einbinden

Die OneWire Temperatursensoren kann ich wie hier beschrieben, bereits über die Kommandozeile auslesen. Um die Sensoren in fhem einzubinden würde man normalerweise OWFS nutzen, jedoch kann OWFS keine Sensoren direkt am GPIO Port auslesen. Möchte man auf OWFS nicht verzichten, müßten die Dallas Sensoren über ein DS 2482-100S ausgelesen werden.

Eine Alternative wäre ein Shellscript, welches die Temperatur ausliest und in fhem eingebunden werden kann.

Ich habe mich jedoch für das Modul 58_GPIO4.pm entschieden, welches man hier runterladen kann:
https://github.com/mhop/fhem-mirror/blob/master/contrib/58_GPIO4.pm

Das Modul muss in dem Ordner FHEM abgelegt und fhem neugestartet werden.

In der fhem.cfg reicht dann folgendes aus, damit die Werte über die Weboberfläche ausgegeben werden:


# Sensor definieren
define FlurTemp GPIO4 28-000004b91510
# Model des Sensors angeben
attr FlurTemp model DS18B20
# ensprechendes Icon setzen
attr FlurTemp icon icoKLIMA
# Raum zuweisen
attr FlurTemp room Flur

Temperatursensor in fhem

Temperatursensor in fhem

[Fhem] wenn sunset zu spät ist

Wie ich hier bereits geschrieben habe, kann man die Funksteckdosen nach Sonnenaufgang (sunrise) und Sonnenuntergang(sunset) schalten.

Nur leider ist es bereits dunkel, wenn die Steckdose und die damit verbundene Lampe eingeschaltet wird. Bis dahin bin ich entweder über einen der Hunde, Kinderspielzeug oder die eigenen Füße gefallen. Obwohl ich glaube, das bei den eigenen Füßen auch nicht das Licht hilft.

Auf jeden Fall ist es ganz einfach, die Steckdose vor dem Sonnenuntergang zu schalten.

define LampeFlurAn at *{sunset(-3600,"17:00","22:00")} set LampeFlur on

Mit der Angabe -3600 (Zeitangabe in Sekunden) wird die Steckdose, in diesem Fall eine Stunde, vor dem Sonnenuntergang eingeschaltet.