Fenster automatisch positionieren – die Nerdy Tool Box im Einsatz

Screenshot und Titelbild zur Nerdy Tool Box – Fenster automatisch positionieren unter Windows

Fenster zu verschieben klingt banal – bis man es automatisieren will. Genau hier kommt die Nerdy Tool Box (NTB) ins Spiel. Dieses kleine, portable Windows-Tool macht genau das: Fenster automatisch positionieren, Größen anpassen, minimieren oder maximieren – und das alles auch über die Kommandozeile.

Doch das ist nur der Anfang. NTB kann viel mehr und wird schnell zum unverzichtbaren Helfer für alle, die ihre Fenster unter Kontrolle haben wollen – ob am Arbeitsplatz, beim Streamen oder im Smart Home.

Screenshot der Nerdy Tool Box zum Verschieben von Fenstern per Kommandozeile unter Windows

🎯 Warum Fenster automatisch positionieren lassen?

Wer mehrere Monitore, ein StreamDeck oder Smart Home-Skripte nutzt, kennt das Problem: Programme starten oft nicht dort, wo man sie haben will. Statt ständig per Maus nachzuziehen, lässt sich das mit NTB ganz einfach automatisieren.

Typische Anwendungsfälle:

  • Fenster automatisch auf einem bestimmten Monitor im Vollbild anzeigen (z. B. Reolink-Überwachung)
  • Fenster exakt positionieren – unabhängig von Windows Snap oder Rasterung
  • Unsichtbare Fenster wieder sichtbar machen, wenn die Titelleiste außerhalb des Bildschirms liegt
  • Setup-Skripte für Streaming-Software oder Recording automatisch vorbereiten
  • Per Sprachsteuerung oder Zeitplan Fensteraktionen bequem auslösen

🔧 Alle Funktionen zum automatischen Positionieren von Fenstern

Die Nerdy Tool Box ist modular aufgebaut und bietet umfangreiche Möglichkeiten:

  • Fenster erkennen und automatisch manipulieren:
    • Position, Größe und Status (minimieren, maximieren, wiederherstellen)
    • Titelerkennung mit Teiltext-Suche
    • Filterfunktion für gezielte Fensterauswahl
  • Mausaktionen automatisieren:
    • Mausposition ermitteln und anzeigen
    • Linksklicks und Rechtsklicks simulieren – auch mit Verzögerung
    • Mausklicks gezielt auf Fenster anwenden
  • Kommandozeilensteuerung (CLI):
    • Klassischer Modus mit --x, --y, --width, --height
    • Nerd-Modus mit --monitor, --maximize, --window, --restore
  • Batch- und Scriptfähigkeit:
    • Integration in PowerShell, Batch-Dateien, Autostart-Skripte oder ioBroker problemlos möglich

All diese Funktionen ermöglichen eine umfassende Kontrolle über die Fensterverwaltung deines Systems.


🧪 CLI-Beispiele zum automatischen Positionieren von Fenstern

# Fenster verschieben und Größe setzen
NerdyToolBox.exe --x 100 --y 200 --width 800 --height 600

# Fenster auf Monitor 2 maximieren
NerdyToolBox.exe --monitor 2 --maximize

# Fenster mit bestimmtem Titel minimieren
NerdyToolBox.exe --window "Reolink" --minimize

# Mausposition anzeigen lassen
NerdyToolBox.exe --get-mouse

# Linksklick an aktueller Position mit 500ms Delay
NerdyToolBox.exe --click-left --delay 500

Diese Befehle kannst du mit wenigen Zeilen in deine Automatisierung integrieren. Dadurch sparst du Zeit und musst nie wieder nach dem richtigen Fenster suchen.


💡 Praktische Beispiele für automatisches Positionieren

🔍 Fenster in den Fullscreen-Modus bringen:
Programme wie Reolink öffnen sich nicht automatisch im Vollbild – sondern erfordern einen Mausklick. Mit NTB kannst du diese Klicks automatisieren – sogar mit Delay.

🧭 Fenster exakt automatisch positionieren:
Anders als Windows Snap erlaubt NTB pixelgenaues Platzieren von Fenstern. Das ist besonders nützlich bei Multi-Monitor-Setups oder komplexen Workflows.

🪟 Verlorene Fenster wieder sichtbar machen:
Ist die Titelleiste eines Fensters außerhalb des sichtbaren Bereichs, lässt sich das Fenster oft nicht mehr greifen. NTB kann es gezielt zurück ins Bild holen – ganz ohne Gefummel.


📦 Voraussetzungen für die Nutzung

Die Nerdy Tool Box benötigt lediglich .NET Framework 4.8 – auf aktuellen Windows-Systemen ist das meist bereits vorinstalliert.


📥 Download & weitere Informationen

🔗 Zur den Tools
💾 Download
🐱 NerdyToolBox bei Github

