Read the statement by Michael Teeuw here.
-
@bibi: I’ve only tested my solution for a couple of days, so I can’t say much about the long term stability. The reason for this is simply that I was in the process of designing a (nearly) frameless mirror the last couple of months. The components have been ordered and I hope to assemble everything in the coming month. It might take a bit longer, as I have quite a few business trips lined up for November.
-
@IngmarSwart I see i am still getting everything but in meantime i am working on the software side. You solution is nice and i will try to implement it i think… with my noob skills :)))
-
Hi,
i had big problems by switching off my screen with the PIR or another module with camera. The problem was not the module itself it is a firmware problem of the PI. I could see the same problem outside of MagicMirror as well by trying different things.
Reported also here:
https://github.com/raspberrypi/linux/issues/487The symptom is that after a while of switching on and off the screen it remains off.
Dmesg reports the problem:
Nov 1 08:22:00 MagicMirror kernel: [86411.138649] raspberrypi-firmware soc:firmware: Request 0x00048003 returned status 0x80000001 Nov 1 08:22:00 MagicMirror kernel: [86411.138665] bcm2708_fb soc:fb: Failed to allocate GPU framebuffer (-22) Nov 1 08:22:00 MagicMirror kernel: [86411.138670] detected fb_set_par error, error code: -22 Nov 1 08:22:00 MagicMirror kernel: [86411.139138] raspberrypi-firmware soc:firmware: Request 0x00048003 returned status 0x80000001 Nov 1 08:22:00 MagicMirror kernel: [86411.139148] bcm2708_fb soc:fb: Failed to allocate GPU framebuffer (-22) Nov 1 08:22:00 MagicMirror kernel: [86411.139152] detected fb_set_par error, error code: -22 Nov 1 08:22:00 MagicMirror kernel: [86411.140642] raspberrypi-firmware soc:firmware: Request 0x00048003 returned status 0x80000001 Nov 1 08:22:00 MagicMirror kernel: [86411.140654] bcm2708_fb soc:fb: Failed to allocate GPU framebuffer (-22) Nov 1 08:22:00 MagicMirror kernel: [86411.140659] detected fb_set_par error, error code: -22 Nov 1 08:22:00 MagicMirror kernel: [86411.140777] raspberrypi-firmware soc:firmware: Request 0x00048003 returned status 0x80000001 Nov 1 08:22:00 MagicMirror kernel: [86411.140785] bcm2708_fb soc:fb: Failed to allocate GPU framebuffer (-22) Nov 1 08:22:00 MagicMirror kernel: [86411.140789] detected fb_set_par error, error code: -22 Nov 1 08:22:00 MagicMirror kernel: [86411.140856] raspberrypi-firmware soc:firmware: Request 0x00048003 returned status 0x80000001 Nov 1 08:22:00 MagicMirror kernel: [86411.140863] bcm2708_fb soc:fb: Failed to allocate GPU framebuffer (-22) Nov 1 08:22:00 MagicMirror kernel: [86411.140868] bcm2708_fb_pan_display(0,0) returns=-22 Nov 1 08:22:00 MagicMirror systemd[1]: Started Getty on tty6. Nov 1 08:22:00 MagicMirror kernel: [86411.256398] raspberrypi-firmware soc:firmware: Request 0x00048003 returned status 0x80000001 Nov 1 08:22:00 MagicMirror kernel: [86411.256413] bcm2708_fb soc:fb: Failed to allocate GPU framebuffer (-22) Nov 1 08:22:00 MagicMirror kernel: [86411.256418] detected fb_set_par error, error code: -22 Nov 1 08:22:00 MagicMirror kernel: [86411.256758] raspberrypi-firmware soc:firmware: Request 0x00048003 returned status 0x80000001 Nov 1 08:22:00 MagicMirror kernel: [86411.256770] bcm2708_fb soc:fb: Failed to allocate GPU framebuffer (-22) Nov 1 08:22:00 MagicMirror kernel: [86411.256775] bcm2708_fb_pan_display(0,0) returns=-22 Nov 1 08:22:00 MagicMirror kernel: [86411.296428] raspberrypi-firmware soc:firmware: Request 0x00040002 returned status 0x80000001 Nov 1 08:22:00 MagicMirror kernel: [86411.296455] bcm2708_fb soc:fb: bcm2708_fb_blank(0) failed: -22
Switching off the screen with
/opt/vc/bin/tvservice -o
and on with
/opt/vc/bin/tvservice --preferred && sudo chvt 6 && sudo chat 7
does not work reliable! The git issue tells you more about.
The workaround is a not yet described solution inside the config.txt
https://github.com/raspberrypi/documentation/pull/245/files
the option “hdmi_blanking=1” is your friend in this case! :D
Now i’m switching off the screen with
vcgencmd display_power 0
and on with
vcgencmd display_power 1
And it is working now like a charm! Did started to use it one day before this report and it is still working without any issue :)
Honestly speaking i don’t use any MM module for switching off anymore. But maybe my discovered solution will help any other and might be a way to change the module as well.
If you have trouble with on/off as well please check the output of dmesg. If you have the frambuffer problem you can fix it.
My personal solution is to have the PIR state at FHEM and from FHEM i’m using a script to switch the screen. But that’s a special case and for the most people here the usage of a MM Module will be the better way.
regards
Dirk -
@paviro said in PIR-Sensor - put your mirror to sleep if not used:
MMM-PIR-Sensor will monitor a connected PIR-sensor and putt your mirror to sleep if no one uses it either by disabling HDMI output or by turning of a relay.
Developer note
If you are a developer and want to pause your module while no one uses it (if it is processor intense), you can listen to the
USER_PRESENCE
broadcast. It will returntrue
orfalse
as its payload.will vga / dvi monitor work with this module?
[card:paviro/MMM-PIR-Sensor]
-
This post is deleted! -
i have bought a sensor.
This is not a troubleshooting post. I want only know how to connect it.
Please add this to the description.
Three wires from the sensor and to which raspi port? -
@fox pop the plastic dome off and you’ll see the labeling. I believe the middle pin is the digital output and the ground and 5V power are on the outside.
-
@Them-Russians said in PIR-Sensor - put your mirror to sleep if not used:
@fox pop the plastic dome off and you’ll see the labeling. I believe the middle pin is the digital output and the ground and 5V power are on the outside.
The sensor is labeled. But on which pin on the raspi? Have i missed something in the module how-to?
-
@fox You define the pin in the config.js file.
Make sure you sue the GPIO pin number, and not the generic pin number.
For instance, in the pin diagram the pin 1 down from the top left is GPIO pin 2, but regular pin 3. In the config file, you would define it a SensorPIN = 2.
-
@Them-Russians said in PIR-Sensor - put your mirror to sleep if not used:
@fox You define the pin in the config.js file.
Make sure you sue the GPIO pin number, and not the generic pin number.
For instance, in the pin diagram the pin 1 down from the top left is GPIO pin 2, but regular pin 3. In the config file, you would define it a SensorPIN = 2.
Thank you very much. I understood.
Does someone control this with a timeout? Or when switches the script the HDMI Port off? Perhaps some want x minutes to be shown?Edit. I am a noob. I just have to adjust the delay knob on the PIR-Sensor PCB :)