Vorstellung loxMqttRelay: Docker-fähiges MQTT-Gateway "light"

Einklappen
X
 
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge
  • Deepflash
    LoxBus Spammer
    • 08.06.2021
    • 218

    #16
    bin gerade am Aufsetzen von dem Ganzen und habe nun eine kleine Frage:
    Wenn ich es richtig verstanden habe, nimmt loxmqttrelay alle VIs vom Miniserver und schaut am MQTT-Broker nach passenden Werten.
    Wozu müssen dann eigentlich noch Topics oder Filter definiert werden? Um den Pool zu verkleinern, in dem gesucht wird?

    Kommentar


    • Acidcliff
      Acidcliff kommentierte
      Kommentar bearbeiten
      Wenn du die Miniserver-Sync-Funktion benutzt dann ist das richtig - dann brauchst du theoretisch gar keine Filter/Topics mehr setzen.
      Theoretisch könntest du mit "#" auf alle topics subscriben und loxmqttrelay übernimmt den Rest.

      Da das filtern aber erst im letzten Schritt stattfinden kann, erreichst du typischerweise eine bessere Performance, wenn du zumindest die Subscriptions klug aussuchst. Den größten Effekt wird es immer haben, wenn du über die Subscriptions so wählst, dass Topics, die JSON-Payload enthalten, aber ohnehin verworfen werden würden, ausgeschlossen werden. Die sind am rechenintensivsten.

      Wenn du es simpel halten willst, kannst du es aber quasi auch komplett generisch lassen. Das Relay ist wirklich sehr performant.

    • Deepflash
      Deepflash kommentierte
      Kommentar bearbeiten
      aber welchen Vorteil bringt es mit Topic Subscriptions oder Whitelists zu arbeiten, wenn es doch das MiniServer-Sync-Feature gibt:
      Automatic Configuration Sync

      Enable automatic synchronization with your Miniserver's configuration:

      [miniserver]
      sync_with_miniserver = true

      When enabled, the relay will:

      Automatically load Miniserver configuration on startup
      Update the topic whitelist based on Miniserver inputs
      Resync when Miniserver configuration changes

      Caution: This function will assume that every Virtual Input is a possible target for forwarding mqtt messaages.

    • Acidcliff
      Acidcliff kommentierte
      Kommentar bearbeiten
      Einerseits um das letzte bisschen Performance rauszuholen.
      Andererseits (und das war meine hauptsächliche Motivation beides anzubieten) ist die Interaktion mit der Miniserver-Config eigentlich kein von Loxone offiziell vorgesehener Weg. Ich dachte mir, dass sich nicht jeder wohl fühlen wird ein fremdes Programm auf die eigene Konfiguration loszulassen.
  • Deepflash
    LoxBus Spammer
    • 08.06.2021
    • 218

    #17
    noch etwas: offenbar ist der UDP-Port bereits durch das MQTT Gateway vom Loxberry besetzt. Gibt es einen eleganten Weg, das frei zu bekommen?

    Kommentar


    • Deepflash
      Deepflash kommentierte
      Kommentar bearbeiten
      - Antwort: einfach im MQTT Gateway einen anderen Port eintragen

    • <Andreas>
      <Andreas> kommentierte
      Kommentar bearbeiten
      Entweder in den Gateway Settings des loxberrys den "Gateway UDP in-port" ändern oder in Docker einen anderen setzen, dann müsstest du aber auch die Adresse in der Config ändern (zu spät 🙈)
      Zuletzt geändert von <Andreas>; 03.09.2025, 10:45.
  • Deepflash
    LoxBus Spammer
    • 08.06.2021
    • 218

    #18
    also was soll ich sagen, bin nun auch ein- bzw. umgestiegen ohne separaten Broker.
    Das Ergebnis lässt sich sehen (ganz am Ende). Sieht an und für sich nicht so drastisch aus, entscheidend ist aber, dass die ständigen Spikes in der CPU-Nutzung in HTOP komplett weg sind und auch meine IKEA MQTT Lampe mit Display nun flüssig funktioniert. Davor war das furchtbar.. die Zeilen nie synchron, mal gar nicht, mal alles auf einmal... Manchmal haben die schaltbaren Steckdosen einfach nicht reagiert - funktioniert nun prima :-) Vielen Dank an der Stelle auch für die Unterstützung beim einrichten.Klicke auf die Grafik für eine vergrößerte Ansicht