🦓 Dir gefällt die NerdyToolBox?

Dann spendier doch ein paar Zebra-Leckerlies und unterstütze das Projekt mit einem kleinen Energieboost – ganz freiwillig, aber mit großem Dank!

🧃 Jetzt via PayPal unterstützen
🍪 Ko-fi: Zebra-Leckerlies geben

Kein PayPal? Kein Problem – bei Ko-fi geht’s auch ohne Account.


PS: Du hast eine Idee für ein weiteres Tool? Schreib mir doch! Vielleicht findet dein Vorschlag bald den Weg in die Werkzeugkiste 🧰

Licht automatisch einschalten beim PC-Start – So geht’s mit ioBroker und Home Assistant

Technisch aufgeräumter Schreibtisch mit PowerShell-Code auf dem Bildschirm und eingeschalteter Schreibtischlampe – Symbolbild für Lichtautomatisierung beim PC-Start.

Licht automatisch einschalten beim PC-Start – genau das ist das Ziel dieses Beitrags. Wenn dein PC hochfährt, soll automatisch das Licht am Schreibtisch angehen? Klingt erstmal wie Magie – ist aber mit PowerShell, ioBroker oder Home Assistant in wenigen Minuten realisierbar. In diesem Beitrag zeige ich dir Schritt für Schritt, wie du genau das umsetzt. Alles lokal, ohne Cloud, dafür mit extra Nerd-Faktor und ein paar praktischen PowerShell-Tricks.


Was du brauchst, um beim PC-Start das Licht automatisch einzuschalten

  • Einen Windows-PC mit PowerShell (ab Windows 10)
  • Eine smarte Lampe oder Steckdose (z. B. Tapo Nano Smart WLAN Steckdose* (bezahlter Link) oder Philips Hue* (bezahlter Link))
  • Eine laufende ioBroker- oder Home Assistant-Installation
  • Einen gemeinsamen Netzwerkzugang
Aufgeräumter Technik-Arbeitsplatz mit drei Monitoren, PowerShell-Code und Smart-Home-Zubehör – der PC wird gestartet und das Licht geht automatisch an.
Beim Start des PCs aktiviert ein PowerShell-Skript automatisch das Licht – so einfach kann Smart Home mit ioBroker oder Home Assistant sein.

Variante 1: Beim PC-Start das Licht automatisch einschalten mit ioBroker

ioBroker vorbereiten

  1. Stelle sicher, dass der web-Adapter in ioBroker läuft.
  2. Aktiviere die Simple-API (Standardport ist meist 8087).
  3. Lege einen Datenpunkt für dein Licht an, z. B. licht.schreibtisch.on (Typ: Boolean).

PowerShell-Skript auf dem Windows-PC

Erstelle z. B. in C:\Scripts\light-on.ps1 folgendes Skript – kommentiert, damit du weißt, was was macht:

# URL zur ioBroker-Simple-API, um das Licht einzuschalten
$ioBrokerUrl = "http://192.168.0.100:8087/set/licht.schreibtisch.on?value=true"

try {
    # HTTP-Request an ioBroker senden
    Invoke-WebRequest -Uri $ioBrokerUrl -UseBasicParsing
    Write-Output "Lichtsignal an ioBroker gesendet."
} catch {
    # Falls etwas schiefgeht, gib den Fehler aus
    Write-Error "Fehler beim Senden des Signals: $_"
}

Hinweis: Wenn du Authentifizierung in ioBroker aktiviert hast, brauchst du einen Auth-Header (Basic Auth oder Token).

Autostart einrichten (mit ExecutionPolicy!)

Windows blockiert standardmäßig das Ausführen von PowerShell-Skripten – außer du erlaubst es explizit. Dazu nutzt du ExecutionPolicy Bypass, und zwar so:

So geht’s mit Verknüpfung im Autostart-Ordner:

  1. Erstelle eine Verknüpfung zu powershell.exe.
  2. Gib bei Ziel folgendes ein:
powershell.exe -ExecutionPolicy Bypass -File "C:\Scripts\light-on.ps1"

  1. Schieb die Verknüpfung in den Autostart-Ordner:

Pfad: C:\Users\<DEINNAME>\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup

Oder über die Aufgabenplanung:

  • Öffne „Aufgabenplanung“ (taskschd.msc)
  • Neue Aufgabe → Trigger: „Beim Start“ oder „Bei Anmeldung“
  • Aktion: powershell.exe
  • Argumente: -ExecutionPolicy Bypass -File "C:\Scripts\light-on.ps1"

So umgehst du elegant die Blockade, ohne dein System unsicher zu machen.


Variante 2: Home Assistant – Licht automatisch einschalten beim PC-Start per REST API

Vorbereitung

  1. Erstelle ein Long-Lived Access Token in deinem Home Assistant-Profil.
  2. Finde die entity_id deiner Lampe (z. B. light.schreibtisch).

