Ankündigung

Einklappen
Keine Ankündigung bisher.

knxd cache fragt Devices nach Neustart nicht ab

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    knxd cache fragt Devices nach Neustart nicht ab

    Hallo,

    vielleicht hat jemand noch eine Idee.

    Jedesmal, wenn ich mein Raspberry neu starte sind meine Werte (Temperatur-IST-Wert, Stellwerte, Temperatur-Sollwerte, Jalousie usw.) weg.

    Frage ich den knxd-Cache mit dem knxtool (groupcacheread) ab, kommt: Read failed: No such file or directory.

    Frage ich den Wert des Devices mit groupread ab, wird der request gesendet und anschließend bekomme ich auch einen Wert mit groupcacheread zurück und in meiner ViSU erscheint sofort der Wert.

    Dies bedeutet eigentlich für mich, dass der Cache beim Neustart kein INIT auf den BUS macht...

    Ein Item sieht beispielsweise so aus:
    Code:
    Sollwert:
        type: num
        visu_acl: rw
        database@nas: yes
        knx_dpt: 9
        knx_cache: 1/0/3
        knx_send: 1/0/5
    Auch mit knx_init und knx_listen statt knx_cache habe ich kein Erfolg.

    Die Anbindung vom SmarthomeNG.py an den KNX ist mit knxd gemacht:

    Code:
    KNXD_OPTS="-e 0.0.1 -E 0.0.2:8 -c -b ipt:192.168.0.20"
    Die Vermutung ist jetzt, dass SmartHomeNG mit knx_cache den KNXD anfragt einen Wert zu lesen (falls vorhanden aus dem KNXD Cache). Nur wenn er dort nicht vorhanden ist, fragt KNXD das Device selbst an.

    Ich vermute, dass mit meiner KNXD Konfiguration etwas nicht stimmt. Darauf deutet auch hin, dass ich über knx_init keine (vollstänigen) Werte bekomme.

    Ich verwende einen Gira 216700 KNX IP-Router als Schnittstelle.

    mfg

    Micha

    #2
    Zitat von Mischl Beitrag anzeigen
    Dies bedeutet eigentlich für mich, dass der Cache beim Neustart kein INIT auf den BUS macht...
    Also ich bin jetzt ein bisschen raus, aber natürlich macht der knxd das nicht. Denn bei jedem restart den KNX mit 65535 Lesetelegrammen vollzublasen ist weder zielfführend noch besonders geschickt.
    Also früher war das glaube ich so, das ein groupcacheread im Fehlerfall (nichts im Cache) dann ein Lesetelegramm auslöst

    Das muss die Anwendung machen, bei dir wohl SmartHomeNG.py, die sollte wissen, welche Werte sie zum starten braucht.

    Grüsse Makki
    EIB/KNX & WireGate & HS3, Russound,mpd,vdr,DM8000, DALI, DMX
    -> Bitte KEINE PNs!

    Kommentar


      #3
      Genau, die fragt natürlich bestimmte Werte beim knxd-cache an. Wenn dieser nix hat (kann er nicht, da ich den Raspberry neu gestartet habe) erwarte ich eigentlich, das er dieses Device am Bus nach dem Wert fragt...

      Kommentar


        #4
        Hi Micha,

        so wie makki das beschreibt, würde ich es auch erwarten.

        Zitat von Mischl Beitrag anzeigen
        Frage ich den knxd-Cache mit dem knxtool (groupcacheread) ab, kommt: Read failed: No such file or directory.
        Hast Du mal in der ETS im Gruppenmonitor geschaut, ob auf dem Bus ein GroupValueRead kommt? Und wenn ja, wird darauf geantwortet (GroupValueResponse)?

        Wenn kein GroupValueRead kommt, ist es ein Problem vom knxd, wenn kein GroupValueResponse kommt, fehlt ein L-Flag und wenn beides kommt, dann wird im smarthomeNG.py kein knx_listen mehr zusammen mit dem knx_chache gesetzt, dann muss man dort schauen.

        Gruß, Waldemar

        Kommentar


          #5
          Eine Kurze Rückmeldung. Es lag an dem --send-delay=70. Das habe ich eingebaut, danach ging es.

          Auf dem Gruppenmonitor konnte mann sehen, dass ein GroupValueRead in sehr hoher Geschwindigkeit gekommen ist, und nur ein Bruchteil davon geantwortet wurde.

          Vielen Dank für die Hilfe.

          mfg

          Micha

          Kommentar


            #6
            Hallo Micha,

            ich habe das gleiche Problem. SmartHomeNG macht den Init Read auf den Bus und nur ein Teil der Telegramme antwortet.
            Kannst Du mal deinen genauen KNXD_OPTS string hier posten?

            Meiner sieht so aus und funktioniert mit SmartHomeNG und gleichzeitig mit der ETS inkl. Programmierung:
            KNXD_OPTS="-e 0.1.11 -E 0.1.12:8 -c -i -B single -b ipt:192.168.178.148 -DTS"

            => d.h. ich möchte "--send-delay=70" auch noch einfügen, aber egal wie ich es mache, komme ich anschließend mit der ETS nicht mehr drauf oder ich kann mit der ETS nicht programmieren, auch wenn mit SmartHomeNG der Zugriff auf den Bus möglich ist.

            Kannst Du parallel mit der ETS programmieren? Also gleichzeitig mit aktivem SmartHomeNG?


            Grüße,
            Michael

            Viele Grüße,
            Michael

            Kommentar


              #7
              Habe jetzt auch mal die Anleitung von Smurf gelesen (super!) und habe eine funktionierende Konfiguration für die Siemens IP-Schnittstelle N148/21:

              KNXD_OPTS="-e 0.1.11 -E 0.1.12:8 -c -i -B single --send-delay=70 -b ipt:192.168.178.148 -DTS"

              Somit werden bei Initialisierung alle Gruppenadressen verarbeitet und ich kann trotzdem mit der ETS programmieren.


              Grüße,
              Michael
              Viele Grüße,
              Michael

              Kommentar

              Lädt...
              X