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

Multiple screens fo MM.

Scheduled Pinned Locked Moved General Discussion
36 Posts 13 Posters 21.1k Views 15 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 @cburchett
    last edited by Oct 22, 2022, 8:03 PM

    @cburchett it’s one big display, so you have to tell it how far from the left edge to start this display.
    see
    https://forum.magicmirror.builders/topic/6623/multiple-screens-fo-mm/18?_=1666468889775

    only need x for horizontal monitors
    or y for vertical

    Sam

    How to add modules

    learning how to use browser developers window for css changes

    C 1 Reply Last reply Oct 22, 2022, 9:39 PM Reply Quote 0
    • S sdetweil referenced this topic on Oct 22, 2022, 8:03 PM
    • C Offline
      cburchett @sdetweil
      last edited by Oct 22, 2022, 9:39 PM

      @sdetweil Perfect! Thank you.

      1 Reply Last reply Reply Quote 0
      • S Offline
        Sagar73594 @sdetweil
        last edited by Nov 19, 2022, 8:18 PM

        @sdetweil said in Multiple screens fo MM.:

        MM_CONFIG=config1.js

        Can you please elaborate, a little bit more? I’m trying this, but not understood well.
        Thank You.

        S 1 Reply Last reply Nov 19, 2022, 8:23 PM Reply Quote 0
        • S Offline
          sdetweil @Sagar73594
          last edited by sdetweil Nov 20, 2022, 1:30 PM Nov 19, 2022, 8:23 PM

          @Sagar73594 if you have a bash or sh script, you can set environment variables that the MM code will read

          export MM_CONFIG=??? filename

          will cause filename to be used as the name of the file to read for configuration (replacing config.js)

          if you use my install script and selected use pm2, then the script is
          ~/MagicMirror/installers/mm.sh

          before the line
          npm start
          add the line above to set the file name

          so, by using different config files, one could launch multiple instances of MagicMirror from the same set of files.
          some could target one display and others another, and some could be server only as weill.

          one could also install 50 modules and use the same 25 in all instances and some mix of the others in different instances, all from the same set of files in the MagicMirror folder tree.

          Sam

          How to add modules

          learning how to use browser developers window for css changes

          C 2 Replies Last reply Feb 22, 2024, 1:26 PM Reply Quote 0
          • C Offline
            chichi1887 @sdetweil
            last edited by Feb 22, 2024, 1:26 PM

            @sdetweil said in Multiple screens fo MM.:

            @Sagar73594 if you have a bash or sh script, you can set environment variables that the MM code will read

            export MM_CONFIG=??? filename

            will cause filename to be used as the name of the file to read for configuration (replacing config.js)

            if you use my install script and selected use pm2, then the script is
            ~/MagicMirror/installers/mm.sh

            before the line
            npm start
            add the line above to set the file name

            so, by using different config files, one could launch multiple instances of MagicMirror from the same set of files.
            some could target one display and others another, and some could be server only as weill.

            one could also install 50 modules and use the same 25 in all instances and some mix of the others in different instances, all from the same set of files in the MagicMirror folder tree.

            1 Reply Last reply Reply Quote 0
            • C Offline
              chichi1887 @sdetweil
              last edited by Feb 22, 2024, 1:37 PM

              @sdetweil said in Multiple screens fo MM.:

              @Sagar73594 if you have a bash or sh script, you can set environment variables that the MM code will read

              export MM_CONFIG=??? filename

              will cause filename to be used as the name of the file to read for configuration (replacing config.js)

              if you use my install script and selected use pm2, then the script is
              ~/MagicMirror/installers/mm.sh

              before the line
              npm start
              add the line above to set the file name

              so, by using different config files, one could launch multiple instances of MagicMirror from the same set of files.
              some could target one display and others another, and some could be server only as weill.

              one could also install 50 modules and use the same 25 in all instances and some mix of the others in different instances, all from the same set of files in the MagicMirror folder tree.

              Hi Sagar,

              Hello Sagar, thank you for your guidance. Unfortunately, I keep encountering an error upon startup. A version starts automatically with the familiar error message “npm run config: check”. I stop the MagicMirror and manually start it from the MagicMirror folder with npm start, but then it allegedly cannot find the config. As you described, I created config1 and config2, then edited installers/mm.sh and mm2.sh. It looks something like this now:
              cd ~/MagicMirror
              export MM_CONFIG=config2.js
              DISPLAY=:2 npm start

              I also copied the pm2_MagicMirros.json once and simply appended a “1” to the name. The configuration looks like this:
              “apps” : [{
              “name” : “MagicMirror”,
              “script” : “/home/pi/MagicMirror/installers/mm.sh”,
              “watch” : [“/home/pi/MagicMirror/config/config1.js”]

              Do you perhaps have any tips for me on what I might be doing wrong?

              S 1 Reply Last reply Feb 22, 2024, 1:46 PM Reply Quote 0
              • S Offline
                sdetweil @chichi1887
                last edited by sdetweil Feb 22, 2024, 2:27 PM Feb 22, 2024, 1:46 PM

                @chichi1887 well, you need two pm2_MagcMirror.json, right? and each points to a different mm.sh, right?
                original
                pm2_MagicMirror.json

                "apps" : [{
                "name" : "MM_Screen1",
                "script" : "/home/pi/MagicMirror/installers/mm.sh",
                "watch" : ["/home/pi/MagicMirror/config/config.js"]
                

                new pm2_MagicMirror2.json

                "apps" : [{
                "name" : "MM_Screen2",
                "script" : "/home/pi/MagicMirror/installers/mm2.sh",
                "watch" : ["/home/pi/MagicMirror/config/config2.js"]
                

                then
                pm2 start each json
                and then pm2 save

                to test before pm2 start , you can

                cd ~/MagicMirror
                installers/mm2.sh
                

                or

                cd ~/MagicMirror
                installers/mm.sh
                

                to start them both, open another terminal window or ssh session, starting one in each

                ctrl-c in the term window will end that instance

                Sam

                How to add modules

                learning how to use browser developers window for css changes

                C 1 Reply Last reply Feb 22, 2024, 10:37 PM Reply Quote 0
                • C Offline
                  chichi1887 @sdetweil
                  last edited by Feb 22, 2024, 10:37 PM

                  @sdetweil said in Multiple screens fo MM.:

                  cd ~/MagicMirror
                  installers/mm2.sh

                  Hey,

                  the mm.sh starts without a problem but the second has this
                  1863d5e6-be0a-4a84-9954-d34ffff430c0-image.png

                  all modules that starts on the mm.sh are disable in the mm2 config.
                  Display=0 in both are correkt or the second must be nr.1?

                  C 1 Reply Last reply Feb 22, 2024, 11:27 PM Reply Quote 0
                  • C Offline
                    chichi1887 @chichi1887
                    last edited by Feb 22, 2024, 11:27 PM

                    When I start the mm2.sh script, despite the correct configuration, it takes the config.js instead of the config2.js. Therefore, it seems unable to start both instances simultaneously because it attempts to open the same config.js. The configuration looks like this in the mm2.sh script:
                    cd ~/MagicMirror
                    export MM_CONFIG=config2.js
                    DISPLAY=:0 npm start

                    the pm2_MagicMirror2.json is copy and paste from u ;-)

                    S 1 Reply Last reply Feb 23, 2024, 12:00 AM Reply Quote 0
                    • S Offline
                      sdetweil @chichi1887
                      last edited by Feb 23, 2024, 12:00 AM

                      @chichi1887 see this from the doc

                      Screenshot_20240222_165935_Chrome.jpg

                      Sam

                      How to add modules

                      learning how to use browser developers window for css changes

                      C 1 Reply Last reply Feb 23, 2024, 12:19 AM Reply Quote 0
                      • 1
                      • 2
                      • 3
                      • 4
                      • 3 / 4
                      • 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