Ankündigung

Einklappen
Keine Ankündigung bisher.

Bug: setpeslider funktioniert nicht mehr richtig (???)

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

    Bug: setpeslider funktioniert nicht mehr richtig (???)

    Hallo Zusammen,

    getrieben von meinen plötzlichen Problemen mit dem Macro SliderTemperatur(Var) habe ich mal etwas debugging betrieben.
    Scheibar funktioniert setpeslider nicht mehr richtig.

    Ich habe das originalmakro mal auf den fehlerhaften Teil eingedampft.
    Das Marko referenziert einen

    peslider(SliderTemperaturID)[TEMPERATURE](17.0,0.1,25.0) $Sollwert$ $°C$

    Was nun passiert: Beim ersten Aufruf der Webseite steht der Slider wie erwartet auf 24°.
    Sobald man aber am Slider zieht, springt dieser ganz nach links, und als Zahlenwert wird 0° angezeigt.

    Ich würde meinen da hat sich in einem der neueren Patches ein Bug eingeschlichen .....

    Ein kurzfristiger Fix wäre nett (oder aber der Hinweis das der Fehler doch zwischen den Ohren liegt, und wo ...)



    // Webelement
    // @date 01.03.2012
    // @version 1
    // @author Enertex Bayern GmbH - Dr. Schuster
    :begin SliderTemperaturVar(ID,PageID,Min,Inkr,Max,Var)
    :info $Ein seitenbezogener Slider(pslider), der einen 16-Bit Temperatursollwert ansteuert. Die Variable ist vom Typ f16 (= Temperatur). Das Icon wird dem Zustand angepasst. Beim Drücken des Buttons wird auf die maximale bzw. die miniale Temperatur gesprungen.$\\
    :$ID des psliders$\\
    :$SeitenID des psliders$\\
    :$Die untere Grenze, welche über den Slider eingestellt werden kann$\\
    :$Die Werterhöhung bei Knopfdruck$\\
    :$Die obere Grenze, welche über den Slider eingestellt werden kann$\\
    :$Gruppenadresse Temperatursollwert (f16))$
    :shortinfo $Eine Solltemperatur mit einem Slider einstellen (Ausgabe auf Variable)$

    // Variable
    InternTemperatur_^ID_^PageID=getpeslider(ID,PageID )
    InternTemperatur_^ID_^PageID_Inkrement=convert(Ink r,Var)

    // Status bei normaler Busänderung
    if delay(change(Var),150u64) or systemstart() then InternTemperatur_^ID_^PageID=convert(Var,InternTem peratur_^ID_^PageID) endif

    if change(InternTemperatur_^ID_^PageID) then {
    setpeslider(ID,24f32,TEMPERATURE,ACTIVE,PageID)
    } endif;

    } endif

    :end

    #2
    Gleiche Auswrikung

    Das gleich pasiert auch im slidertemperatur-Makro!

    Kommentar


      #3
      Habt ihr eure Browser-Caches mal geleert? Am Slider hat sich im Javascript Code etwas geändert.
      Firma: Enertex Bayern GmbH, Ebermannstädter Straße 8, 91301 Forchheim
      Amazon: KNXnet/IP Router
      , KNXnet/IP Interface

      Kommentar


        #4
        Cache geleert!

        Zitat von enermax Beitrag anzeigen
        Habt ihr eure Browser-Caches mal geleert? Am Slider hat sich im Javascript Code etwas geändert.
        Ja, der Cache ist geleert.

        Das Problem tritt bei mir bei allen Slidern auf.

        Nach der manuellen Verstellung der Schiebers, fällt die Anzeige auf den Wert 0 zurück.

        Nach langer!! Zeit oder der Betärigung des Refresh-Buttons zeigt der Slider wieder den richtigen Wert.

        Die Betonung liegt auf "Refresh", bei der Zeit ist der Minutenwechsel etwa die Stellgröße". Thema "Zeit schaltet nicht um", öfters im Forum.

        Unbefiedigend!!, aber schon etwas besser!

        Getestet, Firefox,Win7 und IPAD,IOS.

        LG
        Wolfgang

        Kommentar


          #5
          Yep,

          Browsercache geleert - und verschiedene Browser getestet. Immer das selbe Verhalten.

          Kommentar


            #6
            Zitat von cds Beitrag anzeigen
            Das Problem tritt bei mir bei allen Slidern auf.
            Browsercache geleert - und verschiedene Browser getestet. Immer das selbe Verhalten.
            Also das Makro oben kann nicht stimmen. Bitte nochmal posten.
            Unabhängig davon: Was mir aber auffällt, ist im Makro die Anweisung
            delay(change(Var),150u64) or
            nicht, dass wir hier aufgrund der Echzeitvisu die fürher notwendige Wartezeit eher als kontraproduktiv einstufen müssten. Ich werde das mal testen...
            offizielles Supportforum für den Enertex® EibPC: https://knx-user-forum.de/eibpc/
            Enertex Produkte kaufen

            Kommentar


              #7
              Der allereinfachste Test wäre das Beispiel das bei den Libraries dabei ist - dort sieht man den Effekt genau so.

              Den code den ich geposted habe (das ist beim Copy-Past in der Tat was schief gelaufen) ist genau dieses Makro, das ich zum Debuggen allerdings so weit reduziert habe das wirklich nur der nicht funktionierende Code übrig ist.
              Am Delay hab ich nicht gespielt da mir noch nicht klar ist warum diese Zeite dort steht ....

              ---------------


              // Webelement
              // @date 01.03.2012
              // @version 1
              // @author Enertex Bayern GmbH - Dr. Schuster
              :begin SliderTemperaturVar(ID,PageID,Min,Inkr,Max,Var)
              :info $Ein seitenbezogener Slider(pslider), der einen 16-Bit Temperatursollwert ansteuert. Die Variable ist vom Typ f16 (= Temperatur). Das Icon wird dem Zustand angepasst. Beim Drücken des Buttons wird auf die maximale bzw. die miniale Temperatur gesprungen.$\\
              :$ID des psliders$\\
              :$SeitenID des psliders$\\
              :$Die untere Grenze, welche über den Slider eingestellt werden kann$\\
              :$Die Werterhöhung bei Knopfdruck$\\
              :$Die obere Grenze, welche über den Slider eingestellt werden kann$\\
              :$Gruppenadresse Temperatursollwert (f16))$
              :shortinfo $Eine Solltemperatur mit einem Slider einstellen (Ausgabe auf Variable)$

              // Variable
              InternTemperatur_^ID_^PageID=getpeslider(ID,PageID )
              InternTemperatur_^ID_^PageID_Inkrement=convert(Ink r,Var)

              // Status bei normaler Busänderung
              if delay(change(Var),150u64) or systemstart() then InternTemperatur_^ID_^PageID=convert(Var,InternTem peratur_^ID_^PageID) endif

              if change(InternTemperatur_^ID_^PageID) then {
              setpeslider(ID,24f32,TEMPERATURE,ACTIVE,PageID)
              } endif;



              :end

              Kommentar


                #8
                Zitat von cds Beitrag anzeigen
                setpeslider(ID,24f32,TEMPERATURE,ACTIVE,PageID)
                } endif;
                Du schreibst ja hier immer 24 auf den Slider, das wird sicher nicht gewünscht sein. Wie ist deine konfig im Webserver? Und sind da auch pslider oder nur peslider betroffen?
                offizielles Supportforum für den Enertex® EibPC: https://knx-user-forum.de/eibpc/
                Enertex Produkte kaufen

                Kommentar


                  #9
                  Wie gesagt, der Snippet den ich gepostet habe stammt von meinem Debuggingversuchen.
                  Dort wird deshalb eine Konstante geschrieben, um auszuschließen das aus irgend einem Grund eben dieser Wert sich wild verändert.

                  Der pslider funktioniert.

                  Hier die Webserver section:

                  [WebServer]
                  //Seite Erstellen
                  page(WohnzimmerPageID) [$Erdgeschoss$,$Wohnzimmer$]
                  design $black$
                  peslider(SliderTemperaturID)[TEMPERATURE](0,0.1,255.0) $Sollwert$ $°C$

                  Kommentar


                    #10
                    Gibt's denn einen Ausblick wann das gefixed wird - oder muss ich in meinem Projekt dann eben auf peslider verzichten - was jetzt eher blöd und umständlich wäre ?

                    Kommentar


                      #11
                      Zitat von cds Beitrag anzeigen
                      Gibt's denn einen Ausblick wann das gefixed wird - oder muss ich in meinem Projekt dann eben auf peslider verzichten - was jetzt eher blöd und umständlich wäre ?
                      Wir haben hier Osterferien und die daher etwas Stress. Frag aber ruhig noch mal nach, ich hoffe es demnächst nachzuvollziehen zu können und wenn es ein Bug ist, dann wird es so etwa 14 Tage dauern.
                      offizielles Supportforum für den Enertex® EibPC: https://knx-user-forum.de/eibpc/
                      Enertex Produkte kaufen

                      Kommentar


                        #12
                        So, hab ich nachvollzogen, d.h. ist ein Bug.
                        Wird wohl um KW19 herum behoben/gefixt.
                        offizielles Supportforum für den Enertex® EibPC: https://knx-user-forum.de/eibpc/
                        Enertex Produkte kaufen

                        Kommentar


                          #13
                          ... dann zieh ich das nochmal hoch.
                          Gibt es schon einen genaueren Termin?

                          Kommentar


                            #14
                            Zitat von cds Beitrag anzeigen
                            ... dann zieh ich das nochmal hoch.
                            Gibt es schon einen genaueren Termin?
                            Sicher morgen .
                            offizielles Supportforum für den Enertex® EibPC: https://knx-user-forum.de/eibpc/
                            Enertex Produkte kaufen

                            Kommentar


                              #15
                              ist das da dann auch dabei?
                              Zitat von enertegus Beitrag anzeigen
                              Was Dir wahrscheinlich noch fehlt ist eine Funktion:
                              GAName=GetNameGA(39u16,encoding)
                              die der EibPC in seine übliche GA-Schreibweise umsetzt, also z.B. "LichtKüche-0/0/3".
                              EPIX
                              ...und möge der Saft mit euch sein...
                              Getippt von meinen Zeigefingern auf einer QWERTZ Tastatur

                              Kommentar

                              Lädt...
                              X