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.
    • 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
                        • Sandy2503S Offline
                          Sandy2503
                          last edited by

                          @cruunnerr - I `ve done it !
                          without previous Unistall

                          i have downgraded with:

                          sudo npm install -g electron@1.4.15
                          

                          Sandy2503

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

                            Well,

                            i had MM 2.1.2 installed, so i needed to use the 2.1.0 way…

                            but i actually got it running with “DISPLAY=:0 npm start”

                            then i just copied the installed modules folders to the new directory and copied my “old” config.js but that didn’t work.

                            i actually install the 3rd party modules manual. hopefully my old config.js will work then.

                            But thank you anyway

                            edit:

                            so,

                            i got MM2.1.0 running with electron 1.4.15

                            have had a few problems, but now all works great.

                            1 Reply Last reply Reply Quote 0
                            • K Offline
                              knubbl
                              last edited by knubbl

                              Bad issue with electron. When i downgrade to 1.4.15 the default calender module does not work

                              ok…calendar works fine

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

                                Cause i didn’t want to run 2.1.0 and also got many errors every time i looked in the logs, i decided to do a fresh install and try again.

                                So i just installed a fresh Raspbian stretch lite and followed this guide: https://github.com/MichMich/MagicMirror/wiki/Jessie-Lite-Installation-Guide

                                after the first start i got 80-85% cpu usage just playing the default modules.

                                so i went into my MagicMirror folder and just typed “npm install electron@1.4.15”.
                                It said that the version seems to be invalid, but after a reboot i tooled a look in the
                                “/home/pi/MagicMirror/node_modules/electron/dist/version”
                                and saw a 1.4.15 shown.

                                thats all.

                                so in my experience its just the electron version needed to downgrade. Neither the OS nor the MagicMirror Version needs to be downgraded.

                                Loaded up a video: https://youtu.be/ak_mEMuLpYc

                                shows “nmon-stats” while adding Traffic- and News-Module via Remote Control
                                Still shows peaks when animation comes, but its fluety anyway

                                1 Reply Last reply Reply Quote 0
                                • WeatherGeekW Offline
                                  WeatherGeek
                                  last edited by

                                  I have been having the issue, thanks so much for all the detailed information! I am going to do a fresh install with Jessy and downgrade Electron and MM2.

                                  1 Reply Last reply Reply Quote 0
                                  • M Offline
                                    mattn
                                    last edited by mattn

                                    First off, apologies for the necro! But I had to reinstall MM this weekend and came across this same issue. After a fair bit of time reinstalling/googling, I managed to resolve it by adding the following to /etc/environment

                                    ELECTRON_FORCE_WINDOW_MENU_BAR=1
                                    

                                    So thought I’d post it here in case anyone else experiences this.
                                    I’ve had the default install running for a while since adding the fix and my load avg has dropped from 6+ to “0.00, 0.02, 0.02” and electron seems to peak at around 7% every ~30s for about 2s. The rest of the time it isn’t even visible in top’s list.

                                    credit to reddit: https://www.reddit.com/r/kde/comments/5x9t7j/electron_app_high_cpu_usage/
                                    Edit: After adding my usual modules, electron’s CPU usage has gone up to a fairly constant ~9% across 3 processes.

                                    top - 00:04:33 up 25 min,  3 users,  load average: 0.06, 0.13, 0.13
                                    Tasks: 156 total,   2 running, 154 sleeping,   0 stopped,   0 zombie
                                    %Cpu(s):  2.0 us,  0.4 sy,  0.0 ni, 97.6 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
                                    KiB Mem:    947732 total,   486072 used,   461660 free,    26476 buffers
                                    KiB Swap:   102396 total,        0 used,   102396 free.   240288 cached Mem
                                    
                                      PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND
                                     1387 pi        20   0  300260  98384  55840 S   4.9 10.4   0:45.48 electron
                                     1394 pi        20   0  286500  68700  49420 S   2.0  7.2   0:23.08 electron
                                     1358 pi        20   0  436408  78528  57656 S   1.0  8.3   0:19.25 electron
                                    

                                    Edit2: Left it running over night, and it’s stable:

                                    top - 07:51:22 up  8:12,  3 users,  load average: 0.24, 0.23, 0.17
                                    Tasks: 153 total,   1 running, 152 sleeping,   0 stopped,   0 zombie
                                    %Cpu(s):  2.1 us,  0.3 sy,  0.0 ni, 97.5 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
                                    KiB Mem:    947732 total,   543280 used,   404452 free,    34664 buffers
                                    KiB Swap:   102396 total,        0 used,   102396 free.   271040 cached Mem
                                    
                                      PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND
                                     1798 pi        20   0  301180  99652  56580 S   5.3 10.5  22:54.84 electron
                                     1805 pi        20   0  321060  79368  50868 S   2.6  8.4  11:36.49 electron
                                     1770 pi        20   0  480972  82744  58648 S   1.0  8.7   7:20.91 electron
                                    
                                    D M 2 Replies Last reply Reply Quote 3
                                    • D Offline
                                      Doum @mattn
                                      last edited by

                                      @mattn I am pretty new to linux/raspbian… I do not have any file/folder under /etc with the name environment?

                                      Should i create a file and add this line in? add it somewhere else?

                                      Thanks

                                      M 1 Reply Last reply Reply Quote 0
                                      • N Offline
                                        nparab
                                        last edited by

                                        Thanks v.much to everyone on this forum. I just downgraded Electron to 1.4.15, without downgrading either MagicMirror2 or my OS, and my CPU usage and temperature are significantly down. But I’m facing yet another problem because of this downgrading of Electron. My MMM-PIR-Sensor module is giving this error:

                                        App threw an error during load
                                        Error: Module version mismatch. Expected 50, got 54.
                                            at Error (native)
                                            at process.module.(anonymous function) [as dlopen] (ELECTRON_ASAR.js:173:20)
                                            at Object.Module._extensions..node (module.js:583:18)
                                            at Object.module.(anonymous function) [as .node] (ELECTRON_ASAR.js:173:20)
                                            at Module.load (module.js:473:32)
                                            at tryModuleLoad (module.js:432:12)
                                            at Function.Module._load (module.js:424:3)
                                            at Module.require (module.js:483:17)
                                            at require (internal/module.js:20:19)
                                            at bindings (/home/pi/MagicMirror/modules/MMM-PIR-Sensor/node_modules/bindings/bindings.js:81:44)
                                        Whoops! There was an uncaught exception...
                                        Error: Module version mismatch. Expected 50, got 54.
                                            at Error (native)
                                            at process.module.(anonymous function) [as dlopen] (ELECTRON_ASAR.js:173:20)
                                            at Object.Module._extensions..node (module.js:583:18)
                                            at Object.module.(anonymous function) [as .node] (ELECTRON_ASAR.js:173:20)
                                            at Module.load (module.js:473:32)
                                            at tryModuleLoad (module.js:432:12)
                                            at Function.Module._load (module.js:424:3)
                                            at Module.require (module.js:483:17)
                                            at require (internal/module.js:20:19)
                                            at bindings (/home/pi/MagicMirror/modules/MMM-PIR-Sensor/node_modules/bindings/bindings.js:81:44)
                                        

                                        Any help on fixing this would be appreciated.

                                        1 Reply Last reply Reply Quote 0
                                        • N Offline
                                          nparab
                                          last edited by nparab

                                          Fixed it! I just went to the modules/MMM-PIR-Sensor directory and did

                                          npm install
                                          

                                          That fixed it.

                                          1 Reply Last reply Reply Quote 1
                                          • M Offline
                                            mattn @Doum
                                            last edited by

                                            @Doum Yeah, just create the file, paste that line, save and reboot.

                                            1 Reply Last reply Reply Quote 1

                                            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