You are not logged in.
Hello, guys. Nvidia RTX 5090 brightness control isn’t working on my laptop Asus ROG Zephyrus G16 GU605CX.
I installed nvidia driver nvidia-open-dkms 590.48.01-1. I’m running kernel 6.18.2-arch2-1. nvidia-smi output looks OK with driver version 590.48.01.
I also tried these following kernel parameters options, but they didn’t work:
1) i915.enable_dpcd_backlight=1 acpi_backlight=native
2) i915.enable_dpcd_backlight=1 nvidia.NVreg_EnableBacklighthandler=0 nvidia.NVreg_RegistryDwords=EnableBrightnessControl=0I also tried icc-brightness since this laptop has an OLED display, but I couldn’t get it to work either and not sure if this is the right direction, is it?
icc-brightness 30 100
WARNING: Command '['colormgr', 'import-profile', '/tmp/brightness_30_100.icc']' timed out after 1 secondsDo you guys have any suggestions or do you know anybody who has managed to get brightness control to work with nvidia with this laptop or similar nvidia graphics card?
Thanks
Offline
Can anyone help? Thanks
Offline
i915.enable_dpcd_backlight=1
Is this a hybrid graphics system?
https://bbs.archlinux.org/viewtopic.php?id=311360
lspci -k
brightnessctl -lOffline
i915.enable_dpcd_backlight=1
Is this a hybrid graphics system?
https://bbs.archlinux.org/viewtopic.php?id=311360lspci -k brightnessctl -l
Hello, seth. Yes, It's a hybrid graphics system. Nvidia RTX 5090 + Intel Arc Pro 130T:
❯ lspci -k | grep -EA3 'VGA|3D|Display'
00:02.0 VGA compatible controller: Intel Corporation Arrow Lake-P [Arc Pro 130T/140T] (rev 03)
DeviceName: Onboard - Video
Subsystem: ASUSTeK Computer Inc. Device 3778
Kernel driver in use: i915
--
01:00.0 VGA compatible controller: NVIDIA Corporation GB203M / GN22-X11 [GeForce RTX 5090 Max-Q / Mobile] (rev a1)
Subsystem: ASUSTeK Computer Inc. Device 3a28
Kernel driver in use: nvidia
Kernel modules: nouveau, nvidia_drm, nvidia❯ brightnessctl -l
Available devices:
Device 'nvidia_0' of class 'backlight':
Current brightness: 40 (40%)
Max brightness: 100
Device 'intel_backlight' of class 'backlight':
Current brightness: 823 (40%)
Max brightness: 2047When trying to set brightnessctl on nvidia_0, the command succeeds, but the actual brightness in practice keeps the same:
❯ brightnessctl -d nvidia_0 set 10%
Updated device 'nvidia_0':
Device 'nvidia_0' of class 'backlight':
Current brightness: 10 (10%)
Max brightness: 100I also checked out the linked thread, but I haven't found a solution yet. If you have any other advice, that's appreciated. Thanks.
Offline
You're however using it in hybrid mode - is the output attached to the intel or the nvidia GPU (for a notebook panel it's the intel chip)
If you skip the kernel parameters from your OP and try to set the brightness of intel_backlight, does that have any impact whatsoever (visually or by changing the value)?
Can you switch the system between hybrid and nvidia only mode (in the uefi)?
Intel Corporation Arrow Lake-P [Arc Pro 130T/140T]
Have you tried the https://wiki.archlinux.org/title/Intel_ … _Xe_driver ?
Offline
I have the ROG Zephyrus G16 GU605CR and i'm running into the same problems. Installed colord and colord-brightness, colord-brightness just segfaults.
Installed icc-brightness and got the same result as the OP, icc-brightness times out.
$ ./icc-brightness 20 100
WARNING: Command '['colormgr', 'import-profile', '/tmp/brightness_20_100.icc']' timed out after 1 secondsBUT if i load the created file, /tmp/brightness_20_100.icc via kde's SystemSettings it works!! It dims my screen to 20% (yay!!)
Its a bit cumbersome but i can at least save my eyes and dim my screen now in the evenings!
@seth, also
$ lspci -k -d ::03xx
00:02.0 VGA compatible controller: Intel Corporation Arrow Lake-P [Arc Pro 130T/140T] (rev 03)
DeviceName: Onboard - Video
Subsystem: ASUSTeK Computer Inc. Device 3778
Kernel driver in use: xe
Kernel modules: i915, xe
01:00.0 VGA compatible controller: NVIDIA Corporation GB205M [GeForce RTX 5070 Ti Mobile] (rev a1)
Subsystem: ASUSTeK Computer Inc. Device 3a08
Kernel driver in use: nvidia
Kernel modules: nouveau, nvidia_drm, nvidiaUsing the xe driver does nothing visually noticable.
To be clear, the screen on my and OP's laptop is an OLED screen!
The buttons on the keyboard are doing whats expected, they change the backlight brightness value for the intel gpu. icc-brightness is a python script which runs a bunch of colormgr commands.
What we need is what icc-brightness wants to do, watching the backlight brightness value (which does not work on oled screens since there is no backlight) and according to changes in brightness load another icc profile which tones down/up the brightness of the leds. icc-brightness uses colord/colormgr to accomplish this, but the switching of the profiles using colormgr does not work as we need it to work, a bit frustrating is that loading the, by icc-brightness generated icc profile, accomplishes exactly what we need. So the problem is, how do i get colord to load a profile like kscreen (which is used in kde's SystemSettings). All i see in the journal is powerdevil registering pushing the buttons on the keyboard and changing hte brightness value, nothing more.
What we need is a way to (via cli) change the active icc-profile and make icc-brightness use that instead of colord.
Last edited by buwie (2026-01-11 22:09:37)
Offline