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.

    {HowTo} turn on/off your monitor (Time based, PIR/Button, App)

    Scheduled Pinned Locked Moved Tutorials
    171 Posts 39 Posters 275.4k Views 54 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.
    • cruunnerrC Offline
      cruunnerr
      last edited by cruunnerr

      @Rec3ptor

      If u followed the guide i posted, your PIGPIOD installation path should be “/usr/local/bin/pigpiod”

      For autostart when booting u must edit the rc.local. Mine is like this:

      pi@MagicMirror:~ $ cat /etc/rc.local
      #!/bin/sh -e
      #
      # rc.local
      #
      # This script is executed at the end of each multiuser runlevel.
      # Make sure that the script will "exit 0" on success or any other
      # value on error.
      #
      # In order to enable or disable this script just change the execution
      # bits.
      #
      # By default this script does nothing.
      
      # Print the IP address
      _IP=$(hostname -I) || true
      if [ "$_IP" ]; then
        printf "My IP address is %s\n" "$_IP"
      fi
      
      iwconfig wlan0 power off &
      
      sleep 5 &
      
      /usr/local/bin/pigpiod
      
      sleep 10 &
      
      /usr/bin/python /home/pi/pir.py &
      
      exit 0
      

      So enter this via ssh:

      sudo nano /etc/rc.local
      

      and just put this into the file:

      /usr/local/bin/pigpiod
      
      Mykle1M 1 Reply Last reply Reply Quote 1
      • Mykle1M Offline
        Mykle1 Project Sponsor Module Developer @cruunnerr
        last edited by

        @cruunnerr

        My nickname for you:

        King Cron

        :thumbsup:

        Create a working config
        How to add modules

        1 Reply Last reply Reply Quote 1
        • T Offline
          teitlebot @richland007
          last edited by

          @richland007 This wont be helpful but I will say I had a similar problem a few months back but now it works. Must be some configuration that changed in the mean time on my pi but I dont know what.

          1 Reply Last reply Reply Quote 0
          • B Offline
            bolish
            last edited by bolish

            Hello there,

            I’m currently planning my project and will integrate PIR sensor + related 2.1 method through HDMI.There is one thing confusing me :

            • we talk about HDMI CEC in method 2.1
            • nevertheless, it seems the PIR Sensor module is “only” turning HDMI output off and that is triggering "issues such as “powersaving / no input”.

            But is HDMI CEC not allowing us to send a “turn screen off” command to the monitor instead of disabling the rasp. HDMIoutput and relying / hoping on the monitor’s behaviour?

            Sorry once more if I mssed the point, but would like to understand before moving forward.

            Regards

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

              @bolish said in {HowTo} turn on/off your monitor (Time based, PIR/Button, App):

              But is HDMI CEC not allowing us to send a “turn screen off” command to the monitor instead of disabling the rasp. HDMIoutput and relying / hoping on the monitor’s behaviour?

              as I understand it, not many monitors/tv’s provide support for external power off/on commands…

              none of my TV’s used for MM support this…

              Sam

              How to add modules

              learning how to use browser developers window for css changes

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

                @sdetweil Maybe you’re right! I didn’t considered that.

                But seems possible, correct? By changing the actual commands to the ones defined by the libcec librairy?

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

                  @bolish I do not know… as I said, none of my TVs support ANY commands to turn off/on…

                  in my MMM-SleepWake module, I use module.hide() to hide everything, leaving a blank screen… for those devices that do not provide external control…

                  Sam

                  How to add modules

                  learning how to use browser developers window for css changes

                  1 Reply Last reply Reply Quote 1
                  • B Offline
                    bolish
                    last edited by

                    OK, I will then try myself when I will receive my stuff and let forums knows if working or not.

                    1 Reply Last reply Reply Quote 0
                    • C Offline
                      chandra
                      last edited by

                      @cruunnerr ,
                      Thank you very much for the detailed write up. As a beginner, i could follow the steps. I used the 2.1 Using PIR-Module. Its working well.
                      Few questions,
                      Now trying to connect LED strip-

                      1. should i remove the module from the config?
                      2. Or 2.2 Using PIR-script will work simultaneously?
                        I read your following post, But, can you help me how to implement all?

                      @cruunnerr said in {HowTo} turn on/off your monitor (Time based, PIR/Button, App):

                      In my Case I am using a RGB 5050 Stripe. I am using three pins with mosfets and for the software part PIGPIOD.

                      Just like that: https://dordnung.de/raspberrypi-ledstrip/

                      Here are my scripts:

                      monitor on:

                      vcgencmd display_power 1
                      
                      pigs p 17 1
                      pigs p 22 1
                      pigs p 24 1
                      
                      sleep 0.06s
                      
                      pigs p 17 2
                      pigs p 22 2
                      pigs p 24 2
                      
                      sleep 0.06s
                      
                      pigs p 17 3
                      pigs p 22 3
                      pigs p 24 3
                      
                      sleep 0.06s
                      
                      pigs p 17 4
                      pigs p 22 4
                      pigs p 24 4
                      
                      sleep 0.06s
                      
                      pigs p 17 5
                      pigs p 22 5
                      pigs p 24 5
                      
                      sleep 0.06s
                      
                      pigs p 17 6
                      pigs p 22 6
                      pigs p 24 5
                      
                      sleep 0.06s
                      
                      pigs p 17 7
                      pigs p 22 7
                      pigs p 24 6
                      
                      sleep 0.06s
                      
                      pigs p 17 8
                      pigs p 22 8
                      pigs p 24 7
                      
                      sleep 0.06s
                      
                      pigs p 17 9
                      pigs p 22 9
                      pigs p 24 8
                      
                      sleep 0.06s
                      
                      pigs p 17 10
                      pigs p 22 10
                      pigs p 24 9
                      
                      sleep 0.06s
                      
                      pigs p 17 11
                      pigs p 22 11
                      pigs p 24 10
                      
                      sleep 0.06s
                      
                      pigs p 17 12
                      pigs p 22 12
                      pigs p 24 11
                      
                      

                      Monitor off:

                      pigs p 17 12
                      pigs p 22 12
                      pigs p 24 11
                      
                      sleep 0.06s
                      
                      pigs p 17 11
                      pigs p 22 11
                      pigs p 24 10
                      
                      sleep 0.06s
                      
                      pigs p 17 10
                      pigs p 22 10
                      pigs p 24 9
                      
                      sleep 0.06s
                      
                      pigs p 17 9
                      pigs p 22 9
                      pigs p 24 8
                      
                      sleep 0.06s
                      
                      pigs p 17 8
                      pigs p 22 8
                      pigs p 24 7
                      
                      sleep 0.06s
                      
                      pigs p 17 7
                      pigs p 22 7
                      pigs p 24 6
                      
                      sleep 0.06s
                      
                      pigs p 17 6
                      pigs p 22 6
                      pigs p 24 5
                      
                      sleep 0.06s
                      
                      pigs p 17 5
                      pigs p 22 5
                      pigs p 24 5
                      
                      sleep 0.06s
                      
                      pigs p 17 4
                      pigs p 22 4
                      pigs p 24 4
                      
                      sleep 0.06s
                      
                      pigs p 17 4
                      pigs p 22 4
                      pigs p 24 4
                      
                      sleep 0.06s
                      
                      pigs p 17 3
                      pigs p 22 3
                      pigs p 24 3
                      
                      sleep 0.06s
                      
                      pigs p 17 2
                      pigs p 22 2
                      pigs p 24 2
                      
                      vcgencmd display_power 0
                      
                      sleep 0.06s
                      
                      pigs p 17 1
                      pigs p 22 1
                      pigs p 24 1
                      
                      sleep 0.06s
                      
                      pigs p 17 0
                      pigs p 22 0
                      pigs p 24 0
                      
                      
                      1 Reply Last reply Reply Quote 0
                      • C Offline
                        chandra @cruunnerr
                        last edited by

                        @cruunnerr said in {HowTo} turn on/off your monitor (Time based, PIR/Button, App):

                        Sure, my pir.py is the same as shown on point 2.2 but with other GPIO used

                        #!/usr/bin/env python
                        
                        import sys
                        import time
                        import RPi.GPIO as io
                        import subprocess
                        import pigpio
                        
                        io.setmode(io.BCM)
                        SHUTOFF_DELAY = 119 # seconds
                        PIR_PIN = 25       # 22 on the board
                        LED_PIN = 16
                        
                        def main():
                            io.setup(PIR_PIN, io.IN)
                            io.setup(LED_PIN, io.OUT)
                            turned_off = False
                            last_motion_time = time.time()
                        
                            while True:
                                if io.input(PIR_PIN):
                                    last_motion_time = time.time()
                                    io.output(LED_PIN, io.LOW)
                                    print ".",
                                    sys.stdout.flush()
                                    if turned_off:
                                        turned_off = False
                                        turn_on()
                                else:
                                    if not turned_off and time.time() > (last_motion_time + 
                                                                         SHUTOFF_DELAY):
                                        turned_off = True
                                        turn_off()
                                    if not turned_off and time.time() > (last_motion_time + 1):
                                        io.output(LED_PIN, io.HIGH)
                                time.sleep(.1)
                        
                        def turn_on():
                                subprocess.call("sh /home/pi/lights_on.sh", shell=True)
                        
                        def turn_off():
                                subprocess.call("sh /home/pi/lights_off.sh", shell=True)
                        
                        if __name__ == '__main__':
                            try:
                                main()
                            except KeyboardInterrupt:
                                io.cleanup()
                        

                        Because i use some LED Stripes which turn on when the pir detects movement my “monitor_on.sh” is called “lights_on.sh”

                        lights_on.sh:

                        vcgencmd display_power 1
                        
                        pigs p 17 1
                        pigs p 22 1
                        pigs p 24 1
                        
                        sleep 0.06s
                        
                        pigs p 17 2
                        pigs p 22 2
                        pigs p 24 2
                        
                        sleep 0.06s
                        
                        pigs p 17 3
                        pigs p 22 3
                        pigs p 24 3
                        
                        sleep 0.06s
                        
                        pigs p 17 4
                        pigs p 22 4
                        pigs p 24 4
                        
                        sleep 0.06s
                        
                        pigs p 17 5
                        pigs p 22 5
                        pigs p 24 5
                        
                        sleep 0.06s
                        
                        pigs p 17 6
                        pigs p 22 6
                        pigs p 24 5
                        
                        sleep 0.06s
                        
                        pigs p 17 7
                        pigs p 22 7
                        pigs p 24 6
                        
                        sleep 0.06s
                        
                        pigs p 17 8
                        pigs p 22 8
                        pigs p 24 7
                        
                        sleep 0.06s
                        
                        pigs p 17 9
                        pigs p 22 9
                        pigs p 24 8
                        
                        sleep 0.06s
                        
                        pigs p 17 10
                        pigs p 22 10
                        pigs p 24 9
                        
                        sleep 0.06s
                        
                        pigs p 17 11
                        pigs p 22 11
                        pigs p 24 10
                        
                        sleep 0.06s
                        
                        pigs p 17 12
                        pigs p 22 12
                        pigs p 24 11
                        

                        lights_off.sh:

                        pigs p 17 12
                        pigs p 22 12
                        pigs p 24 11
                        
                        sleep 0.06s
                        
                        pigs p 17 11
                        pigs p 22 11
                        pigs p 24 10
                        
                        sleep 0.06s
                        
                        pigs p 17 10
                        pigs p 22 10
                        pigs p 24 9
                        
                        sleep 0.06s
                        
                        pigs p 17 9
                        pigs p 22 9
                        pigs p 24 8
                        
                        sleep 0.06s
                        
                        pigs p 17 8
                        pigs p 22 8
                        pigs p 24 7
                        
                        sleep 0.06s
                        
                        pigs p 17 7
                        pigs p 22 7
                        pigs p 24 6
                        
                        sleep 0.06s
                        
                        pigs p 17 6
                        pigs p 22 6
                        pigs p 24 5
                        
                        sleep 0.06s
                        
                        pigs p 17 5
                        pigs p 22 5
                        pigs p 24 5
                        
                        sleep 0.06s
                        
                        pigs p 17 4
                        pigs p 22 4
                        pigs p 24 4
                        
                        sleep 0.06s
                        
                        pigs p 17 4
                        pigs p 22 4
                        pigs p 24 4
                        
                        sleep 0.06s
                        
                        pigs p 17 3
                        pigs p 22 3
                        pigs p 24 3
                        
                        sleep 0.06s
                        
                        pigs p 17 2
                        pigs p 22 2
                        pigs p 24 2
                        
                        vcgencmd display_power 0
                        
                        sleep 0.06s
                        
                        pigs p 17 1
                        pigs p 22 1
                        pigs p 24 1
                        
                        sleep 0.06s
                        
                        pigs p 17 0
                        pigs p 22 0
                        pigs p 24 0
                        

                        But what exactly doesn’t work with my script? Maybe i can help :)

                        Got this ( https://dordnung.de/raspberrypi-ledstrip/) working successfully on another raspberry running stretch.

                        now going to try this on Magicmirror. But i got confused, because PIR sensor is on GPIO22 and the same GPIO22 is used in led strip (5050).
                        Can you guide , which GPIO to be assigned?

                        S 1 Reply Last reply Reply Quote 0
                        • 1
                        • 2
                        • 11
                        • 12
                        • 13
                        • 14
                        • 15
                        • 16
                        • 17
                        • 18
                        • 13 / 18
                        • 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