RichardS
Posts: 33
Joined: Sat Mar 25, 2017 2:40 am

Pi 4 and continued HDMI blanking issues.

Mon Jun 08, 2020 5:24 pm

The Raspberry Pi series has suffered since the outset from hit-or-miss (mostly miss) HDMI blanking issues.

Some models when configured with specific GPU driver options DO blank properly, by going into a link-active standby state.

But more often, when the Pi blanks the screen, it goes into one of TWO really dumb blanking modes:

1) The Pi Completely shutting down the HDMI port (which is REALLY DUMB blanking mode because it is totally undistinguishable from a failed or cable accidentally disconnected state). Because it looks like a failure, most monitors reporting a "loss of signal" message then either
---- A) refuse to shut down (wasting huge amounts of power and spewing needless CO2 into the atmosphere) or ...
---- B) shutting down completely after 20 or 30 minutes - but then refusing to start back up without the user having to press the power button.

2) "Blanking" by Leaving the HDMI on while simply setting the screen color to black. Unfortunately, this does not disable the backlight and therefore saves effectively ZERO power on most LCD monitors (wasting electricity and spewing needless CO2 into the atmosphere).

Last time I brought this up, I got a mush-mouth reply that seemed to indicate that this was due to unavoidable hardware/GPU driver differences yada-yada-yada.

Since then I have done some more research and found out a bit more about how blanking should work on HDMI devices and I can't see how the previous excuses can be correct since the Pi is supposed to be an HDMI compliant device and both the HDMI and earlier DVI specification incorporate well defined power saving standby mode specifications (HDMI requires DVI backward compatibility so the power saving standby states have effectively been defined right from the beginning)

The older DVI specification is more freely available for download without registration, so anyone interested can download it and check out section 2.4 which defines power saving standby modes.

From this document you can see that the 'just set the screen to black' option 2 above is, as you would expect, is not a valid DPMS state at all, and although the Pi HDMI total shutdown blanking mode 1) above approximates the HDMI/DVI blanking mode described as "Non-Link Recoverable Off Power State" - it should be noted that support for this mode is OPTIONAL on the display side - and because most manufactures apparently felt that this was NOT a good way to handle standby (for the reasons mentioned above) this 'mode' is normally only 'supported' as a non-recoverable fault condition by many HDMI televisions and monitors.

Based on these issues, it's pretty clear that the PROPER way of setting the monitor into low-power standby (and which, happily seems to be the mode which SOME of my Raspberry Pi's DO USE) is to set the HDMI port into the state described as "Active-Off Power State" (digital link down, but DDC 5V active).

My original Raspberry 4 gigabyte Pi 4 model, running the original "Raspbian" release DOES BLANK PROPERLY - but my brand new 8 gigabyte Raspberry Pi 4 running "Raspberry Pi OS" does NOT HDMI blank properly with ANY of the three HDMI screens I have available (two TVs and one monitor).

I am not sure, but this may possibly be because on my older 4 Gig Pi 4 (the one which IS blanking properly) I selected the older GPU OpenGL driver in the original Raspbian release trying to get OpenGL support working.

I know that screen blanking seems like a minor issue, but with MILLIONS of Raspberry Pi's being sold, it is hugely socially irresponsible to not support PROPER DPMS (now called DMPM for Digital Monitor Power Management), since this could potentially result in literally HUNDREDS OF TONS of needless CO2 gas emissions over the service life of the associated Millions of Raspberry Pi's.

Given this fact, it would be nice if the Pi Foundation could prioritize finally getting the HDMI digital screen blanking working properly for ALL Raspberry Pi models.

User avatar
kerry_s
Posts: 1587
Joined: Thu Jan 30, 2020 7:14 pm

Re: Pi 4 and continued HDMI blanking issues.

Mon Jun 08, 2020 6:25 pm

:lol:
it's linux, roll up your sleeves and have at it. there are more important things. if you can't be bothered to turn your monitor on/off to save the environment, why should anyone else care?
you bare the same responsibility as everyone else, do your part, if your not using it turn it off! :D (my rant)

personally, blanking is disabled on my systems. i use the power button to turn the screen on/off and just leave the computer on. that's just how i am.

klricks
Posts: 7297
Joined: Sat Jan 12, 2013 3:01 am
Location: Grants Pass, OR, USA
Contact: Website

Re: Pi 4 and continued HDMI blanking issues.

Mon Jun 08, 2020 7:23 pm

RichardS wrote:
Mon Jun 08, 2020 5:24 pm
.....

