Read the statement by Michael Teeuw here.
PIR problem
-
I was not able to use
vcgencmd
under bullseye and AFAIK they are usingxrandr
under the hood for rotating the screen over the web ui menu.So beside testing if the sensor works you could test if you can deactivate the sceen with
xrandr --output HDMI-1 --off
and activate it again withxrandr --output HDMI-1 --rotate normal --auto
.xrandr
is also the default ofcommandType
option ofMMM-PIR-Sensor-Lite
(see documentation). -
@karsten13 I tried MMM-Pir-Sensor-Lite: counting down works and is re-activated whenever I move my hand in front of the sensor.
But the screen does not turn off.
Peter -
Just released version 0.0.7 of my MMM-Screen-Powersave-Notification module which supports either
vcgencmd
,tvservice
and now alsoxrandr
. -
@Peter what mode are u trying? xrandr vcgencmd?
only xrandr works on bullseye
-
@sdetweil I used xrandr.
Peter -
@Peter and if you issue the commands yourself(via ssh)
do they work?
-
@sdetweil did not try that.
Peter -
@Peter Hello Peter… I’m not sure I understand… I ran the following test on my mirror and it worked as it should.
/usr/bin/vcgencmd display_power 0; echo “Display should now be off”; sleep 20; /usr/bin/vcgencmd display_power 1; echo “And now it should be on again”
But now I need to incorporate it into my config.js for my MMM-PIR-Sensor-Lite. I see the command type and ‘vcgencmd’ but once I get that in the config how do I do the turn on and turn off?
Thanks for all the help and you also Sam.
Dennis
-
@N6NG and @sdetweil
Hi All,
Passing along some info as I was also having problems with my ASUS VZ27EHE monitor staying off / my monitor coming back on withMMM-PIR-Sensor-Lite
. The display would turn off, then a blue screen come on saying “HDMI No Signal” but then automatically turned back on. I used bothxrandr
andxset
commands but nothing worked on my pi 4 running Bullseye.After some digging and looking at this site “https://github.com/raspberrypi/linux/issues/2517”, I replaced the code in the
node_helper.js
(I know you’re not supposed to touch but this is what worked for me) and it works now. The only issue is on reboot, I have to run a command once to avoid the screen going to a gray statexsetroot -display :0 -solid Black
.case 'xset': exec("xset -display :0 s noblank", null);//default: xset dpms force off //Have to run 'xsetroot -display :0 -solid Black' on reboot to avoid gray screen exec("sleep 1", null); exec("xset -display :0 s off", null); exec("sleep 1", null); exec("xset -display :0 -dpms", null); exec("sleep 1", null); exec("xset -display :0 s 0 0", null); exec("sleep 1", null); exec("xset -display :0 dpms 0 0 0", null); exec("sleep 1", null); exec("xset dpms force off", null);
Don’t ask me how it works and I’ll give credit to E3V3A for posting that code. Hopefully this will help for those with a non-CEC compliant monitor and can fully turn off the monitor when not in use.