Ankündigung

Einklappen
Keine Ankündigung bisher.

- √ - Schalten aus der Visu funktioniert nicht mehr.Fehler im Log

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

    - √ - Schalten aus der Visu funktioniert nicht mehr.Fehler im Log

    Hallo,

    wie schon im Titel beschrieben, funktioniert das Schalten aus der Visu nicht mehr.

    Folgender Fehler im Log:

    2014-06-25 21:06:48,671 DEBUG Connections KNX: connected to 127.0.0.1:6720 -- connection.py:connect:386
    2014-06-25 21:06:48,679 DEBUG Connections KNX: reading eibd cache -- __init__.py:handle_connect:113
    2014-06-25 21:06:48,740 ERROR Connections Method Connections exception: invalid literal for int() with base 10: '22, 2' -- scheduler.py:_task:348
    Traceback (most recent call last):
    File "/usr/smarthome/lib/scheduler.py", line 344, in _task
    obj()
    File "/usr/smarthome/lib/connection.py", line 84, in check
    obj.connect()
    File "/usr/smarthome/lib/connection.py", line 387, in connect
    self._connected()
    File "/usr/smarthome/lib/connection.py", line 218, in _connected
    self.handle_connect()
    File "/usr/smarthome/plugins/knx/__init__.py", line 115, in handle_connect
    self._cacheread(ga)
    File "/usr/smarthome/plugins/knx/__init__.py", line 82, in _cacheread
    pkt.extend(self.encode(ga, 'ga'))
    File "/usr/smarthome/plugins/knx/__init__.py", line 143, in encode
    return dpts.encode[str(dpt)](data)
    File "/usr/smarthome/plugins/knx/dpts.py", line 308, in enga
    return [int(ga[0]) << 3 | int(ga[1]), int(ga[2])]
    ValueError: invalid literal for int() with base 10: '22, 2'
    Ich kann mit dem Fehler nichts anfangen. Wäre jemand so nett und würde mir sagen was das sein kann?

    Folgendes funktioniert/habe ich gemacht...
    Ich habe nur in 1 Item eine Gruppenadresse geändert bei knx_cache (habe eine 2 Adresse eingefügt)
    Danach halt nur smarthome.py neu gestartet, aber nun schaltet nichts mehr. Es wird auch nicht mehr angezeigt (also Temperatur und so)
    Die Visu selbst wird angezeigt.
    Habe an den I/O Connection Einstellungen nichts verändert (hab aber nach dem Ausfall testweise den Namen des Raspi anstatt der IP eingetragen, bringt aber auch nichts. Habs wieder zurück auf die IP geändert. Auch an keiner anderen conf Datei oder ähnlich habe ich was geändert.

    Zugriff über ETS und die Rot im Raspi funktioniert.
    Komme an alle Daten ran. Sicherung ist auch vorhanden.
    Reboot des Raspi hat auch nichts gebracht.

    Wäre echt super wenn mir jemand helfen könnte.

    Vielen Vielen Dank
    Gruß
    Wolfgang

    #2
    So, nach ein wenig suchen im Forum konnte ich den identischen Fehler in einem anderen Thread finden.
    Allerdings kann ich das nicht nachvollziehen.

    Der Fehler scheint scheinbar folgende GA im Item sein:

    knx_cache = 2/4/22, 2/4/20

    Ich darf die doch so hintereinander schreiben, oder?
    (steht zumindest bei knx_listen so in der Doku https://github.com/mknx/smarthome/wi...smarthomeitems)


    Wenn ich die 2. GA weg mache, und smarthome neu starte, kommt nach wie vor der Fehler. Wenn ich aber den Raspi neu starte (das stand in dem anderen Thread wo der Fehler behandelt wurde) dann geht wieder alles.

    Geht das mit knx_cache und 2 GA nicht?

    Vielen Dank trotzdem schonmal

    Gruß
    Wolfgang

    Kommentar


      #3
      Code:
      knx_cache = 2/4/22 | 2/4/20

      Kommentar


        #4
        Das war mein erster ansatz aber hat auch nicht funktioniert! Danach hab ich mir dann die Doku gesucht und habs mit Komma geschrieben! Danach kam dann der Fehler! Werde es morgen Abend aber nochmal testen! Vielleicht war ja ein Tippfehler drin beim ersten mal! Danke für den Tipp
        Gruß
        Wolfgang

        Kommentar


          #5
          Wenn ich den Code (und die Doku im Wiki) richtig interpretiere, darf man bei knx_init und knx_cache nur ein Item angeben. Was auch Sinn macht, denn warum soll beim Starten von sh.py der Status von zwei unterschiedlichen Objekten gelesen werden? Wenn hier zwei unterschiedliche Werte kommen würden, welcher wäre dann der richtige. Ergibt also keinen Sinn.

          EDIT: @Marcus, wenn dem so ist sollten wir dort vielleicht eine Fehlerbehandlung einbauen
          Mit freundlichen Grüßen
          Niko Will

          Logiken und Schnittstelle zu anderen Systemen: smarthome.py - Visualisierung: smartVISU
          - Gira TS3 - iPhone & iPad - Mobotix T24 - ekey - Denon 2313 - Russound C5 (RIO over TCP Plugin) -

          Kommentar


            #6
            Hallo,

            ok, das mit dem init würde einleuchten. Hab das gestern Abend auch nochmal mit knx_listen = 2/4/22, 2/4/20 probiert.

            Aber hier reagiert das Item nicht.
            Ist knx_listen = 2/4/22 | 2/4/20 richtig?

            Hab eigentlich überall bei mir knx_cache stehen, da das fast überall im Forum so kommuniziert wird. Dann ist das hier wohl der Sonderfall wo es nicht funktioniert.

            Danke

            Kommentar


              #7
              knx_listen reagiert erst, wenn ein entsprechendes Telegramm über den Bus empfangen wird. Solange hat das Item den Default Wert. Du müsstest also eine der GAs bei knx_cache angeben und das andere bei knx_listen.

              EDIT: und laut Doku ist

              Code:
              knx_listen = 2/4/22 | 2/4/20
              richtig.
              Mit freundlichen Grüßen
              Niko Will

              Logiken und Schnittstelle zu anderen Systemen: smarthome.py - Visualisierung: smartVISU
              - Gira TS3 - iPhone & iPad - Mobotix T24 - ekey - Denon 2313 - Russound C5 (RIO over TCP Plugin) -

              Kommentar


                #8
                Hallo,

                auch wenn ich sehr dankbar für all die Arbeit bin dir hier von einigen gemacht wird, und den netten Hinweisen zu Fehlern wie meinem jetzt.

                Aber im Github steht folgendes:

                Hier werden Logiken definiert.
                evtl. wird hier später noch etwas ergänzt, im Moment verweise ich auf die offizielle Dokumentation, da ich logiken noch nicht angegangen bin.
                /usr/smarthome/items/*.conf

                Hier werden alle Größen/Objekte/Elemente definiert. Beispielsweise der Status der Haustür, die Temperatur im Wohnzimmer, ... Dies ist erstmal ganz unabhängig vom KNX. Es können aber auch Objekte vom KNX Plugin sein.
                Es sind einfache Operationen möglich wie average, sum, Or, ...
                Hier werden die Objekte nur definiert. Danach können die Items als sh.ItemName&Co verwendet werden.
                Beispiel:
                ['living_room']
                'light'
                type = bool
                knx_dpt = 1
                knx_send = 1/1/3
                knx_listen = 1/1/4, 1/1/5
                knx_init = 1/1/4
                Ich weiß nun das das nicht richtig ist, aber ich habe es definitiv auf offizieller Seite gelesen.Ich werde knx_listen nutzen, und knx_cache für diesen Fall weg lassen.
                Danke für die Hilfe
                Gruß
                Wolfgang

                Kommentar


                  #9
                  Zumindest in der Doku steht es so: KNX ? SmartHome.py 1.0 documentation
                  Mit freundlichen Grüßen
                  Niko Will

                  Logiken und Schnittstelle zu anderen Systemen: smarthome.py - Visualisierung: smartVISU
                  - Gira TS3 - iPhone & iPad - Mobotix T24 - ekey - Denon 2313 - Russound C5 (RIO over TCP Plugin) -

                  Kommentar


                    #10
                    Hi,

                    hier kommen wohl mehrere Sachen zusammen:
                    1. Früher wurden Listeinträge (also mehrere Objekte in der conf hintereinander) durch Komma getrennt. Das hat Markus später in ein | geändert, aber es gibt noch einige (alte) Beispiele, wo ein komma drin steht
                    2. knx_cache, knx_listen und knx_init sind durchaus verschiedene Parameter, die alle ihre Berechtigung haben und natürlich sinngemäß verwendet werden sollten:
                      • knx_listen: Das Item wird immer mit den Werten aktualisiert, die für die angegebene GA auf dem Bus vorkommen. Das können natürlich auch mehrere GA sein (Liste, Einträge getrennt durch |)
                      • knx_init: Beim starten von sh soll sich das Item mit dem Wert der angegebenen GA initialisieren. Dazu wird ein Read-Befehl auf den Bus gesendet und die Antwort für die Initialisierung des Wertes benutzt. knx_init
                        meint auch gleichzeitig ein knx_listen für die GA, aber natürlich nur für EINE GA, da der Initialwert ja nur aus einer Quelle kommen kann.
                      • knx_cache: Wie knx_init, nur wird zuerst versucht, den Wert der GA aus dem eibd-cache zu lesen und sich so den Read-Befehl auf den Bus zu sparen, was die Buslast vermindert. Auch hier ist nur eine GA zugelassen
                    3. Was im Forum häufig kommuniziert wird bzw. auch die Empfehlung ist: Man nehme statt knx_init immer knx_cache, da dann die Buslast beim Starten von sh geringer ist. Und knx_listen kann man immer weglassen, wenn einer der anderen beiden (knx_init, knx_cache) angegeben ist - sofern man nur auf eine Adresse hören will!


                    Was Du erreichen willst, machst Du indem Du knx_cache mit EINER der beiden GA machst, und knx_listen mit der anderen.

                    Ich hoffe, ich habe alle Klarheiten beseitigt

                    Gruß, Waldemar
                    OpenKNX www.openknx.de

                    Kommentar


                      #11
                      Zitat von mumpf Beitrag anzeigen
                      Was Du erreichen willst, machst Du indem Du knx_init mit EINER der beiden GA machst, und knx_listen mit beiden.
                      Diejenige, die bei knx_cache bzw. knx_init angegebene ist, braucht man bei knx_listen nicht nochmal angeben
                      Mit freundlichen Grüßen
                      Niko Will

                      Logiken und Schnittstelle zu anderen Systemen: smarthome.py - Visualisierung: smartVISU
                      - Gira TS3 - iPhone & iPad - Mobotix T24 - ekey - Denon 2313 - Russound C5 (RIO over TCP Plugin) -

                      Kommentar


                        #12
                        Hi,

                        danke für den Hinweis - ich war mir nicht sicher, ob ein knx_listen nicht eventuell ein anderes (implizites) nicht überschreibt.

                        Ich habe jetzt meine Antwort verbessert - auch dass man natürlich knx_cache verwenden sollte.

                        Gruß, Waldemar
                        OpenKNX www.openknx.de

                        Kommentar


                          #13
                          Zitat von mumpf Beitrag anzeigen
                          Was Du erreichen willst, machst Du indem Du knx_cache mit EINER der beiden GA machst, und knx_listen mit der anderen.
                          Jo, wie ich bereits drei Posts vor dir schon geschrieben habe

                          Zitat von 2ndsky Beitrag anzeigen
                          Du müsstest also eine der GAs bei knx_cache angeben und das andere bei knx_listen.
                          Mit freundlichen Grüßen
                          Niko Will

                          Logiken und Schnittstelle zu anderen Systemen: smarthome.py - Visualisierung: smartVISU
                          - Gira TS3 - iPhone & iPad - Mobotix T24 - ekey - Denon 2313 - Russound C5 (RIO over TCP Plugin) -

                          Kommentar


                            #14
                            Wer lesen kann ist klar im Vorteil... Ich habe diesen Satz von dir komplett überlesen, sorry!

                            Gruß Waldemar
                            OpenKNX www.openknx.de

                            Kommentar


                              #15
                              Kein Ding... besser zwei schreiben es als keiner
                              Mit freundlichen Grüßen
                              Niko Will

                              Logiken und Schnittstelle zu anderen Systemen: smarthome.py - Visualisierung: smartVISU
                              - Gira TS3 - iPhone & iPad - Mobotix T24 - ekey - Denon 2313 - Russound C5 (RIO over TCP Plugin) -

                              Kommentar

                              Lädt...
                              X