My original Raspberry 4 gigabyte Pi 4 model, running the original "Raspbian" release DOES BLANK PROPERLY - but my brand new 8 gigabyte Raspberry Pi 4 running "Raspberry Pi OS" does NOT HDMI blank properly with ANY of the three HDMI screens I have available (two TVs and one monitor).

I am not sure, but this may possibly be because on my older 4 Gig Pi 4 (the one which IS blanking properly) I selected the older GPU OpenGL driver in the original Raspbian release trying to get OpenGL support working.

...
Explain how you accomplished proper standby mode........
I have never had any of my RPi 1,2,3 do anything other than black pixel or HDMI brute force off depending on configuration.

On my RPi4B4G with GL driver enabled (default) then I get HDMI off.
With GL driver disabled via sudo raspi-config, then the 4 acts just like the other models -(Black pixel mode).
Unless specified otherwise my response is based on the latest and fully updated RPiOS Buster w/ Desktop OS.

RichardS
Posts: 33
Joined: Sat Mar 25, 2017 2:40 am

Re: Pi 4 and continued HDMI blanking issues.

Mon Jun 08, 2020 8:23 pm

klricks wrote:
Mon Jun 08, 2020 7:23 pm

Explain how you accomplished proper standby mode........
I have never had any of my RPi 1,2,3 do anything other than black pixel or HDMI brute force off depending on configuration.

On my RPi4B4G with GL driver enabled (default) then I get HDMI off.
With GL driver disabled via sudo raspi-config, then the 4 acts just like the other models -(Black pixel mode).


Wish I could tell you exactly how it happened, because then I might have some idea how to fix it in the current version of Raspberry Pi OS.

All I can say is that with my old microSD with the old Raspbian release my 4G model Raspberry Pi 4 performs HDMI sleep FLAWLESSLY (backlight turns off and the monitor goes into 1W standby) then wakes up and re-activates the monitor PERFECTLY when I move the mouse or hit a key.

When booting that EXACT SAME 4G Raspberry Pi 4 hardware from a second microSD containing the CURRENT "Raspberry Pi OS" the screen WILL NOT GO INTO PROPER HDMI STANDBY (so contrary to the previous B.S. explanations this is definitely NOT a hardware limitation)

jamesh
Raspberry Pi Engineer & Forum Moderator
Raspberry Pi Engineer & Forum Moderator
Posts: 27447
Joined: Sat Jul 30, 2011 7:41 pm

Re: Pi 4 and continued HDMI blanking issues.

Mon Jun 08, 2020 8:30 pm

RichardS wrote:
Mon Jun 08, 2020 5:24 pm
The Raspberry Pi series has suffered since the outset from hit-or-miss (mostly miss) HDMI blanking issues.

Some models when configured with specific GPU driver options DO blank properly, by going into a link-active standby state.

But more often, when the Pi blanks the screen, it goes into one of TWO really dumb blanking modes:

1) The Pi Completely shutting down the HDMI port (which is REALLY DUMB blanking mode because it is totally undistinguishable from a failed or cable accidentally disconnected state). Because it looks like a failure, most monitors reporting a "loss of signal" message then either
---- A) refuse to shut down (wasting huge amounts of power and spewing needless CO2 into the atmosphere) or ...
---- B) shutting down completely after 20 or 30 minutes - but then refusing to start back up without the user having to press the power button.

2) "Blanking" by Leaving the HDMI on while simply setting the screen color to black. Unfortunately, this does not disable the backlight and therefore saves effectively ZERO power on most LCD monitors (wasting electricity and spewing needless CO2 into the atmosphere).

Last time I brought this up, I got a mush-mouth reply that seemed to indicate that this was due to unavoidable hardware/GPU driver differences yada-yada-yada.

Since then I have done some more research and found out a bit more about how blanking should work on HDMI devices and I can't see how the previous excuses can be correct since the Pi is supposed to be an HDMI compliant device and both the HDMI and earlier DVI specification incorporate well defined power saving standby mode specifications (HDMI requires DVI backward compatibility so the power saving standby states have effectively been defined right from the beginning)

The older DVI specification is more freely available for download without registration, so anyone interested can download it and check out section 2.4 which defines power saving standby modes.

