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 26.3k 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.
    • Mykle1M Offline
      Mykle1 Project Sponsor Module Developer @ninjabreadman
      last edited by

      @ninjabreadman

      Heh, no worries ninja. :-)

      Now, as far as the dual monitor setup is concerned, I think it’s asking a little too much from the Pi, which struggles under some ordinary circumstances

      Create a working config
      How to add modules

      1 Reply Last reply Reply Quote 0
      • tbbearT Offline
        tbbear Module Developer
        last edited by

        OOOO sorryyyy i didnt want a fight it was a misunderstanding my English :-(
        I thought he wants multiple pages on ONE screen
        my fault
        sorry…

        Robert the Bear

        Mykle1M 1 Reply Last reply Reply Quote 1
        • J Offline
          Joshrobbs1
          last edited by

          Yes I️ guess what I️ meant wast different modules showing on different screens at the same time. For instance on the left monitor I️ would put time & date, & on a right monitor on the opposite side of the mirror I️ would have my weather etc. keeping all the info on the outer edges of a large 60”w x 36” H mirror. My idea is to run two monitors vertical on each side.

          Mykle1M N 2 Replies Last reply Reply Quote 0
          • Mykle1M Offline
            Mykle1 Project Sponsor Module Developer @tbbear
            last edited by

            @tbbear said in Multiple screens fo MM.:

            OOOO sorryyyy i didnt want a fight

            haha, there’s no fight. Everything is cool. Me, you, ninja, we’re all one happy forum family. :-)

            Create a working config
            How to add modules

            1 Reply Last reply Reply Quote 0
            • Mykle1M Offline
              Mykle1 Project Sponsor Module Developer @Joshrobbs1
              last edited by

              @Joshrobbs1 said in Multiple screens fo MM.:

              My idea is to run two monitors vertical on each side.

              I like the idea a lot. Please keep us posted. i am curious as to whether you experience any performance issues.

              Create a working config
              How to add modules

              1 Reply Last reply Reply Quote 0
              • N Offline
                ninjabreadman @Joshrobbs1
                last edited by ninjabreadman

                @Joshrobbs1 Two monitors on each side, or one each/two total? You could run two completely separate mirror instances, or one instance (i.e. server) and hide the modules (via CSS) you don’t want displayed on each one.

                I suggest using a Raspberry Pi Zero W to power one display, run a browser and connect to the other instance/server (or run an MM instance on the RPi Zero W). The server could be on a more powerful Raspberry Pi (3b) or some old laptop hardware. You would want to run the simpler, static modules (weather, time, calendar) on the RPi Zero W and the more demanding, processor-intensive modules (voice, video feeds, complex rendering) on the server.

                I don’t know how MM feels about running two instances on the same machine – you’d need to set different ports, scripts, etc, but I imagine it’s possible with some reconfiguration to avoid collisions.

                Problem with config or JavaScript? Copy/paste it into JSHint.
                Check out the detailed walkthroughs on install, config, modules, etc.

                H 1 Reply Last reply Reply Quote 0
                • H Offline
                  hogedir @ninjabreadman
                  last edited by

                  @ninjabreadman Hi,

                  Now we have a rpi4B with 2 screens available, and i want to display on 2 screens the magic mirror.

                  is it possible with the version 2.20 ?

                  kayakbabeK S 2 Replies Last reply Reply Quote 0
                  • kayakbabeK Offline
                    kayakbabe @hogedir
                    last edited by

                    @hogedir With a raspberry 4 you can have two displays. I’m thinking they can be set up as an extended desktop . Then it’s no big deal with the default magic mirror.
                    Top_left and top_right would end up being left and right…
                    I haven’t tried this with MM. But I have used my pi with two screens. But in my mind it ought to work with MM.
                    Just don’t use the middle_center or any position that would span across both monitors.

                    H 1 Reply Last reply Reply Quote 0
                    • H Offline
                      hogedir @kayakbabe
                      last edited by

                      @kayakbabe I think we need two electron display, so it’s not quite easy. it’s not just top_left and top_right. I need 2 MMM, 1 magic mirror per screen.

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

                        @hogedir electron (and other browsers) runs maximized, which is only one screen…

                        you can DRAG the edge to make the window larger, but cannot maximize over two screens…

                        you can run separate instances of MM on each display…

                        Sam

                        How to add modules

                        learning how to use browser developers window for css changes

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

                          @hogedir I had two running off one display, just two different Magicmirror installs. I forgot how it works though, was using them as a temporary menu display.

                          Something about calling different config files if I recall right.

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

                          S K 2 Replies Last reply Reply Quote 0
                          • S Do not disturb
                            sdetweil @BKeyport
                            last edited by

                            @BKeyport MM_CONFIG environment variable

                            allows the different configs off the same directory tree

                            Sam

                            How to add modules

                            learning how to use browser developers window for css changes

                            1 Reply Last reply Reply Quote 0
                            • K Offline
                              karam @BKeyport
                              last edited by

                              @BKeyport this answer inspired me to test it, so I have a solution:

                              1. create two different folders.
                              2. configure each install as you like.
                              3. edit each electron file in each folder “js/electron.js”
                              4. change the default resolution and position based on your screens.
                                here is my config:
                              let electronOptionsDefaults = {
                                              width: 1280,
                                              height: 1024,
                                              x: 1366,
                                              y: 0,
                                                           }
                              

                              NOTE: there are many better methods (electron-multi-monitor for example) but this is the easiest that I could find

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

                                @karam u can set the electronOptions in config.js, you don’t need to edit the source file

                                then you can do it with one folder,
                                and two config files

                                environment variable
                                MM_CONFIG=config1.js
                                for one

                                and
                                MM_CONFIG=config2.js
                                for the other

                                all modules for both are installed in modules folder, only ones referenced in config file are used

                                installers/mm.sh is the script used by my pm2 setup routine
                                copy that to mm2.sh
                                and then add the export MM_CONFIG=
                                to each

                                then copy the pm2_magicmirror.json
                                and change the title and the mm.sh filename

                                then pm2 start installers/??? (whatever name u copied the json file to for the second mm)
                                pm2 save
                                then on reboot you will get both

                                Sam

                                How to add modules

                                learning how to use browser developers window for css changes

                                C S 2 Replies Last reply Reply Quote 1
                                • C Offline
                                  cburchett @sdetweil
                                  last edited by

                                  @sdetweil: can you please share an example? I am not sure how to indicate the secondary display in the config files. Thank you!

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

                                    @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 Reply Quote 0
                                    • S sdetweil referenced this topic on
                                    • C Offline
                                      cburchett @sdetweil
                                      last edited by

                                      @sdetweil Perfect! Thank you.

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

                                        @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 Reply Quote 0
                                        • S Do not disturb
                                          sdetweil @Sagar73594
                                          last edited by sdetweil

                                          @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 Reply Quote 0
                                          • C Offline
                                            chichi1887 @sdetweil
                                            last edited by

                                            @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

                                            Hello! It looks like you're interested in this conversation, but you don't have an account yet.

                                            Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

                                            With your input, this post could be even better 💗

                                            Register Login
                                            • 1
                                            • 2
                                            • 1 / 2
                                            • 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