[Plugin] EchoLox - Philips Hue Bridge Emulator für Alexa ↔ Loxone (Beta)

Einklappen
X
 
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge
  • BattloXX
    Dumb Home'r
    • 29.08.2015
    • 19

    #1

    [Plugin] EchoLox - Philips Hue Bridge Emulator für Alexa ↔ Loxone (Beta)

    Servus zusammen!

    Ich möchte euch mein LoxBerry Plugin EchoLox vorstellen – einen schlanken Philips Hue Bridge Emulator, der Amazon Alexa vollständig lokal mit dem Loxone Miniserver verbindet. Kein Cloud-Account, kein Java, kein Reverse Proxy. Das Plugin ist aktuell im Beta-Stadium, läuft bei mir aber stabil.

    Wiki: https://wiki.loxberry.de/plugins/echolox/start
    GitHub: https://github.com/BattloXX/EchoLox
    Aktuelle Version: v0.2.6

    —— Warum EchoLox? ——

    Die bisherige Lösung ha-bridge (Java) frisst auf dem LoxBerry 150–300 MB RAM und braucht eine JVM. EchoLox ist ein kompletter Neubau in Go – läuft mit ~10–20 MB RAM, einzelnes Binary, Startup unter 100 ms. Dafür ist es gezielt nur auf Loxone zugeschnitten.

    —— Wie funktioniert's? ——

    Alexa erkennt EchoLox per SSDP/UPnP-Discovery als echte Philips Hue Bridge Generation 2 (BSB002). Jedes Gerät, das du in EchoLox anlegst, taucht in der Alexa-App als Hue-Lampe auf. Der Datenfluss:

    Code:
    Alexa
    │ SSDP Discovery (UDP :1900)
    │ Hue-API (HTTP :80)
    ▼
    EchoLox (LoxBerry-Plugin, Port 80 – direkt, kein Proxy)
    │ HTTP GET /dev/sps/io/{name}/{value} (Basic Auth)
    │ UDP {name}={value} (Port 7777)
    │ MQTT loxone/{name}
    ▼
    Loxone Miniserver → Virtual Inputs → Logik
    Loxone bleibt damit die einzige Automations-Zentrale – EchoLox ist nur die Brücke.

    —— ⚠️ Wichtiger Hinweis: Einmaliges Setup vor der Installation ——

    EchoLox belegt Port 80 direkt (kein Apache-Proxy mehr). Vor der Installation sind zwei Schritte nötig:

    1. LoxBerry-Webinterface auf Port 88 verschieben
    LoxBerry Admin → Hauptmenü → LoxBerry Dienste → Tab Webserver → HTTP Web Port auf 88 setzen → Speichern.
    Danach ist das Admin-Interface unter http://LOXBERRY-IP:88 erreichbar.

    2. LoxBerry-SSDP-Dienst deaktivieren
    LoxBerry Admin → Hauptmenü → LoxBerry Dienste → Tab Weitere Optionen → SSDP-Veröffentlichung auf Aus stellen → Speichern.

    —— Features ——
    • Gerätetypen: Switch, Dimmer, Color (Hue/Saturation), Scene
    • Drei Transports: HTTP (mit Basic Auth), UDP (geringe Latenz), MQTT (publish + subscribe)
    • Miniserver-Credentials werden automatisch aus der LoxBerry-Konfig gelesen – kein doppeltes Eintippen
    • Web-UI für Geräteverwaltung, Status, Logs (Ring-Buffer mit INFO/DEBUG), Backup & Restore
    • Loxone Discovery: EchoLox durchsucht den Miniserver nach Virtual Inputs mit Prefix echolox_ und schlägt passende Geräte vor
    • Import-Funktion für ha-bridge – alte devices.db hochladen, Vorschau prüfen, fertig
    • Stabile uniqueid pro Gerät (ab v0.2.4) – Alexa-Cache-Probleme gehören der Vergangenheit an
    • selfHeal: prüft beim Start alle Gerätedaten auf Konsistenz, korrigiert automatisch
    • Autoupdate über LoxBerry Plugin Manager
    • Plattformen: ARM64 (RPi 4/5), ARMv7 (RPi 2/3), x86_64


    —— Setup in 4 Schritten ——

    1. Installation
    LoxBerry Admin öffnen (http://LOXBERRY-IP:88) → Plugin Manager → "Von URL installieren" → ZIP-URL aus dem GitHub Releases Tab einfügen:

    Das Installationsskript setzt automatisch CAP_NET_BIND_SERVICE auf das Binary (Port 80 ohne Root).
    Prüfen: http://LOXBERRY-IP/description.xml → XML mit "Philips hue bridge 2015" sichtbar?

    2. Erstes Gerät anlegen
    EchoLox → Geräte → + Neu
    - Name: Wohnzimmer Licht (exakt wie du es Alexa nennen willst)
    - Typ: Dimmer
    - Transport: HTTP

    EchoLox zeigt dir sofort die generierten VI-Namen an, z.B.:
    Code:
    echolox_wohnzimmer_licht_on
    echolox_wohnzimmer_licht_off
    echolox_wohnzimmer_licht_brightness
    Umlaute werden automatisch normalisiert (ä→ae, ö→oe, ü→ue, ß→ss).

    3. Virtual Inputs in Loxone Config anlegen
    Peripherie → Virtual Inputs → Virtual HTTP Input. Namen exakt wie oben übernehmen, URL-Pfad: /dev/sps/io/{name}/{value}.

    4. Alexa-Discovery
    "Alexa, suche nach neuen Geräten" – oder Alexa-App → Geräte → + → Philips Hue.

    —— Sprachbefehle ——
    • "Alexa, schalte Wohnzimmer Licht ein" → {name}_on = 1
    • "Alexa, schalte Wohnzimmer Licht aus" → {name}_off = 1
    • "Alexa, dimme Wohnzimmer Licht auf 50 Prozent" → {name}_brightness = 50
    • "Alexa, stelle Wohnzimmer Licht auf rot" → {name}_hue + {name}_saturation
    • "Alexa, aktiviere Filmabend" → {name}_activate = 1


    —— Voraussetzungen ——
    • LoxBerry 3.0 (Raspberry Pi oder x86)
    • Loxone Miniserver (beliebige Generation)
    • Amazon Echo (beliebiges Modell)
    • Echo und LoxBerry im gleichen Subnetz – SSDP geht nicht über Router-Grenzen


    —— Troubleshooting: Alexa zeigt alte oder falsche Geräte ——

    Ab v0.2.4 erzeugt EchoLox stabile, eindeutige uniqueids pro Gerät. Ein einmaliger Alexa-Reset räumt veraltete Einträge zuverlässig auf:
    (1) Desktop-Browser → https://alexa.amazon.com → Smart Home → Geräte → ganz nach unten → „Alle vergessen"
    (2) EchoLox Web-UI → Discovery → „Alexa sauber neu verbinden (SSDP-Burst senden)" klicken
    (3) "Alexa, suche nach neuen Geräten" sagen

    —— Feedback & Bugs ——

    Fragen, Wünsche und Bug-Reports gerne hier im Thread oder direkt als Issue auf GitHub:
    loxberry Plugin for Echo . Contribute to BattloXX/EchoLox development by creating an account on GitHub.


    Debug-Logs: EchoLox → Einstellungen → Log-Level DEBUG → "Alexa, suche Geräte" → Log herunterladen.

    Viel Spaß beim Testen!
    LG Johannes
    Zuletzt geändert von BattloXX; vor 23 Minuten.
  • BattloXX
    Dumb Home'r
    • 29.08.2015
    • 19

    #2
    —— Update: EchoLox v0.2.6 (2026-05-17) ——

    Version 0.2.6 ist verfügbar!

    Download: https://github.com/BattloXX/EchoLox/...oLox-0.2.6.zip
    Wiki: https://wiki.loxberry.de/plugins/echolox/start

    —— ⚠️ Breaking Change: Kein Apache-Proxy mehr ——

    Ab v0.2.6 läuft EchoLox direkt auf Port 80 – ohne Apache2-Reverse-Proxy. Das ist robuster und einfacher, erfordert aber ein einmaliges Setup vor der Installation (bzw. vor dem Update):

    1. LoxBerry-Webinterface auf Port 88 verschieben
    LoxBerry Admin → Dienste → Webserver → HTTP Web Port: 88 → Speichern

    2. LoxBerry-SSDP-Dienst deaktivieren
    LoxBerry Admin → Dienste → Weitere Optionen → SSDP-Veröffentlichung: Aus → Speichern

    Nach diesem Setup läuft das Admin-Interface unter http://LOXBERRY-IP:88.

    —— Was ist neu in v0.2.6 ——
    • LoxBerry-Wrapper mit loxberry_web.php – saubere Integration ins LoxBerry-Menü
    • Log-Rotation bei 5 MB (→ EchoLox.log.bak) – kein Speicherüberlauf mehr
    • Obsolete Reverse-Proxy-Dokumentation entfernt – Port 80 jetzt direkt belegt


    —— Alle Änderungen seit v0.1.10 ——
    • v0.2.4: Stabile uniqueid aus Device.ID (Alexa-Cache-Probleme behoben); selfHeal beim Start; modernes SSDP; Alexa-Reset-UI; Loxone Discovery
    • v0.2.3: Hue-Identität wiederhergestellt (apiversion 1.47.0, BSB002); SSDP-Listener
    • v0.2.0: Erster Loxone-gezielter Neubau in Go; ha-bridge Import
    • v0.2.5: LoxBerry-Wrapper; Log-Rotation; Proxy-Doku entfernt
    • v0.2.6: Aktuelle stabile Version


    Bei Fragen oder Problemen gerne hier melden oder Issue auf GitHub:
    loxberry Plugin for Echo . Contribute to BattloXX/EchoLox development by creating an account on GitHub.


    LG Johannes

    Kommentar

    • BlackSoll
      Dumb Home'r
      • 16.09.2022
      • 26

      #3
      Hi !
      Will this work on a fire tv cube or is it only for Echo speakers ?
      Can you please translate it to English ?
      The shortcut at loxberry menu goes to ip of loxberry:88/echoloxui/ and not to ip of loxberry/echoloxui/ and there is no button to go back to loxberry from the echoloxui
      Zuletzt geändert von BlackSoll; vor 26 Minuten.

      Kommentar

      • BattloXX
        Dumb Home'r
        • 29.08.2015
        • 19

        #4
        Hi! Thanks for your message and the bug report.
        Fire TV Cube / Fire TV Stick: EchoLox should work with all Alexa-enabled devices, not just Echo speakers — so a Fire TV Cube or Fire TV Stick should work as well. I don't have a Fire TV device myself to test with, so it would be great if you could try it out and let me know how it goes!
        Sonos: I can confirm it works with Sonos on my end — though in that case the communication runs through an Echo device acting as a bridge, so you'd still need an Echo in the mix.
        WebUI bug (port 88 in the shortcut): Thanks for catching that! The shortcut in the LoxBerry menu currently points to ip:88/echoloxui/ instead of ip/echoloxui/ — I'm aware of the issue and will fix it in the next release.
        No "Back to LoxBerry" button: Noted as well — I'll look into adding a navigation link back to the LoxBerry main UI in a future update.
        Thanks again for the detailed report — really helpful!

        Kommentar

        Lädt...