Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. Piface adapter nimmt immer mehr RAM

    NEWS

    • Wir empfehlen: Node.js 22.x

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker goes Matter ... Matter Adapter in Stable

    Piface adapter nimmt immer mehr RAM

    This topic has been deleted. Only users with topic management privileges can see it.
    • S
      sirtwist672 last edited by

      Hallo

      Hier eine Aktualisierung des Problems:

      wenn der RAM des raspi vollgelaufen ist, wird der Adapter terminated und danach neu gestartet.
      1394_iobroker.jpg

      1 Reply Last reply Reply Quote 0
      • B
        basti_online last edited by

        Hallo!

        Gibt es mittlerweile eine Lösung für das Problem? Bin noch an den Anfängen von ioBroker und habe das selbe Problem. Extra dafür das Piface gekauft, und dann noch einen neuen Raspberry3, weil das auf nem 1er alles etwas träge war… Der zieht sich den kompletten Arbeitsspeicher mit dem Adapter voll, bei 800MB knapst es von den anderen Instanzen etwas Arbeitsspeicher ab, und irgendwann hängt sich die ganze Sache auf. (nach etwa einer Stunde....)

        Vielen Dank und viele Grüße!

        1 Reply Last reply Reply Quote 0
        • Bluefox
          Bluefox last edited by

          node version?

          Ich kann momentan nur empfehlen die eingebaute Reboot-Cron benutzen (sichtbar mit expert mode).

          Adapter ist nicht von mir und piface habe ich nicht. Da sollte eisbaeeer vielleicht Blick drauf werfen.

          😉

          1 Reply Last reply Reply Quote 0
          • B
            basti_online last edited by

            Hallo Bluefox!

            Node ist die Version 4.5.0.

            Hatte auf dem Raspberry Pi1 die aktuellste Version (7…. meine ich), und hatte den gleichen Fehler.

            Viele Grüße! 🙂

            1 Reply Last reply Reply Quote 0
            • greyhound
              greyhound last edited by

              Hallo,

              bin gerade in die RAM-Falle gelaufen und habe meine Außenstelle "verloren". Ist per VPN auf dem Raspberry angebunden und …

              Habe mir nun eine Testumgebung mit einem PiFace2 aufgebaut und mir den Adaptercode angeschaut.

              Für mich sieht es so aus, dass das wiederholte Instanziieren in "adapter.on('stateChange'" ... und "pifaceread" die Ursache ist und der Speicher der beiden Variablen PIFD und pi nicht freigegeben wird, was ich aber eigentlich angenommen hätte.

              Wenn ich die beiden Variablen im Skriptrumpf deklariere und dann in den Funktionen "nur" instanziiere, bleibt der Speicherverbrauch schön bei ca. 30 MB.

              Sieht so aus, als ob die Garbagecollection da ein Problem hat.

              Getestet unter ioBroker.js-controller 15.3, PiFace 0.50 und node 4.7.2 und 6.10

              Gruß

              GH

              1 Reply Last reply Reply Quote 0
              • apollon77
                apollon77 last edited by

                Reich es doch mal als Pull-Request ein …

                1 Reply Last reply Reply Quote 0
                • greyhound
                  greyhound last edited by

                  gemacht, mal sehen, ob Eisbär noch im Winterschlaf ist.

                  1 Reply Last reply Reply Quote 0
                  • Eisbaeeer
                    Eisbaeeer Developer last edited by

                    Hi Leute

                    Sorry, dass es doch so lange gedauert hat, aber Familie geht vor usw.

                    Hab eben den Merge von Euch beiden gemacht. Danke für die Suche des Problems. Npm ist auch schon aktualisiert. Laut Bluefox wird das update morgen sichtbar.

                    Gruß Eisbaeeeer

                    1 Reply Last reply Reply Quote 0
                    • P
                      piForscher last edited by

                      Hi,

                      es freut mich sehr, dass es eine Lösung für den RAM-Hunger gibt.

                      Wie kann ich auf die neue Version updaten ?

                      In der GUI bekomme ich die Version 0.0.9 als verfügbar angezeigt, aber ohne Update-Button.

                      Per command line habe ich es nicht hinbekommen (sudo iobroker upgrade piface).

                      Grüße,

                      piForscher

                      1 Reply Last reply Reply Quote 0
                      • Eisbaeeer
                        Eisbaeeer Developer last edited by

                        Hmm, Ok. Ich schau nochmal nach. Manuell kannst du es mal im iobroker Verzeichnis: /opt/iobroker mit "npm install iobroker.piface" installieren. Auch hier beschrieben: https://github.com/ioBroker/ioBroker/wi … daptername

                        Ich habe die neue Version noch nicht testen können. Wäre also klasse, wenn das noch jemand testet.

                        Würde mich über eine Rückmeldung freuen.

                        Gruß Eisbaeeer

                        1 Reply Last reply Reply Quote 0
                        • S
                          sirtwist672 last edited by

                          Hallo

                          Ich hab die neue Version installiert und habe immer noch das RAM Problem

                          Ich lass den Adapter alle 5 min neu starten dann hält sich das problem in grenzen

                          Danke für die Bemühungen

                          Sirtwist

                          1 Reply Last reply Reply Quote 0
                          • Eisbaeeer
                            Eisbaeeer Developer last edited by

                            @sirtwist672:

                            Hallo

                            Ich hab die neue Version installiert und habe immer noch das RAM Problem

                            Sirtwist `

                            Hallo

                            Schade eigentlich. Komischerweise kann ich das Problem bei meiner Installation immer noch nicht nachvollziehen. Die Änderung der Variablen Definition ist mir auch noch nicht ganz schlüssig. Denn eigentlich war die Variable ja schon definiert.

                            Ich muss wohl nochmal einen Testaufbau machen. Welchen RPI verwendest du? Welche Version? Welches Betriebssystem? Eventuell kannst du ein SD-Karten Image mit dem bestehnden Problem zur Verfügung stellen? Dann kann ich das mal bei mir testen.

                            Gruß Eisbaeeer

                            1 Reply Last reply Reply Quote 0
                            • P
                              piForscher last edited by

                              Ich habe jetzt auch auf 0.0.9 aktualisiert - der RAM-Verbrauch hat sich nicht verändert…

                              Ich lasse es erstmal beim nächtlichen Reset des Adapters.

                              1 Reply Last reply Reply Quote 0
                              • Eisbaeeer
                                Eisbaeeer Developer last edited by

                                Also mit einer neu Installierten Umgebung kann ich es nachvollziehen, finde aber die Ursache nicht. Eventuell liegt es an dem node-module, welches ich benutze. Ich habe mal ein issue gemeldet: https://github.com/tualo/node-pifacedigital/issues/6

                                Ich forsche weiter und bleibe dran. Bin für jede Debugging Hilfe dankbar.

                                Grüße Eisbaeeer

                                Eisbaeeer created this issue in tualo/node-pifacedigital

                                closed RAM usage issue #6

                                1 Reply Last reply Reply Quote 0
                                • apollon77
                                  apollon77 last edited by

                                  Habe gerade mal in den Code geschaut. Muss man wirklich jedes mal wieder eine Instanz der "PIFD1.PIFaceDigital" machen? Auch das Require sollte einmalig am Anfang stehen und nicht mehrfach sein. Das kann man wiederverwenden.

                                  Das wäre eine Optimierung die ich vorschlagen würde, vllt reicht das auch schon

                                  1 Reply Last reply Reply Quote 0
                                  • Eisbaeeer
                                    Eisbaeeer Developer last edited by

                                    Ok, das schau ich mir gleich mal an. Danke für den Hinweis. Melde mich wieder.

                                    Gesendet von meinem SM-G920F mit Tapatalk

                                    1 Reply Last reply Reply Quote 0
                                    • Eisbaeeer
                                      Eisbaeeer Developer last edited by

                                      @apollon77:

                                      Habe gerade mal in den Code geschaut. Muss man wirklich jedes mal wieder eine Instanz der "PIFD1.PIFaceDigital" machen? Auch das Require sollte einmalig am Anfang stehen und nicht mehrfach sein. Das kann man wiederverwenden. `

                                      Hmm, hab ich jetzt alles versucht, jedoch bekomme ich einen Fehler, wenn ich in der Funktion versuche, den die Variable wiederzuverwenden. Ist das nicht so, dass durch das asynchrone abarbeiten der functions die Variable dann falsch verwendet werden kann?

                                      Komisch ist auch, dass ich mit einer alten node version diese Probleme nicht hatte. Aber das traue ich node zu, dass es gravierende Änderungen in den node Versionen gibt.

                                      Noch einen Tipp?

                                      Eisbaeeer

                                      1 Reply Last reply Reply Quote 0
                                      • apollon77
                                        apollon77 last edited by

                                        Was kommt denn für ein Fehler? In welchen Node-Version gibt es welche Probleme?

                                        1 Reply Last reply Reply Quote 0
                                        • Eisbaeeer
                                          Eisbaeeer Developer last edited by

                                          Hallo zusammen

                                          Ich habe heute eine neue Version des Adapters veröffentlicht. Sie wird heute Nacht automatisch ins Repo übernommen und ist dann als Update verfügbar. Wer es heute schon braucht, muss den Adapter aus iobroker löschen und über den Github Button installieren.

                                          Die neue Version behebt das RAM Problem!

                                          Grüße Eisbaeeer

                                          1 Reply Last reply Reply Quote 0
                                          • First post
                                            Last post

                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate
                                          FAQ Cloud / IOT
                                          HowTo: Node.js-Update
                                          HowTo: Backup/Restore
                                          Downloads
                                          BLOG

                                          861
                                          Online

                                          32.0k
                                          Users

                                          80.5k
                                          Topics

                                          1.3m
                                          Posts

                                          7
                                          21
                                          2892
                                          Loading More Posts
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                          The ioBroker Community 2014-2023
                                          logo