PowerShell-Skript

# Dein Home Assistant Token – sicher aufbewahren!
$token = "DEIN_LONG_TOKEN"

# URL zum REST-API-Endpunkt zum Einschalten von Licht
$uri = "http://192.168.0.101:8123/api/services/light/turn_on"

# Header mit Authentifizierung
$headers = @{ Authorization = "Bearer $token" }

# JSON-Daten: Welche Lampe soll eingeschaltet werden?
$body = @{ entity_id = "light.schreibtisch" } | ConvertTo-Json

# Anfrage senden
Invoke-RestMethod -Uri $uri -Headers $headers -Method Post -Body $body -ContentType 'application/json'

Auch dieses Skript kannst du wie oben beschrieben beim Systemstart ausführen lassen.


Bonus: Weitere Ideen zum Licht beim PC-Start

  • Sanftes Aufdimmen: In ioBroker per Script oder in HA per transition-Attribut
  • Präsenz-Erkennung: Kombiniere das mit Bewegungssensor oder Smartphone-Präsenz
  • Mehrere PCs: Unterschiedliche Trigger-Datenpunkte für unterschiedliche Nutzer

Fehlerquellen und Tipps für die Licht-Automatisierung

  • Firewall: Stelle sicher, dass dein ioBroker vom PC aus erreichbar ist
  • ExecutionPolicy: Immer mit -ExecutionPolicy Bypass starten, wenn du Skripte automatisierst
  • Netzwerk: Beide Geräte müssen sich im gleichen Netz befinden (keine VLANs o. ä. dazwischen)
  • API-Schutz: Wenn du von außen zugreifst, nutze Tokens und sichere Ports

Fazit: Licht automatisch einschalten beim PC-Start lohnt sich

„Licht automatisch einschalten beim PC-Start“ ist keine Hexerei, sondern mit ein paar Zeilen PowerShell und etwas Smart-Home-Magie schnell gemacht. Egal ob du ioBroker oder Home Assistant nutzt – dein PC wird zum echten Smart-Home-Mitbewohner.

Genau solche Automatismen machen ein echtes Smart Home aus: Du musst nichts mehr selbst schalten oder daran denken – dein System erledigt es einfach für dich. Wenn dich das Thema interessiert, schau unbedingt in meinen Beitrag Echtes Smart Home: Automatisierung statt Fernbedienung.

Shelly Gen 3 VS Gen 4 – Lohnt sich das Upgrade?

Einleitung

Shelly hat mit der vierten Generation seiner beliebten Smart-Home-Relais ein großes Upgrade veröffentlicht. Die wichtigsten Neuerungen: Matter-Zertifizierung, Apple HomeKit-Unterstützung und Multi-Protokoll-Konnektivität (WLAN, Bluetooth & Zigbee). Doch wer gewinnt beim Duel Shelly Gen 3 VS Gen 4?

Doch was genau unterscheidet Shelly Gen 3 von Shelly Gen 4? Lohnt sich ein Upgrade, oder kannst du weiterhin auf die bewährten Gen 3-Modelle setzen? In diesem Beitrag findest du alle Unterschiede im Detail!

Shelly Relais

Die wichtigsten Neuerungen von Shelly Gen 4

Multi-Protokoll-Konnektivität: WLAN, Bluetooth & Zigbee

Während Shelly Gen 3 nur WLAN & Bluetooth bot, ist Gen 4 zusätzlich mit Zigbee 3.0 ausgestattet. Dadurch kannst du Shelly Gen 4 nicht nur ins WLAN einbinden, sondern auch in ein Zigbee-Mesh – perfekt für größere Smart-Home-Setups!

💡 Zigbee-Repeater-Funktion: Shelly Gen 4 erweitert dein Zigbee-Netzwerk automatisch, indem er als Mesh-Knoten agiert.


Matter-Zertifizierung – Zukunftssicher für dein Smart Home

Shelly Gen 4 ist offiziell Matter-zertifiziert. Das bedeutet, dass du dein Smart-Home-System herstellerübergreifend steuern kannst – egal ob über Google Home, Amazon Alexa oder Apple HomeKit.

💡 Matter sorgt für bessere Kompatibilität: Du kannst Shelly Gen 4 direkt in Matter-fähige Systeme einbinden, ohne Cloud-Zwang!


Offizielle Apple HomeKit-Unterstützung

Ein großer Schritt nach vorne: Shelly Gen 4 funktioniert jetzt mit Apple HomeKit. Du kannst deine Shelly-Geräte mit der Apple Home-App oder per Siri steuern – ohne Umwege über Drittanbieter-Integrationen.

📌 Shelly Gen 3 funktioniert nicht mit Apple HomeKit, während Gen 4 diese Unterstützung von Haus aus mitbringt.


