Read the statement by Michael Teeuw here.
{HowTo} turn on/off your monitor (Time based, PIR/Button, App)
-
This post is deleted! -
@FREIGHTTRAIN Can you elaborate more precisely, what is not working? What have you done? What is the expected behaviour? How does it behave? How to reproduce? That might help in helping you.
-
hi @cruunnerr
I just installed it, everything looks good but not working at all. I tried via 2.1 Using PIR-Module and 2.2 Using PIR-Script both not working, any suggestion how to check where the issue is? -
@cruunnerr
I have had success with your help and my PIR sensor but only after running pir.py from .bashrcThe script is working however I read the following warning when accessing my Magic Mirror with SSH:
RuntimeWarning. This channel is already in use, continuing anyway. io.setup(LED_PIN, io.OUT)
My end result is not affected. The PIR works fine.
Thank you
-
Just a little feedback that was a huge help for me.
@cruunnerr don’t know if you want to add this information on your first message.I have a samsung d6000 series tv that wouldn’t work anyway with modules for PIR sensor. A BIG aplause for all developers but i coudn’t get the tv out of “No Signal” message. The MagicMirror would turn image off but tv only in “No Signal”.
I’m not a programmer and just went on test and try.
I figured out that the https://github.com/bugsounet/MMM-NewPIR from @Bugsounet (BIG thanks to you also!) managed the problem!!
With this module set to mode: 4 - use HDMI CEC the TV shuts down when the MagicMirror tells her to shut down!
It’s straight through ON and OFF as expected!I’me very thankful to you all managing to help us out!
Thanks! -
its possible to kill 2.2 Using PIR-Script in rasp pi?
Can you tell me how I cans do it please?
thanks -
@ulster kill 2.2 what?
-
This one. Mentioned in the first page.
how to remove it?#!/usr/bin/env python
import sys
import time
import RPi.GPIO as io
import subprocessio.setmode(io.BCM)
SHUTOFF_DELAY = 120 # in seconds, how long the monitor will be on until next button press or PIR detection
PIR_PIN = 22 # 15 on the board (this needn’t to be a PIR. Can be a button also)
LED_PIN = 16 # optional, don’t use as Relay-PIN. It just shows detection time of the PIR without delay timedef 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/monitor_on.sh”, shell=True)def turn_off():
subprocess.call(“sh /home/pi/monitor_off.sh”, shell=True)if name == ‘main’:
try:
main()
except KeyboardInterrupt:
io.cleanup() -
@ulster sorry, i dont know anything about the module and dont read ( or re-read) every page of posts
-
Hello everyone, I’m getting desperate. I’ve now read the entire tutorial but I can’t find my mistake.
I am using my MM with a PIR sensor and would like to switch the backlight of the display with a relay. so i use this script pir.py:
#!/usr/bin/env python import sys import time import RPi.GPIO as io import subprocess io.setmode(io.BCM) SHUTOFF_DELAY = 120 # in seconds, how long the monitor will be on until next button press or PIR detection PIR_PIN = 22 # 15 on the board (this needn't to be a PIR. Can be a button also) LED_PIN = 16 # optional 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/monitor_on.sh", shell=True) def turn_off(): subprocess.call("sh /home/pi/monitor_off.sh", shell=True) if __name__ == '__main__': try: main() except KeyboardInterrupt: io.cleanup()
Unfortunately, when I run this script in the terminal, I only get the feedback from the PIR sensor (…) but the relay is not switched. But if I run the monitor_on.sh or monitor_off.sh script it works:
monitor_on.sh
gpio -g mode 27 out sleep 0.2 gpio -g write 27 1
monitor_off.sh
gpio -g mode 27 out sleep 0.2 gpio -g write 27 0
But the PIR.py doesn’t work. Where could the mistake lie?
Many greetings Andreas