Name: grafik.png
Ansichten: 167
Größe: 132,8 KB
ID: 468529

    Kommentar


    • challo
      challo kommentierte
      Kommentar bearbeiten
      Ich hab auch einfach den loxberry Broker weiter am laufen. Die topics mit vielen Daten bzw. Json laufen über das relay und Dinge mit Transformation oder Umwandlung laufen weiter über loxberry. Funktioniert super bei mir.

    • Acidcliff
      Acidcliff kommentierte
      Kommentar bearbeiten
      Also wenn es nur um die eingebauten Mapper und Transformatoren geht ist es ziemlich überbordend den Loxberry noch laufen zu lassen, oder?
      Da wäre node-red vermutlich die deutlich schlankere/schnellere und durch die Plugins auch erweiterbarere Lösung.

      Ich glaube auch rein architekturell ist es sinnvoll allzuviel "Magie" auf den Transportwegen zu vermeiden

    • challo
      challo kommentierte
      Kommentar bearbeiten
      Hab noch mehr auf dem loxberry laufen. Ansonsten würde ich auch nodered nehmen....
  • <Andreas>
    LoxBus Spammer
    • 07.03.2023
    • 431

    #19
    Hey,

    Das Realy läuft nach wie vor top, ohne einen einzigen ausfall

    Ich wollte fragen ob du es möglich machen könntest MQTT 5 User Properties beim Loxone Ausgang zu übertragen?
    Ich gebe da gern unter anderen die Einheit mit um später mehr Übersicht zu haben

    Danke & Gruß
    Andreas

    Kommentar

  • <Andreas>
    LoxBus Spammer
    • 07.03.2023
    • 431

    #20
    Danke erst einmal für die schnelle Umsetzung wirklich super was du da leistest

    Hab hier aber noch ein kleines Problem, der Container startet in der aktuellen Version nicht mehr Logs bekomme ich auch keine
    Klicke auf die Grafik für eine vergrößerte Ansicht

Name: image.png
Ansichten: 35
Größe: 54,6 KB
ID: 485710

    Ein wenig habe ich schon geforscht, vermutungen angestellt
    rustc_flags=["-C", "target-cpu=x86-64-v3"]
    AVX2 unterstützt meine CPU noch nicht, ich hab gesehen du hast einen fallback eingebaut, evtl. greift der nicht vollständig?

    Kommentar


    • <Andreas>
      <Andreas> kommentierte
      Kommentar bearbeiten
      Bei der neusten Version leider das gleiche Bild, bekomme auch keine weiteren logs

      Kann ich etwas machen um dir weitere Informationen zukommen zu lassen?

    • Acidcliff
      Acidcliff kommentierte
      Kommentar bearbeiten
      Leider kannst du vermutlich gerade nicht mehr tun um Logs zu generieren. Liegt daran, wann genau das XML Modul geladen wird.

      Versuch mal die neuste Version. Am besten direkt gegen den neusten Tag gehen statt auf lastest, damit nicht zufällig was aus dem Cache geholt wird: acidcliff/loxmqttrelay:49709b6aa820868f91cab9c275a917d29165d 73c (Achtung, das Forumsystem fügt hier gerne mal ein Leerzeichen beim Tag hinzu - sollte eigentlich ohne sein)

      Ich hoffe ich hab zumindest das Logging jetzt vorziehen können um mehr zu erfahren (und env variable LOG_LEVEL=DEBUG sollte zumindest für den Test gesetzt sein).

    • <Andreas>
      <Andreas> kommentierte
      Kommentar bearbeiten
      2026-06-06 13:15:38,512 INFO [loxmqttrelay.utils] platform=Linux 4.4.302+ arch=x86_64 (x86=True, avx2=False)

      Also läuft vielen Dank!

      Mein Nas ist mittlerweile in die Jahre gekommen wollte mal Influxdb3 hosten das machte auch schon Probleme, möchte den Neukauf aber noch ein paar Jahre hinauszögern
Lädt...