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.

    Raspberry Pi Zero W for Magic Mirror

    Scheduled Pinned Locked Moved Hardware
    73 Posts 8 Posters 42.9k Views 9 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.
    • C Offline
      capedbuffethero @davidgagne
      last edited by capedbuffethero

      @davidgagne said in Raspberry Pi Zero W for Magic Mirror:

      Summary

      • when running DISPLAY=:0 npm start I got an unexpected error
      • follow up question: export external_browser=firefox doesn’t this export vanish as soon as my session ends? Do I have to do this every time?
      • firefox is started and is visible on VNC
      • firefox is not able to connect to the node server (I guess the node server is not running)

      Details:
      When executing this script:

      cd ~/MagicMirror
      export external_browser=firefox
      DISPLAY=:0 npm start
      

      on this step: I get this output:

      myname@raspberrypi:~ $ cd ~/MagicMirror
      myname@raspberrypi:~/MagicMirror $ export external_browser=firefox
      myname@raspberrypi:~/MagicMirror $ DISPLAY=:0 npm start
      
      > magicmirror@2.27.0 start
      > ./run-start.sh $1
      
      ./run-start.sh: line 79:  8050 Killed                  node serveronly
      
      

      these are the lines that precede line 79:

          # if user explicitly configured to run server only (no ui local)
          # OR there is no xwindows running, so no support for browser graphics
          if [ "$serveronly." == "$true." ] || [ "$xorg." == "." -a $mac != 'Darwin' -a "$wait_for_x." != "." ]; then
            # start server mode,
            node serveronly
          else
            # start the server in the background
            # wait for server to be ready
            # need bash for this
            exec 3< <(node serveronly)
      

      if we do export external_browser doesn’t that vanish as soon as the RPI is rebooted or if my session ends?

      after a while the VNC client showed firefox start, but no URL, then the screen went white, then Firefox said “Unable to connect”

      then I ran this script, I am tailing logs. What does “fix 'em up” script do

    • Execute fix'em-up script:
      bash -c "$(curl -sL https://raw.githubusercontent.com/sdetweil/MagicMirror_scripts/master/fixuppm2.sh)"
      
    • the last line is this: pm2 setup completed - Fri Jun 14 21:52:48 PDT 2024

      cancelling the step DISPLAY=:0 npm start allows me to rerun this step, but the step always ends in failure.

      UPDATE: “Unable to connect” is because Firefox cannot connect to the node server. VNC can connect without issue! The error is actually an error from the Firefox browser.

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

        @capedbuffethero
        the export is used on the MagicMirror system side. it is paired with the
        node server execution, which launches MagicMirror without a ui.
        then when the server is running, run-start.sh launches a browser to connect to the server

        the export has nothing to do with vnc,
        it is just used to tell run-start.sh which browser to launch. (on linux, env variables are NOT passed to children processes by default. you have to use the export keyword to enable it, for each env var you want to pass)

        if you set the MagicMirror config.js.js to

        address:"0.0.0.0",
        ipWhitelist:[],
        

        then you can use a browser on your phone, Windows, Linux, or Mac system to view MagicMirror directly without vnc

        the killed message is because you restarted MagicMirror, and run-start.sh found the server instance running already. so it must be stopped and restarted in case you changed the config

        Sam

        How to add modules

        learning how to use browser developers window for css changes

        1 Reply Last reply Reply Quote 0
        • F Offline
          funkdafied
          last edited by

          Hello all giving MM a try again on a Rpi zero and have been trying to run the script in this thread but keeping getting the following message

          98df749c-1ae9-44bf-aea2-cd58f1c132c9-image.png

          Am I missing something to by pass the Xorg check?

          OS
          achild@raspberrypi:~ $ cat /etc/os-release
          PRETTY_NAME=“Raspbian GNU/Linux 12 (bookworm)”
          NAME=“Raspbian GNU/Linux”
          VERSION_ID=“12”
          VERSION=“12 (bookworm)”
          VERSION_CODENAME=bookworm
          ID=raspbian
          ID_LIKE=debian
          HOME_URL=“http://www.raspbian.org/”
          SUPPORT_URL=“http://www.raspbian.org/RaspbianForums”

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

            @funkdafied I have just pushed a fix for that… (was a test for text mode or graphical mode)
            (and I see I have to expand the test for the Bookworm compositor too,edit: just fixed that too)

            but it won’t help in your situation…

            you cannot run MagicMirror on bookworm successfully on a pi0-w, armv6l
            takes too much memory

            you need to use the legacy 32 bit image (bullseye)

            Sam

            How to add modules

            learning how to use browser developers window for css changes

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

              @sdetweil thank you that worked to a point please have a look at the below with the errors I getting:

              505c93ab-b6ef-4667-a3fb-490d53665bf5-image.png

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

                @funkdafied I cannot recreate this…

                try this to increase the timeout

                
                You can extend timeout with those two commands:
                
                npm config set fetch-retry-maxtimeout 6000000
                npm config set fetch-retry-mintimeout 1000000
                enter image description here
                
                Source: https://docs.npmjs.com/cli/v9/using-npm/config#fetch-retry-maxtimeout
                
                

                kTo3j.png

                Sam

                How to add modules

                learning how to use browser developers window for css changes

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

                  @sdetweil Thank you that did the trick. Only issue I see to be running into at the moment is Midori telling me it can’t find the page it is looking for.

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

                    @funkdafied ok,

                    when you run on a device that doesn’t have electron support, it doesn’t get installed via MM as expected…

                    then my install script changes the startup to use my run-start.sh script

                    which launches MagicMirror in server mode
                    and waits for the ready message

                    >>>   Ready to go! Please point your browser to: http://0.0.0.0:8080   <<<
                    

                    and then launches midori like this (with whatever the port number is in the message)

                    midori http://localhost:8080 -e Fullscreen -e Navigationbar
                    

                    just for grins can you do

                    cd ~/MagicMirror
                    npm start server
                    

                    to see if that message appears

                    Sam

                    How to add modules

                    learning how to use browser developers window for css changes

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

                      @funkdafied I think we solved this on discord

                      Sam

                      How to add modules

                      learning how to use browser developers window for css changes

                      1 Reply Last reply Reply Quote 0
                      • S schris88 referenced this topic on
                      • 1
                      • 2
                      • 3
                      • 4
                      • 5
                      • 6
                      • 7
                      • 8
                      • 3 / 8
                      • 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