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.

    Raspberry Pi Zero W for Magic Mirror

    Scheduled Pinned Locked Moved Hardware
    73 Posts 8 Posters 42.8k Views 9 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 Offline
      sdetweil @davidgagne
      last edited by

      @davidgagne no the electron missing is a problem in MagicMirror code…

      hang on…

      Sam

      How to add modules

      learning how to use browser developers window for css changes

      1 Reply Last reply Reply Quote 0
      • S Offline
        sdetweil @davidgagne
        last edited by

        @davidgagne ok, lets clean up and restart

        all command line commands

        pm2 flush (to get clear out the old logs) 
        
        pm2 status
        
        cd ~/MagicMirror
        npm start 
        

        all show work… and if you loaded the missing library in the MMM-Jeopardy module then all should be ok.

        then ctrl-q on the MM screen should stop it

        then

        pm2 restart 0
        

        and MM should come back up

        Sam

        How to add modules

        learning how to use browser developers window for css changes

        D 2 Replies Last reply Reply Quote 0
        • D Offline
          davidgagne @sdetweil
          last edited by

          @sdetweil Okay! I’m doing this right now and will keep you posted. THANK YOU AGAIN.

          1 Reply Last reply Reply Quote 0
          • D Offline
            davidgagne @sdetweil
            last edited by

            `@sdetweil Sadly that didn’t seem to work at all.

            pm2 flush gave me:

            [PM2] Spawning PM2 daemon with pm2_home=/home/dvg/.pm2
            [PM2] PM2 Successfully daemonized
            [PM2] Flushing /home/dvg/.pm2/pm2.log
            [PM2] Logs flushed
            

            Then pm2 status gave me:

            ┌────┬────────────────────┬──────────┬──────┬───────────┬──────────┬──────────┐
            │ id │ name               │ mode     │ ↺    │ status    │ cpu      │ memory   │
            ├────┼────────────────────┼──────────┼──────┼───────────┼──────────┼──────────┤
            │ 0  │ MagicMirror        │ fork     │ 0    │ online    │ 23.3%    │ 40.3mb   │
            └────┴────────────────────┴──────────┴──────┴───────────┴──────────┴──────────┘
            

            Then I did cd ~/MagicMirror/ and ran npm start which spit out this:

            > magicmirror@2.27.0 start
            > ./run-start.sh $1
            
            [2024-05-29 23:08:58.949] [LOG] Starting MagicMirror: v2.27.0
            [2024-05-29 23:08:59.437] [LOG] Loading config ...
            [2024-05-29 23:08:59.497] [LOG] config template file not exists, no envsubst
            [2024-05-29 23:09:07.135] [LOG] Loading module helpers ...
            [2024-05-29 23:09:07.356] [LOG] No helper found for module: alert.
            [2024-05-29 23:09:36.395] [LOG] Initializing new module helper ...
            [2024-05-29 23:09:36.558] [LOG] Module helper loaded: updatenotification
            [2024-05-29 23:09:36.688] [LOG] No helper found for module: clock.
            [2024-05-29 23:10:00.038] [LOG] Initializing new module helper ...
            [2024-05-29 23:10:00.109] [LOG] Module helper loaded: calendar
            [2024-05-29 23:10:00.684] [ERROR] Whoops! There was an uncaught exception... 
            [2024-05-29 23:10:01.570] [ERROR] Error: Cannot find module 'request'
            Require stack:
            - /home/dvg/MagicMirror/modules/MMM-JEOPARDY/node_helper.js
            - /home/dvg/MagicMirror/js/app.js
            - /home/dvg/MagicMirror/serveronly/index.js
                at Module._resolveFilename (node:internal/modules/cjs/loader:1048:15)
                at Module._resolveFilename (/home/dvg/MagicMirror/node_modules/module-alias/index.js:49:29)
                at Module._load (node:internal/modules/cjs/loader:901:27)
                at Module.require (node:internal/modules/cjs/loader:1115:19)
                at require (node:internal/modules/helpers:130:18)
                at Object.<anonymous> (/home/dvg/MagicMirror/modules/MMM-JEOPARDY/node_helper.js:8:17)
                at Module._compile (node:internal/modules/cjs/loader:1241:14)
                at Module._extensions..js (node:internal/modules/cjs/loader:1295:10)
                at Module.load (node:internal/modules/cjs/loader:1091:32)
                at Module._load (node:internal/modules/cjs/loader:938:12)
                at Module.require (node:internal/modules/cjs/loader:1115:19)
                at require (node:internal/modules/helpers:130:18)
                at loadModule (/home/dvg/MagicMirror/js/app.js:183:19)
                at loadModules (/home/dvg/MagicMirror/js/app.js:213:10)
                at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
                at async App.start (/home/dvg/MagicMirror/js/app.js:261:3) {
              code: 'MODULE_NOT_FOUND',
              requireStack: [
                '/home/dvg/MagicMirror/modules/MMM-JEOPARDY/node_helper.js',
                '/home/dvg/MagicMirror/js/app.js',
                '/home/dvg/MagicMirror/serveronly/index.js'
              ]
            } 
            [2024-05-29 23:10:01.664] [ERROR] MagicMirror² will not quit, but it might be a good idea to check why this happened. Maybe no internet connection? 
            [2024-05-29 23:10:01.745] [ERROR] If you think this really is an issue, please open an issue on GitHub: https://github.com/MagicMirrorOrg/MagicMirror/issues 
            [2024-05-29 23:12:53.308] [INFO] System information:
            ### SYSTEM: manufacturer: Raspberry Pi Foundation; model: Raspberry Pi Zero W Rev 1.1; raspberry: [object Object]; virtual: false
            ### OS: platform: linux; distro: Raspbian GNU/Linux; release: 11; arch: arm; kernel: 6.1.21+
            ### VERSIONS: electron: undefined; used node: 20.8.0; installed node: 20.8.0; npm: 10.1.0; pm2: 5.4.0
            ### OTHER: timeZone: America/New_York; ELECTRON_ENABLE_GPU: undefined
            Starting chromium browser now, have patience, it takes a minute
            Chromium_browser not installed
            

            This all seemed pointless, but I ran pm2 restart 0 anyway and got this:

            Use --update-env to update environment variables
            [PM2] Applying action restartProcessId on app [0](ids: [ '0' ])
            [PM2] [MagicMirror](0) ✓
            ┌────┬────────────────────┬──────────┬──────┬───────────┬──────────┬──────────┐
            │ id │ name               │ mode     │ ↺    │ status    │ cpu      │ memory   │
            ├────┼────────────────────┼──────────┼──────┼───────────┼──────────┼──────────┤
            │ 0  │ MagicMirror        │ fork     │ 47   │ online    │ 0%       │ 23.5mb   │
            └────┴────────────────────┴──────────┴──────┴───────────┴──────────┴──────────┘
            

            At this point I’m going to give up and go back to square one and flash the drive again and start over. Ugh.

            S 1 Reply Last reply Reply Quote 0
            • S Offline
              sdetweil @davidgagne
              last edited by

              @davidgagne said in Raspberry Pi Zero W for Magic Mirror:

              024-05-29 23:10:01.570] [ERROR] Error: Cannot find module ‘request’
              Require stack:

              • /home/dvg/MagicMirror/modules/MMM-JEOPARDY/node_helper.js

              no… just fix the MMM-Jeopardy module as I suggested yesterday

              two steps
              you only did 1

              … the more concerning part is that pm2 didn’t get setup as a service and start on boot… i haven’t looked at the log yet

              Sam

              How to add modules

              learning how to use browser developers window for css changes

              S D 2 Replies Last reply Reply Quote 0
              • S Offline
                sdetweil @sdetweil
                last edited by

                @davidgagne the install log looks good…

                don’t know what is going on… will have to think on it while I sleep…

                time to rest… til tomorrow

                Sam

                How to add modules

                learning how to use browser developers window for css changes

                1 Reply Last reply Reply Quote 0
                • D Offline
                  davidgagne @sdetweil
                  last edited by

                  @sdetweil I understand what you’re saying about fixing the Jeopardy module, but I really think that’s secondary to not getting MM to run in the first place (and it not starting as a service on boot). Once I get MM running reliably in the first place I will play around with modules. :-)

                  1 Reply Last reply Reply Quote 0
                  • D Offline
                    davidgagne
                    last edited by

                    How to Get MagicMirror to Run on a Raspberry Pi Zero W Rev 1.1

                    Late-May 2024

                    Huge thanks to @sdetweil for all his help!


                    1. Flash card with Legacy 32-bit.
                    2. Connect via ssh to run script:
                      bash -c  "$(curl -sL https://raw.githubusercontent.com/sdetweil/MagicMirror_scripts/master/raspberry.sh)"
                      

                      Answer yes to disable screen saver and use pm2 questions.

                    3. Remove chromium with:
                      sudo apt-get remove chromium-browser
                      sudo apt autoremove
                      
                    4. Add Firefox with:
                      sudo apt-get update
                      sudo apt-get install firefox-esr
                      
                    5. Enable VNC using GUI (Interface Options):

                      sudo raspi-config

                    6. Connect via TigerVNC (Apple app)
                    7. Edit installers/mm.sh via VNC using Pi's baked-in text editor by adding:
                      cd ~/MagicMirror
                      export external_browser=firefox
                      DISPLAY=:0 npm start
                      
                    8. Execute fix'em-up script:
                      bash -c "$(curl -sL https://raw.githubusercontent.com/sdetweil/MagicMirror_scripts/master/fixuppm2.sh)"
                      
                    9. cd ~/MagicMirror/
                      pm2 start MagicMirror
                      
                    10. sudo reboot

                    Note: On my Pi Zero W it takes a solid ten minutes from reboot to actually seeing MM output via HDMI.

                    S C plainbrokeP 4 Replies Last reply Reply Quote 1
                    • S Offline
                      sdetweil @davidgagne
                      last edited by sdetweil

                      @davidgagne thanks.

                      5 and 6 are optional
                      as 7 can be done with nano over ssh

                         scroll down with keyboard arrow keys
                         hit enter to add a line
                         type the export line
                         ctrl-x to exit nano, yes to save contents
                      

                      8 and 9 over ssh
                      9 pm2 can be run from any folder location

                      Sam

                      How to add modules

                      learning how to use browser developers window for css changes

                      D 1 Reply Last reply Reply Quote 0
                      • D Offline
                        davidgagne @sdetweil
                        last edited by

                        @sdetweil Is there any reason why this same procedure would not work on a 3B+? I’ve tried with multiple different versions of the OS but it always seems to get stuck on “Updating packages …” and – as far as I can tell – there’s nothing meaningful in install.log. Is this install script unique to the Zero W?

                        S 1 Reply Last reply Reply Quote 0
                        • 1
                        • 2
                        • 3
                        • 4
                        • 5
                        • 6
                        • 7
                        • 8
                        • 5 / 8
                        • 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