Verbesserte Energieeffizienz & optimierte Antennen

  • Geringerer Stromverbrauch: Shelly Gen 4 benötigt weniger als 1 W (statt bis zu 1.2 W bei Gen 3).
  • Bessere WLAN- & Bluetooth-Reichweite: Die Antennen wurden für stabilere Verbindungen optimiert.

Technische Detailunterschiede – Shelly Gen 3 vs. Shelly Gen 4

Shelly 1 Gen 3 vs. Shelly 1 Gen 4

Der Shelly 1 Gen 4 bietet Matter, Zigbee und eine bessere Antenne.

FeatureShelly 1 Gen 3Shelly 1 Gen 4
ChipESP-Shelly-C38FESP-Shelly-C68F
Multi-ProtokollWLAN, BluetoothWLAN, Bluetooth, Zigbee
Matter-Zertifiziert❌ Nein✅ Ja
Apple HomeKit❌ Nein✅ Ja
Power Consumption<1.2 W<1 W
KlemmenfarbeSchwarzGrau
Abmessungen (H x B x T)37 x 42 x 16 mm37 x 42 x 16 mm

👉 Jetzt kaufen: Shelly 1 Gen 3 auf Amazon* (bezahlter Link)


Shelly 1PM Gen 3 vs. Shelly 1PM Gen 4

📌 Shelly 1PM Gen 4 bietet Matter, Zigbee und eine effizientere Verbrauchsmessung.

FeatureShelly 1PM Gen 3Shelly 1PM Gen 4
ChipESP-Shelly-C38FESP-Shelly-C68F
Multi-ProtokollWLAN, BluetoothWLAN, Bluetooth, Zigbee
Matter-Zertifiziert❌ Nein✅ Ja
Apple HomeKit❌ Nein✅ Ja
Power Consumption<1.2 W<1 W
KlemmenfarbeSchwarzGrau
Abmessungen (H x B x T)37 x 42 x 16 mm37 x 42 x 16 mm

👉 Jetzt kaufen: Shelly 1PM Gen 3 auf Amazon


Shelly 1 Mini Gen 3 vs. Shelly 1 Mini Gen 4

📌 Shelly 1 Mini Gen 4 ist Matter-fähig und bietet eine verbesserte Funkreichweite.

FeatureShelly 1 Mini Gen 3Shelly 1 Mini Gen 4
ChipESP-Shelly-C38FESP-Shelly-C68F
Multi-ProtokollWLAN, BluetoothWLAN, Bluetooth, Zigbee
Matter-Zertifiziert❌ Nein✅ Ja
Apple HomeKit❌ Nein✅ Ja
Power Consumption<1.2 W<1 W
KlemmenfarbeSchwarzGrau
Abmessungen (H x B x T)32 x 35 x 11 mm32 x 35 x 11 mm

👉 Jetzt kaufen: Shelly 1 Mini Gen 3 auf Amazon* (bezahlter Link)


Fazit: Shelly Gen 3 oder 4 – Was ist die bessere Wahl?

Hast du bereits Shelly Gen 3?
→ Kein zwingendes Upgrade nötig, es sei denn, du brauchst Zigbee oder Matter.

Willst du Apple HomeKit nutzen?
Dann ist Shelly Gen 4 alternativlos, da Shelly Gen 3 kein HomeKit unterstützt.

Bist du neu im Smart Home?
Greife direkt zu Shelly Gen 4, weil du damit für Matter & Zigbee gerüstet bist.

Brauchst du eine stabile Verbindung mit Zigbee?
→ Shelly Gen 4 agiert als Zigbee-Repeater, während Gen 3 nur WLAN & Bluetooth kann.

Shellys bei Amazon kaufen* (bezahlter Link)


Matter benötigt zwingend IPv6. Wie du IPv6 unter Proxmox einrichtest, erfährst du hier.


Was denkst du? Lohnt sich für dich ein Upgrade auf Shelly Gen 4? Schreib es in die Kommentare!

Automatisches Licht mit Blockly

Automatisches Licht mit Blockly ist nicht nur praktisch, sondern auch energieeffizient. In diesem Beitrag zeige ich dir, wie du das Licht automatisch einschaltest, wenn eine Bewegung erkannt oder eine Tür geöffnet wird. Nach mindestens einer Minute ohne Präsenz schaltet sich das Licht wieder aus, sodass du Energie sparen kannst. Dies ist was ein echtes Smart Home ausmacht.

Automatisches Licht mit Blockly

Funktionsweise der Automatisierung

Die Automatisierung nutzt zwei Sensoren, die zusammenarbeiten, um den Betrieb zu optimieren:

  1. Präsenzmelder* (bezahlter Link): Erkennt Bewegungen im Raum und registriert Aktivitäten.
  2. Türkontakt* (bezahlter Link): Erkennt, ob die Tür offen oder geschlossen ist, was zusätzliche Flexibilität bietet.