From this document you can see that the 'just set the screen to black' option 2 above is, as you would expect, is not a valid DPMS state at all, and although the Pi HDMI total shutdown blanking mode 1) above approximates the HDMI/DVI blanking mode described as "Non-Link Recoverable Off Power State" - it should be noted that support for this mode is OPTIONAL on the display side - and because most manufactures apparently felt that this was NOT a good way to handle standby (for the reasons mentioned above) this 'mode' is normally only 'supported' as a non-recoverable fault condition by many HDMI televisions and monitors.

Based on these issues, it's pretty clear that the PROPER way of setting the monitor into low-power standby (and which, happily seems to be the mode which SOME of my Raspberry Pi's DO USE) is to set the HDMI port into the state described as "Active-Off Power State" (digital link down, but DDC 5V active).

My original Raspberry 4 gigabyte Pi 4 model, running the original "Raspbian" release DOES BLANK PROPERLY - but my brand new 8 gigabyte Raspberry Pi 4 running "Raspberry Pi OS" does NOT HDMI blank properly with ANY of the three HDMI screens I have available (two TVs and one monitor).

I am not sure, but this may possibly be because on my older 4 Gig Pi 4 (the one which IS blanking properly) I selected the older GPU OpenGL driver in the original Raspbian release trying to get OpenGL support working.

I know that screen blanking seems like a minor issue, but with MILLIONS of Raspberry Pi's being sold, it is hugely socially irresponsible to not support PROPER DPMS (now called DMPM for Digital Monitor Power Management), since this could potentially result in literally HUNDREDS OF TONS of needless CO2 gas emissions over the service life of the associated Millions of Raspberry Pi's.

Given this fact, it would be nice if the Pi Foundation could prioritize finally getting the HDMI digital screen blanking working properly for ALL Raspberry Pi models.
Use the on/off switch, until we get round to maybe looking at changing our dumb choices.Which BTW seem to work fine on my Pi4 here, the monitor has goner in to standby completely as expected.
Principal Software Engineer at Raspberry Pi (Trading) Ltd.
Contrary to popular belief, humorous signatures are allowed.
I've been saying "Mucho" to my Spanish friend a lot more lately. It means a lot to him.

User avatar
kerry_s
Posts: 1587
Joined: Thu Jan 30, 2020 7:14 pm

Re: Pi 4 and continued HDMI blanking issues.

Mon Jun 08, 2020 8:37 pm

raspbian uses xset to control the screen.

disable screen/monitor off = xset -dpms

that will leave only screen blanking after 10 min

disable screen blanking = xset s off

learn more: xset --help, see current settings = xset q

you can disable everything in raspberry pi configuration or use xset to disable/keep/change the parts you want. just add your settings to startup.

