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

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

Scheduled Pinned Locked Moved Tutorials
171 Posts 39 Posters 220.9k 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.
  • C Offline
    cruunnerr
    last edited by cruunnerr Nov 26, 2018, 5:38 AM Nov 26, 2018, 5:37 AM

    @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
    
    M 1 Reply Last reply Nov 26, 2018, 1:42 PM Reply Quote 1
    • M Offline
      Mykle1 Project Sponsor Module Developer @cruunnerr
      last edited by Nov 26, 2018, 1:42 PM

      @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 Nov 27, 2018, 2:10 AM

        @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 Jan 23, 2019, 12:43 PM Jan 23, 2019, 12:42 PM

          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 Jan 23, 2019, 12:48 PM Reply Quote 0
          • S Away
            sdetweil @bolish
            last edited by Jan 23, 2019, 12:48 PM

            @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 Jan 23, 2019, 3:41 PM Reply Quote 0
            • B Offline
              bolish @sdetweil
              last edited by Jan 23, 2019, 3:41 PM

              @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 Jan 23, 2019, 3:52 PM Reply Quote 0
              • S Away
                sdetweil @bolish
                last edited by Jan 23, 2019, 3:52 PM

                @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 Jan 24, 2019, 8:27 AM

                  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 Feb 26, 2019, 6:52 AM

                    @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 Feb 27, 2019, 4:41 PM

                      @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 Feb 27, 2019, 4:42 PM Reply Quote 0
                      • 1
                      • 2
                      • 10
                      • 11
                      • 12
                      • 13
                      • 14
                      • 17
                      • 18
                      • 12 / 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