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

Rpi 4 and two monitors

Scheduled Pinned Locked Moved Hardware
60 Posts 6 Posters 26.2k Views 6 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.
  • N Offline
    NathTheDude
    last edited by NathTheDude Feb 8, 2020, 12:25 AM Feb 8, 2020, 12:11 AM

    Hey @sdetweil , after looking at how the current MM is setup with pm2 (pm2 show MagicMirror) this had the ‘mm.sh’ as the target.

    Within the MM2 folder I ran: ‘pm2 start ./installers/mm.sh --name MagicMirror2’ which started the MM2 but on the first screen. Then used pm2 save.

    I just setup pm2 with the .json file instead of the mm.sh file and the results seem to be the same from what i can see with it getting displayed on the first screen.

    Within the start-run.sh, I can comment out the chromium line and and it will not break anything which makes me think this line is not being referenced.

    MM line:

    chromium-browser --noerrdialogs --kiosk --user-data-dir='Default' --window-position=0,0 --disable-infobars --app=http://localhost:$port  --ignore-certificate-errors-spki-list --ignore-ssl-errors --ignore-certificate-errors 2>/dev/null
    

    MM2 line:

    chromium-browser --noerrdialogs --kiosk  --disable-infobars --app=http://localhost:8082 --ignore-certificate-errors-spki-list --ignore-ssl-errors --ignore-certificate-errors --window-postion=1920,0 --user-data-dir='Test2' 2>/dev/null
    
    S 2 Replies Last reply Feb 8, 2020, 12:47 AM Reply Quote 0
    • S Offline
      sdetweil @NathTheDude
      last edited by Feb 8, 2020, 12:47 AM

      @NathTheDude if u start the json file, pm2 reads the info, gives u a nice name etc.

      pm2 delete 0 or 1
      pm2 save

      Then pm2 start the json file.
      And pm2 save
      To save for reboot

      Sam

      How to add modules

      learning how to use browser developers window for css changes

      1 Reply Last reply Reply Quote 0
      • S Offline
        sdetweil @NathTheDude
        last edited by Feb 8, 2020, 5:37 AM

        @NathTheDude

        I was able to recreate the problem, and good news its just a typo

        --window-postion=1920,0
        

        should be

        --window-position=1920,0
        

        missing i in position

        Sam

        How to add modules

        learning how to use browser developers window for css changes

        1 Reply Last reply Reply Quote 0
        • N Offline
          NathTheDude
          last edited by Feb 8, 2020, 7:10 AM

          @sdetweil

          Thank you for this although it is still producing 2 x MM’s on the first screen (MM and MM2), not sure what could be wrong. If you have it working it obviously must me something I have done wrong…hmmmmm.

          I will review all the files and let you know if I find anything.

          1 Reply Last reply Reply Quote 0
          • N Offline
            NathTheDude
            last edited by Feb 8, 2020, 10:10 AM

            @sdetweil . I know it is a bit extreme but thought I would just start again and burn another image to the SD card. I am in the same position though

            • burnt image to sd card, booted rpi and did an update, enabled SSH and VNC
            • installed MM with your automation script
            • copied the ‘MagicMirror’ Folder to ‘MagicMirror2’, in the new folder I updated:
              – config.js - just updated port to 8082
              – run-start.sh - updated with window position and profile
              – mm.sh - new location
              – pm2_MagicMirror.json - updated with new locations
            • within the MagicMirror2 folder,
              – pm2 start ./installers/pm2_MagicMirror.json
              – pm2 save
            • This then started another MM from the MM2 folder on to screen 1
            • htop confirms that processes are running from both MagicMirror and MagicMirror2
            • pm2 status confirms that both are up

            In your setup, if you update the chromium line within run-start.sh with bad entries does that break your setup. Does not seem to be running this command from what I can see in my setup

            1 Reply Last reply Reply Quote 0
            • S Offline
              sdetweil
              last edited by sdetweil Feb 8, 2020, 1:36 PM Feb 8, 2020, 1:25 PM

              well, I finally got it to work , note I have two displays that support 4k, 3840x2160, so my screen pos is double yours

              in /boot/config.txt

              [pi4]
              # Enable DRM VC4 V3D driver on top of the dispmanx display stack
              dtoverlay=vc4-fkms-v3d
              max_framebuffers=4
              

              and in /boot/cmdline.txt
              add cma=384M to the end of the line, like this…

              plymouth.ignore-serial-consoles cma=384M
              

              then you must power down and back up for these changes to be applied

              found here
              https://retropie.org.uk/forum/topic/24436/drm_ioctl_mode_create_dumb-failed-cannot-allocate-memory/9

              I was getting the DRM cannot allocate memory error

              MagicMirror/run-start.sh line for chromium

              chromium-browser -noerrdialogs -kiosk --user-data-dir='Default' --window-position=0,0 -start_maximized  --disable-infobars --app=http://localhost:$port  --ignore-certificate-errors-spki-list --ignore-ssl-errors --ignore-certificate-errors 2>/dev/null
              

              MagicMirror2/run-start.sh line for chromium

              chromium-browser --disable-bundled-ppapi-flash -noerrdialogs -kiosk -start_maximized  --window-position="3840,0" --disable-infobars --app=http://localhost:$port  --ignore-certificate-errors-spki-list --ignore-ssl-errors --ignore-certificate-errors  --user-data-dir='Test2'  # 2>/dev/null
              

              this boots up and both MM start via pm2 and display on separate screens, with different content (modules in different positions)

              here is a screenshot of my dev system connected to both MM servers at the same time
              (the displays are two hdmi ports on the same TV, so I can’t show them physically at the same time)
              alt text

              Sam

              How to add modules

              learning how to use browser developers window for css changes

              1 Reply Last reply Reply Quote 1
              • N Offline
                NathTheDude
                last edited by Feb 8, 2020, 2:44 PM

                @sdetweil - nice 2 x 4k’s.

                So, I did what you mentioned in your last post but unfortunetly I am in the same issue. I wonder if your problem was more to do with 2 x 4k’s which is perhaps different to mine? I am not sure.

                1 Reply Last reply Reply Quote 0
                • N Offline
                  NathTheDude
                  last edited by Feb 8, 2020, 2:47 PM

                  @sdetweil - if you comment out the chromium line in the run-start.sh does this cause you any issues/errors?

                  S 2 Replies Last reply Feb 8, 2020, 3:01 PM Reply Quote 0
                  • S Offline
                    sdetweil @NathTheDude
                    last edited by Feb 8, 2020, 3:01 PM

                    @NathTheDude no… you could just change config.js to serverOnly:true, then it won’t try to start chrome

                    Sam

                    How to add modules

                    learning how to use browser developers window for css changes

                    1 Reply Last reply Reply Quote 0
                    • S Offline
                      sdetweil @NathTheDude
                      last edited by sdetweil Feb 8, 2020, 3:05 PM Feb 8, 2020, 3:04 PM

                      @NathTheDude I started by doing

                      cd MagicMirror
                      node serveronly 
                      

                      note no npm start needed, will run til you ctrl-break out

                      then tried multiple tries to get chrome on the second display…
                      (it works manually if the position is mispelled!)

                      then once it worked reliably,
                      i killed the server instance
                      then I used pm2 to stop/start that instance til I got that to work.

                      note that I had to use
                      –disable-bundled-ppapi-flash
                      on the second instance as it collided with the 1st…

                      Sam

                      How to add modules

                      learning how to use browser developers window for css changes

                      K 1 Reply Last reply Sep 28, 2022, 8:22 PM Reply Quote 0
                      • 1
                      • 2
                      • 3
                      • 4
                      • 5
                      • 6
                      • 6 / 6
                      6 / 6
                      • First post
                        53/60
                        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