Ankündigung

Einklappen
Keine Ankündigung bisher.

Home Assistant

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

    #16
    Nein, es geht um einen Timeout in group_read(). Ich habe das mal angepasst. Jetzt blockiert die Funktion erstmal nicht mehr. Interessant wird es aber sein, rauszufinden, warum vom KNX-Bus keine Antwort kommt.
    Du kannst mal die neue Version der pknx von Github holen und nochmal probieren.
    https://github.com/usul27/pknx/blob/master/knxip/ip.py

    Kommentar


      #17
      hass laded nun weiter!

      Folgende KNX Programmierung:

      Gruppe - Licht Büro - 2/1/1
      - 1.1.205 Merten REG K/2x230 - Aktives Rückmelden für den Richtigen Kanal
      - Taster
      Gruppe - Status Licht Büro - 2/1/24
      - 1.1.205 Merten REG K/2x230 - Aktives Rückmelden für den Richtigen Kanal

      Frage: Kann ich das Aktive Rückmeldeobjekt eigentlich in die Selbe Gruppe geben?

      yaml:
      Code:
       switch 2:
        name: KNX Switch
        platform: knx
        address: 2/1/1
        state_address: 2/1/24
      Er loopt nun beim group_read andauernd

      Haas Log
      Code:
      INFO:homeassistant.core:Bus:Handling <Event knx_frame_received[L]: [4353, [1]]>
      Irgendwie bekommt er nicht mit das er schon den status bekommen hat

      Der Call kommt immer wieder von hass
      Code:
      group_read, ip.py:352
      update, knx.py:190
      is_on, knx.py:163
      state entity.py:232
      update_ha_state, entity.py:147
      handle_frame, knx.py:149
      handle_frame(), core.py:809
      job_handler(core.py):809
      hoffenltich hilft dir das was

      Vieleicht wäre ein Chat nicht schlecht gemeinsam
      Hätte dich in Gitter eingeladen oder pm mir Skype wennst hast

      Kommentar


        #18
        Wenns nicht geht bekommt ich den Timeout vom , eh klar.

        Code:
        ERROR:homeassistant.components.knx:Unable to read from KNX address: 4353
        Traceback (most recent call last):
          File "C:\Users\David\Source\Repos\home-assistant\homeassistant\components\knx.py", line 195, in update
            self._state = res[0]
        TypeError: 'NoneType' object is not subscriptable
        ERROR:homeassistant.components.knx:Unable to read from KNX address: 4353

        Kommentar


          #19
          Sehe aber auch keine State Requests im Gruppen Monitor wenn es nicht geht, vieleicht sendet er das UDP wirklich nicht weg, mal am Wireshark anwerfen

          Kommentar


            #20
            Ich glaub ich habe was gefunden :-)

            Kann sein das der Weinzierl 730 nur bestimmte anzahl von knxip tunnel aufbauen bzw. als UDP Reciever registrieren kann?

            Wenn es nicht funktioniert und ich mit meinen Test Script das KNXTunnel.Connect aufrufe bekomme ich folgendes im Logger(Debug Mode)

            Code:
            Connected KNX IP tunnel (Channel: 0)
            Bytes beim Verbinden

            ip.py - Line 310>
            Code:
            if r_sid == KNXIPFrame.CONNECT_RESPONSE: 
                 self.channel = received[6]     logging.debug(         "Connected KNX IP tunnel (Channel: {})".format(           self.channel, self.seq))
            received = b'\x06\x10\x02\x06\x00\x08\x00$' = self.channel = 0




            Kommentar


              #21
              Das wird es sein.

              Pythons Garbage collect schließt zwar den Socket sauber.
              Aber die Verbindung am KNX GW(Mein Weinzierl 730) bleibt noch offen.

              Aus der Doku:
              https://docs.python.org/3.5/howto/sockets.html

              Python takes the automatic shutdown a step further, and says that when a socket is garbage collected, it will automatically do a close if it’s needed. But relying on this is a very bad habit. If your socket just disappears without doing a close, the socket at the other end may hang indefinitely, thinking you’re just being slow. Please close your sockets when you’re done.

              Kommentar


                #22
                Sieht interessant aus. Sehr aktiv.

                Kommentar


                  #23
                  Das Socket zu schliessen hilft nicht wirklich, da es sich um ein UDP socket handelt und daher keine eigentliche "Verbindung" zum Gateway existiert. Das Weinzierl-Gateway räumt die Verbindungen eigentlich sofort auf, wenn die Gegenseite auf irgendein Paket nicht antwortet.
                  Aber irgendwo muss dennoch ein Fehler beim Verbindungsaufbau zum Gateway drin sein. Ich muss mal überlegen, wie man das am besten debuggen kann. Heute Abend könnten wir das mal zusammen durchspielen. Kann dann mal in Gitter reinschauen.

                  Kommentar


                    #24
                    Bei mir ist es ein Gira KNX IP-Router (2167 00) und die angesprochenen die beiden GAs liegen auf Gira Dimmaktor 4fach (2174 00) bzw. Schaltaktor 16fach / Jalousieaktor 8fach (1038 00).

                    Kommentar


                      #25
                      Ok, irgendwo gibt es noch ein Problem, ich kann es bei mir nur noch nicht nachstellen
                      Bitte mal folgendes in die configuration.yaml einfügen und die KNX logs posten:

                      logger:
                      default: critical
                      logs:
                      homeassistant.components.knx: debug
                      root: debug

                      Kommentar


                        #26
                        Hallo knxmfbp,

                        kannst du nochmal die letzte Version von Github probieren. In der KNX-Bibliothek gab es einige Anpassungen, vor allem ist aber das Logging jetzt besser. Dann noch das Debugging einschalten:

                        logger:
                        default: warning
                        logs:
                        homeassistant.components.knx: debug
                        root: debug

                        Dann sollte es einfacher sein rauszufinden, wo es bei dir klemmt.

                        Kommentar


                          #27
                          Som dank viel Hilfe von David, scheint das Ding jetzt zu funktionieren. Wer testen will kann diesen Branch hier von Github runterladen:
                          https://github.com/usul27/home-assistant/tree/knx-dev

                          Oder einfach mal warten, wie lange es geht, bis der Code im offiziellen Release drin ist - mal schauen, wie viele Anmerkungen und Anpassungewünsche da noch kommen.

                          Kommentar


                            #28
                            Habe es endlich Testen können und die Verbindung scheint soweit zu funktionieren.
                            Einziges was mir mit einer GA für eine Lampe aufgefallen ist dass im Web UI kein korrektes Update gemacht wird. Leuchte schaltet ein, Web UI zeigt an dass Lampe an ist, wenn ich jetzt das Licht ausschalte bleibt im UI die Anzeige unverändert. Wenn ich jetzt noch mehrmals das Licht ausschalte bleibt die Anzeige im UI unverändert und am Bus ändert sich nichts. Im Logging kann ich auch sehen dass der Wert bereits 0 ist im Cache:
                            Code:
                            16-07-04 09:29:50 DEBUG (ThreadPool Worker 14) [root] Got value of group address 263 from cache: [0]
                            16-07-04 09:29:50 DEBUG (ThreadPool Worker 14) [root] Got value of group address 263 from cache: [0]
                            16-07-04 09:29:50 DEBUG (Thread-86) [root] Received tunneling ACK
                            16-07-04 09:29:50 DEBUG (ThreadPool Worker 14) [root] Got value of group address 263 from cache: [0]
                            16-07-04 09:29:50 DEBUG (ThreadPool Worker 14) [root] Got value of group address 263 from cache: [0]
                            16-07-04 09:29:50 DEBUG (ThreadPool Worker 14) [root] Got value of group address 263 from cache: [0]
                            16-07-04 09:29:50 DEBUG (ThreadPool Worker 1) [root] Got value of group address 263 from cache: [0]
                            16-07-04 09:29:50 DEBUG (ThreadPool Worker 1) [root] Got value of group address 263 from cache: [0]
                            16-07-04 09:29:52 DEBUG (ThreadPool Worker 4) [root] Got value of group address 263 from cache: [0]
                            16-07-04 09:29:52 DEBUG (ThreadPool Worker 4) [root] Got value of group address 263 from cache: [0]
                            16-07-04 09:29:52 DEBUG (Thread-88) [root] Received tunneling ACK
                            16-07-04 09:29:52 DEBUG (ThreadPool Worker 4) [root] Got value of group address 263 from cache: [0]
                            16-07-04 09:29:52 DEBUG (ThreadPool Worker 4) [root] Got value of group address 263 from cache: [0]
                            16-07-04 09:29:52 DEBUG (ThreadPool Worker 4) [root] Got value of group address 263 from cache: [0]
                            16-07-04 09:29:52 DEBUG (ThreadPool Worker 4) [root] Got value of group address 263 from cache: [0]
                            16-07-04 09:29:52 DEBUG (ThreadPool Worker 4) [root] Got value of group address 263 from cache: [0]
                            16-07-04 09:30:00 DEBUG (ThreadPool Worker 8) [root] Got value of group address 260 from cache: [0]
                            16-07-04 09:30:00 DEBUG (ThreadPool Worker 7) [root] Got value of group address 263 from cache: [0]
                            16-07-04 09:30:00 DEBUG (ThreadPool Worker 8) [root] Got value of group address 260 from cache: [0]
                            16-07-04 09:30:00 DEBUG (ThreadPool Worker 7) [root] Got value of group address 263 from cache: [0]
                            16-07-04 09:30:00 DEBUG (ThreadPool Worker 8) [root] Got value of group address 260 from cache: [0]
                            16-07-04 09:30:00 DEBUG (ThreadPool Worker 7) [root] Got value of group address 263 from cache: [0]
                            Nur mit einem Refresh der Seite wird die Anzeige korrekt dargestellt.
                            Als nächstes muss ich mal ein zwei Räume komplett abbilden, dann wird das Testen auch einfacher und schöner.

                            Kommentar


                              #29
                              Der KNX Aktor der die Lampe Schaltet sollte einen Status Retourmelden, bei mir funktioniert dies einwandfrei und fast in Echtzeit < 0,5s
                              Überprüfe im ETS ob der KNX Aktor hier seinen aktuellen status retour meldet, bei meinen Merten KNX Aktoren musste ich dies speziell festlegen.

                              Kommentar


                                #30
                                Der Statusupdate über KNX scheint ja zu funktionieren. Es geht also nur um das Anzeigen im Interface. Benutzt du die letzte Version (von Sonntag) oder eine ältere?

                                Kommentar

                                Lädt...
                                X