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.

    Magic mirror dual screen

    Scheduled Pinned Locked Moved General Discussion
    25 Posts 4 Posters 16.4k Views 4 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.
    • 1 Offline
      1a2a3a
      last edited by

      Hi all, many thanks to everyone who have helped me setup my first mirror especially @MMRIZE and @sdetweil. Having completed the mirror, my wife general sense is that I have too many modules cramp into a 24 inch.

      Therefore, I’m thinking if it possible to drive the pi 5 across 2 monitor since the pi 5 has 2 hdmi?

      I read previously that it is possible but that’s about 3 years ago and I’m not sure if it still works?

      Basically I have to rename my existing mm folder to mm2. Then install mm again from fresh. So in my folder I will have mm(newly installed) and mm2(existing mm).

      Install necessary module to each mm where desired.

      Edit electron config file (in mm or mm2?)

      Run npm start in mm and mm2 folder?

      But then I saw another thread where you can have your modules in 1 folder and just set the config to whichever mm or mm2 you wana use.

      I’m rather confused about the steps to be honest. Anyone kind enough to walk me through from the beginning again?

      M 1 Reply Last reply Reply Quote 0
      • M Offline
        MMRIZE @1a2a3a
        last edited by

        @1a2a3a
        What you really want?

        • expanding screen with 2 monitors on 1 mm instance
        • 2 individual mm on each screen
        1 1 Reply Last reply Reply Quote 0
        • 1 Offline
          1a2a3a @MMRIZE
          last edited by

          @MMRIZE hmmm ideally… 1 pi connect to 2 monitor and both monitor running … this is the part I don’t quite get it.

          I want 1 monitor to just display Google photo and the other monitor showing all the informative stuff like calendar news stock etc. would this be more viable running 2 instances of mm? Or 1 instance of mm portraying Google photo on 1 screen and info on another side?

          It feels like the first option is easier?

          I’m happy to go either direction.

          Of course the easiest solution is to buy 2 pi and call it a day. But where’s the fun in that 😅

          S 1 Reply Last reply Reply Quote 0
          • S Away
            sdetweil @1a2a3a
            last edited by sdetweil

            @1a2a3a MM only displays on one screen… you can run two instances, and have them display on different monitors… from the same mm folder. just two different config files.

            see the MM_CONFIG_FILE env variable

            to get an instance on the other monitor you need to add

            electronOptions:{x:????,width:yyyy},
            

            to the config.js before the modules:{} list

            ??? is the width of the 1st display in pixels
            yyyy is the width of the second monitor

            note that you can also do the MMM-Pages approach, and only display some on a logical page 1 and some on logical page 2 in rotation…

            see my fork for a better way to define that
            https://github.com/sdetweil/MMM-pages

            Sam

            How to add modules

            learning how to use browser developers window for css changes

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

              @sdetweil oh my just that simple 1 config file and I’m done? And when I run pm2 it will flash to 2 as well?

              S 1 Reply Last reply Reply Quote 0
              • S Away
                sdetweil @1a2a3a
                last edited by sdetweil

                @1a2a3a have to run two scripts, one w the second config file

                Sam

                How to add modules

                learning how to use browser developers window for css changes

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

                  @sdetweil see the pm2_MagicMirror.json in ~/MagicMirror/installers

                  copy, change the name and script name, make a new script mm2.sh
                  and the env variable

                  pm2 start pm2_MagicMirror.json(new name)
                  pm2 save

                  that give the app pm2 manages a pretty name

                  you can test w another terminal window
                  set the env variable, using export variable=
                  then create the new config.js, w only the modules u want enabled.
                  then npm start

                  Sam

                  How to add modules

                  learning how to use browser developers window for css changes

                  BKeyportB 1 Reply Last reply Reply Quote 0
                  • BKeyportB Offline
                    BKeyport Module Developer @sdetweil
                    last edited by

                    @sdetweil heck, I’m a little lost there. Can you explain it out a bit better for us? I’m currently running two Magicmirrors back to back with two MM Directories and custom mm.sh files, if I could simplify that, I want to.

                    The "E" in "Javascript" stands for "Easy"

                    BKeyportB 1 Reply Last reply Reply Quote 0
                    • BKeyportB Offline
                      BKeyport Module Developer @BKeyport
                      last edited by BKeyport

                      @BKeyport What I did was two directories, with seperate configs, then mm.sh does:

                      cd /home/bkey1970/MagicMirror
                      DISPLAY=:0 npm start
                      

                      and mm2.sh does:

                      cd /home/bkey1970/MagicMirror2
                      DISPLAY=:0 npm start
                      

                      To get the 2nd on the 2nd monitor, I added:

                              electronOptions: {
                          x: 1920
                      },
                      

                      to the 2nd config.js, right below the address line, and changed the port to 8081.

                      The "E" in "Javascript" stands for "Easy"

                      S 1 Reply Last reply Reply Quote 0
                      • S Away
                        sdetweil @BKeyport
                        last edited by

                        @BKeyport @1a2a3a

                        copy the second config.js to the first mm config directory as config2.js

                        edit the mm2.sh

                        cd to the first mm directory(instead of the second)
                        and add a line

                        export MM_CONFIG_FILE=${cwd}/config/config2.js
                        npm start

                        now. make sure all the modules needed by both instances are installed in the modules folder of the 1st instance.

                        if they aren’t used by a particular instance, no big deal, same as setting disabled:true on a module config

                        Sam

                        How to add modules

                        learning how to use browser developers window for css changes

                        BKeyportB 1 Reply Last reply Reply Quote 0
                        • 1
                        • 2
                        • 3
                        • 1 / 3
                        • 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