Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

RPi 4, dpms force off, DSI backlight remains on #1210

Open
ghost opened this issue Jul 27, 2019 · 20 comments
Open

RPi 4, dpms force off, DSI backlight remains on #1210

ghost opened this issue Jul 27, 2019 · 20 comments
Assignees
Labels
Fixed - waiting for release Fix has been checked in, but hasn't yet been incorporated to official release.

Comments

@ghost
Copy link

ghost commented Jul 27, 2019

On the RPi 4, xset dpms force off (or xset dpms 0 0 60 etc) will only show a black screen, but not turn of the backlight of the screen.

Seems to be a bug: https://www.raspberrypi.org/forums/viewtopic.php?f=28&t=244425&p=1496192&hilit=backlight#p1496192

Any workarounds known?

@6by9
Copy link

6by9 commented Jul 28, 2019

Duplicate of raspberrypi/linux#3050
Not yet implemented.

@JamesH65
Copy link
Contributor

Please used the other issue.

@crocy
Copy link

crocy commented Aug 2, 2019

I'd like to reopen this issue since I have the exact same problem on an official 7" screen connected via the DSI connector on RPi 4B. The exact same display worked fine on RPi 3B.

The related issue #3050 talks about how this hasn't been implemented yet for a HDMI interface, but this uses a different interface yet results in the same problem. I can provide more info if needed.

@6by9
Copy link

6by9 commented Aug 2, 2019

The raised issue didn't specify the display device, and the linked thread wasn't very clear, hence the initial reading that it was a duplicate.
@JamesH65 please reopen and rename to specify "DSI backlight remains on".

@ghost
Copy link
Author

ghost commented Aug 8, 2019

The raised issue didn't specify the display device, and the linked thread wasn't very clear, hence the initial reading that it was a duplicate.

I am new to Raspis and have also no knowledge about details of dpms, but I somebody can specify what kind of information can help to solve the problem, I can provide more information.

A strange behaviour that I observed in the meantime is the following (on dpms force off or dpms reaching the off timeout). It uses omxplayer and a small self-build python GUI.

  • Backlight remains on
  • A python gui (tkinter in case it matters) disappears
  • omxplayer keeps showing and updating a live stream on the otherwise black screen with backlight turned on

When you move the mouse or press a key, thus forcing dpms to go back to "on", the screen blanks completely including the backlight. After approx. 1 second screen will turn on (backlight on and all windows shown) as expected after a mouse movement.

@crocy
Copy link

crocy commented Sep 9, 2019

Any progress on this?

@nor500
Copy link

nor500 commented Oct 1, 2019

Isn`t there any progress yet?? Nearly two month has gone...Is there any hardware limitation of the pi4, which cannot be overcome by firmware side to make hdmi displays to go standby mode to save power?

@JamesH65
Copy link
Contributor

JamesH65 commented Oct 1, 2019

Sorry only just seen the request to reopen. I doubt anyone has looked at this, we are fairly busy on more important stuff. Now its reopened there might be some progress.

@JamesH65 JamesH65 reopened this Oct 1, 2019
@JamesH65 JamesH65 changed the title RPi 4, dpms force off, backlight remains on RPi 4, dpms force off, DSI backlight remains on Oct 1, 2019
@JamesH65
Copy link
Contributor

JamesH65 commented Oct 1, 2019

@nor500 This thread is for DSI display backlight according to the original and subsequent posts. This one is for HDMI raspberrypi/linux#3050

@frankgould
Copy link

I would like to know when the screen will turn off using dpms. This is not related to #3050, this is firmware controlling hardware, not command line.

@JamesH65
Copy link
Contributor

JamesH65 commented Oct 3, 2019

I'll try and take a look at this next week. Just to confirm, the official LCD is not turning its backlight off when xset dpms force off. To confirm, this is when using the Mesa driver (FKMS enabled), on a Pi4, using the latest Buster and firmware?

@AGTDesigns
Copy link

Can you expand a bit on the "Mesa driver (FKMS enabled)"? I've downloaded the latest Operating system and tried the commands that work with no problem in the RPi3, and the RPi4 does not turn the backlight off. I'm trying to switch off the backlight after 10seconds.

@AGTDesigns
Copy link

I've opened #1234 a while back when this thread was closed, but all the info is there. Thanks for the help!

@6by9
Copy link

6by9 commented Oct 3, 2019

Pi 0-3 had several modes of operation:

  • "legacy" (the default). The firmware does all 3D and composition
  • "Full KMS". The Linux kernel does all 3D and composition. Things that use DispmanX for putting overlays on the screen (eg omxplayer and raspivid) will fail.
  • "Fake KMS" (aka FKMS). The Linux kernel does all 3D, but composition is done in the firmware but supporting the DRM/KMS kernel APIs.

Pi4 doesn't have a firmware 3D driver, therefore legacy mode will drop everything into software rendering.
FKMS is the default on Pi4, so xset etc now has to go through the DRM/KMS APIs, and not the framebuffer APIs.
(Full KMS is still being worked on for the Pi4)

@frankgould
Copy link

I just added the following issue similar to this original post but regarding HDMI monitors, not DSI monitors. They appear to both behave the same by not turning off the screen.

#1260

@JamesH65
Copy link
Contributor

JamesH65 commented Nov 5, 2019

Fix for this in rpi-update - reports on whether the fix is working would be useful. Please close if fixed.

@JamesH65 JamesH65 self-assigned this Nov 5, 2019
@JamesH65 JamesH65 added the Fixed - waiting for release Fix has been checked in, but hasn't yet been incorporated to official release. label Nov 5, 2019
@nor500
Copy link

nor500 commented Nov 5, 2019

I have already updated to latest firmware. My firmware version is:
$ /opt/vc/bin/vcgencmd version
Nov 1 2019 14:39:41
Copyright (c) 2012 Broadcom
version 2faac616a157856a1d205f3a9713a7130defa643 (clean) (release) (start)

What the firmware did was completely turn off hdmi port instead of monitor standby.

My dpms settings:
$ xset q:

DPMS (Energy Star):
Standby: 60 Suspend: 65535 Off: 65535
DPMS is Enabled

So with that is settings the hdmi port will be turned off in 60s isntead of sending the monitor into standby state.
With the same settings raspberry 2, or raspberry 3 is sending the monitor to standby state properly.

So hdmi blanking is still not working properly with this newest firmware.

@GXTracker
Copy link

I just ran rpi-update on a Pi4B 4GB and after a reboot the backlight is now going off when triggered through xscreensaver when it wasnt before.

Unfortunately though when you touch the screen to wake it up the backlight will activate at full brightness. If you set it back to a specific brightness with:

echo 40 | sudo tee /sys/class/backlight/rpi_backlight/brightness

then the brightness stays at that until the screen blanks again, then it resets to 255 again upon touch.

@JamesH65
Copy link
Contributor

JamesH65 commented Jan 3, 2020

That is a known issue, and is still an issue because I haven't figured out a way of fixing it. There currently no way of determining what the current brightness is from the driver (no idea why this API is missing - it's fairly old code), so when the command to turn off (by setting back light to 0) is executed I cannot store the previous value. Although I may have just had an idea...will have a think and check out the backlight driver code.

@alexivkin
Copy link

I wrote a tiny tool that syncs up the touchscreen backlight state with the X screensaver to solve this issue - https://github.com/alexivkin/rpi-backlight-sync

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Fixed - waiting for release Fix has been checked in, but hasn't yet been incorporated to official release.
Projects
None yet
Development

No branches or pull requests

8 participants