(sorry, if earlier sounds mean, i woke up to a broken coffee pot :( so cowboy coffee it is)

klricks
Posts: 7297
Joined: Sat Jan 12, 2013 3:01 am
Location: Grants Pass, OR, USA
Contact: Website

Re: Pi 4 and continued HDMI blanking issues.

Mon Jun 08, 2020 9:40 pm

jamesh wrote:
Mon Jun 08, 2020 8:30 pm
....
Use the on/off switch, until we get round to maybe looking at changing our dumb choices.Which BTW seem to work fine on my Pi4 here, the monitor has goner in to standby completely as expected.
Is your monitor actually going to DPMS standby mode or is it going into its own standby mode due to lost signal?

To further explain:
DPMS has 3 modes Standby, Suspend, and Off. The default settings are 600 600 600.
I should be able to force each mode with commands like this:

Code: Select all

xset dpms 5 0 0   # Force Standby in 5 sec.
xset dpms 0 5 0   # Force Suspend in 5 sec.
xset dpms 0 0 5   # Force Off in 5 sec.
On the PRi it does not matter which of the 3 modes is used... They each produce the same results - HDMI off using the RPi4 or black pixel on other models.
I am expecting the xset dpms 5 command to immediately put the monitor in standby mode with backlight off indefinitely until keyboard or mouse event.
Also the xset s command has no effect on the RPi4.
Unless specified otherwise my response is based on the latest and fully updated RPiOS Buster w/ Desktop OS.

User avatar
kerry_s
Posts: 1587
Joined: Thu Jan 30, 2020 7:14 pm

Re: Pi 4 and continued HDMI blanking issues.

Mon Jun 08, 2020 10:16 pm

tested all worked fine for me.

User avatar
kerry_s
Posts: 1587
Joined: Thu Jan 30, 2020 7:14 pm

Re: Pi 4 and continued HDMI blanking issues.

Mon Jun 08, 2020 10:31 pm

just remembered i created a toggle for disabling/enabling the screensaver/screen blanking. i'll leave that here. you can use the menu editor to create a icon.

Code: Select all

#!/bin/sh

if [ -f ~/Desktop/"ScreenSaver ON" ]; then
        xset s off;
        xset -dpms;
        rm ~/Desktop/ScreenSaver*;
        touch ~/Desktop/"ScreenSaver OFF"
else
        xset s on;
        xset +dpms;
        rm ~/Desktop/ScreenSaver*;
        touch ~/Desktop/"ScreenSaver ON"
fi
exit 0
Attachments
2020-06-08-123033_1920x1080_scrot.png
2020-06-08-123033_1920x1080_scrot.png (221.64 KiB) Viewed 1527 times

User avatar
kerry_s
Posts: 1587
Joined: Thu Jan 30, 2020 7:14 pm

Re: Pi 4 and continued HDMI blanking issues.

Mon Jun 08, 2020 10:51 pm

also forgot you'll want to reset it for reboots, so add stuff to your startup.
mine:

Code: Select all

xset s 300 300
rm /home/pi/Desktop/ScreenSaver*
touch /home/pi/Desktop/"ScreenSaver ON"
Attachments
2020-06-08-125024_1920x1080_scrot.png
2020-06-08-125024_1920x1080_scrot.png (177.01 KiB) Viewed 1519 times

klricks
Posts: 7297
Joined: Sat Jan 12, 2013 3:01 am
Location: Grants Pass, OR, USA
Contact: Website

Re: Pi 4 and continued HDMI blanking issues.

Mon Jun 08, 2020 11:09 pm

kerry_s wrote:
Mon Jun 08, 2020 10:31 pm
just remembered i created a toggle for disabling/enabling the screensaver/screen blanking. i'll leave that here. you can use the menu editor to create a icon.....
FYI - Screen blanking can be very easily disabled/enabled using the GUI config tool or sudo raspi-config
Unless specified otherwise my response is based on the latest and fully updated RPiOS Buster w/ Desktop OS.

User avatar
kerry_s
Posts: 1587
Joined: Thu Jan 30, 2020 7:14 pm

Re: Pi 4 and continued HDMI blanking issues.

Mon Jun 08, 2020 11:15 pm

klricks wrote:
Mon Jun 08, 2020 11:09 pm
kerry_s wrote:
Mon Jun 08, 2020 10:31 pm
just remembered i created a toggle for disabling/enabling the screensaver/screen blanking. i'll leave that here. you can use the menu editor to create a icon.....
FYI - Screen blanking can be very easily disabled/enabled using the GUI config tool or sudo raspi-config
it's for people who don't want to disable it all the time, like caffine in gnome. say your doing something & you step away but don't want the screen to turn off. using raspi-config you have to reboot to take effect, that's not an option if your in the middle of something.

RichardS
Posts: 33
Joined: Sat Mar 25, 2017 2:40 am

Re: Pi 4 and continued HDMI blanking issues.

Tue Jun 09, 2020 3:46 am

From the several previous threads posted on this subject, I can see that this is NOT an isolated case only effecting my hardware.

As to the responses involving xset scripting, you should understand that NONE of them addresses the underlying issue that I brought up, which is that the Pi series does NOT set HDMI standby mode correctly at hardware level, which is preventing a lot of monitors from properly entering the standby low power state within the time limits required under both EU and US Laws (10 minutes to low power display standby in the EU and 15 minutes under Ca. law in the US).

And thanks for the suggestion that I dive into the Pi's wonderful "open source" Linux code and fix this myself - and believe me I would LOVE to do that (as I did in patching the Kernel on the Intel Baytrail laptop I am typing this on, when the onboard power state management was so bad on release that it was crashing every 5 minutes) -- but as anyone who understand the Pi architecture knows, a long standing angry bone of contention between the Pi Foundation, Broadcom, and the Linux community is that THE GPU CODE IS NOT OPEN SOURCE, AND HAS NOT BEEN MADE AVAILABLE (sure, there is an "open source" driver project but it had to be done based on reverse engineering the driver with no support from Broadcom, and I'm not into puzzle games).

So, thanks for all the ideas, but NONE of them work if the underlying low level GPU code is improperly trying to set your monitor in low power standby mode in a way that will NOT work with your HDMI hardware.

YES, some monitors may be settable so they react to totally killing the HDMI signal by instantly shutting down, and magically turning back on as soon as the HDMI signal returns - and if you own one of them then GOOD ON YOU - but as I pointed out, this is NOT a "required" low power standby mode, so although the Pi Foundation may want to keep this as alternate option, they ALSO need to fix low power standby for everyone else by supporting the REQUIRED method for entering low power standby (which it would appear that they are NOT currently doing).

