Lauftexte auf KNX-Bus?

Einklappen
X
 
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge
  • Riemen
    Smart Home'r
    • 01.10.2016
    • 40

    Lauftexte auf KNX-Bus?

    Hallo,

    ich habe in jedem Raum MDT Glastaster zur Steuerung der Raumfunktionen.

    Auf den Tastern sollen auch Meldungen angezeigt werden. Momentan sind das nur Infos über geöffnete Fenster. In weiteren Ausbaustufen würde ich hier auch gerne Infos zu eingehenden Anrufen, Türklingel, Alarmen usw. anzeigen.

    Leider erlaubt das steinzeitliche KNX-Protokoll ja nur 14-Byte Nachrichten. Die Glastaster zeigen also nur 14 Zeichen an, obwohl die Displays deutlich mehr könnten. Eine Lösung, die von MDT aber explizit erwähnt wird, wären Lauftexte. Dazu müsste man also mehrere Meldungen kurz hintereinander auf den KNX-Bus senden, endeder so, dass die Meldung in 14 Zeichen-Häppchen zerlegt wird und nacheinander die Teile der Meldung eingeblendet werden, oder sogar so, dass die Texte immer um ein oder mehrere Zeichen verschoben gesendet werden, um einen echten Lauftext zu erhalten. Bei letzterer Variante stellt sich noch die Frage, ob der KNX-Bus das schafft, oder ob er dadurch überlastet wird. Ich denke, das müsste man einfach austesten.

    Wie bekomme ich also die Nachrichten geplittet auf den Bus? Mein erster Gedanke wäre ein PicoC-Baustein. Damit könnte ich das zwar umsetzen, aber leider sind die ja begrenzt. eigentlich bräuchte ich ja pro Taster einen davon. Eine mögliche Lösung wäre eine komplexe Schaltung um den Baustein hehrum, die dafür sorgt, dass die Meldung immer an den gewünschten Taster geschickt wird. Das wäre sehr komplex und ich wüsste nicht, wie man damit mehrere Meldungen gleichzeitig realisieren sollte.

    Alternativ gingen noch Statusbausteine, die dann die Lauftexte abhängig von einem Trigger fest hinterlegt haben, also "hello world", "ello world ", "llo world" usw.
    Das wäre ein Riesen-Aufwand und leider gingen auch keine variablen Texte.

    Daher erscheint mir die beste Lösung zu sein, dass über den Loxberry zu realisieren. Hier könnte man einen http-Service einrichten, der die Meldung aus der Loxone empfängt, evtl. mit Parametern, wie das Splitting erfolgen soll und der dann die Antworten mit den 14-Byte-Häppchen an die Loxone zurückschickt. Die korrekte Zuordnung von Sendern/Empfängern könnte dann über einen Service erfolgen.

    Hier nun zu meinen Fragen:
    Ich programmiere beruflich hauptsächlich ABAP, etwas JavaScript und hin und wieder C#. Die Entwicklung der Logik an sich an sich sollte also kein Problem sein. Leider aber ist mein Linux-Wissen sehr beschränkt. Wie würdet Ihr so einen Service am einfachsten umsetzen? Gerne würde ich das Ganze als Loxberry-Plugin entwickeln. Leider habe ich hier gar kein Hintergrundwissen...

    Vielen Dank für eure Inputs
    Tobias
  • Christian Fenzl
    Lebende Foren Legende
    • 31.08.2015
    • 11218

    #2
    Servus Tobias,

    die Herausforderung hier ist gar nicht die Programmiersprache, sondern die Asynchronität, in der das abgewickelt werden muss:
    Wenn du einen längeren Text von MS an ein LB-Script schickst, dann ist das nicht mit einer Antwort erledigt. Vielmehr muss das Script dann für eine Zeit aktiv bleiben und die ständig modifizierten Zeichenfolgen in 14-Byte-Länge senden. Soweit kein Problem.

    Es gibt dann aber Konfliktpotenziale:
    - Was macht der Taster, wenn du dort was drückst, aber nachwievor die Scrollsequenz gesendet wird?
    - Was macht das Script, wenn zwischenzeitlich ein neuer Text einlangt, während die vorherige Routine noch sendet?
    - Wielange soll gesendet werden, und wie beendest du das Senden?

    Mit C- und JS-Erfahrung bist du recht schnell mit PHP „codingfähig“. Probier einfach mal ein normales Script, dass von der Commandline oder per Web gestartet wird. Schau dir unser SDK wegen Zugriff auf Miniserver-Daten und IO an.
    Ein GUI, Daemon, Setup kann man dann später rundherum bauen - da helfen wir gerne.

    Bei Fragen rund um LoxBerry und SDK schick mir deine WhatsApp Telefonnummer zur Aufnahme in die Developer-Gruppe.

    lg, Christian
    Hilfe für die Menschen der Ukraine: https://www.loxforum.com/forum/proje...Cr-die-ukraine

    Kommentar

    • svethi
      Lebende Foren Legende
      • 25.08.2015
      • 6292

      #3
      Ich halte von solchen Vorhaben nichts. Um einen Lauftext zu erzeugen, muss Du die Texte schnell senden. Das sind dann in schneller Folge über einen gewissen Zeitraum ununterbrochen 14Byte. Man muss sich nicht die Mühe machen ständig andere Zeichen zu senden um den Bus zu flooden.
      Miniserver; KNX; Vitogate; EnOcean (EnOceanPi); Loxone Air; Caldav-Kalenderanbindung; RaspberryPi und für keine Frickellösung zu schade :-)

      Kommentar

      • Riemen
        Smart Home'r
        • 01.10.2016
        • 40

        #4
        svethi: Das ich mir der Busproblematik bewusst bin, habe ich oben ja schon geschrieben. Die Alternative zu echtem Lauftext habe ich ja auch schon genannt. Aber Du hast recht, bevor ich mich überhaupt an die Entwicklung mache, werde ich erstmal wie oben beschrieben testen, wie sich der Bus bei so zahlreichen Meldungen überhaupt verhält.

        Christian Fenzl: Das sind gute Hinweise. Falls obige Tests positiv ausfallen, werde ich bei Gelegenheit mal mein Glück beim Scripten versuchen.

        Kommentar

        Lädt...