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

Two Instances in PM2

Scheduled Pinned Locked Moved Troubleshooting
19 Posts 6 Posters 10.7k Views 5 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.
  • B Offline
    bhepler Module Developer @shazglass
    last edited by Jul 15, 2018, 11:04 PM

    @shazglass All right, we’ll get you through it.

    pm2 runs on Pi startup and will start your mirror process for you. There should be only one listing. If you ran the installation script and said “yes” to using pm2, there should be only one process called MagicMirror in pm2.

    To remove the mm process from pm2, enter the following:

    cd ~
    pm2 stop all
    pm2 delete mm
    pm2 save
    rm mm.sh
    pm2 flush
    pm2 start MagicMirror
    

    At this point, your Magic Mirror interface should appear after a minute or so. You can press ctrl-q to exit the Magic Mirror interface, but pm2 should bring it back up in short order.

    S 1 Reply Last reply Jul 16, 2018, 1:38 PM Reply Quote 2
    • S Offline
      shazglass @bhepler
      last edited by Jul 16, 2018, 1:38 PM

      @bhepler hi there.
      Thank you for the instructions. I did exactly as you said. It has taken away the “mm” instance. I am left with only the MagicMirror one now. However. It will not boot Into mirror mode on start up, although I can see the CPU is being used, so I type pm2 stop MagicMirror and it shows that it has stopped. Only way I can get the mirror to show is by typing cd MagicMirror
      Then in that directory I type npm start. It does a small load thing and then my mirror shows. How can I get it to how it should be without having to go into the mirror directory?
      Thank you for your patience. Most appreciated!

      B 1 Reply Last reply Jul 17, 2018, 11:29 AM Reply Quote 0
      • B Offline
        bhepler Module Developer @shazglass
        last edited by Jul 17, 2018, 11:29 AM

        @shazglass - Hmm. I don’t know. It should be working normally at this point. Let’s try switching to the previous process. We’ll delete the one that the installer created, then add the one to your script.

        First, we remove the existing process:

        cd ~
        pm2 delete MagicMirror
        pm2 save
        

        Then we use your mm.sh script that you had earlier.

        pm2 flush
        pm2 start mm.sh
        pm2 save
        

        At this point, your mirror should come up in about 30 seconds. If it does not, enter pm2 log mm and copy the results here. Be sure to use the forum markup tools to help format your log messages.

        S 1 Reply Last reply Jul 17, 2018, 3:37 PM Reply Quote 1
        • S Offline
          shazglass @bhepler
          last edited by Jul 17, 2018, 3:37 PM

          @bhepler hithere
          I did as per your instructions - except I dont know how to use the forum markup tool…so just copied and pasted.
          I now dont have any instances running? I can only access my mirror if i go ino cd MagicMirror and then type npm install.

          pi@raspberrypi:~ $ pm2 stop all
          [PM2] Applying action stopProcessId on app [all](ids: 0)
          [PM2] MagicMirror ✓
          ┌─────────────┬──────┬─────────┬───┬─────┬────────┐
          │ Name │ mode │ status │ ↺ │ cpu │ memory │
          ├─────────────┼──────┼─────────┼───┼─────┼────────┤
          │ MagicMirror │ fork │ stopped │ 6 │ 0% │ 0 B │
          └─────────────┴──────┴─────────┴───┴─────┴────────┘
          Use pm2 show <id|name> to get more details about an app
          pi@raspberrypi:~ $ pm2 delete MagicMirror
          [PM2] Applying action deleteProcessId on app [MagicMirror](ids: 0)
          [PM2] MagicMirror ✓
          ┌──────┬──────┬────────┬───┬─────┬────────┐
          │ Name │ mode │ status │ ↺ │ cpu │ memory │
          └──────┴──────┴────────┴───┴─────┴────────┘
          Use pm2 show <id|name> to get more details about an app
          pi@raspberrypi:~ $ pm2 save
          [PM2] Saving current process list…
          [PM2] Nothing to save !!!
          [PM2] In this case we keep old dump file. To clear dump file you can delete it manually !
          pi@raspberrypi:~ $ pm2 flush
          [PM2] Flushing /home/pi/.pm2/pm2.log
          [PM2] Logs flushed
          pi@raspberrypi:~ $ pm2 start mm.sh
          [PM2][ERROR] script not found : /home/pi/mm.sh
          script not found : /home/pi/mm.sh
          ┌──────┬──────┬────────┬───┬─────┬────────┐
          │ Name │ mode │ status │ ↺ │ cpu │ memory │
          └──────┴──────┴────────┴───┴─────┴────────┘
          Use pm2 show <id|name> to get more details about an app
          pi@raspberrypi:~ $ pm2 save
          [PM2] Saving current process list…
          [PM2] Nothing to save !!!
          [PM2] In this case we keep old dump file. To clear dump file you can delete it manually !
          pi@raspberrypi:~ $ pm2 start mm
          [PM2][ERROR] script not found : /home/pi/mm
          script not found : /home/pi/mm
          ┌──────┬──────┬────────┬───┬─────┬────────┐
          │ Name │ mode │ status │ ↺ │ cpu │ memory │
          └──────┴──────┴────────┴───┴─────┴────────┘
          Use pm2 show <id|name> to get more details about an app
          pi@raspberrypi:~ $ pm2 log mm
          [TAILING] Tailing last 15 lines for [mm] process (change the value with --lines option)
          [PM2][ERROR] No file to stream for app [mm], exiting.
          pi@raspberrypi:~ $ pm2 log MagicMirror
          [TAILING] Tailing last 15 lines for [MagicMirror] process (change the value with --lines option)
          [PM2][ERROR] No file to stream for app [MagicMirror], exiting.
          pi@raspberrypi:~ $

          B 1 Reply Last reply Jul 17, 2018, 6:54 PM Reply Quote 0
          • S Offline
            shazglass
            last edited by Jul 17, 2018, 3:42 PM

            I did find this in the cd MagicMirror???

            pi@raspberrypi:~/MagicMirror $ pm2 log MagicMirror
            [TAILING] Tailing last 15 lines for [MagicMirror] process (change the value with --lines option)
            /home/pi/.pm2/logs/MagicMirror-out.log last 15 lines:
            /home/pi/.pm2/logs/MagicMirror-error.log last 15 lines:
            0|MagicMir | at tryModuleLoad (internal/modules/cjs/loader.js:506:12)
            0|MagicMir | at Function.Module._load (internal/modules/cjs/loader.js:498:3)
            0|MagicMir | at Module.require (internal/modules/cjs/loader.js:598:17)
            0|MagicMir | at require (internal/modules/cjs/helpers.js:11:18)
            0|MagicMir | Error: ENOENT: no such file or directory, open ‘package.json’
            0|MagicMir | at Object.fs.openSync (fs.js:660:18)
            0|MagicMir | at Object.fs.readFileSync (fs.js:565:33)
            0|MagicMir | at Object. (/home/pi/MagicMirror/js/app.js:15:32)
            0|MagicMir | at Module._compile (internal/modules/cjs/loader.js:654:30)
            0|MagicMir | at Object.Module._extensions…js (internal/modules/cjs/loader.js:665:10)
            0|MagicMir | at Module.load (internal/modules/cjs/loader.js:566:32)
            0|MagicMir | at tryModuleLoad (internal/modules/cjs/loader.js:506:12)
            0|MagicMir | at Function.Module._load (internal/modules/cjs/loader.js:498:3)
            0|MagicMir | at Module.require (internal/modules/cjs/loader.js:598:17)
            0|MagicMir | at require (internal/modules/cjs/helpers.js:11:18)

            1 Reply Last reply Reply Quote 0
            • B Offline
              bhepler Module Developer @shazglass
              last edited by bhepler Jul 17, 2018, 6:55 PM Jul 17, 2018, 6:54 PM

              @shazglass - Ah. Okay, easy enough.

              You’re missing the mm.sh script. I’m not sure how you had this registered in pm2 earlier, but we can fix it. We’ll use nano to create a new mm.sh file:

              cd ~
              nano mm.sh
              

              This will give you a blank screen with the nano options at the bottom. Enter the following lines:

              cd ~/MagicMirror
              DISPLAY=:0 npm start
              

              When you’re done, hit ctl+o to save the file and then ctl+x to exit nano. Then just like you did earlier, make your script executable by entering chmod +x mm.sh

              Before we go any further, we need to test your script. From the command line, enter ./mm.sh
              Your mirror should start after 30 seconds or so. Try this and report back with any errors and behaviors. Also, please use the markup commands when posting code and logs (follow this link for a quick tutorial).

              1 Reply Last reply Reply Quote 0
              • 1
              • 2
              • 2 / 2
              2 / 2
              • First post
                18/19
                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