Ablauf der Automatisierung:

  • Licht einschalten: Sobald die Tür geöffnet wird oder der Präsenzmelder eine Bewegung registriert, schaltet sich das Licht ein. Dadurch musst du das Licht nicht manuell betätigen.
  • Timestamp speichern: Das System speichert den aktuellen Zeitpunkt, um die letzte Aktivität zu verfolgen, sodass es den Status des Lichts entsprechend anpassen kann.
  • Automatische Abschaltung: Nach mindestens einer Minute ohne erkannte Präsenz schaltet das System das Licht automatisch aus, wodurch unnötiger Energieverbrauch vermieden wird.

Umsetzung mit Blockly

Mit Blockly, einer grafischen Programmiersprache, kannst du diese Automatisierung einfach umsetzen. Sie ermöglicht es, logische Abläufe visuell zu gestalten und dabei flexibel anzupassen.

1. Ereignisauslöser für Türkontakt und Präsenzmelder

Der Blockly-Block on überwacht Änderungen bei den beiden Sensoren, sodass das System sofort reagieren kann:

&lt;value name="OID0">
  &lt;field name="oid">Präsenzmelder.Presence&lt;/field>
&lt;/value>
&lt;value name="OID1">
  &lt;field name="oid">Türkontakt.Open&lt;/field>
&lt;/value>

Erkennt einer der Sensoren eine Änderung, speichert das System den aktuellen Timestamp und schaltet das Licht ein, um sofort für die nötige Beleuchtung zu sorgen:

&lt;block type="control">
  &lt;field name="OID">Licht_Schalter&lt;/field>
  &lt;value name="VALUE">
    &lt;block type="logic_boolean">
      &lt;field name="BOOL">TRUE&lt;/field>
    &lt;/block>
  &lt;/value>
&lt;/block>

2. Automatische Abschaltung nach Inaktivität

Das System überprüft alle 30 Sekunden, ob noch Aktivität vorliegt, und berücksichtigt dabei den zuletzt gespeicherten Timestamp:

&lt;block type="schedule">
  &lt;field name="SCHEDULE">*/30 * * * * *&lt;/field>
&lt;/block>

Wenn das Licht an ist, aber keine Bewegung erkannt wird, vergleicht das System den aktuellen Zeitpunkt mit dem gespeicherten Timestamp. Dadurch erkennt es, ob das Licht weiterhin benötigt wird:

&lt;block type="logic_compare">
  &lt;field name="OP">LT&lt;/field>
  &lt;value name="A">
    &lt;block type="get_value">
      &lt;field name="OID">timestamp&lt;/field>
    &lt;/block>
  &lt;/value>
  &lt;value name="B">
    &lt;block type="math_arithmetic">
      &lt;field name="OP">MINUS&lt;/field>
      &lt;value name="A">
        &lt;block type="time_get">
          &lt;field name="OPTION">current_time&lt;/field>
        &lt;/block>
      &lt;/value>
      &lt;value name="B">
        &lt;block type="math_number">
          &lt;field name="NUM">60&lt;/field>
        &lt;/block>
      &lt;/value>
    &lt;/block>
  &lt;/value>
&lt;/block>

Liegt der gespeicherte Zeitpunkt mehr als eine Minute zurück, schaltet das System das Licht aus, um Strom zu sparen und die Umwelt zu schonen:

&lt;block type="control">
  &lt;field name="OID">Licht_Schalter&lt;/field>
  &lt;value name="VALUE">
    &lt;block type="logic_boolean">
      &lt;field name="BOOL">FALSE&lt;/field>
    &lt;/block>
  &lt;/value>
&lt;/block>

Vorteile dieser Lösung

  • Energieeffizient: Das Licht bleibt nur an, wenn es wirklich benötigt wird, wodurch du Stromkosten senken kannst.
  • Benutzerfreundlich: Das Licht schaltet sich automatisch ein und aus, sodass du dich nicht darum kümmern musst.
  • Anpassbar: Du kannst die Wartezeit oder die Sensoren flexibel ändern, damit die Automatisierung perfekt zu deinem Alltag passt.

Erweiterungsmöglichkeiten

  • Passe die Verzögerungszeit an (z. B. 2 oder 5 Minuten statt 1 Minute), um die Automatisierung individueller zu gestalten.
  • Binde zusätzliche Sensoren ein, z. B. für Fenster oder weitere Türen, damit das System noch vielseitiger einsetzbar ist.
  • Füge eine manuelle Steuerung hinzu, um das Licht dauerhaft ein- oder auszuschalten, falls du einmal von der Automatisierung abweichen möchtest.

Hast du eigene Erfahrungen mit Blockly? Teile sie gerne in den Kommentaren!

Vollständiger Blockly Code

