Ankündigung

Einklappen
Keine Ankündigung bisher.

Systemstart und sendtcp()

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

    #61
    Zitat von enertegus Beitrag anzeigen
    Was auch immer das Problem ist, wir wollen das nun mal genauer eingrenzen. Dazu ist es sehr hilfreich, wenn wir das Problem auf die minimale Konfiguration herunterbrechen können.
    Der Verbindungsaufbau wird ja nur mit dem Basismakro CommandFusion(Name,IPSender, Pass) hergestellt.
    Daher benötigt man noch nicht mal GAs etc.
    Wir wollen daher so anfangen, dass wir dem EibPC nur dieses eine Makro zur Verfügung stellen. Ein PC, welcher die Verbindungsanfrage initiiert, soll das iPad simulieren. Hier können wir sicher stellen, dass der PC sich ordentlich verhält.
    Das macht natürlich nur Sinn, wenn Ihr das Problem beim Aufbau der Verbindung gleichermaßen in einer Minimalkonfiguration nachvollziehen könnt. Falls nicht, können wir Schritt für Schritt diese Konfiguration erweitern, bis der Übeltäter ans Licht kommt. Daher die Frage: Wie ist dass in diesem Fall bei Euch, klappt es dann?
    Hallo enertegus - gibt es hier schon erste Ergebnisse oder wartest du auf Daten von uns? Hab scheinbar irgendwie "den Faden verloren"

    Kommentar


      #62
      Zitat von KNXFan1970 Beitrag anzeigen
      Hallo enertegus - gibt es hier schon erste Ergebnisse oder wartest du auf Daten von uns? Hab scheinbar irgendwie "den Faden verloren"
      Ja, wenn jemand wie oben beschrieben verfahren könnte. Ich wollte das eigentlich auch diese Woche selbst mal anschauen oder einen Kollegen geben. Ich war diese Woche aber recht viel unterwegs, dann war noch eine neue SynOhr-Beta fällig und dann hat es auch noch gleich zwei Kollegen mit Magen-Darm Infekt erwischt...
      offizielles Supportforum für den Enertex® EibPC: https://knx-user-forum.de/eibpc/
      Enertex Produkte kaufen

      Kommentar


        #63
        Zitat von enertegus Beitrag anzeigen
        Ja, wenn jemand wie oben beschrieben verfahren könnte. Ich wollte das eigentlich auch diese Woche selbst mal anschauen oder einen Kollegen geben.
        Na ja - will schon gern mithelfen, um das Problem in den Griff zu bekommen - aber auf der anderen Seite läuft ja der eibPC in der Elektroanlage produktiv und übernimmt diverse Steuerungs- und Überwachungsaufgaben. Da mal schnell alles wegzunehmen und eine Testumgebung zu schaffen ist eher ungewöhnlich. Ist es nicht einfacher dies in eurer sicherlich vorhandenen Testumgebung vorzunehmen?

        Kommentar


          #64
          So, nun in der Testumgebung (hat leider etwas länger gedauert):
          Wie ich schon vermutet habe, ist der Connect da immer in weniger als 3..4 Sekunden da. Egal ob ich das nun in den Hintergrund schiebe und von dort aufmache oder im Vordergrund habe (7 Versuche);:
          Ich habe mir extra ein weiteres iPad (Air) geholt, da ich in der Testumgebung (iPad2) die alte CF Software laufen habe. Das soll mir auch etwas als "hier geht alles" dienen.
          Ich habe nur wenige Joins, einer zeigt mir die Zeit im Sekundentakt. Damit kann ich sehen, wie lange der Verbindungsaufbau dauert.
          Das alles mit der "alten" Software. Ich spiele das nun auch auf den neuem iPad mit aktuellster Software ein...
          offizielles Supportforum für den Enertex® EibPC: https://knx-user-forum.de/eibpc/
          Enertex Produkte kaufen

          Kommentar


            #65
            Zitat von enertegus Beitrag anzeigen
            Wie ich schon vermutet habe, ist der Connect da immer in weniger als 3..4 Sekunden da. Egal ob ich das nun in den Hintergrund schiebe und von dort aufmache oder im Vordergrund habe (7 Versuche)
            Mit Connect meinst du, bis das "p=ok" raus geht?!

            Ich habe nur wenige Joins, einer zeigt mir die Zeit im Sekundentakt. Damit kann ich sehen, wie lange der Verbindungsaufbau dauert.
            So ist das nur möglich, wenn der eibPC für sich die Verbindung schon beendet hat, denn sonst schickt er weiter, auch schon am neuen Port, auch wenn der neue Connect noch nicht beantwortet wurde und der CF zeigt es auch schon an.

            Code:
            	if !Name_Connected or [B][COLOR="Blue"](Name_Connected and size(Name_MQueue)==0u16)[/COLOR][/B] then {	
            		Name_MQueue=Name_EndLimiter+Name_Message;
            		/* Init Data if an incomplete Message was in Queue*/;
            		Name_PosCount=0u16;
            		Name_Pos=0u16;
                    	Name_CommandCount=0;
                    	Name_Command=$$;
                    	[B][COLOR="blue"]Name_Port=Name_SenderPort;
                    	Name_IPC=Name_SenderIPC;[/COLOR][/B]
            		#ifdef DEBUG
            		if Name_Debug then write('1/2/3'c14,$NM:$c14+convert(Name_Message,$$c14)) endif;
            		#endif 
            	} endif;
            Bei "ersten Connects" kommt aber das Problem hinzu, dass der CF das Init erst schickt, wenn ein "p=ok" kam und der eibPC dann erst die Daten einsammelt und peu a peu an den CF schickt.

            3-4 Sekunden sind also schon sehr lang, bei mir schwankt das zwar wesentlich stärker, die ersten Daten dauern aber noch mal "ewig".

            Kannst du mal 10-15 Verbindungsversuche mitloggen und mir schicken?
            BR
            Marc

            Kommentar


              #66
              So und nun mit dem neuen iPad Air. Hier ist der Connect im Bereich kleiner 1 Sekunde (zig versuche):

              Mein Code ist der folgende
              Code:
              CommandFusion(iPad,0.0.0.0,EibPC)
              // LEDs
              JoinToggleGA(iPad,d4609,"Taste 1 - LED 1 EIN/AUS-0/1/0")
              JoinToggleGA(iPad,d4612,"Taste 2 - LED 2 EIN/AUS-0/1/1")
              JoinToggleGA(iPad,d4612,"Taste 3 - LED 3 EIN/AUS-0/1/2")
              // Anzeigen
              JoinStatus(iPad,s2901,setdate())
              JoinStatus(iPad,s2900,settime())
              JoinStatus(iPad,s5301,"SynOhrIstTemperatur-0/5/0")
              JoinStatus(iPad,s4621,"SynOhrIstTemperatur-0/5/0")
              JoinStatus(iPad,s4622,"SynOhrSollTemperatur-0/5/1")
              JoinStatus(iPad,s4623,"Soll-Temperatur-0/3/1")
              JoinDimmer(iPad,a4601,"Wippe7/8 - Dimmer Alternierend-0/1/5")
              // Dimmer
              JoinToggleGA(iPad,d4606,"Wippe5/6 - Dimmer EIN/AUS-0/1/4")
              JoinToggleGA(iPad,d4606,"Taste 4 - LED 4 EIN/AUS-0/1/3")
              //Dimmer muss immer eingeschaltet werden, damit Lampen leuchten
              Join2Command(iPad,d4615,write("Taste 1 - LED 1 EIN/AUS-0/1/0",EIN),write("Taste 2 - LED 2 EIN/AUS-0/1/1",EIN))
              JoinCommand(iPad,d4695,allesAus=EIN))
              //Szenen
              JoinCommand(iPad,d4696,storescene('10/0/0'u08,1u08))
              JoinCommand(iPad,d4691,callscene('10/0/0'u08,1u08))
              Am iPad Air ist die Zeit bis zum Connect viel kürzer, v.a. wenn man die Option "Disconnect On Exit/Sleep" anwählt.

              Der EibPC hat auch so was zu tun, macht dazu einige Logiken und 11 Webpages, ist also nicht "leer".

              Wenn überhaupt ist ein Fehler nur reproduzierbar, wenn ich die zwei iPads gleichzeitig einschalte. Das passt natürlich nicht zu meiner obigen Konfig, da ich ja mit 0.0.0.0 alle Verbindungen annehme und dann die Verarbeitung nicht mehr passen kann.

              Wenn ich das laufende CF einfach aus den Tastmanager schieße, muss ich entweder warten, bis der Timeout vom EibPC zuschlägt oder ich bringe CF mal kurz in den Hintergrund und wieder nach vorne (dann sorgt die Option Disconnect offenbar für den sauberen Abschluß).

              Im Systemmanager habe ich natürlich nur das iViewer-Protokoll gewählt und den Join für die Verbindung auf die ID 0 (sowas ist ja im EibPC nicht vorgesehen). Ob letzteres was ausmacht, weiß ich nicht. Auf keinen Fall hier irgendwelche eigenen Definitionen machen, aber das sollte klar sein.

              Ich kann nur festhalten: Hier (mit obigem Programm) geht iViewer4 und iPad Air sehr flüssig und schnell, Verbindungsaufbau in weniger als 1 Sekunde. Aber selbst das iPad2 ist immer noch sehr gut nutzbar und die Verbindung wird in weniger als 3 Sekunden am Bildschirm dargestellt.

              Welche iPads verwendet Ihr denn?

              Anbei noch die Wiresharklogs, damit mir das auch geglaubt wird (Filter z.B. ip.addr==192.168.23.32 and tcp).
              Angehängte Dateien
              offizielles Supportforum für den Enertex® EibPC: https://knx-user-forum.de/eibpc/
              Enertex Produkte kaufen

              Kommentar


                #67
                Zitat von saft6luck Beitrag anzeigen
                Kannst du mal 10-15 Verbindungsversuche mitloggen und mir schicken?
                siehe anbei (nur noch iPad Air und iViewer 4).
                EDIT
                So ist das nur möglich, wenn der eibPC für sich die Verbindung schon beendet hat, denn sonst schickt er weiter, auch schon am neuen Port, auch wenn der neue Connect noch nicht beantwortet wurde und der CF zeigt es auch schon an.
                Hab ich eben nach im Log nachgesehen. Das passt schon, der EibPC sendet immer auf den neuen Kanal. Der alte Kanal ist dann wohl sauber geschlossen. Nur wenn ich das mit dem Abschießen mache (s.o.) ist das so beobachtbar, aber das dürfte ja nun nicht Eurer Problem sein. Also welches iPad nutzt ihr nochmal?
                Angehängte Dateien
                offizielles Supportforum für den Enertex® EibPC: https://knx-user-forum.de/eibpc/
                Enertex Produkte kaufen

                Kommentar


                  #68
                  Zitat von enertegus Beitrag anzeigen
                  siehe anbei (nur noch iPad Air und iViewer 4).
                  EDIT

                  Hab ich eben nach im Log nachgesehen. Das passt schon, der EibPC sendet immer auf den neuen Kanal. Der alte Kanal ist dann wohl sauber geschlossen. Nur wenn ich das mit dem Abschießen mache (s.o.) ist das so beobachtbar, aber das dürfte ja nun nicht Eurer Problem sein. Also welches iPad nutzt ihr nochmal?
                  Ich nutze ein iPad Air und ein Air 2. Zeitweise ein iPad mini.

                  Kommentar


                    #69
                    Zitat von enertegus Beitrag anzeigen
                    So und nun mit dem neuen iPad Air. Hier ist der Connect im Bereich kleiner 1 Sekunde (zig versuche):
                    [..]
                    Am iPad Air ist die Zeit bis zum Connect viel kürzer
                    Alle deine Traces zeigen Connect-Zeiten von ~150ms.
                    Das schaut erst mal gut aus.

                    Das iPad ist da nicht relevant, denn es geht um die Antwort des eibPCs.
                    Hast du mal ein Trace vom iPad2, bei dem es 3-4 Sek. waren? Denn dann ist ein Vergleich schon mal ein Anhaltspunkt, wo es klemmen könnte.

                    , v.a. wenn man die Option "Disconnect On Exit/Sleep" anwählt.
                    Da sieht man in den Traces keinen Unterschied. Hast du das dann nicht mehr verstellt?

                    Wenn überhaupt ist ein Fehler nur reproduzierbar, wenn ich die zwei iPads gleichzeitig einschalte. Das passt natürlich nicht zu meiner obigen Konfig, da ich ja mit 0.0.0.0 alle Verbindungen annehme und dann die Verarbeitung nicht mehr passen kann.
                    Zu den Einstellungen: Bei mir laufen mehrere Geräte, 0.0.0.0 muss ich vom Verhalten her mal anschauen.

                    Wenn ich das laufende CF einfach aus den Tastmanager schieße, muss ich entweder warten, bis der Timeout vom EibPC zuschlägt oder ich bringe CF mal kurz in den Hintergrund und wieder nach vorne (dann sorgt die Option Disconnect offenbar für den sauberen Abschluß).
                    Kannst du den Unterschied mal tracen? Der Unterschied sollte ja genau die fehlende Passwortabfrage sein, nicht das Schließen der Verbindung. Man sieht es in den Traces jedenfalls nicht.


                    Im Systemmanager habe ich natürlich nur das iViewer-Protokoll gewählt und den Join für die Verbindung auf die ID 0 (sowas ist ja im EibPC nicht vorgesehen). Ob letzteres was ausmacht, weiß ich nicht. Auf keinen Fall hier irgendwelche eigenen Definitionen machen, aber das sollte klar sein.
                    Das passt. Den Join (du meinst den Connect/Disconnect Join?) kannst du auf einen Button legen, der zeigt dann den TCP-Connect an. Der geht dann kurz aus beim Portwechsel.

                    Welche iPads verwendet Ihr denn?
                    iPad2, 3, Mini Retina, Air, iPhone 5s, 6. Überall identisches Verhalten.
                    BR
                    Marc

                    Kommentar


                      #70
                      Zitat von enertegus Beitrag anzeigen
                      Wenn überhaupt ist ein Fehler nur reproduzierbar, wenn ich die zwei iPads gleichzeitig einschalte. Das passt natürlich nicht zu meiner obigen Konfig, da ich ja mit 0.0.0.0 alle Verbindungen annehme und dann die Verarbeitung nicht mehr passen kann.
                      Zuerst einmal vielen Dank, dass du es nun intensiver getestet hast. Auch, wenn ich gehofft hatte, dem Fehler damit auf die Spur zu kommen

                      Bin nicht sicher, ob ich das oben richtig verstanden habe, aber hast du die Konfiguration mal angepasst (also die IP je iPad angegeben) und 2 iPads gleichzeitig laufen gehabt?

                      Kommentar


                        #71
                        Zitat von saft6luck Beitrag anzeigen
                        Alle deine Traces zeigen Connect-Zeiten von ~150ms.
                        Das schaut erst mal gut aus.
                        seh ich auch so.
                        Das iPad ist da nicht relevant, denn es geht um die Antwort des eibPCs.
                        Hast du mal ein Trace vom iPad2, bei dem es 3-4 Sek. waren? Denn dann ist ein Vergleich schon mal ein Anhaltspunkt, wo es klemmen könnte.
                        ja schau mal unter https://knx-user-forum.de/443138-post66.html im Anhang.
                        Das iPad ist da nicht relevant, denn es geht um die Antwort des eibPCs.
                        Nun: Ich habe eine Software am EibPC laufen. Dann verbinde ich mich einmal mit dem iPad2 und einmal mit dem iPad Air. Im ersteren Fall dauerts 3..4 Sekunden im anderen 150ms. Wenn da dann nicht das am iPad liegen soll? Wegen mir noch daran, dass das iPad2 einen alten CF Viewer drauf hat, aber irgendwie muss das schon mit dem iPad zusammenhängen oder wie soll das sonst erklärlich sein. Ich ändere ja nichts am EibPC (Server) sondern nur am Client.
                        offizielles Supportforum für den Enertex® EibPC: https://knx-user-forum.de/eibpc/
                        Enertex Produkte kaufen

                        Kommentar


                          #72
                          Zitat von KNXFan1970 Beitrag anzeigen
                          Bin nicht sicher, ob ich das oben richtig verstanden habe, aber hast du die Konfiguration mal angepasst (also die IP je iPad angegeben) und 2 iPads gleichzeitig laufen gehabt?
                          nee, ich habe nur die 0.0.0.0 am Laufen gehabt und nicht separat. Ich warte mal noch auf Feedback von saft6luck und kann dann ggf. am Montag noch einen weiteren Test machen.
                          offizielles Supportforum für den Enertex® EibPC: https://knx-user-forum.de/eibpc/
                          Enertex Produkte kaufen

                          Kommentar


                            #73
                            Zitat von enertegus Beitrag anzeigen
                            ja schau mal unter https://knx-user-forum.de/443138-post66.html im Anhang.
                            Die habe ich alle angeschaut, alle fast gleich - kann aber noch einmal schauen. iPad2 hatte die 107 glaube ich. Kann aber noch einmal reinschauen.

                            Nun: Ich habe eine Software am EibPC laufen. Dann verbinde ich mich einmal mit dem iPad2 und einmal mit dem iPad Air. Im ersteren Fall dauerts 3..4 Sekunden im anderen 150ms. Wenn da dann nicht das am iPad liegen soll? Wegen mir noch daran, dass das iPad2 einen alten CF Viewer drauf hat, aber irgendwie muss das schon mit dem iPad zusammenhängen oder wie soll das sonst erklärlich sein. Ich ändere ja nichts am EibPC (Server) sondern nur am Client.
                            Ich schaue auf die zwei p=... Telegramme (p= EibPC und p=ok), deren Abstand schwankt. In den Traces passt das immer. Einmal 300ms, der Rest ok?!

                            Vom iPad sollte der Wert nicht abhängen. Bzgl. der Anzeigegeschwindigkeit könnte es schon Unterschiede geben.
                            BR
                            Marc

                            Kommentar


                              #74
                              Zitat von saft6luck Beitrag anzeigen
                              Ich schaue auf die zwei p=... Telegramme (p= EibPC und p=ok), deren Abstand schwankt. In den Traces passt das immer. Einmal 300ms, der Rest ok?!
                              .
                              Damit sind wir wieder beim Ausgangsproblem angekommen. Jetzt müsste man stückweise von der laufenden Programmierung zu der kommen, welche das Problem verursacht - auf welcher Seite der beiden Geräte es auch immer und warum überhaupt entsteht. Ich kann auch gerne ein Testgerät zur Verfügung stellen, so dass der normale Betrieb eurer Installation nicht gestört wird. Oder ihr schickt mir euer Designfile und ich versuche es nachzustellen.
                              offizielles Supportforum für den Enertex® EibPC: https://knx-user-forum.de/eibpc/
                              Enertex Produkte kaufen

                              Kommentar


                                #75
                                Zitat von enertegus Beitrag anzeigen
                                Damit sind wir wieder beim Ausgangsproblem angekommen.
                                Ja schaut so aus...

                                Zitat von enertegus Beitrag anzeigen
                                Jetzt müsste man stückweise von der laufenden Programmierung zu der kommen, welche das Problem verursacht - auf welcher Seite der beiden Geräte es auch immer und warum überhaupt entsteht. Ich kann auch gerne ein Testgerät zur Verfügung stellen, so dass der normale Betrieb eurer Installation nicht gestört wird. Oder ihr schickt mir euer Designfile und ich versuche es nachzustellen.
                                Mein Designfile ist mittlerweile recht komplex geworden inkl. der Javascript-Dateien. Kannst du gern haben, aber das Nachstellen wird sicher einiges an Zeit brauchen. Deshalb wird es wohl der beste Weg sein, wenn ich leihweise ein Testgerät nutzen könnte und Schritt für Schritt von wenigen Joins und ohne Javascript-Module vorwärts gehe...

                                Kommentar

                                Lädt...
                                X