After Brexit, not sure if Green PC standards even still apply in the UK, but I can assure you that proper monitor low power standby switching IS still a legally binding requirement for export to both the EU and USA.

User avatar
kerry_s
Posts: 1587
Joined: Thu Jan 30, 2020 7:14 pm

Re: Pi 4 and continued HDMI blanking issues.

Tue Jun 09, 2020 4:29 am

okay, so your still blaming the rpi for something "your" monitor doesn't do.
not every device can support every other device, is your monitor open source? is it's code freely available for others to use and support? is it standard compliant? how do we know?
can we trust you that it don't work? can you trust me when i say mine does?
what makes you think they have any obligation at all?

the software is free, yet you want them to build it for you. yes, that's what your asking for.
i'd just tell you to get a supported monitor if it was me.
but i'm just joe average and another glitch in the web.

i'm sorry your current stuff don't work, but i don't see this as the rpi's fault.

RichardS
Posts: 33
Joined: Sat Mar 25, 2017 2:40 am

Re: Pi 4 and continued HDMI blanking issues.

Tue Jun 09, 2020 5:32 am

kerry_s wrote:
Tue Jun 09, 2020 4:29 am
okay, so your still blaming the rpi for something "your" monitor doesn't do.
not every device can support every other device, is your monitor open source? is it's code freely available for others to use and support? is it standard compliant? how do we know?
can we trust you that it don't work? can you trust me when i say mine does?
what makes you think they have any obligation at all?

the software is free, yet you want them to build it for you. yes, that's what your asking for.
i'd just tell you to get a supported monitor if it was me.
but i'm just joe average and another glitch in the web.

i'm sorry your current stuff don't work, but i don't see this as the rpi's fault.
If it was ONLY one monitor, then I might buy this, but it's not one device, as I mentioned in my original post, it's THREE different HDMI devices a Samsung HD Television, a Vizio HD Television, and a ACER Monitor. The Vizio displays a "No Signal" message forever, the Samsung does the same (but can be changed via setting to cut off after 20 minutes) and the ACER displays a No Signal message for a few minutes and cuts off. PLUS lots of other folks who are reporting the same thing.

As to my HDMI televisions and monitor being "open source" - actually YES they are, because the interfaces are marked with the HDMI logo which is a 100% open published standard (not free, there are licensing fees, but openly available to anyone). The idea is that devices meeting the standard WILL OPERATE PROPERLY WHEN INTERCONNECTED. Some "optional" things may not work, but low power standby on displays is NOT an "optional" feature.

Before I retired and started doing compliance consulting I was managing director of a QA organization for a major telecom manufacture that shipped out more product in a week than the Pi Foundation does in a year, so I know a bit about standards compliance.

The issue here is that the Pi model 4B includes the HDMI logo and so should be FULLY HDMI COMPLIANT in handling required functions (like low power standby mode display switching) and is marketed as a mini desktop PC replacement with an included Desktop OS - and since they supply BOTH hardware and the OS, I don't see how the Pi Foundation can beg off on proper HDMI monitor power saving support, unless they are willing to loose both their HDMI certification and licensing as well as their right to legally market the Pi in both the EU and USA.

User avatar
kerry_s
Posts: 1587
Joined: Thu Jan 30, 2020 7:14 pm

Re: Pi 4 and continued HDMI blanking issues.

Tue Jun 09, 2020 5:53 am

wait, the no signal & cable not connected is stand by mode. if the light on the monitor is still on, then it's waiting for the signal. as soon as you hit a key or move the mouse it should spring to life. i have that on all my monitors. as far as i know that is how they are built now.

i give up, i think you should sue :D

jamesh
Raspberry Pi Engineer & Forum Moderator
Raspberry Pi Engineer & Forum Moderator
Posts: 27447
Joined: Sat Jul 30, 2011 7:41 pm

Re: Pi 4 and continued HDMI blanking issues.

Tue Jun 09, 2020 7:08 am

As soon as people start bringing up legalities, things get awkward.

Any further threads on this topic will be closed or deleted until management and/or our legal department gives the go ahead.
Principal Software Engineer at Raspberry Pi (Trading) Ltd.
Contrary to popular belief, humorous signatures are allowed.
I've been saying "Mucho" to my Spanish friend a lot more lately. It means a lot to him.

Return to “General discussion”