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
    75 Posts 9 Posters 44.9k Views 10 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.
    • 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 Do not disturb
        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 Do not disturb
          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 Do not disturb
                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
                  • S Do not disturb
                    sdetweil @davidgagne
                    last edited by

                    @davidgagne no. the script works of any Debian based os. pi0 is SLOOOOOW…
                    but pi 3b+ should be ok. there should be a moving <-> while it’s updating… (haven’t figured out how to make that stand out more)

                    the script is doing apt get update, apt upgrade . this could take a while based on how much change since distro was released. over wifi, nothing I can do to speed it up.

                    I’ve tested on all the pi models. except the pi 1.
                    on odroid, Jetson nano, a chrome box and book running linux and a bunch of x86 distros., and macos Intel and arm.
                    I also tested on my arm chromebook, with the extra Ubuntu installed. install worked and server mode worked. no ui

                    if there is a problem, I’ll fix it. I’ll setup my 3b later.

                    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 Right. That’s my confusion. I have been able to run the script a dozen (or more) times on the Zero W, but it always fails on the 3B+, which I had assumed would be faster / better than the Zero W.

                      S 1 Reply Last reply Reply Quote 0
                      • S Do not disturb
                        sdetweil @davidgagne
                        last edited by

                        @davidgagne always fails?

                        what os? I’d pick the 32 it due to memory size

                        send me the install.log.

                        Sam

                        How to add modules

                        learning how to use browser developers window for css changes

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