Ankündigung

Einklappen
Keine Ankündigung bisher.

Problem mit Flashspeicher

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

    Problem mit Flashspeicher

    Hallo,

    ich habe bei mir zum Abspeichern von 76 Variablen folgendes eingetragen (aus dem Handbuch):

    Code:
    if htime(0,1,0) or SHUTDOWN then {
        writeflashvar (Lichtsensor);
    usw.

    Beim systemstart werden die mit

    Code:
    if systemstart() then {
        readflashvar (Lichtsensor);
    eingelesen. Jetzt ist mir bei Erweiterungen aufgefallen das die abgespeicherten Variablen vom Vortag waren. D. h. für mich die Speicherung um Mitternacht hat funktioniert, aber nicht die Speicherung beim Neustart.

    Im Handbuch habe ich folgendes gefunden:

    Beachten Sie folgenden HINWEIS:
    Das Schreiben auf den Flash kann bei fehlerhaften Programmen, Netzunterbrechun-
    gen etc. zu Dateisystemfehlern führen. Außerdem verkürzt das Schreiben auf den
    Flash dessen Lebensdauer.
    Um Dateisystemfehler zu vermeiden, hat Enertex® Bayern GmbH ein Patch 1.100 bei neu
    ausgelieferten Enertex® EibPC eingeführt, welches eine Art Checkdisk auf das Flash beim
    Neustart automatisch ausführt. Dieses Patch kann nur im Werk aufgespielt werden, da
    hierzu eine Neuinitalisierung des integrierten Flashes notwendig wird. Kontaktieren Sie
    Enertex® Bayern GmbH für weitere Details
    Ohne Patch 1.100 übernehmen wir keine Garantie auf Dateisystemfehler, wenn ein
    Speichern von Variablen auf das Flash erfolgte, was mit Hilfe eines Logs im Werk
    nachvollzogen werden kann.

    Ich benutze noch Studio 3.203 mit: Firmware-/Patchversion des EibPCs: v3.107
    Seriennummer des EibPCs: 00000775
    Ich denke den EibPC habe ich jetzt schon 5 Jahre (?), woher weiß ich das ich den Patch 1.100 habe?

    Das hat früher auch funktioniert "Auf updates prüfen"
    Code:
    % Funktionspruefung DNS-Server erfolgreich.
    % Enertex FTP-Server (ftp.enertex.de) nicht erreichbar. Nicht auf Updates prüfbar.
    % /home/ralf/EibPC/EibStudio-lin/EibstudioData/nconf -f 192.168.2.200
    % Funktionspruefung DNS-Server erfolgreich.
    Noch was anderes vor 3 oder 4 Monaten aufgefallen (einfach ignoriert ):
    In einem anderen Beitrag hatte ich von einem ähnlichem Problem gelesen. In 2 Charts mit je 3 Datenreihen wurden plöttzlich nur noch 2 der 3 Werte als Linie dargestellt. Habe dann im Datei-Transfer-Dialog alle mal gelöscht - hat nichts gebracht. Meine insgesamt 12 Charts habe ich jetzt mal alle auskommentiert um auszuschließen das ich zu viele Werte im Flash abspeichere als ich jetzt auf das Problem oben gestoßen bin. Hat auch nicht geholfen.

    Gruß Ralf



    #2
    Hi,
    die Variable SHUTDOWN wird durchs EibStudio gesetzt. Hast du beim Übertragen evtl einfach vergessen, den Haken setzen?

    Kommentar


      #3
      Hallo,

      jetzt war ich erst iritiert - dachte das ist es. Ich habe nie einen Haken gesetzt und hätte auch nicht gewusst wo weil im Handbuch steht das die Variable automatisch gesetzt wird. Jetzt habe ich es aber auch verstanden

      Ja, die beiden Kästchen mit dem Klartext und mit Shutdown sind gesetzt. Habe ich bisher noch nie wirklich wahrgenommen - habe immer stumpf ok gedrückt.

      Schade - das wäre zu einfach gewesen.

      Gruß Ralf

      Kommentar


        #4
        Hallo,

        also ich habe heute noch mal geschaut, Werte geändert und EibPC neu gestartet => die Werte waren da.

        Nochmal Werte verändert und dann waren sie nicht mehr da, sondern die von Versuch 1.

        Und gleich noch mal, wieder versagt

        Welche Anzahl Werte können den in den 5 s vor dem Shutdown in den Speicher geschrieben werden?


        Und warum ist der Enertex FTP-Server (ftp.enertex.de) bei mir nicht zu erreichen?

        Gruß Ralf

        Kommentar


          #5
          Hallo,

          habe heute auf EibStudio 4 umgestellt => lief wirklich absolut problemlos durch (open SUSE 15.2). Und hier kann man bequem einstellen wie lange der shutdown (in Sekunden) dauern soll.

          Somit Problem gelöst. Jetzt mal etwas in Version 4 einarbeiten - auf den ersten Blick gefällt es mir.

          Gruß Ralf

          Kommentar


            #6
            Hallo,

            ich habe genau dasselbe Problem, sehr ähnlicher Code:

            if SHUTDOWN then \\
            writeflashvar(Gaszaehler); \\
            writeflashvar(GaszaehlerHeute); \\
            writeflashvar(GaszaehlerGestern); \\
            writeflashvar(GaszaehlerLaufenderMonat); \\
            writeflashvar(GaszaehlerLetzterMonat); \\
            writeflashvar(GaszaehlerLaufendesJahr); \\
            writeflashvar(GaszaehlerLetztesJahr) endif

            Beim Neustart des eibPC werden die Variablen im Flashspeicher nicht zuverlässig gespeichert, so dass nach dem Neustart meistens nur ältere Daten vorhanden sind, nicht aber die Daten, die mit dem o.g. Befehl hätten zuletzt gespeichert werden sollen. Ich habe die SHUTDOWN-Variable auf 30 Sekunden gesetzt, aber das hat auch nicht geholfen.

            Ich habe auch ein älteres Modell (Seriennr. 622), Firmware v4.013, EibStudio v4.036.

            Kann es sein, dass der Flashspeicher einen Defekt hat? Und wenn ja, wie gehe ich damit am besten um?

            Danke,
            Marcus

            Kommentar


              #7
              Hallo Marcus,

              es hilft dir zwar nicht wirklich => aber ich bin der Meinung das ich seit der Einstellung auf 30 s beim Shutdown und seit dem Verzicht auf das abspeichern von Diagrammen es jetzt immer passte.
              So viele Neustarts hatte ich aber auch nicht. Aber bald kommen ein paar neue KNX-Komponenten dazu, dann ändert sich das wieder

              Grundsätzlich wäre es gut zu wissen ob es eine Prüfmöglichkeit für den Speicher gibt oder wie man Fehler angezeigt bekommt.

              Gruß Ralf

              Kommentar


                #8
                In einer der nächsten Versionen werden wir das SHUTDOWN-Prozedere anpassen, so dass immer gewährleistet ist, dass alles zurückgeschrieben wurde.

                Bei Code wie oben würde ich empfehlen, einfach bei Änderungen zu schreiben. So häufig ändert sich zB
                Code:
                GaszaehlerLetzterMonat
                ja nicht:

                Code:
                if change(GaszaehlerLetzterMonat) then writeflashvar(GaszaehlerLetzterMonat) endif

                Kommentar


                  #9
                  Hallo,

                  danke für die Verbesserung in einer der nächsten Versionen

                  Ich habe da gleich noch eine Frage zu dem Thema. Vielleicht finde ich es nicht.

                  Kann ich im EibStudio einsehen welche Variablen im Flashspeicher liegen und welchen Wert die haben?

                  Ich fände es sehr praktisch wenn bei Objekte/Variablen als 2. Wert nicht nur der aktuelle Wert steht, sondern auch das er im Flashspeicher abgelegt ist und welcher Wert dort abgelegt ist.

                  Gruß Ralf

                  Kommentar


                    #10
                    Du kannst in den Projekteinstellungen -> Dateien die Liste der gespeicherten Variablen sehen.

                    Ich nehme das aber als Feature-Request auf, dass man in der Variablenliste unter Objekte direkt sieht, ob sie gespeichert sind, und den Variableninhalt anzeigen kann. Macht Sinn!

                    Kommentar

                    Lädt...
                    X