Zwei Leuchten mit einem Taster bedienen ohne Cloud

  • Hallo,

    ich möchte Euch an die Realisierung meines Projektes teilhaben lassen. Bitte bedenkt, dass ich Anfänger bin,

    die Eine oder Andere Vorgehensweise sicher anders gelöst werden könnte, ich habe es eben zu diesem Zeitpunkt

    nicht besser gewusst. Gern können Tipps/Verbesserungen vorgeschlagen werden.

    Ausgangssituation:

    • LED-Hängeleuchte über den Küchentisch,
    • Lichtleiste unter der Arbeitsplatte zur Beleuchtung der Herd-Schaltknöpfe,
    • Gewöhnlicher Lichtschalter.

    Ziel:

    • Beide Leuchten über einen einzigen Wand-Taster unabhängig voneinander zuschaltbar machen.
    • Das Ganze ohne MQTT, Broker oder Cloud.

    Es gibt WIFI-Lichtschalter für dieses Vorhaben, ich entschied mich jedoch das zu nehmen was ich zuhause hatte,

    einen Shelly 1 und 2 WiFi Magic Home LED-Controller, lediglich einen Taster habe ich mir noch besorgt.

    Die LED-Hängeleuchte war von mir bereits mit einem Trafo und Tasmota-geflashten Magic Home ergänzt worden.

    Die Leuchte wurde mittels Schaltwippe zugeschaltet. Licht aus, klar, Trafo stromlos und das Tasmota-Modul

    war nicht mehr erreichbar. Problem war, dass die Verdrahtung der Leuchte, 3-Adrig, nicht mehr hergab.

    Es wäre bestimmt möglich gewesen den „Erdleiter“ zu einem Schaltsignal zu machen,

    wollte aber da, aus Sicherheitsgründen vielleicht, nichts ändern.

    Zuvor:

    Änderung der Verdrahtung:

    Hängeleuchte hat nun Dauerstrom, die Anschlüsse des Shelly 1 „I“ und „O“ sind nicht genutzt/verdrahtet:


    Vorbereitung :

    • Shelly 1, Tasmota geflasht, Template „Shelly 1“, GPIO5 => Switch1n (68), GPIO4 => Relay1 (21)

    wobei ein anderer GPIO genutzt werden kann damit das Relay am Shelly, das eigentlich nicht genutzt wird,

    und nicht unbedingt angesprochen werden muss („Klick, Klack“).

    • Beide Magic Home Tasmota geflasht, Template „Generic (18)“, GPIO5 => PWM1 (37) da nur weißer Kanal angeschlossen.

    Bedienung:

    Die LED-Hängeleuchte soll per einfachen Tastendruck,

    die Lichtleiste am Herd per Taster 1 Sekunde halten (hold) ein-, ausgeschaltet werden können.

    Dazu müssen die Tasmota-Module per Konsolen-Eingabe konfiguriert werden

    Eingabe der Konfigurierung und Rule in die Konsole der Module:

    • LED-Hängeleuchte

    Shelly 1, am Taster und das Magic Home Controller-Modul der LED-Hängeleuchte „stecke“ ich in eine „Gruppe“,

    das bedeutet in etwa, dass alle Geräte in derselben und gleichnamigen Gruppe das gleiche machen: an, aus, Helligkeit usw.

    Das Command heißt GroupTopic, beide Module (Shelly 1 und Controller der Hängeleuchte) erhalten zunächst die gleiche Eingabe:

    grouptopic küche

    und

    setoption85 1

    hinterher, das weist der Gruppe „küche“ die Geräten zu (Achtung Syntax groß/klein) und schaltet die Funktion ein.

    Nun soll das eine Gerät der Gruppe das Andere nicht „beeinflussen“, der LED-Hängeleuchte wird mit folgendem Befehl

    die Ausgabe seines „Zustandes“ ausgeschaltet:

    DevGroupShare 0xffffffff,0

    • Lichtleiste am Herd

    Das Magic Home Controller-Modul braucht keine Befehlseingabe, ich weise dem Gerät jedoch eine feste IP zu

    da ich es per Befehl „Websend“ ansprechen will. Dazu habe ich, in meinem Fall die Fritzbox, ein Häkchen

    im Kästchen „Dem Gerät immer die gleiche IP zuweisen“ gesetzt.

    Der Shelly 1 braucht wiederum zu wissen welche Schalter-Art angeschlossen ist und welches Verhalten

    es bei Betätigung des Tasters haben soll. Der Taster an GPIO5 ist zwar ein „Button“, aber ein „Switch“

    ist im Template vorgegeben. Es gibt verschiedene Schaltarten (SwitchMode), die Art die auch auf ein „Halten“ (hold) hört

    ist z.B. switchmode 5. Der Shelly ist da aber ein bisschen eigen und braucht, so in meinem Beispiel,

    den Modus 6. Eingabe in die Konsole des Shellys:

    switchmode 6

    Jetzt muss der Shelly noch angewiesen werden auf einen „hold“ zu hören, das geschieht mit einem Rule.

    Befehl in die Konsole des Shellys:

    rule1 on switch1#state=3 do websend [192.168.178.33] power toggle endon

    dann das Rule aktivieren mit dem Befehl:

    rule1 1

    Zum Schluss kann die Zeit für das Gedrückthalten des Tasters eingestellt werden, 4 Sekunden (Vorgabe)

    kamen mir etwas lang vor, eine Sekunde find ich okay, der Faktor ist in zehntel Sekunde und in Option 32 anzugeben:

    setoption32 10

    Das war´s, ich hoffe es war nicht zu lang, ich nichts vergessen habe. Ich wollt‘ ich hätte eine solch detaillierte Anleitung gehabt,

    vielleicht hilft es Weiteren ähnliche Projekte zu realisieren.

    An die Profis:

    Diese Websend- und Feste-IP-Geschichte stört mich schon ein wenig, gibt es eine andere Möglichkeit

    das gewünschte Gerät, z.B Gerätename oder Befehl in der Rule auf eine andere Art anzusprechen?

    Gruß.

  • MomoFab 9. Juli 2020 um 13:08

    Hat den Titel des Themas von „Zwei Leuchten mit einem Taster Bedienen ohne Cloud“ zu „Zwei Leuchten mit einem Taster bedienen ohne Cloud“ geändert.
  • Hi.

    Schönes Proekt. :thumbup:

    Diese Websend- und Feste-IP-Geschichte stört mich schon ein wenig, gibt es eine andere Möglichkeit

    das gewünschte Gerät, z.B Gerätename oder Befehl in der Rule auf eine andere Art anzusprechen?

    Doch natürlich gibt es die.

    - Zum einen über einen MQTT Server auf den sich alle MQTT Clients einloggen und über den statt Websend gesteuert wird.

    - Bei der FB z.B. lässt sich jedem Netzwerkgerät unter "Heimnetz -> Netzwerk" jedem Gerät auch ein Name zuordnen. Und diesem ist das Netztwerkgerät dann auch im Browser per DNS ansprechbar.

    Bsp: http://wohnzimmer-led

    benzino77 Tasmocompiler

    Gitpod Master Release

    Gitpod Development Release

    Sonoff-Basic / Sonoff-RF / Sonoff-Touch / Sonoff S20 / PowStro Basic / MagicHome / Sonoff-RF-Bridge mit diversen 433MHz RF Sender/Empfänger / Shelly_1 / ESP-WiFi-Dimmer / Gosund SP111 / ESP12E / WEMOS D1 Mini / ESP32Cam

    Sensoren: BME280/BMP280/HC-SR501/HC-SR04/ACS712/INA219/MHZ19B/DS3231

    Alexa Sprachsteuerung

    mosquitto/bash/html/cgi auf Wyse5070

  • @MomoFab Was mir bei Deiner Schaltung Bild 2 auffällt.

    Du verwendest den gelb/grünen als N und schaltest die Phase erst zum Shelly und dann mit dem blauen (N) wieder in die Verteilerdose hoch.

    Ich würde ganz einfach die Phase in der Verteilerdose zum Trafo brücken. Und den blauen (N) Leiter für den Shelly N und gelb/grün gar nicht verwenden. Zumindest isses dann VDE konform