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