2

Since a few days, I got a HP ENVY 15-dr0350nd. It has a gorgeous 4k screen and NVIDIA® GeForce® MX250 video. Pretty much everything works well, apart from the fact that so far, I did not find any way to set brightness, except with xrandr. It works neither from keys (although it shows the changing slider), nor from energy settings.

I'd love to see that this is a dupe of an existing question, however, despite the fact that I tried I believe all options that were mentioned inside and outside AU:

  • running both nouveau and nvidia drivers
  • running the very latest 430 nvidia driver
  • running the latest 5.2 kernel
  • adding the boot parameters acpi_osi=Linux acpi_backlight=intel, acpi_osi=Linux acpi_backlight=intel_backlight, acpi_backlight=vendor, acpi_backlight=video, which were mentioned in several posts and/or blogs.
  • tried controlling brightness with xbacklight and ddcontrol
  • edited the file /usr/share/X11/xorg.conf.d/10-nvidia.conf
  • tried sudo echo <number> > /sys/class/backlight/intel_backlight/brightness, which did make the slider in energy settings move, but not the real brightness.

So far nothing gave a sign of live to setting brightness on this otherwise gorgeous laptop. If nothing else is possible, I'll control brightness with xrandr, but would love to see it work the way it should.

Did anyone find a fix or workaround?

Jacob Vlijm
  • 85,475

2 Answers2

2

Update June 16, 2019 2:44pm MST

It was revealed it's a "WLED" screen not an "OLED" screen we are interested in. Hope can be found in this Linux Kernel Proposed Update message:

qcom: spmi-wled: Support for QCOM wled driver

From: Kiran Gunda

To: bjorn.andersson-AT-linaro.org, linux-arm-msm-AT-vger.kernel.org

Subject: [PATCH V1 0/4] qcom: spmi-wled: Support for QCOM wled driver

Date: Thu, 16 Nov 2017 17:48:33 +0530

Message-ID: <1510834717-21765-1-git-send-email-kgunda@codeaurora.org>

Cc: linux-kernel-AT-vger.kernel.org, linux-arm-msm-owner-AT-vger.kernel.org, Kiran Gunda

Archive-link: Article

WLED driver provides the interface to the display driver to adjust the brightness of the display backlight. This driver exposes two APIs to set and get the brightness of the display backlight through the backlight framework. This driver has the support to handle the OVP (over voltage protection) and the SC (short circuit protection) interrupts. It also has the auto calibration algorithm support to configure the right strings if the user specified string configuration is in-correct.

Kiran Gunda (4):
  qcom: spmi-wled: Add support for qcom wled driver
  qcom: spmi-wled: Add support for short circuit handling
  qcom: spmi-wled: Add support for OVP interrupt handling
  qcom: spmi-wled: Add auto-calibration logic support

 .../bindings/leds/backlight/qcom-spmi-wled.txt     | 118 +++
 drivers/video/backlight/Kconfig                    |   9 +
 drivers/video/backlight/Makefile                   |   1 +
 drivers/video/backlight/qcom-spmi-wled.c           | 999 +++++++++++++++++++++
 4 files changed, 1127 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/leds/backlight/qcom-spmi-wled.txt
 create mode 100644 drivers/video/backlight/qcom-spmi-wled.c

-- The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum, a Linux Foundation Collaborative Project


Original Answer

Although not an answer hoped for this Arch Linux article states:

It may be helpful to know that OLED displays by their nature do not have backlight.

The only solution therefor is to use something like this:

$ xrandr --output eDP1 --brightness .5
  • where .5 is 50% brightness, .63 would be 63% brightness, etc.
0

I had a similar issue and i got around it by assigning the keyboard brightness-up key to

perl -e 'foreach $line (`xrandr --verbose`) {if ($line =~ "Brightness: (.+)") {my $b = $1 + 0.1; `xrandr --output eDP-1 --brightness $b`; exit;}}'

and - 0.1 for the brightness-down key. Edit the output and increment value as needed.

Other solutions are in Screen brightness not working