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

MMM server mode

Scheduled Pinned Locked Moved Hardware
8 Posts 2 Posters 969 Views 2 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.
  • M Offline
    mmcghee
    last edited by Sep 23, 2023, 2:42 PM

    Hi all,

    Apologies if I have posted this in the wrong section.

    I’m starting my mirror project again after a few years but I’ve decided to not use a mirror but instead try just a big interactive photo display using MM.

    Anyway i was looking to run MM as part of my home server and use a rpi zero 2 to display like in a kiosk function. I was looking to add a camera for facial recognition and an ir touchframe to the display. Is there a way for the zero 2 w to communicate with the server so it knows who’s looking at the camera and to know which module is being touched or which page is being requested through scrolling?

    Cheers
    Michael

    S 1 Reply Last reply Sep 23, 2023, 2:52 PM Reply Quote 0
    • S Offline
      sdetweil @mmcghee
      last edited by Sep 23, 2023, 2:52 PM

      @mmcghee the MM ‘server’ is only the node_helpers of the modules that have them.

      the MMM-FaceReco DNN node_helper just sends the detected username up to its web module. that is where all the processing is done…

      if u don’t run the web side, you don’t get any of that

      Sam

      How to add modules

      learning how to use browser developers window for css changes

      M 1 Reply Last reply Sep 23, 2023, 3:06 PM Reply Quote 0
      • M Offline
        mmcghee @sdetweil
        last edited by Sep 23, 2023, 3:06 PM

        @sdetweil OK, thanks for that. I’ll do some more digging in the Web side of it and see where I can go from there. My programming skills are not great but I’ll have a crack at it.

        Cheers
        Michael

        S 1 Reply Last reply Sep 23, 2023, 3:41 PM Reply Quote 0
        • S Offline
          sdetweil @mmcghee
          last edited by sdetweil Sep 23, 2023, 3:45 PM Sep 23, 2023, 3:41 PM

          @mmcghee so, MM is a framework for creating a composable information panel.
          (composed by assembling multiple independent information providers (aka ‘modules’))

          the ‘modules’ know nothing about the runtime environment except a few functions. they do not actually modify the web dom directly… they create content on their independent schedules and the runtime manages the display.

          as web code cannot directly access the underlying system (read/write files, touch hardware, …) the node_helper component of a module is used on the ‘server’/not browser side to do that directly… and a data passing pipe is provided (using web sockets under the covers) between the web component and its helper…

          the node_helper doesn’t know anything about the web environment. , just takes requests and sends responses.

          Sam

          How to add modules

          learning how to use browser developers window for css changes

          M 1 Reply Last reply Sep 23, 2023, 3:54 PM Reply Quote 0
          • M Offline
            mmcghee @sdetweil
            last edited by Sep 23, 2023, 3:54 PM

            @sdetweil ok, fair enough. I assumed that the touchscreen to communicate via a server would be a tough stretch. I’ll run it all through it’s own dedicated PI 4 then. I have a 2gb and a 4gb lying around not doing anything so i’ll use one of those instead.

            Will i be better using the MM OS or using rasbian and build MM on top of it?

            Thanks
            Michael

            S 1 Reply Last reply Sep 23, 2023, 3:59 PM Reply Quote 0
            • S Offline
              sdetweil @mmcghee
              last edited by sdetweil Sep 23, 2023, 4:02 PM Sep 23, 2023, 3:59 PM

              @mmcghee MM is just a javascript application.

              there is nothing to ‘build’, its all source level dynamic execution.

              one install supports running all three execution environments

              • full (uses electron as the web engine),
                this is the default, my install script does the setup for this… but easy to change one file to change the environment to execute)

              • server only (no web component, use some supporting browser someplace else, es6 latest)

              • client only - only browser side using electron to display

              if it were me I would build my own til I know what I need to do, then maybe a MMOS, or other docker deployment might be useful…

              as we don’t typically see multiple servers on sep ports on the same machine, in my opinion docker is additional overhead for nothing gained

              Sam

              How to add modules

              learning how to use browser developers window for css changes

              1 Reply Last reply Reply Quote 0
              • M Offline
                mmcghee
                last edited by Sep 23, 2023, 4:06 PM

                Cheers. I’ll have a muck about. Using a full environment will probably be the road i go down as server wont be good for the touchscreen for what i want it for and client is of no use whatsoever. I’ll put together what i’m looking for along with the appropriate modules and take it from there.

                Thanks
                Michael

                S 1 Reply Last reply Sep 23, 2023, 4:42 PM Reply Quote 0
                • S Offline
                  sdetweil @mmcghee
                  last edited by sdetweil Sep 23, 2023, 4:47 PM Sep 23, 2023, 4:42 PM

                  @mmcghee cool… also note that the base doesn’t provide any touch support in any module, as they are designed for output only…

                  you might want to look at this topic
                  https://forum.magicmirror.builders/topic/18011/touchscreen-family-dashboard

                  Sam

                  How to add modules

                  learning how to use browser developers window for css changes

                  1 Reply Last reply Reply Quote 0
                  • 1 / 1
                  1 / 1
                  • First post
                    5/8
                    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