• Recent
  • Tags
  • Unsolved
  • Solved
  • MagicMirror² Repository
  • Documentation
  • 3rd-Party-Modules
  • Donate
  • Discord
  • Register
  • Login
MagicMirror Forum
  • Recent
  • Tags
  • Unsolved
  • Solved
  • MagicMirror² Repository
  • Documentation
  • 3rd-Party-Modules
  • Donate
  • Discord
  • Register
  • Login
A New Chapter for MagicMirror: The Community Takes the Lead
Read the statement by Michael Teeuw here.

"Out of memory" issues - where do I begin?

Scheduled Pinned Locked Moved Solved Troubleshooting
65 Posts 2 Posters 22.9k Views 2 Watching
Loading More Posts
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • S Away
    sdetweil @ember1205
    last edited by sdetweil Sep 21, 2020, 2:04 PM Sep 21, 2020, 2:02 PM

    @ember1205 debugging is indeed very difficult w these problems.

    I wonder if running w chromium browser would produce different results.

    easiest way to test
    download the run-start.sh script from here
    https://github.com/sdetweil/MagicMirror_scripts
    into the MagicMirror folder
    edit the package.json and change the start command to

    "start":"./run-start.sh",
    

    edit config.js
    and set

     serverOnly:"local",
    

    this will start mm in server mode, and use chromium to display instead of electron

    Sam

    How to add modules

    learning how to use browser developers window for css changes

    1 Reply Last reply Reply Quote 0
    • E Offline
      ember1205
      last edited by Sep 21, 2020, 3:46 PM

      Would that be any different than running it in server mode and accessing it from a browser on my computer across the network? That would be simpler to set up and wouldn’t add more running software onto the Pi…

      S 1 Reply Last reply Sep 21, 2020, 3:48 PM Reply Quote 0
      • S Away
        sdetweil @ember1205
        last edited by sdetweil Sep 21, 2020, 3:50 PM Sep 21, 2020, 3:48 PM

        @ember1205 same, no new software on the pi. mm install installs everything.

        can run as
        full ---- how it is now
        server only
        server only w different browser ( already installed)
        or
        client only

        Sam

        How to add modules

        learning how to use browser developers window for css changes

        1 Reply Last reply Reply Quote 0
        • E Offline
          ember1205
          last edited by Sep 21, 2020, 3:53 PM

          Understood that there isn’t new software installed, but this would mean no additional software actively running on the Pi (Electron would be stopped, and all browser software would be running from a different machine).

          S 1 Reply Last reply Sep 21, 2020, 3:55 PM Reply Quote 0
          • S Away
            sdetweil @ember1205
            last edited by sdetweil Sep 21, 2020, 3:57 PM Sep 21, 2020, 3:55 PM

            @ember1205 right. that doesn’t mean u fixed the out of memory problem. it’s possible.

            I was working on one change at a time.

            u can install the run-start.sh and change config.js to serverOnly: true, then launch browser from your pc

            Sam

            How to add modules

            learning how to use browser developers window for css changes

            1 Reply Last reply Reply Quote 0
            • E Offline
              ember1205
              last edited by ember1205 Sep 21, 2020, 4:00 PM Sep 21, 2020, 3:59 PM

              Your suggestion incorporates multiple changes, though… Stopping Electron and Starting Chromium while also changing the operating mode. No?

              I’ve changed the config.js to both

              serverOnly: true,

              and

              serverOnly:"true",

              and neither one prevents Electron from starting.

              I’ve now also tried

              serverOnly:true,
              
              S 1 Reply Last reply Sep 21, 2020, 4:12 PM Reply Quote 0
              • S Away
                sdetweil @ember1205
                last edited by sdetweil Sep 21, 2020, 4:13 PM Sep 21, 2020, 4:12 PM

                @ember1205 u need the run-start.sh script for that parm to work

                besides, u said u were going to run in server only mode anyway. and then u will have to change your startup process too

                Sam

                How to add modules

                learning how to use browser developers window for css changes

                1 Reply Last reply Reply Quote 0
                • E Offline
                  ember1205
                  last edited by ember1205 Sep 21, 2020, 4:25 PM Sep 21, 2020, 4:19 PM

                  By adding an external browser, it crashed in only a few minutes. I’m going to let it keep running with the additional external browser to see if it causes it crash much more quickly on a more continuous basis.

                  If I can cause it to crash quickly on a repeated basis, it gives me an opportunity to try testing specific image files. It’s possible that this is a cumulative problem that is related to a small memory loss that gets added to on the load of additional errant files.

                  UPDATE: So much for that theory… I am currently running Electron plus an external instance of Chrome on Windows and Safari on MacOS. No “quick crashes.”

                  S 1 Reply Last reply Sep 21, 2020, 5:05 PM Reply Quote 0
                  • S Away
                    sdetweil @ember1205
                    last edited by Sep 21, 2020, 5:05 PM

                    @ember1205 i spent a year debugging an out of memory that only crashed one version of a module… another ran fine…

                    one line of code, my code, made the difference… but the problem ‘appeared’ to be a hang , suddenly the UI was dead…
                    randomnly displaying pics in the background.

                    not til I added a totally new logging approach did I find the actual problem, which was out of memory, which killed the UI, which made it LOOK hung…

                    Sam

                    How to add modules

                    learning how to use browser developers window for css changes

                    1 Reply Last reply Reply Quote 0
                    • E Offline
                      ember1205
                      last edited by Sep 21, 2020, 5:39 PM

                      In my situation, the UI goes all black and the cursor appears (no mouse or keyboard connected). There’s a generic “out of memory” error entered into the log file. Restarting MM is the only way I’ve found to get it back up and running.

                      The photo module I’m running is your fork with the more recent changes to allow the blurring of the same image behind the full-view image. Any thoughts on anything that could/should be added to try and capture more in the logs? Is there an increased logging level I could be using in MM itself? Stack traces when it fails? Before it fails? Anything come to mind that might give me a new avenue?

                      The issue doesn’t seem to appear if I am not using the photo module. But, that could be because the other, more basic modules don’t use resources as intensively. We’ve compared notes on RPi, kernel, build, etc. and not found anything that seems to be materially different with the one exception being the specific image files in use.

                      S 1 Reply Last reply Sep 21, 2020, 5:46 PM Reply Quote 0
                      • 1
                      • 2
                      • 3
                      • 4
                      • 5
                      • 6
                      • 7
                      • 2 / 7
                      2 / 7
                      • First post
                        11/65
                        Last post
                      Enjoying MagicMirror? Please consider a donation!
                      MagicMirror created by Michael Teeuw.
                      Forum managed by Sam, technical setup by Karsten.
                      This forum is using NodeBB as its core | Contributors
                      Contact | Privacy Policy