Den kompletten Code, zum einfachen importieren, findest du nachfolgend. Denk daran das Variablen, Sensoren und Aktoren angepasst werden müssen.

&lt;xml xmlns="https://developers.google.com/blockly/xml">
  &lt;block type="on_ext" id="event_trigger" x="200" y="-238">
    &lt;mutation items="2">&lt;/mutation>
    &lt;field name="CONDITION">true&lt;/field>
    &lt;field name="ACK_CONDITION">&lt;/field>
    &lt;value name="OID0">
      &lt;shadow type="field_oid" id="sensor_1">
        &lt;field name="oid">alias.0.room.sensors.motion.PRESS&lt;/field>
      &lt;/shadow>
    &lt;/value>
    &lt;value name="OID1">
      &lt;shadow type="field_oid" id="sensor_2">
        &lt;field name="oid">alias.0.room.sensors.door.ACTUAL&lt;/field>
      &lt;/shadow>
    &lt;/value>
    &lt;statement name="STATEMENT">
      &lt;block type="update" id="update_timestamp">
        &lt;mutation delay_input="false">&lt;/mutation>
        &lt;field name="OID">0_userdata.0.room.timestamp&lt;/field>
        &lt;field name="WITH_DELAY">FALSE&lt;/field>
        &lt;value name="VALUE">
          &lt;block type="time_get" id="get_time">
            &lt;mutation format="false" language="false">&lt;/mutation>
            &lt;field name="OPTION">sid&lt;/field>
          &lt;/block>
        &lt;/value>
        &lt;next>
          &lt;block type="controls_if" id="check_light_status">
            &lt;value name="IF0">
              &lt;block type="logic_negate" id="negate_condition">
                &lt;value name="BOOL">
                  &lt;block type="get_value" id="get_light_status">
                    &lt;field name="ATTR">val&lt;/field>
                    &lt;field name="OID">0_userdata.0.room.light_on&lt;/field>
                  &lt;/block>
                &lt;/value>
              &lt;/block>
            &lt;/value>
            &lt;statement name="DO0">
              &lt;block type="comment" id="comment_light">
                &lt;field name="COMMENT">Light Control&lt;/field>
                &lt;next>
                  &lt;block type="control" id="turn_light_on">
                    &lt;mutation delay_input="false">&lt;/mutation>
                    &lt;field name="OID">scene.0.room.light_On&lt;/field>
                    &lt;field name="WITH_DELAY">FALSE&lt;/field>
                    &lt;value name="VALUE">
                      &lt;block type="logic_boolean" id="set_true">
                        &lt;field name="BOOL">TRUE&lt;/field>
                      &lt;/block>
                    &lt;/value>
                    &lt;next>
                      &lt;block type="comment" id="comment_system">
                        &lt;field name="COMMENT">System State&lt;/field>
                        &lt;next>
                          &lt;block type="control" id="update_light_status">
                            &lt;mutation delay_input="false">&lt;/mutation>
                            &lt;field name="OID">0_userdata.0.room.light_on&lt;/field>
                            &lt;field name="WITH_DELAY">FALSE&lt;/field>
                            &lt;value name="VALUE">
                              &lt;block type="logic_boolean" id="set_light_true">
                                &lt;field name="BOOL">TRUE&lt;/field>
                              &lt;/block>
                            &lt;/value>
                          &lt;/block>
                        &lt;/next>
                      &lt;/block>
                    &lt;/next>
                  &lt;/block>
                &lt;/next>
              &lt;/block>
            &lt;/statement>
          &lt;/block>
        &lt;/next>
      &lt;/block>
    &lt;/statement>
    &lt;next>
      &lt;block type="schedule" id="scheduled_check">
        &lt;field name="SCHEDULE">*/30 * * * * *&lt;/field>
        &lt;statement name="STATEMENT">
          &lt;block type="controls_if" id="check_inactivity">
            &lt;mutation elseif="1">&lt;/mutation>
            &lt;value name="IF0">
              &lt;block type="logic_operation" id="check_conditions" inline="false">
                &lt;field name="OP">AND&lt;/field>
                &lt;value name="A">
                  &lt;block type="get_value" id="get_light_status_check">
                    &lt;field name="ATTR">val&lt;/field>
                    &lt;field name="OID">0_userdata.0.room.light_on&lt;/field>
                  &lt;/block>
                &lt;/value>
                &lt;value name="B">
                  &lt;block type="logic_negate" id="negate_motion">
                    &lt;value name="BOOL">
                      &lt;block type="get_value" id="get_motion_status">
                        &lt;field name="ATTR">val&lt;/field>
                        &lt;field name="OID">alias.0.room.sensors.motion.PRESS&lt;/field>
                      &lt;/block>
                    &lt;/value>
                  &lt;/block>
                &lt;/value>
              &lt;/block>
            &lt;/value>
            &lt;statement name="DO0">
              &lt;block type="comment" id="check_timeout">
                &lt;field name="COMMENT">Check if timeout passed&lt;/field>
                &lt;next>
                  &lt;block type="controls_if" id="compare_time">
                    &lt;value name="IF0">
                      &lt;block type="logic_compare" id="time_check">
                        &lt;field name="OP">LT&lt;/field>
                        &lt;value name="A">
                          &lt;block type="get_value" id="get_timestamp">
                            &lt;field name="ATTR">val&lt;/field>
                            &lt;field name="OID">0_userdata.0.room.timestamp&lt;/field>
                          &lt;/block>
                        &lt;/value>
                        &lt;value name="B">
                          &lt;block type="math_arithmetic" id="subtract_time">
                            &lt;field name="OP">MINUS&lt;/field>
                            &lt;value name="A">
                              &lt;block type="time_get" id="current_time">
                                &lt;mutation format="false" language="false">&lt;/mutation>
                                &lt;field name="OPTION">sid&lt;/field>
                              &lt;/block>
                            &lt;/value>
                            &lt;value name="B">
                              &lt;block type="math_number" id="timeout_value">
                                &lt;field name="NUM">60&lt;/field>
                              &lt;/block>
                            &lt;/value>
                          &lt;/block>
                        &lt;/value>
                      &lt;/block>
                    &lt;/value>
                    &lt;statement name="DO0">
                      &lt;block type="comment" id="comment_turn_off">
                        &lt;field name="COMMENT">Turn off light&lt;/field>
                        &lt;next>
                          &lt;block type="control" id="turn_light_off">
                            &lt;mutation delay_input="false">&lt;/mutation>
                            &lt;field name="OID">scene.0.room.light_On&lt;/field>
                            &lt;field name="WITH_DELAY">FALSE&lt;/field>
                            &lt;value name="VALUE">
                              &lt;block type="logic_boolean" id="set_false">
                                &lt;field name="BOOL">FALSE&lt;/field>
                              &lt;/block>
                            &lt;/value>
                            &lt;next>
                              &lt;block type="control" id="update_light_off_status">
                                &lt;mutation delay_input="false">&lt;/mutation>
                                &lt;field name="OID">0_userdata.0.room.light_on&lt;/field>
                                &lt;field name="WITH_DELAY">FALSE&lt;/field>
                                &lt;value name="VALUE">
                                  &lt;block type="logic_boolean" id="set_light_false">
                                    &lt;field name="BOOL">FALSE&lt;/field>
                                  &lt;/block>
                                &lt;/value>
                              &lt;/block>
                            &lt;/next>
                          &lt;/block>
                        &lt;/next>
                      &lt;/block>
                    &lt;/statement>
                  &lt;/block>
                &lt;/next>
              &lt;/block>
            &lt;/statement>
            &lt;value name="IF1">
              &lt;block type="get_value" id="check_motion">
                &lt;field name="ATTR">val&lt;/field>
                &lt;field name="OID">alias.0.room.sensors.motion.PRESS&lt;/field>
              &lt;/block>
            &lt;/value>
            &lt;statement name="DO1">
              &lt;block type="update" id="update_timestamp_on_motion">
                &lt;mutation delay_input="false">&lt;/mutation>
                &lt;field name="OID">0_userdata.0.room.timestamp&lt;/field>
                &lt;field name="WITH_DELAY">FALSE&lt;/field>
                &lt;value name="VALUE">
                  &lt;block type="time_get" id="get_current_time">
                    &lt;mutation format="false" language="false">&lt;/mutation>
                    &lt;field name="OPTION">sid&lt;/field>
                  &lt;/block>
                &lt;/value>
              &lt;/block>
            &lt;/statement>
          &lt;/block>
        &lt;/statement>
      &lt;/block>
    &lt;/next>
  &lt;/block>
