Struggling w/ Understanding how to change OLED brightness (ASUS Zephyrus G16 - Intel)

Sorry, I’m on Day 1 of CachyOS, and everything is swell so far, except for my brightness setting.

I have an ASUS Zephyrus G16 (Intel) w/ an OLED screen, and I downloaded brillo in an attempt to modify my screen brightness. Installation went well, however when I attempted the “Brillo -U 10” command, nothing happened.
I then tried the “sudo brillo -U 10” command and just got a “permission denied” error.

I’m struggling to understand how to allow root permissions as guides/tutorials do not fully explain how to input commands, they just give you basic inputs, and as a Linux noob I’m having trouble understanding the Arch wiki and how to use these inputs/commands.

Some guidance would be very helpful, even a direction to look into would be much appreciated!

If you use GNOME DE, then you can use gdctl to configure the brightness. I use this to set my monitor’s brightness when using HDR. When in the HDR mode, the monitor’s butilt-in settings lock out the brightness controls but gdctl can configure it over the DisplayPort cable.

Edit: gdctl works for configuring the brightness of a laptop display and any external monitors.

you can change the brighness very easy :slight_smile:

it needs to change only one value.

you can find this value in: /sys/class/backlight/intel_backlight/brightness

as root:

echo yourValue > /sys/class/backlight/intel_backlight/brightness

Sorry, I should’ve clarified that I use KDE Plasma, would that work for plasma, too? If so, how would I use that command?

When you say “change by one value” do you mean change the value listed by one digit? When I go to that file location it shows “48001”, do you mean I need to change it to “4800”? I tried changing it to “2400” to see if that would lower my brightness by 50% but it popped up an error. My brightness is maxed out on my laptop and i rarely use it on max brightness, it’s giving me a massive headache at that level.

Maybe try the solutions offered here?

More reportsof success here

exact! under normal circumstances it will work in this way

ls /sys/class/backlight/intel_backlight/
actual_brightness device@ scale uevent
bl_power max_brightness subsystem@
brightness power/ type

I’m assuming you have an Nvidia GPU in your laptop and you’re using GRUB. I have an Asus TUF laptop with an Intel CPU and Nvidia GPU and encountered the same issue.

If this is your case too, the problem is that Nvidia is by default set to control the screen brightness, but it doesn’t actually have access to the screen. The integrated Intel GPU handles that. So you need to force the OS to use Intel, not Nvidia, for brightness.

You can check by running this command in terminal:

ls /sys/class/backlight/

If you see:

nvidia_wmi_ec_backlight

then that’s your problem.


Steps to fix

  1. Open GRUB config:
sudo nano /etc/default/grub

  1. Find this line:
GRUB_CMDLINE_LINUX_DEFAULT='nowatchdog nvme_load=YES zswap.enabled=0 splash loglevel=3'

Replace it with:

GRUB_CMDLINE_LINUX_DEFAULT='nowatchdog nvme_load=YES zswap.enabled=0 splash loglevel=3 i915.enable_dpcd_backlight=1 acpi_backlight=native nvidia.NVreg_EnableBacklightHandler=0'

  1. Save the file (in Nano: ^X = Ctrl+X, then Y to confirm, Enter to save).

  2. Regenerate GRUB:

sudo grub-mkconfig -o /boot/grub/grub.cfg

  1. Reboot:
sudo reboot

After restart, your brightness keys and slider should work.


Extra info

  • To paste in terminal or in Nano, use Ctrl+Shift+V instead of usual Ctrl+V.

  • In Nano, ^ means Ctrl, e.g., ^X = Ctrl+X to save.

This one worked for me!