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-Pir toggling

    Scheduled Pinned Locked Moved Solved Troubleshooting
    22 Posts 3 Posters 2.0k Views 3 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.
    • T Offline
      ttt126
      last edited by

      Thanks, opened an issue here:

      https://github.com/KristjanESPERANTO/MagicMirror-3rd-Party-Modules/issues

      Will see

      bugsounetB 1 Reply Last reply Reply Quote 0
      • bugsounetB Offline
        bugsounet Banned @ttt126
        last edited by

        Hi,

        MMM-Pir v2 is under coding
        Unfortunately, it is not possible to use mode 6 and 7 at the same time (same GPIO)

        This module send USER_PRESENCE notification with trueor false payload (it’s the screen state)
        You can trigger it with this module MMM-NotificationTrigger and exec a personal script for this

        Note:

        • python RPi.GPIO will be deleted (in next release) because there is a compatibility problem with pi5 and with bookworm too.
        • I will try to recode it with gpiod library for both compatibility
        1 Reply Last reply Reply Quote 0
        • T Offline
          ttt126
          last edited by

          Would it be possible to create a mode in which a relay is switched when detected on the PIR and after the new timer has expired.
          So an on off toggle, so to speak. This would make it possible to switch any monitor using the Stanfby button. HDMI on/off would then not be necessary, simply a relay on the monitor button and all monitors could be used.
          Unfortunately, I’m not that good at cascading the module.
          Thank you for your great work

          1 Reply Last reply Reply Quote 0
          • T Offline
            ttt126
            last edited by

            Thank you very much, I spent the whole day trying to understand notification triggers and producing a config, unfortunately without success.
            Maybe you can help me out. how do I do the config so that the trigger can be taken over by mmmpir? I’ve already created a small py script with a gpio pin that goes on and off, it’s in the root directory.
            But I just can’t get the execut function to be implemented.

            {
            module: “MMM-NotificationTrigger”,
            config: {
            triggers:[
            {
            trigger: “USER_PRESENCE”,
            fires: [
            {
            exec: “/neu1.py”
            }
            ],
            },
            ]
            }
            },

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

              @ttt126 said in MMM-Pir toggling:

              exec: “/neu1.py”

              that means in the root system folder’if you meant YOUR home folder
              that would be , replace username with really logged on user for home folder

              /home/username/neu1.py

              there may have been messages posted to the MM startup output

              Sam

              How to add modules

              learning how to use browser developers window for css changes

              1 Reply Last reply Reply Quote 0
              • T Offline
                ttt126
                last edited by

                Even with /home/pi/neu1.py it is not responding.
                Do I have to devine true and fals state in the config as well?

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

                  @ttt126 can you execute the script manually from the terminal window?

                  Sam

                  How to add modules

                  learning how to use browser developers window for css changes

                  1 Reply Last reply Reply Quote 0
                  • T Offline
                    ttt126
                    last edited by

                    Yes, this I can.
                    Kliking - exexute, relay klliks on an off once.

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

                      @ttt126 ok, i was checking for permissions

                      did you check the messages from npm start location, see if any errors were posted

                      Sam

                      How to add modules

                      learning how to use browser developers window for css changes

                      1 Reply Last reply Reply Quote 0
                      • T Offline
                        ttt126
                        last edited by

                        @sdetweil said in MMM-Pir toggling:

                        npm start location
                        pi@MagicMirro-2:~/MagicMirror/config $ npm start

                        magicmirror@2.29.0 start
                        DISPLAY=“${DISPLAY:=:0}” ./node_modules/.bin/electron js/electron.js

                        [2024-10-23 17:12:16.266] [LOG] Starting MagicMirror: v2.29.0
                        [2024-10-23 17:12:16.334] [LOG] Loading config …
                        [2024-10-23 17:12:16.341] [LOG] config template file not exists, no envsubst
                        [2024-10-23 17:12:17.515] [INFO] Checking config file /home/pi/MagicMirror/conf ig/config.js …
                        [2024-10-23 17:12:17.711] [INFO] Your configuration file doesn’t contain syntax errors :)
                        [2024-10-23 17:12:17.712] [INFO] Checking modules structure configuration …
                        [2024-10-23 17:12:17.959] [INFO] Your modules structure configuration doesn’t c ontain errors :)
                        [2024-10-23 17:12:17.967] [LOG] Loading module helpers …
                        [2024-10-23 17:12:18.020] [LOG] Initializing new module helper …
                        [2024-10-23 17:12:18.022] [LOG] Module helper loaded: MMM-Pir
                        [2024-10-23 17:12:18.026] [LOG] Initializing new module helper …
                        [2024-10-23 17:12:18.028] [LOG] Module helper loaded: MMM-NotificationTrigger
                        [2024-10-23 17:12:18.031] [LOG] No helper found for module: alert.
                        [2024-10-23 17:12:18.042] [LOG] Initializing new module helper …
                        [2024-10-23 17:12:18.043] [LOG] Module helper loaded: updatenotification
                        [2024-10-23 17:12:18.044] [LOG] No helper found for module: clock.
                        [2024-10-23 17:12:18.298] [LOG] Initializing new module helper …
                        [2024-10-23 17:12:18.299] [LOG] Module helper loaded: calendar
                        [2024-10-23 17:12:18.300] [LOG] No helper found for module: MMM-WebView.
                        [2024-10-23 17:12:18.303] [LOG] No helper found for module: weather.
                        [2024-10-23 17:12:18.306] [LOG] No helper found for module: MMM-RAIN-MAP.
                        [2024-10-23 17:12:18.488] [LOG] Initializing new module helper …
                        [2024-10-23 17:12:18.489] [LOG] Module helper loaded: newsfeed
                        [2024-10-23 17:12:18.490] [LOG] All module helpers loaded.
                        [2024-10-23 17:12:18.522] [LOG] Starting server on port 8080 …
                        [2024-10-23 17:12:20.761] [ERROR] Whoops! There was an uncaught exception…
                        [2024-10-23 17:12:20.816] [ERROR] Error: listen EADDRINUSE: address already in u se ::1:8080
                        at Server.setupListenHandle [as _listen2] (node:net:1904:16)
                        at listenInCluster (node:net:1961:12)
                        at GetAddrInfoReqWrap.doListen [as callback] (node:net:2135:7)
                        at GetAddrInfoReqWrap.onlookup [as oncomplete] (node:dns:111:8) {
                        code: ‘EADDRINUSE’,
                        errno: -98,
                        syscall: ‘listen’,
                        address: ‘::1’,
                        port: 8080
                        }
                        [2024-10-23 17:12:20.818] [ERROR] MagicMirror² will not quit, but it might be a good idea to check why this happened. Maybe no internet connection?
                        [2024-10-23 17:12:20.824] [ERROR] If you think this really is an issue, please o pen an issue on GitHub: https://github.com/MagicMirrorOrg/MagicMirror/issues
                        [13489:1023/171222.609717:ERROR:gbm_wrapper.cc(74)] Failed to get fd for plane.: No such file or directory (2)
                        [13489:1023/171222.619958:ERROR:gbm_wrapper.cc(257)] Failed to export buffer to dma_buf: No such file or directory (2)
                        [13489:1023/171222.622864:ERROR:gbm_wrapper.cc(74)] Failed to get fd for plane.: No such file or directory (2)
                        [13489:1023/171222.623145:ERROR:gbm_wrapper.cc(257)] Failed to export buffer to dma_buf: No such file or directory (2)
                        [13489:1023/171222.623492:ERROR:gbm_wrapper.cc(74)] Failed to get fd for plane.: No such file or directory (2)
                        [13489:1023/171222.623703:ERROR:gbm_wrapper.cc(257)] Failed to export buffer to dma_buf: No such file or directory (2)
                        [13489:1023/171222.623989:ERROR:gbm_wrapper.cc(74)] Failed to get fd for plane.: No such file or directory (2)
                        [13489:1023/171222.624237:ERROR:gbm_wrapper.cc(257)] Failed to export buffer to dma_buf: No such file or directory (2)
                        [13489:1023/171222.624616:ERROR:gbm_wrapper.cc(74)] Failed to get fd for plane.: No such file or directory (2)
                        [13489:1023/171222.627519:ERROR:gbm_wrapper.cc(257)] Failed to export buffer to dma_buf: No such file or directory (2)
                        [13489:1023/171222.631965:ERROR:gbm_wrapper.cc(74)] Failed to get fd for plane.: No such file or directory (2)
                        [13489:1023/171222.632229:ERROR:gbm_wrapper.cc(257)] Failed to export buffer to dma_buf: No such file or directory (2)
                        [13489:1023/171222.632531:ERROR:gbm_wrapper.cc(74)] Failed to get fd for plane.: No such file or directory (2)
                        [13489:1023/171222.632730:ERROR:gbm_wrapper.cc(257)] Failed to export buffer to dma_buf: No such file or directory (2)
                        [13489:1023/171222.634239:ERROR:gbm_wrapper.cc(74)] Failed to get fd for plane.: No such file or directory (2)
                        [13489:1023/171222.637235:ERROR:gbm_wrapper.cc(257)] Failed to export buffer to dma_buf: No such file or directory (2)
                        [13489:1023/171222.639949:ERROR:gbm_wrapper.cc(74)] Failed to get fd for plane.: No such file or directory (2)
                        [13489:1023/171222.643515:ERROR:gbm_wrapper.cc(257)] Failed to export buffer to dma_buf: No such file or directory (2)
                        [13489:1023/171222.647036:ERROR:gbm_wrapper.cc(74)] Failed to get fd for plane.: No such file or directory (2)
                        [13489:1023/171222.647506:ERROR:gbm_wrapper.cc(257)] Failed to export buffer to dma_buf: No such file or directory (2)
                        [13489:1023/171222.648316:ERROR:gbm_wrapper.cc(74)] Failed to get fd for plane.: No such file or directory (2)
                        [13489:1023/171222.648593:ERROR:gbm_wrapper.cc(257)] Failed to export buffer to dma_buf: No such file or directory (2)
                        [13489:1023/171222.648900:ERROR:gbm_wrapper.cc(74)] Failed to get fd for plane.: No such file or directory (2)
                        [13489:1023/171222.649075:ERROR:gbm_wrapper.cc(257)] Failed to export buffer to dma_buf: No such file or directory (2)
                        [13489:1023/171222.649295:ERROR:gbm_wrapper.cc(74)] Failed to get fd for plane.: No such file or directory (2)
                        [13489:1023/171222.649472:ERROR:gbm_wrapper.cc(257)] Failed to export buffer to dma_buf: No such file or directory (2)
                        [13489:1023/171222.649704:ERROR:gbm_wrapper.cc(74)] Failed to get fd for plane.: No such file or directory (2)
                        [13489:1023/171222.649858:ERROR:gbm_wrapper.cc(257)] Failed to export buffer to dma_buf: No such file or directory (2)
                        [2024-10-23 17:12:24.158] [INFO] System information:

                        SYSTEM: manufacturer: ; model: ; virtual: false

                        OS: platform: linux; distro: Debian GNU/Linux; release: 12; arch: arm64; kernel: 6.6.51+rpt-rpi-v8

                        VERSIONS: electron: 31.7.1; used node: 20.18.0; installed node: 20.9.0; npm: 10.1.0; pm2: 5.4.2

                        OTHER: timeZone: Europe/Berlin; ELECTRON_ENABLE_GPU: undefined

                        I think no errors according to the problem.

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

                          @ttt126 that means you started MM AGAIN…

                          if you are using PM2, then you need to use the pm2 commands

                          pm2 status
                          pm2 stop x
                          where x is the name or number of the row of the app you want control
                          and then pm2 start x

                          or you can do

                          pm2 restart x

                          I STRONGLY recommend using manual start while you are developing your mm solution
                          changing config, adding modules

                          pm2 stop all
                          
                          cd ~/MagicMirror
                          npm start 
                          

                          to stop MM in this mode, hit ctrl-q on the MM screen

                          if you do this over ssh cause you have no keyboard on the mm system (like me all the time) press ctrl-c in the ssh window where you did npm start

                          (if you do this when PM2 is controlling, it will do its job, “keep the app running”,
                          you stop it, and pm2 will restart it… )

                          Sam

                          How to add modules

                          learning how to use browser developers window for css changes

                          1 Reply Last reply Reply Quote 0
                          • T Offline
                            ttt126
                            last edited by sdetweil

                            so this is the aktual config
                            the command python3 /home/pi/neu1.py is acting the relay if executed in termnal
                            I use fire and exec both with no action.
                            maybe there is no trigger natification.

                            module: "MMM-NotificationTrigger",
                                                   config: {
                                                     triggers:[
                                                       {
                                                          trigger: "USER_PRESENCE",
                                                          fires: [
                                                            {
                                                              fire:"python3 /home/pi/neu1.py",
                                                              exec: (payload) => {
                                                                return "python3 /homr/pi/neu1.py " + payload.option
                                                              }
                                                            },
                                                           ],
                                                         },
                                                       ]
                                                     }
                            
                            1 Reply Last reply Reply Quote 0
                            • T Offline
                              ttt126
                              last edited by

                              I got it working, many thanks for your Help :-)

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

                                @ttt126 what was the issue? might help others in the same predicament

                                Sam

                                How to add modules

                                learning how to use browser developers window for css changes

                                1 Reply Last reply Reply Quote 0
                                • T Offline
                                  ttt126
                                  last edited by

                                  @ttt126 said in MMM-Pir toggling:

                                  config: {
                                  triggers:[
                                  {
                                  trigger: “USER_PRESENCE”,
                                  fires: [
                                  {
                                  exec: (payload) => {
                                  return "python3 /homr/pi/neu1.py " + payload.option
                                  }
                                  },
                                  ],
                                  },
                                  ]
                                  }

                                  The pathon3 comand was missing. I´m not quite firm with programming.
                                  But a serce for executing a py script brought the answere!

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

                                    @ttt126 ok… two things…

                                    1. when posting config or logs info in the forum, please use the code-block wrapper

                                    to use

                                    paste the text you want to post, blank line above and below
                                    select the text you just pasted
                                    hit the </> button above the editor to add the wrapper

                                    1. on linux, you can specify the program to launch to execute a ‘script/program’
                                      you do this by adding a special first line
                                    #!/path_to_executable/programname
                                    

                                    so in your case
                                    from a terminal window do

                                    which python3
                                    

                                    the which pgm returns the full path to the 1st instance of the program specified as located along the path . on my desktop that is

                                    which python3
                                    /home/sam/anaconda3/bin/python3
                                    

                                    then in you editor of your script, make this the 1st line

                                    #!path_from_which
                                    

                                    so it looks like this

                                    #!/home/sam/anaconda3/bin/python3
                                    

                                    the linux execution code does all this stuff under the covers, reads the 1st line and invokes that pgm with the arguments passed to the script
                                    and of course, if no #! then the script USER has to specify it like you did

                                    Sam

                                    How to add modules

                                    learning how to use browser developers window for css changes

                                    1 Reply Last reply Reply Quote 0
                                    • S sdetweil has marked this topic as solved on

                                    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