&lt;/xml>

Echtes Smart Home – Automatisierung statt Fernbedienung

Wenn von Smart Home die Rede ist, denken viele an eine App auf dem Smartphone, mit der sich Licht, Heizung oder Rollläden steuern lassen. Doch ist das wirklich smart? Nein! Ein echtes Smart Home funktioniert ohne ständigen Eingriff des Nutzers – es denkt mit, reagiert automatisch und nimmt Arbeit ab, anstatt neue hinzuzufügen.

Was macht ein echtes Smart Home aus?

Ein wirklich intelligentes Zuhause erkennt Situationen und Muster, trifft eigenständige Entscheidungen und passt sich dem Alltag an. Es geht nicht darum, dass du dein Licht per App ein- und ausschalten kannst – sondern dass es sich genau dann einschaltet, wenn du es brauchst. Ein echtes Smart Home ist kein glorifiziertes Dashboard, sondern eine unsichtbare, aber spürbare Verbesserung des Wohnkomforts.

Beispiele für ein echtes Smart Home:

  • Rolläden steuern sich von selbst: Statt morgens manuell den Knopf zu drücken oder per App die Rolläden zu öffnen, passiert dies automatisch anhand von Sonnenaufgang, Außentemperatur oder sogar deinem Wecker.
  • Post im Briefkasten? Du wirst informiert: Ein Sensor erkennt, wenn Post eingeworfen wurde, und sendet eine Nachricht – du musst nicht mehr selbst nachsehen.
  • Heizung regelt sich nach Bedarf: Statt die Temperatur über ein Dashboard einzustellen, erkennt das System deine Gewohnheiten, die Wetterlage und ob du zu Hause bist, um optimal zu heizen.
  • Beleuchtung passt sich an: Licht schaltet sich nicht nur automatisch an, wenn du einen Raum betrittst, sondern passt auch Helligkeit und Farbtemperatur der Tageszeit an. Morgens sorgt eine kühle, aktivierende Beleuchtung für einen guten Start, während abends warmes Licht für Entspannung sorgt.
  • Musik und Medien steuern sich automatisch: Dein Smart Home erkennt, wenn du nach Hause kommst, und startet automatisch deine Lieblingsplaylist oder das aktuelle Nachrichten-Update.
  • Sicherheit ohne manuelles Eingreifen: Die Haustür verriegelt sich automatisch, wenn alle das Haus verlassen haben, und Kameras aktivieren sich bei verdächtigen Bewegungen – ohne dass du in einer App herumtippen musst.
  • Wetterabhängige Anpassungen: Wenn es regnet, schließt das System automatisch die Dachfenster. Im Sommer passt es die Außenmarkisen an, um Überhitzung zu vermeiden.
  • Raumklima-Optimierung: Luftqualitätssensoren erkennen einen erhöhten CO₂-Gehalt und aktivieren automatisch die Lüftung oder erinnern ans Lüften.
  • Individuelle Beleuchtung nach Tageszeit: Die Farbtemperatur deiner Lampen ändert sich je nach Sonnenstand – morgens kühles Licht für bessere Konzentration, abends warmes Licht für eine gemütliche Atmosphäre.

