MagicMirror Forum
    • Recent
    • Tags
    • Unsolved
    • Solved
    • MagicMirror² Repository
    • Documentation
    • 3rd-Party-Modules
    • Donate
    • Discord
    • Register
    • Login
    1. Home
    2. davidgagne
    3. Posts
    A New Chapter for MagicMirror: The Community Takes the Lead
    Read the statement by Michael Teeuw here.
    D
    Offline
    • Profile
    • Following 0
    • Followers 0
    • Topics 5
    • Posts 60
    • Groups 0

    Posts

    Recent Best Controversial
    • RE: Raspberry Pi Zero W for Magic Mirror

      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.

      posted in Hardware
      D
      davidgagne
    • RE: Raspberry Pi Zero W for Magic Mirror

      @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. :-)

      posted in Hardware
      D
      davidgagne
    • RE: Raspberry Pi Zero W for Magic Mirror

      `@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.

      posted in Hardware
      D
      davidgagne
    • RE: Raspberry Pi Zero W for Magic Mirror

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

      posted in Hardware
      D
      davidgagne
    • RE: Raspberry Pi Zero W for Magic Mirror

      @sdetweil Am I wrong about this? It actually appears that ‘electron’ is the missing module. But that’s not in /modules it’s in /js … Do I follow the same npm init steps to get it?

      posted in Hardware
      D
      davidgagne
    • RE: Raspberry Pi Zero W for Magic Mirror

      @sdetweil Ah. I see that. But … I don’t think the Jeopardy module is the main problem here. I’d prefer to simply remove that and try to get back to where I can even get MM to run in the first place; then I’ll screw around with adding modules. As it is I still can’t get MM to even run at all (plus all the restarts).

      posted in Hardware
      D
      davidgagne
    • RE: Raspberry Pi Zero W for Magic Mirror

      @sdetweil Oh. I thought the alert module was also indicating it was missing. Okay, I’ve tried npm init -y inside the MMM-Jeopardy dir, too, now.

      pm2 status gives me:

      ┌────┬────────────────┬─────────────┬─────────┬─────────┬──────────┬────────┬──────┬───────────┬──────────┬──────────┬──────────┬──────────┐
      │ id │ name           │ namespace   │ version │ mode    │ pid      │ uptime │ ↺    │ status    │ cpu      │ mem      │ user     │ watching │
      ├────┼────────────────┼─────────────┼─────────┼─────────┼──────────┼────────┼──────┼───────────┼──────────┼──────────┼──────────┼──────────┤
      │ 0  │ MagicMirror    │ default     │ 2.27.0  │ fork    │ 1865     │ 11s    │ 28   │ online    │ 21.4%    │ 38.6mb   │ dvg      │ disabled │
      └────┴────────────────┴─────────────┴─────────┴─────────┴──────────┴────────┴──────┴───────────┴──────────┴──────────┴──────────┴──────────┘
      

      And now a subsequent pm2 start MagicMirror gives me:

      [PM2] Applying action restartProcessId on app [MagicMirror](ids: [ 0 ])
      [PM2] [MagicMirror](0) ✓
      [PM2] Process successfully started
      ┌────┬────────────────┬─────────────┬─────────┬─────────┬──────────┬────────┬──────┬───────────┬──────────┬──────────┬──────────┬──────────┐
      │ id │ name           │ namespace   │ version │ mode    │ pid      │ uptime │ ↺    │ status    │ cpu      │ mem      │ user     │ watching │
      ├────┼────────────────┼─────────────┼─────────┼─────────┼──────────┼────────┼──────┼───────────┼──────────┼──────────┼──────────┼──────────┤
      │ 0  │ MagicMirror    │ default     │ 2.27.0  │ fork    │ 1986     │ 0s     │ 34   │ online    │ 0%       │ 22.6mb   │ dvg      │ disabled │
      └────┴────────────────┴─────────────┴─────────┴─────────┴──────────┴────────┴──────┴───────────┴──────────┴──────────┴──────────┴──────────┘
      

      But there’s still nothing displaying (aside from the generic Pi OS desktop, I mean).

      posted in Hardware
      D
      davidgagne
    • RE: Raspberry Pi Zero W for Magic Mirror

      @sdetweil So, because I am relentless, I rebooted to see if that would help. It didn’t, but now it looks like I have a different problem altogether:

      cd MagicMirror/
      pm2 start MagicMirror
      [PM2] Spawning PM2 daemon with pm2_home=/home/dvg/.pm2
      [PM2] PM2 Successfully daemonized
      [PM2][ERROR] Script not found: /home/dvg/MagicMirror/MagicMirror
      
      posted in Hardware
      D
      davidgagne
    • RE: Raspberry Pi Zero W for Magic Mirror

      @sdetweil Hmmm. Okay. I tried that for the ‘alert’ module but it didn’t seem to have any impact:

      dvg@hyperspace:~/MagicMirror $ cd modules/
      dvg@hyperspace:~/MagicMirror/modules $ ls
      default  MMM-JEOPARDY
      dvg@hyperspace:~/MagicMirror/modules $ cd default/
      dvg@hyperspace:~/MagicMirror/modules/default $ ls
      alert  calendar  clock  compliments  defaultmodules.js  helloworld  newsfeed  updatenotification  utils.js  weather
      dvg@hyperspace:~/MagicMirror/modules/default $ cd alert
      dvg@hyperspace:~/MagicMirror/modules/default/alert $ ls package.json
      ls: cannot access 'package.json': No such file or directory
      dvg@hyperspace:~/MagicMirror/modules/default/alert $ npm init -y
      Wrote to /home/dvg/MagicMirror/modules/default/alert/package.json:
      
      {
        "name": "alert",
        "version": "1.0.0",
        "description": "The alert module is one of the default modules of the MagicMirror². This module displays notifications from other modules.",
        "main": "alert.js",
        "scripts": {
          "test": "echo \"Error: no test specified\" && exit 1"
        },
        "keywords": [],
        "author": "",
        "license": "ISC"
      }
      
      
      dvg@hyperspace:~/MagicMirror/modules/default/alert $ cd ..
      dvg@hyperspace:~/MagicMirror/modules/default $ cd ..
      dvg@hyperspace:~/MagicMirror/modules $ cd ..
      dvg@hyperspace:~/MagicMirror $ pm2 start MagicMirror
      [PM2] Applying action restartProcessId on app [MagicMirror](ids: [ 0 ])
      [PM2] [MagicMirror](0) ✓
      [PM2] Process successfully started
      ┌────┬────────────────┬─────────────┬─────────┬─────────┬──────────┬────────┬──────┬───────────┬──────────┬──────────┬──────────┬──────────┐
      │ id │ name           │ namespace   │ version │ mode    │ pid      │ uptime │ ↺    │ status    │ cpu      │ mem      │ user     │ watching │
      ├────┼────────────────┼─────────────┼─────────┼─────────┼──────────┼────────┼──────┼───────────┼──────────┼──────────┼──────────┼──────────┤
      │ 0  │ MagicMirror    │ default     │ 2.27.0  │ fork    │ 16303    │ 0s     │ 744  │ online    │ 0%       │ 18.5mb   │ dvg      │ disabled │
      └────┴────────────────┴─────────────┴─────────┴─────────┴──────────┴────────┴──────┴───────────┴──────────┴──────────┴──────────┴──────────┘
      

      Same result; just a bunch more restarts and nothing appearing. (The Pi desktop is there, though.)

      posted in Hardware
      D
      davidgagne
    • RE: Raspberry Pi Zero W for Magic Mirror

      @sdetweil I followed your tutorial on adding the Jeopardy module (just to see what would happen) and it worked fine. The last step is npm start and when I did that I got this:

      > magicmirror@2.27.0 start
      > ./run-start.sh $1
      
      [2024-05-29 10:30:09.649] [LOG] Starting MagicMirror: v2.27.0
      [2024-05-29 10:30:10.200] [LOG] Loading config ...
      [2024-05-29 10:30:10.267] [LOG] config template file not exists, no envsubst
      [2024-05-29 10:30:19.159] [LOG] Loading module helpers ...
      [2024-05-29 10:30:19.394] [LOG] No helper found for module: alert.
      [2024-05-29 10:30:53.041] [LOG] Initializing new module helper ...
      [2024-05-29 10:30:53.066] [LOG] Module helper loaded: updatenotification
      [2024-05-29 10:30:53.220] [LOG] No helper found for module: clock.
      [2024-05-29 10:31:18.754] [LOG] Initializing new module helper ...
      [2024-05-29 10:31:18.854] [LOG] Module helper loaded: calendar
      [2024-05-29 10:31:19.537] [ERROR] Whoops! There was an uncaught exception... 
      [2024-05-29 10:31:20.316] [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 10:31:20.470] [ERROR] MagicMirror² will not quit, but it might be a good idea to check why this happened. Maybe no internet connection? 
      [2024-05-29 10:31:20.593] [ERROR] If you think this really is an issue, please open an issue on GitHub: https://github.com/MagicMirrorOrg/MagicMirror/issues 
      [2024-05-29 10:34:40.779] [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
      

      FYI: There is definitely an internet connection, so we can rule that out. Otherwise I have no idea.

      posted in Hardware
      D
      davidgagne
    • 1 / 1