• 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 21.4k 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.
  • S Offline
    sdetweil @NathTheDude
    last edited by sdetweil Feb 4, 2020, 9:53 PM Feb 4, 2020, 9:43 PM

    @NathTheDude run-start.sh is in the MagicMirror folder

    actually the pm2 only on the 1st screen is understandable
    as the script used by pm2 is installers/mm.sh

    which does

    DISPLAY=:0 npm start
    

    and run-start does

    # if DISPLAY is not set then set it
    if [ -z "$DISPLAY" ]; then #If not set DISPLAY is SSH remote or tty
    	export DISPLAY=:0 # Set by default display
    fi
    

    so I would just set export DISPLAY=:0
    and the execute run-start.sh

    Sam

    How to add modules

    learning how to use browser developers window for css changes

    1 Reply Last reply Reply Quote 0
    • B Offline
      bhepler Module Developer
      last edited by Feb 4, 2020, 9:47 PM

      I have to head home, so I can’t investigate any more for some time. But I did find this link on StackOverflow that seems to address the issue. Aren’t we using an X11 based desktop manager?
      Anyway, this may help.

      S 1 Reply Last reply Feb 4, 2020, 9:52 PM Reply Quote 0
      • S Offline
        sdetweil @bhepler
        last edited by Feb 4, 2020, 9:52 PM

        @bhepler correct, that is DISPLAY

        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 4, 2020, 10:23 PM

          thanks @sdetweil , right you are - I was not running npm from within the MagicMirror directory.

          When I update ‘Display’ to 1 I still get an error when trying to manually run NPM, however when ‘Display’ is set to 0 and then I run NPM there are no errors with it. The error is:

          pi@MagicMirrors:~/MagicMirror $ npm start
          
          > magicmirror@2.10.1 start /home/pi/MagicMirror
          > ./run-start.sh
          
          (electron:11918): Gtk-WARNING **: 22:18:00.088: cannot open display: :1
          npm ERR! code ELIFECYCLE
          npm ERR! errno 1
          npm ERR! magicmirror@2.10.1 start: `./run-start.sh`
          npm ERR! Exit status 1
          npm ERR! 
          npm ERR! Failed at the magicmirror@2.10.1 start script.
          npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
          
          npm ERR! A complete log of this run can be found in:
          npm ERR!     /home/pi/.npm/_logs/2020-02-04T22_18_00_154Z-debug.log
          pi@MagicMirrors:~/MagicMirror $ 
          

          @bhepler thanks for the link, it is a bit beyond my understanding at the moment. I will have to read up on it a bit more. I tried to run xrandr to see what kind of status it gives on the monitors but it currently comes back with ‘Can’t open display’, I assume it is because another service/application is utilising them?

          Anyway, thanks for your help.

          S 1 Reply Last reply Feb 4, 2020, 10:31 PM Reply Quote 0
          • S Offline
            sdetweil @NathTheDude
            last edited by sdetweil Feb 4, 2020, 10:31 PM Feb 4, 2020, 10:31 PM

            @NathTheDude said in Rpi 4 and two monitors:

            When I update ‘Display’ to 1 I still get an error

            Yes, we just need to find out what the other Display number is.

            tvservice is wrong cause it reports display 2 for HDMI 0, and we know it’s really Display 0

            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 4, 2020, 10:34 PM

              @sdetweil , so using ‘0’ or ‘0.0’ give the same result and start MM on the first monitor.

              So far I have tried 1,2,3,4,5,6,7,8,9 and 0.1, 0.2, 0.3, 0.4, 0.5

              How far do I go? :)

              O 1 Reply Last reply Feb 5, 2020, 4:30 AM Reply Quote 0
              • O Offline
                OldSunGuy @NathTheDude
                last edited by Feb 5, 2020, 4:30 AM

                @NathTheDude The 2nd monitor should be display 0, screen 1. Use this:

                DISPLAY=:0.1
                
                1 Reply Last reply Reply Quote 0
                • N Offline
                  NathTheDude
                  last edited by NathTheDude Feb 5, 2020, 6:33 AM Feb 5, 2020, 6:15 AM

                  Hey @OldSunGuy , thanks. ‘0’ and ‘0.0’ seem to be the first monitor however I get an error when I try anything else. So far I have tried using each of the following: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0.0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9

                  Each time I try to start npm (npm start) apart from when I use 0 or 0.0 I get the following (with the value reflecting the number I changed in ‘run-start.sh’):

                  (electron:2238): Gtk-WARNING **: 06:14:02.236: cannot open display: :0.1
                  

                  @sdetweil - not sure if this is relevant but it does not seem to matter what value I set in ‘run-start.sh’, when I reboot the pi it will always start MM on the first screen. Should it not fail if it is using ‘run-start.sh’?

                  Also with an incorrect value being added to ‘run-start.sh’, when I run ‘mm.sh’ this always works and displays MM on the first screen.

                  okay, I think I understand it now. When I reboot it is using ‘mm.sh’, within mm.sh is the following:

                  cd ~/MagicMirror
                  DISPLAY=:0 npm start
                  

                  Which I assume means that the ‘run-start.sh’ is not used during boot up?

                  When I change this value to anything other than 0, this will also fail with the same error seen when trying to run npm previously.

                  O 1 Reply Last reply Feb 5, 2020, 7:01 AM Reply Quote 0
                  • O Offline
                    OldSunGuy @NathTheDude
                    last edited by Feb 5, 2020, 7:01 AM

                    @NathTheDude If you start a terminal on one desktop and run:

                    echo $DISPLAY
                    

                    Then start a terminal on the other desktop and run:

                    echo $DISPLAY
                    

                    do you get the same results?

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

                      @OldSunGuy - I get :0.0

                      I wonder if both screens are being seen as 0.0, if that is the case I guess I would expect the MM screen to cover both screens and not just the first :-/

                      1 Reply Last reply Reply Quote 0
                      • 1
                      • 2
                      • 3
                      • 4
                      • 5
                      • 6
                      • 3 / 6
                      3 / 6
                      • First post
                        27/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