Wie kann man ein echtes Smart Home selbst realisieren?

Ein Smart Home, das wirklich autonom arbeitet, kann man mit Open-Source-Lösungen wie ioBroker oder Home Assistant selbst realisieren. Diese Systeme bieten:

  • Vielfältige Integrationen: Unterstützung für Zigbee, Z-Wave, MQTT, KNX, Matter und viele andere Protokolle.
  • Flexible Automatisierungen: Logikgesteuerte Abläufe, die auf Sensoren, Zeitplänen und individuellen Bedingungen basieren.
  • Lokale Verarbeitung: Keine Abhängigkeit von Cloud-Diensten, alles läuft direkt im eigenen Heimnetzwerk.
  • Benutzerdefinierte Dashboards: Falls eine Steuerung notwendig ist, lassen sich individuelle Dashboards erstellen.
  • Sprachsteuerung & KI-Unterstützung: Integration mit Sprachassistenten oder KI-basierten Automatisierungen für noch mehr Komfort.

Was ich selbst benutze:

  • Tado Heizungssteuerung mit Anwesenheitserkennung – Amazon* (bezahlter Link)
  • Aqara Bewegungsmelder für Sicherheits- und Automatisierungszwecke – Amazon* (bezahlter Link)
  • Philips Hue smarte Beleuchtung mit Farbtemperatur-Anpassung – Amazon* (bezahlter Link)
  • Shelly Plus 1PM für smarte Steuerung von Licht und Geräten – Amazont*

Fernsteuerung ist kein Smart Home!

Viele Systeme verkaufen sich als „smart“, weil sie per App oder Sprachsteuerung bedient werden können. Doch das ist keine Automatisierung, sondern nur eine Fernbedienung. Ein echtes Smart Home arbeitet proaktiv, nicht reaktiv.

Stell dir vor, du müsstest jedes Mal dein Smartphone zücken, um das Licht einzuschalten – ist das wirklich besser als ein normaler Lichtschalter? Ein intelligentes Zuhause sollte deine Gewohnheiten erlernen und vorausschauend reagieren, nicht ständig deine Aufmerksamkeit erfordern.

Fazit: Smarte Häuser, nicht smarte Dashboards

Ein Smart Home ist dann wirklich smart, wenn es ohne ständige Bedienung funktioniert. Je weniger du damit interagieren musst, desto besser ist die Automatisierung gelungen. Statt Fernsteuerung sollten Sensoren, Routinen und intelligente Algorithmen das Zuhause steuern – dann wird aus einem vernetzten Haus ein echtes Smart Home.

Wie automatisiert ist dein Zuhause wirklich?