• 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.

MMM-ModuleToggleButton suddenly broken?

Scheduled Pinned Locked Moved Solved Troubleshooting
15 Posts 2 Posters 681 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.
  • P Offline
    philie
    last edited by Feb 13, 2024, 10:00 PM

    Hello everyone.
    I had installed the above module and had no problems with it. I then had to reset the Raspi because of another problem (who knows, maybe the problems are linked, the file system was suddenly broken and behaved strangely).
    Anyway, I reinstalled all my modules, but the ModuleToggle doesn’t work anymore. The MM doesn’t even boot when the module is set to active.

    When installing dependencies I get the following message:

    philie@magicmirror:~/MagicMirror/modules/MMM-ModuleToggleButton $ sudo npm install
    npm ERR! code ERESOLVE
    npm ERR! ERESOLVE could not resolve
    npm ERR!
    npm ERR! While resolving: MMM-ModuleToggleButton@1.0.0
    npm ERR! Found: stylelint@15.11.0
    npm ERR! node_modules/stylelint
    npm ERR!   peer stylelint@"15.x" from grunt-stylelint@0.19.0
    npm ERR!   node_modules/grunt-stylelint
    npm ERR!     dev grunt-stylelint@"latest" from the root project
    npm ERR!
    npm ERR! Could not resolve dependency:
    npm ERR! dev stylelint-config-standard@"latest" from the root project
    npm ERR!
    npm ERR! Conflicting peer dependency: stylelint@16.2.1
    npm ERR! node_modules/stylelint
    npm ERR!   peer stylelint@"^16.1.0" from stylelint-config-standard@36.0.0
    npm ERR!   node_modules/stylelint-config-standard
    npm ERR!     dev stylelint-config-standard@"latest" from the root project
    npm ERR!
    npm ERR! Fix the upstream dependency conflict, or retry
    npm ERR! this command with --force or --legacy-peer-deps
    npm ERR! to accept an incorrect (and potentially broken) dependency resolution.
    npm ERR!
    npm ERR!
    npm ERR! For a full report see:
    npm ERR! /root/.npm/_logs/2024-02-13T20_26_05_190Z-eresolve-report.txt
    
    npm ERR! A complete log of this run can be found in: /root/.npm/_logs/2024-02-13T20_26_05_190Z-debug-0.log
    philie@magicmirror:~/MagicMirror/modules/MMM-ModuleToggleButton $
    

    The pm2 log gives the following message when trying to start MM:

    /home/philie/.pm2/logs/MagicMirror-out.log last 15 lines:
    0|MagicMir | [13.02.2024 22:40.42.417] [LOG]   Loading module helpers ...
    0|MagicMir | [13.02.2024 22:40.42.421] [LOG]   No helper found for module: alert.
    0|MagicMir | [13.02.2024 22:40.42.446] [LOG]   Initializing new module helper ...
    0|MagicMir | [13.02.2024 22:40.42.448] [LOG]   Module helper loaded: updatenotification
    0|MagicMir | [13.02.2024 22:40.42.450] [LOG]   No helper found for module: clock.
    0|MagicMir | [13.02.2024 22:40.42.920] [LOG]   Initializing new module helper ...
    0|MagicMir | [13.02.2024 22:40.42.922] [LOG]   Module helper loaded: calendar
    0|MagicMir |
    0|MagicMir | > magicmirror@2.26.0 start
    0|MagicMir | > DISPLAY="${DISPLAY:=:0}" ./node_modules/.bin/electron js/electron.js
    0|MagicMir |
    0|MagicMir | [13.02.2024 22:44.30.792] [LOG]   Starting MagicMirror: v2.26.0
    0|MagicMir | [13.02.2024 22:44.30.817] [LOG]   Loading config ...
    0|MagicMir | [13.02.2024 22:44.30.824] [DEBUG] config template file not exists, no envsubst
    0|MagicMir | [13.02.2024 22:44.30.832] [LOG]   Loading module helpers ...
    
    /home/philie/.pm2/logs/MagicMirror-error.log last 15 lines:
    0|MagicMir |     at Module._compile (node:internal/modules/cjs/loader:1271:14)
    0|MagicMir |     at Object..js (node:internal/modules/cjs/loader:1326:10)
    0|MagicMir |     at Module.load (node:internal/modules/cjs/loader:1126:32)
    0|MagicMir |     at node:internal/modules/cjs/loader:967:12
    0|MagicMir |     at Function._load (node:electron/js2c/node_init:2:13357)
    0|MagicMir | (Use `electron --trace-warnings ...` to show where the warning was created)
    0|MagicMir | [13.02.2024 22:44.30.892] [ERROR] (node:4146) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). To terminate the node process on unhandled promise rejection, use the CLI flag `--unhandled-rejections=strict` (see https://nodejs.org/api/cli.html#cli_unhandled_rejections_mode). (rejection id: 2)
    0|MagicMir | Warning: vkCreateInstance: Found no drivers!
    0|MagicMir | Warning: vkCreateInstance failed with VK_ERROR_INCOMPATIBLE_DRIVER
    0|MagicMir |     at CheckVkSuccessImpl (../../third_party/dawn/src/dawn/native/vulkan/VulkanError.cpp:88)
    0|MagicMir |     at CreateVkInstance (../../third_party/dawn/src/dawn/native/vulkan/BackendVk.cpp:458)
    0|MagicMir |     at Initialize (../../third_party/dawn/src/dawn/native/vulkan/BackendVk.cpp:344)
    0|MagicMir |     at Create (../../third_party/dawn/src/dawn/native/vulkan/BackendVk.cpp:266)
    0|MagicMir |     at operator() (../../third_party/dawn/src/dawn/native/vulkan/BackendVk.cpp:521)
    0|MagicMir |
    
    

    I have already installed ‘onoff’ manually. That didn’t help either. Does anyone know how to interpret the error message?

    Many thanks in advance

    S 1 Reply Last reply Feb 14, 2024, 2:06 PM Reply Quote 0
    • S Offline
      sdetweil @philie
      last edited by Feb 15, 2024, 2:14 PM

      @philie ok, two things…

      1 lets fix the epoll problem.
      it seems that was installed accidentally in the wrong place as its outside the MagicMirror folder

      /home/philie/node_modules/epoll
      

      do

      cd ~
      rm -rf node_modules/epoll
      

      2 use my fork of the MMM-ModuleToggleButton module which fixes the install
      https://github.com/sdetweil/MMM-ModuleToggleButton

      remove the old module folder, clone my fork and npm install it

      cd ~/MagicMirror/modules
      rm -rf MMM-ModuleToggleButton
      git clone https://github.com/sdetweil/MMM-ModuleToggleButton
      cd MMM-ModuleToggleButton
      npm install
      

      let me know

      Sam

      How to add modules

      learning how to use browser developers window for css changes

      P 1 Reply Last reply Feb 15, 2024, 3:53 PM Reply Quote 0
      • S Offline
        sdetweil @philie
        last edited by Feb 14, 2024, 2:06 PM

        @philie pm2 collects the data in separate files normal and error. it’s hard to tell

        do this

        pm2 stop all
        cd ~/MagicMirror
        npm start >somfile.txt 2>&1
        

        wait 20 seconds
        ctrl-q
        then edit somefile.txt

        after we go it then

        pm2 status
        pm2 start xx
        xx is the number or name of the managed app

        Sam

        How to add modules

        learning how to use browser developers window for css changes

        P 1 Reply Last reply Feb 14, 2024, 8:22 PM Reply Quote 0
        • P Offline
          philie @sdetweil
          last edited by Feb 14, 2024, 8:22 PM

          @sdetweil
          Hey Sam,
          thank you for your help.

          Here is the demanded output:

          philie@magicmirror:~/MagicMirror $ npm start > debugger_log.txt 2>&1
          
          philie@magicmirror:~/MagicMirror $ cat debugger_log.txt
          
          > magicmirror@2.26.0 start
          > DISPLAY="${DISPLAY:=:0}" ./node_modules/.bin/electron js/electron.js
          
          [14.02.2024 21:14.35.291] [LOG]   Starting MagicMirror: v2.26.0
          [14.02.2024 21:14.35.303] [LOG]   Loading config ...
          [14.02.2024 21:14.35.315] [DEBUG] config template file not exists, no envsubst
          [14.02.2024 21:14.35.322] [LOG]   Loading module helpers ...
          [14.02.2024 21:14.35.380] [ERROR] (node:20831) UnhandledPromiseRejectionWarning: Error: The module '/home/philie/node_modules/epoll/build/Release/epoll.node'
          was compiled against a different Node.js version using
          NODE_MODULE_VERSION 115. This version of Node.js requires
          NODE_MODULE_VERSION 118. Please try re-compiling or re-installing
          the module (for instance, using `npm rebuild` or `npm install`).
              at process.func [as dlopen] (node:electron/js2c/node_init:2:2107)
              at Object.<anonymous> (node:internal/modules/cjs/loader:1356:18)
              at Object.func [as .node] (node:electron/js2c/node_init:2:2107)
              at Module.load (node:internal/modules/cjs/loader:1126:32)
              at node:internal/modules/cjs/loader:967:12
              at Function._load (node:electron/js2c/node_init:2:13357)
              at Module.require (node:internal/modules/cjs/loader:1150:19)
              at require (node:internal/modules/cjs/helpers:121:18)
              at bindings (/home/philie/node_modules/bindings/bindings.js:112:48)
              at /home/philie/node_modules/epoll/epoll.js:7:31
              at Object.<anonymous> (/home/philie/node_modules/epoll/epoll.js:15:3)
              at Module._compile (node:internal/modules/cjs/loader:1271:14)
              at Object..js (node:internal/modules/cjs/loader:1326:10)
              at Module.load (node:internal/modules/cjs/loader:1126:32)
              at node:internal/modules/cjs/loader:967:12
              at Function._load (node:electron/js2c/node_init:2:13357)
          (Use `electron --trace-warnings ...` to show where the warning was created)
          [14.02.2024 21:14.35.382] [ERROR] (node:20831) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). To terminate the node process on unhandled promise rejection, use the CLI flag `--unhandled-rejections=strict` (see https://nodejs.org/api/cli.html#cli_unhandled_rejections_mode). (rejection id: 2)
          /home/philie/MagicMirror/node_modules/electron/dist/electron exited with signal SIGINT
          

          So this tells me diretly that the version uf node.js is not sufficent.

          if I try to upgrade it using npm rebuild it looks like the following:

          philie@magicmirror:~/MagicMirror/modules/MMM-ModuleToggleButton $ sudo npm rebuild
          npm ERR! code 127
          npm ERR! path /home/philie/MagicMirror/modules/MMM-ModuleToggleButton
          npm ERR! command failed
          npm ERR! command sh -c node_modules/.bin/electron-rebuild -e ../../node_modules/electron
          npm ERR! sh: 1: node_modules/.bin/electron-rebuild: not found
          
          npm ERR! A complete log of this run can be found in: /root/.npm/_logs/2024-02-14T20_16_30_701Z-debug-0.log
          

          How can I upgrade from 115 to 118?

          S 1 Reply Last reply Feb 14, 2024, 10:35 PM Reply Quote 0
          • S Offline
            sdetweil @philie
            last edited by sdetweil Feb 14, 2024, 10:36 PM Feb 14, 2024, 10:35 PM

            @philie yep, the tools aren’t installed
            and it needs more changes

            I won’t be able to get to it til later tonight
            but if you look at my fork for MMM-Buttons
            https://github.com/sdetweil/MMM-Buttons

            I added a postinstall action in package json and added the postinstall script

            you can run the postinstall without npm

            ./postinstall
            

            Sam

            How to add modules

            learning how to use browser developers window for css changes

            P 1 Reply Last reply Feb 15, 2024, 10:51 AM Reply Quote 0
            • P Offline
              philie @sdetweil
              last edited by Feb 15, 2024, 10:51 AM

              @sdetweil
              Hey Sam
              Thank you very much.
              To keep it simple, I installed your MMM-Buttons. The postinstall Script did run and I got positive Feedback regarding rebuilding Electron.

              When i start MM after, I get still the same Error as before…

              philie@magicmirror:~/MagicMirror $ cat somfile.txt
              
              > magicmirror@2.26.0 start
              > DISPLAY="${DISPLAY:=:0}" ./node_modules/.bin/electron js/electron.js
              
              [15.02.2024 11:40.59.323] [LOG]   Starting MagicMirror: v2.26.0
              [15.02.2024 11:40.59.334] [LOG]   Loading config ...
              [15.02.2024 11:40.59.345] [DEBUG] config template file not exists, no envsubst
              [15.02.2024 11:40.59.353] [LOG]   Loading module helpers ...
              [15.02.2024 11:40.59.410] [ERROR] (node:1536) UnhandledPromiseRejectionWarning: Error: The module '/home/philie/node_modules/epoll/build/Release/epoll.node'
              was compiled against a different Node.js version using
              NODE_MODULE_VERSION 115. This version of Node.js requires
              NODE_MODULE_VERSION 118. Please try re-compiling or re-installing
              the module (for instance, using `npm rebuild` or `npm install`).
                  at process.func [as dlopen] (node:electron/js2c/node_init:2:2107)
                  at Object.<anonymous> (node:internal/modules/cjs/loader:1356:18)
                  at Object.func [as .node] (node:electron/js2c/node_init:2:2107)
                  at Module.load (node:internal/modules/cjs/loader:1126:32)
                  at node:internal/modules/cjs/loader:967:12
                  at Function._load (node:electron/js2c/node_init:2:13357)
                  at Module.require (node:internal/modules/cjs/loader:1150:19)
                  at require (node:internal/modules/cjs/helpers:121:18)
                  at bindings (/home/philie/node_modules/bindings/bindings.js:112:48)
                  at /home/philie/node_modules/epoll/epoll.js:7:31
                  at Object.<anonymous> (/home/philie/node_modules/epoll/epoll.js:15:3)
                  at Module._compile (node:internal/modules/cjs/loader:1271:14)
                  at Object..js (node:internal/modules/cjs/loader:1326:10)
                  at Module.load (node:internal/modules/cjs/loader:1126:32)
                  at node:internal/modules/cjs/loader:967:12
                  at Function._load (node:electron/js2c/node_init:2:13357)
              (Use `electron --trace-warnings ...` to show where the warning was created)
              [15.02.2024 11:40.59.412] [ERROR] (node:1536) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). To terminate the node process on unhandled promise rejection, use the CLI flag `--unhandled-rejections=strict` (see https://nodejs.org/api/cli.html#cli_unhandled_rejections_mode). (rejection id: 2)
              /home/philie/MagicMirror/node_modules/electron/dist/electron exited with signal SIGINT
              
              S 1 Reply Last reply Feb 15, 2024, 2:14 PM Reply Quote 0
              • S Offline
                sdetweil @philie
                last edited by Feb 15, 2024, 2:14 PM

                @philie ok, two things…

                1 lets fix the epoll problem.
                it seems that was installed accidentally in the wrong place as its outside the MagicMirror folder

                /home/philie/node_modules/epoll
                

                do

                cd ~
                rm -rf node_modules/epoll
                

                2 use my fork of the MMM-ModuleToggleButton module which fixes the install
                https://github.com/sdetweil/MMM-ModuleToggleButton

                remove the old module folder, clone my fork and npm install it

                cd ~/MagicMirror/modules
                rm -rf MMM-ModuleToggleButton
                git clone https://github.com/sdetweil/MMM-ModuleToggleButton
                cd MMM-ModuleToggleButton
                npm install
                

                let me know

                Sam

                How to add modules

                learning how to use browser developers window for css changes

                P 1 Reply Last reply Feb 15, 2024, 3:53 PM Reply Quote 0
                • P Offline
                  philie @sdetweil
                  last edited by Feb 15, 2024, 3:53 PM

                  @sdetweil
                  Great! Module ist now installed fine and the test-confg (just the toggle module and another one to toggle activated) is working!

                  Very much appreciated what you are doing for this community! Thank you!

                  S 1 Reply Last reply Feb 15, 2024, 3:56 PM Reply Quote 1
                  • S Offline
                    sdetweil @philie
                    last edited by Feb 15, 2024, 3:56 PM

                    @philie awesome!!!

                    Sam

                    How to add modules

                    learning how to use browser developers window for css changes

                    1 Reply Last reply Reply Quote 0
                    • P Offline
                      philie
                      last edited by Jul 14, 2024, 11:36 AM

                      @sdetweil said in MMM-ModuleToggleButton suddenly broken?:

                      cd MMM-ModuleToggleButton

                      Hey there, it’s me again with the same problem…

                      I did the MM Update to 2.28.0 by Script. Like usually some things are broken after and I did npm install and npm rebuild in the MM rootdirectory. It installed some stuff and looked good so far.

                      But the module MMM-ModuleToggleButton stays broken like after every update.
                      It has again something to do with electron, I tried to reinstall electron, but have no success…

                      The output:

                      philie@magicmirror:~/MagicMirror/modules $ git clone https://github.com/sdetweil/MMM-ModuleToggleButton
                      Cloning into 'MMM-ModuleToggleButton'...
                      remote: Enumerating objects: 44, done.
                      remote: Counting objects: 100% (4/4), done.
                      remote: Compressing objects: 100% (4/4), done.
                      remote: Total 44 (delta 0), reused 2 (delta 0), pack-reused 40
                      Receiving objects: 100% (44/44), 10.44 KiB | 1.30 MiB/s, done.
                      Resolving deltas: 100% (17/17), done.
                      philie@magicmirror:~/MagicMirror/modules $ cd MMM-ModuleToggleButton
                      philie@magicmirror:~/MagicMirror/modules/MMM-ModuleToggleButton $ npm install
                      
                      > MMM-ModuleToggleButton@1.0.0 postinstall
                      > ./postinstall
                      
                      /home/philie/MagicMirror/modules/MMM-ModuleToggleButton
                      ./postinstall: line 8: ../../node_modules/.bin/electron-rebuild: No such file or directory
                      npm error code 127
                      npm error path /home/philie/MagicMirror/modules/MMM-ModuleToggleButton
                      npm error command failed
                      npm error command sh -c ./postinstall
                      npm error A complete log of this run can be found in: /home/philie/.npm/_logs/2024-07-14T11_29_32_616Z-debug-0.log
                      philie@magicmirror:~/MagicMirror/modules/MMM-ModuleToggleButton $
                      

                      so, electron-rebuild in node_modules seems to be missing…

                      Indeed:

                      philie@magicmirror:~/MagicMirror/node_modules $ cd electron
                      philie@magicmirror:~/MagicMirror/node_modules/electron $ ll
                      total 1068
                      drwxr-xr-x   4 root   root     4096 Jul 14 13:20 .
                      drwxr-xr-x 679 philie philie  28672 Jul 14 13:10 ..
                      -rw-r--r--   1 root   root     8126 Jul 14 12:46 checksums.json
                      -rwxr-xr-x   1 root   root      612 Jul 14 12:46 cli.js
                      drwxr-xr-x   4 root   root     4096 Jul 14 12:48 dist
                      -rw-r--r--   1 root   root   972754 Jul 14 12:46 electron.d.ts
                      -rw-r--r--   1 root   root      659 Jul 14 12:46 index.js
                      -rw-r--r--   1 root   root     3178 Jul 14 12:46 install.js
                      -rw-r--r--   1 root   root     1096 Jul 14 12:46 LICENSE
                      drwxr-xr-x  70 root   root     4096 Jul 14 13:20 node_modules
                      -rw-r--r--   1 root   root      586 Jul 14 12:46 package.json
                      -rw-r--r--   1 root   root    31409 Jul 14 13:20 package-lock.json
                      -rw-r--r--   1 root   root        8 Jul 14 12:48 path.txt
                      -rw-r--r--   1 root   root     5370 Jul 14 12:46 README.md
                      

                      I did already the steps from last time (therefore I answer in this old topic) but no luck this time.
                      What can I do?

                      Thank you,
                      philie

                      S 1 Reply Last reply Jul 14, 2024, 11:42 AM Reply Quote 0
                      • S Offline
                        sdetweil @philie
                        last edited by Jul 14, 2024, 11:42 AM

                        @philie can you dump out the postinstall
                        file in the module folder…
                        it seems to be missing a step

                        Sam

                        How to add modules

                        learning how to use browser developers window for css changes

                        S 1 Reply Last reply Jul 14, 2024, 11:48 AM Reply Quote 0
                        • 1
                        • 2
                        • 1 / 2
                        • 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