Read the statement by Michael Teeuw here.
PIR-Sensor - put your mirror to sleep if not used
-
@paviro I finally found some time to look into the problem I had some more. The exact origin is still unclear to me, but I did figure out that my problem, it is not related to your module, or the MM software in general. I got the same behaviour over ssh:
tvservice -o
switches the monitor connected to the Pi off,tvservice -p
switches it back on, but the screen would appear black. After fiddling around a little bit, I found another solution that does not require root rights. Instead of using thesudo chvt 7 && sudo chvt 9
command, the problem can also be solved usingfbset
. My modified version of the activateMonitor function file node_helper.js:activateMonitor: function () { if (this.config.relayPIN != false) { gpio.digitalWrite(this.config.relayPIN, this.config.relayOnState) } else if (this.config.relayPIN == false){ exec("/opt/vc/bin/tvservice -p", null); exec("/bin/fbset -depth 8 && /bin/fbset -depth 16 ", null); exec("/usr/bin/xrefresh",null); }
For the command
xrefresh
to work when given via ssh, the correct display variable has to be set (in my case):
export DISPLAY=:0
I have added this line to my .profile file in the /home/pi directory so that I don’t have to type it every time I log in via ssh. -
@MechMatt Have a look at the PowerSwitch Tail. If you live in the US, you can buy an assembled version from Adafruit. If you’re in 240V land (like me), you will have to do some (basic) soldering. Works like a charm for me. :-)
-
That’s really odd that you have to go through all of that. On my rPi-3 with the most recent Raspbian Jessie release, I can use
'tvservice -o'
and'tvservice -p'
and it just works. I don’t have to do anything else. It’s all running as the unprivileged user'pi'
(and without issuing'sudo'
before each command.) I wonder if it has something to do with the monitor and what it responds with when a signal is sent … Glad you figured it out though. -
@KirAsh4 I agree, it’s very strange. Like you, I am using a rPi-3 with the most recent version of Raspbian Jessie and run everything as user
pi
. So maybe it is the monitor (Philips 273V5l). Which one do you use?Although the problem is fixed, I would like to know what is going on.
-
Let me get home and get you the details on it. It a monitor we had sitting around at the office, some high end graphic Pro monitor that wasn’t being used anymore. I also have a test I want to perform on it, see if that makes a difference in what I’m seeing. Stay tuned.
-
@paviro I donwloaded to node 5.0.0 and I know get the following error
Failed at the magicmirror@2.0.0 start script 'electron js/electron.js'.
-
@joerod That’s all? Not a failure of my plugin. Any more logs?
-
For people who are not confortable with programming this, or need to buy a pir sensor anyway
You can also buy a pir with motionsensor like this
-
9 verbose stack Error: magicmirror@2.0.0 start: `electron js/electron.js` 9 verbose stack Exit status 1 9 verbose stack at EventEmitter.<anonymous> (/usr/local/lib/node_modules/npm/lib/utils/lifecycle.js:214$ 9 verbose stack at emitTwo (events.js:87:13) 9 verbose stack at EventEmitter.emit (events.js:172:7) 9 verbose stack at ChildProcess.<anonymous> (/usr/local/lib/node_modules/npm/lib/utils/spawn.js:24:14) 9 verbose stack at emitTwo (events.js:87:13) 9 verbose stack at ChildProcess.emit (events.js:172:7) 9 verbose stack at maybeClose (internal/child_process.js:817:16) 9 verbose stack at Process.ChildProcess._handle.onexit (internal/child_process.js:211:5)
I’ve tested my PIR sensor with a Python script to make sure I’m using the proper GPIO and its functioning as it should. I do see 1 & 0 when I move near the sensor so I don’t think its the hardware.
I’d love to use this module, I was going to do it in python but since you have it in JS I figured why not use that.
-