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.

    Electron CPU usage

    Scheduled Pinned Locked Moved Troubleshooting
    247 Posts 46 Posters 597.6k Views 42 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.
    • A Offline
      austin
      last edited by

      I have been doing a lot of testing on this. I started using the latest Pixel and MM and had temperature and lockup issues. I then noticed that CPU usage was very high. I started doing lots of tests. I finally found that the best CPU usage and temperature was when using Electron 1.6.15. You can see the results in the screenshots.

      If you need/want to use Pixel do not use Electron greater than 1.6.15. I tried many combinations along with matching the version of node the electron recommends. Nothing 1.7.x worked that well. As you can see in CGabo’s image on Pixel Electron 1.7.9 uses 100% cpu at time. In my screenshot on Jessie it used 70-80% only. Not sure why this is.

      My recommendation would be to have Magic Mirror pin the Electron version to 1.6.15 at this time.

      1_1510598970148_2017-11-11 10_05_56-pi@magicmirror_ ~.png 0_1510598970148_2017-11-11 09_43_05-pi@magicmirror_ ~.png

      Mykle1M 1 Reply Last reply Reply Quote 0
      • Mykle1M Offline
        Mykle1 Project Sponsor Module Developer @austin
        last edited by

        @austin said in Electron CPU usage:

        My recommendation would be to have Magic Mirror pin the Electron version to 1.6.15 at this time.

        Perhaps, but without a doubt, and confirmed months ago by numerous users (including myself) the combination that works best, and with the least amount of CPU load on a Pi, is Raspian Jessie, MM v2.1.0 and Electron v1.4.15. All the results are in the topic above which started 3 months ago. It was a hell of a ride! :-)

        Create a working config
        How to add modules

        1 Reply Last reply Reply Quote 0
        • schlachtkreuzer6S Offline
          schlachtkreuzer6
          last edited by

          FYI:
          with the latest system update (yesterday) and upgrade (yesterday) and latest update of MM its better than before ^^ but still running way to high. My pi is not showing up the overheating symbol (: animations still are crap,…

          Mykle1M 1 Reply Last reply Reply Quote 0
          • Mykle1M Offline
            Mykle1 Project Sponsor Module Developer @schlachtkreuzer6
            last edited by

            @schlachtkreuzer6

            I’m not using the Pi anymore. The one Pi mirror I have will stay using Jessie, MM v2.1.0 and electron v1.4.15. It doesn’t make any sense to change it. It runs flawlessly.

            My other boards can handle the newest MM and electron so I use those there.

            Create a working config
            How to add modules

            schlachtkreuzer6S 1 Reply Last reply Reply Quote 0
            • schlachtkreuzer6S Offline
              schlachtkreuzer6 @Mykle1
              last edited by

              @Mykle1 okay, which alternatives do you use? (:

              Mykle1M 1 Reply Last reply Reply Quote 0
              • Mykle1M Offline
                Mykle1 Project Sponsor Module Developer @schlachtkreuzer6
                last edited by Mykle1

                @schlachtkreuzer6 said in Electron CPU usage:

                okay, which alternatives do you use? (:

                Me, personally? I’ve taken to old laptop boards. Basically, a 10-12 year old laptop will outperform any Pi, in all categories. ubuntu installed turns a POS laptop into a killer MM macine and the laptops that old are as inexpensive as a new Pi, or free in some cases.

                Here are some things that others are using
                https://forum.magicmirror.builders/topic/4513/stronger-raspberry-pi-3-alternatives.

                Laptop mirror
                https://forum.magicmirror.builders/topic/4930/vanity-mirror-thy-name-is-woman-using-laptop

                Create a working config
                How to add modules

                1 Reply Last reply Reply Quote 0
                • cowboysdudeC Offline
                  cowboysdude Module Developer
                  last edited by

                  Just my two cents but as people want more from the mirror then “You look Good” compliments and here’s the weather the pi is going to fall further behind.

                  Some of these modules are intensive and need the power to run…

                  SO many are looking into small computer boards, like myself, mini-itx with a real processor and memory. Mine also uses an SSD… so power and speed are good :)

                  1 Reply Last reply Reply Quote 0
                  • R Offline
                    rovarma
                    last edited by

                    After performing a clean install of the MagicMirror on Raspbian Stretch I was also running into this issue: high CPU usage, stuttering in the UI when animations are playing, etc. I didn’t really expect the MagicMirror to perform well in the first place (since it’s browser-based) but this was worse than I expected, so I did some investigation. The problem is twofold:

                    • The version of Electron (1.6.2) does not work on Stretch. Many users (including me) work around this by manually installing Electron 1.7.9, which does support Stretch. After this, the MagicMirror can be installed as normal (aside from some bugs in the install script, which I fixed locally) and will appear to work.
                    • However: Electron 1.7.9 does not have support for hardware acceleration on the Raspberry Pi (1.6.2) does. So normal rendering will appear to work fine, but anything to do with animation (and alpha blending in particular) will slow to a crawl.

                    The solution is to use Raspbian Jessie for now and ignore Stretch until this is fixed in Electron.

                    Mykle1M 1 Reply Last reply Reply Quote 0
                    • Mykle1M Offline
                      Mykle1 Project Sponsor Module Developer @rovarma
                      last edited by

                      @rovarma said in Electron CPU usage:

                      The solution is to use Raspbian Jessie for now and ignore Stretch until this is fixed in Electron.

                      This has already been determined in the contents of this topic. The combination of Pi, OS and Electron versions for best performance is clearly stated above and has solved the CPU issue for many users since this topic started 3 months ago. :-)

                      Create a working config
                      How to add modules

                      1 Reply Last reply Reply Quote 0
                      • T Offline
                        TheBogueRat
                        last edited by TheBogueRat

                        I gave up on MM2 last year because of how bad the transitions looked. Recently I had need of something like MM and decided to try again and had the same CPU load and terrible transitions until I found this thread.

                        With the latest Raspbian Stretch, MM2, and a downgrade of electron to 1.4.15 it works far better. Barely a spike on the CPU meter.

                        This thread is far too long. Considering the impact of this solution, it really should be in the FAQ on github. The only reason I even noticed this thread is due to the weekly Email summary.

                        Mykle1M 1 Reply Last reply Reply Quote 3
                        • Mykle1M Offline
                          Mykle1 Project Sponsor Module Developer @TheBogueRat
                          last edited by

                          @TheBogueRat said in Electron CPU usage:

                          This thread is far too long.

                          If it were shorter then the results may never have come to light and many other users like yourself may have given up due to the CPU issue

                          Considering the impact of this solution, it really should be in the FAQ on github.

                          Perhaps, but I have nothing to do with such things. I’m just an old dude that wanted to know what was causing the issue and with the help of some fine people I think we did just that. However, I do appreciate the recognition and thank you on behalf of everyone that participated in the testing.

                          Create a working config
                          How to add modules

                          1 Reply Last reply Reply Quote 0
                          • MichMichM Offline
                            MichMich
                            last edited by

                            For anyone running into this issue, run the following command from your MagicMirror folder:

                             npm install electron@1.4.15
                            
                            schlachtkreuzer6S 1 Reply Last reply Reply Quote 4
                            • bheplerB Offline
                              bhepler Module Developer
                              last edited by

                              One more data point: The Pi behind my office mirror was doing okay, until I enabled the MMM-Snow module. Short version is that I had to downgrade Electron to 1.4.15 but now it’s running pretty well with 50 snowflakes.

                              1 Reply Last reply Reply Quote 1
                              • schlachtkreuzer6S Offline
                                schlachtkreuzer6 @MichMich
                                last edited by

                                @MichMich

                                
                                > electron@1.4.15 postinstall /home/pi/MagicMirror/node_modules/electron
                                > node install.js
                                
                                magicmirror@2.1.3 /home/pi/MagicMirror
                                ├── electron@1.4.15  invalid
                                └── UNMET PEER DEPENDENCY stylelint@7.13.0 invalid
                                
                                npm WARN grunt-stylelint@0.9.0 requires a peer of stylelint@^8.0.0 but none was installed.
                                npm WARN stylelint-config-recommended@1.0.0 requires a peer of stylelint@^8.0.0 but none was installed.
                                npm WARN stylelint-config-standard@17.0.0 requires a peer of stylelint@^8.0.0 but none was installed.
                                
                                bheplerB T 2 Replies Last reply Reply Quote 0
                                • bheplerB Offline
                                  bhepler Module Developer @schlachtkreuzer6
                                  last edited by

                                  @schlachtkreuzer6 I had the same error when I downgraded. However, it did install and I am able to run the Magic Mirror process. I am getting a temperature warning. I’ll experiment a bit to see if I can narrow that down.

                                  schlachtkreuzer6S 1 Reply Last reply Reply Quote 0
                                  • schlachtkreuzer6S Offline
                                    schlachtkreuzer6 @bhepler
                                    last edited by

                                    @bhepler Yeah funny!
                                    But you´re right. It install electron and the temperature sinks from 82-85°C to 52-55°C and the animations are smooth. Only the error massage is strange!

                                    bheplerB 1 Reply Last reply Reply Quote 0
                                    • bheplerB Offline
                                      bhepler Module Developer @schlachtkreuzer6
                                      last edited by

                                      @schlachtkreuzer6 Technically, they’re not error messages. They’re warnings. If they become serious, then they will be promoted to errors.

                                      1 Reply Last reply Reply Quote 0
                                      • T Offline
                                        Tourpe @schlachtkreuzer6
                                        last edited by Tourpe

                                        @MichMich Got a similar issue as reported by @schlachtkreuzer6, unfortunately I now have a black screen when starting. Logs show “WARNING! Could not load config file. Starting with default configuration. Error found: Error: Module version mismatch. Expected 50, got 54”. Any suggest on how to revert?

                                        Update: Managed to successfully revert back but doing a " npm install electron".

                                        1 Reply Last reply Reply Quote 0
                                        • Sandy2503S Offline
                                          Sandy2503
                                          last edited by

                                          i have a problem at downgrading:

                                          pi@magicmirror:~ $ cd ~/MagicMirror
                                          pi@magicmirror:~/MagicMirror $  npm install electron@1.4.15
                                          
                                          > electron@1.4.15 postinstall /home/pi/MagicMirror/node_modules/electron
                                          > node install.js
                                          
                                          - @types/node@7.0.43 node_modules/@types/node
                                          magicmirror@2.1.3 /home/pi/MagicMirror
                                          └── electron@1.4.15  invalid
                                          
                                          

                                          How can i fix that ?

                                          Sandy2503

                                          1 Reply Last reply Reply Quote 0
                                          • cruunnerrC Offline
                                            cruunnerr
                                            last edited by cruunnerr

                                            Hey guys,

                                            (first, sorry for my english. i hope you understand what i am trying to tell^^)

                                            i have got the same problem as u all.

                                            So i tried to fix it with using MagicMirror 2.1.0 and electron 1.4.15

                                            Unfortunately i am not the best programer, so sometimes i don’t know if i’m doing anything right.

                                            Well, i tried the option as shown in this thread on page 18 (https://forum.magicmirror.builders/post/28875)

                                            That gave me some npm errors when i type “npm start”.
                                            So i tried to use this guide: https://forum.magicmirror.builders/topic/5274/how-to-manually-install-mm-on-your-pi-for-absolute-beginners

                                            But it gave me the same errors.

                                            Step by step i did:

                                            1. rename the original MM-Folder to “MagicMirror_OLD”
                                            2. Downloaded this https://github.com/MichMich/MagicMirror/archive/v2.1.0.zip
                                            3. extract it and rename it to “MagicMirror”
                                            4. cd in this folder and type “npm install”
                                            5. after installing was done i typed “npm start” and got this:
                                            pi@MagicMirror:~ $ cd ~/MagicMirror/
                                            pi@MagicMirror:~/MagicMirror $ npm start
                                            
                                            > magicmirror@2.1.0 start /home/pi/MagicMirror
                                            > electron js/electron.js
                                            
                                            
                                            npm ERR! Linux 4.9.59-v7+
                                            npm ERR! argv "/usr/bin/node" "/usr/bin/npm" "start"
                                            npm ERR! node v6.12.2
                                            npm ERR! npm  v3.10.10
                                            npm ERR! code ELIFECYCLE
                                            npm ERR! magicmirror@2.1.0 start: `electron js/electron.js`
                                            npm ERR! Exit status 1
                                            npm ERR! 
                                            npm ERR! Failed at the magicmirror@2.1.0 start script 'electron js/electron.js'.
                                            npm ERR! Make sure you have the latest version of node.js and npm installed.
                                            npm ERR! If you do, this is most likely a problem with the magicmirror package,
                                            npm ERR! not with npm itself.
                                            npm ERR! Tell the author that this fails on your system:
                                            npm ERR!     electron js/electron.js
                                            npm ERR! You can get information on how to open an issue for this project with:
                                            npm ERR!     npm bugs magicmirror
                                            npm ERR! Or if that isn't available, you can get their info via:
                                            npm ERR!     npm owner ls magicmirror
                                            npm ERR! There is likely additional logging output above.
                                            
                                            npm ERR! Please include the following file with any support request:
                                            npm ERR!     /home/pi/MagicMirror/npm-debug.log
                                            pi@MagicMirror:~/MagicMirror $ 
                                            

                                            Another time i tried as shown on page 18. it was showing me, that i was using electron 1.4.15, but when i typed the “npm start” it shows me the same message as above.

                                            i don’t know what to do :( would be quite nice, if u guys could invest some time to solve my problem together. thank you very much :)

                                            edit:

                                            the “npm-debug.log” is here:

                                            ``
                                            0 info it worked if it ends with ok
                                            1 verbose cli [ ‘/usr/bin/node’, ‘/usr/bin/npm’, ‘start’ ]
                                            2 info using npm@3.10.10
                                            3 info using node@v6.12.2
                                            4 verbose run-script [ ‘prestart’, ‘start’, ‘poststart’ ]
                                            5 info lifecycle magicmirror@2.1.0~prestart: magicmirror@2.1.0
                                            6 silly lifecycle magicmirror@2.1.0~prestart: no script for prestart, continuing
                                            7 info lifecycle magicmirror@2.1.0~start: magicmirror@2.1.0
                                            8 verbose lifecycle magicmirror@2.1.0~start: unsafe-perm in lifecycle true
                                            9 verbose lifecycle magicmirror@2.1.0~start: PATH: /usr/lib/node_modules/npm/bin/node-gyp-bin:/home/pi/MagicMirror/node_modules/.bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/local/games:/usr/games
                                            10 verbose lifecycle magicmirror@2.1.0~start: CWD: /home/pi/MagicMirror
                                            11 silly lifecycle magicmirror@2.1.0~start: Args: [ ‘-c’, ‘electron js/electron.js’ ]
                                            12 silly lifecycle magicmirror@2.1.0~start: Returned: code: 1 signal: null
                                            13 info lifecycle magicmirror@2.1.0~start: Failed to exec start script
                                            14 verbose stack Error: magicmirror@2.1.0 start: electron js/electron.js
                                            14 verbose stack Exit status 1
                                            14 verbose stack at EventEmitter. (/usr/lib/node_modules/npm/lib/utils/lifecycle.js:255:16)
                                            14 verbose stack at emitTwo (events.js:106:13)
                                            14 verbose stack at EventEmitter.emit (events.js:191:7)
                                            14 verbose stack at ChildProcess. (/usr/lib/node_modules/npm/lib/utils/spawn.js:40:14)
                                            14 verbose stack at emitTwo (events.js:106:13)
                                            14 verbose stack at ChildProcess.emit (events.js:191:7)
                                            14 verbose stack at maybeClose (internal/child_process.js:920:16)
                                            14 verbose stack at Process.ChildProcess._handle.onexit (internal/child_process.js:230:5)
                                            15 verbose pkgid magicmirror@2.1.0
                                            16 verbose cwd /home/pi/MagicMirror
                                            17 error Linux 4.9.59-v7+
                                            18 error argv “/usr/bin/node” “/usr/bin/npm” “start”
                                            19 error node v6.12.2
                                            20 error npm v3.10.10
                                            21 error code ELIFECYCLE
                                            22 error magicmirror@2.1.0 start: electron js/electron.js
                                            22 error Exit status 1
                                            23 error Failed at the magicmirror@2.1.0 start script ‘electron js/electron.js’.
                                            23 error Make sure you have the latest version of node.js and npm installed.
                                            23 error If you do, this is most likely a problem with the magicmirror package,
                                            23 error not with npm itself.
                                            23 error Tell the author that this fails on your system:
                                            23 error electron js/electron.js
                                            23 error You can get information on how to open an issue for this project with:
                                            23 error npm bugs magicmirror
                                            23 error Or if that isn’t available, you can get their info via:
                                            23 error npm owner ls magicmirror
                                            23 error There is likely additional logging output above.
                                            24 verbose exit [ 1, true ]

                                            1 Reply Last reply Reply Quote 0

                                            Hello! It looks like you're interested in this conversation, but you don't have an account yet.

                                            Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

                                            With your input, this post could be even better 💗

                                            Register Login
                                            • 1
                                            • 2
                                            • 9
                                            • 10
                                            • 11
                                            • 12
                                            • 13
                                            • 11 / 13
                                            • First post
                                              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