Fix Brightness di Linux Dual GPU

Ditulis Oleh: Hendra Hendriana



Pendahuluan

Berawal dari masalah ketika menginstal beberapa distro Linux, tetapi brightness slider tidak berfungsi. Jika kalian menggunakan laptop dengan dual GPU (misalnya, AMD + NVIDIA) dan mengalami masalah yang sama, tenang anda tidak sendirian.

Setelah sana sini mencari solusi, akhirnya nemu fixnya di forum linux. Artikel ini membahas solusi untuk mengatasi masalah tersebut.


PopOS

Karena saya menggunakan distro PopOS!, saya hanya menemukan satu cara yang bisa dibilang agak kurang.., tetapi cukup oke lah daripada gak bisa atur brightnessnya :v.

1. Cek Driver GPU

Langkah pertaka adalah cek driver GPU sudah terinstal dengan benar. PopOS! menggunakan builtin driver package yaitu

nvidia-smi #cek driver nvidia 
system76-driver-nvidia # install driver nvidia
2. Cek Display Output

Cek nama display output yang digunakan (biasanya eDP untuk layar laptop).

xrandr --listmonitors
3. Edit Manual Brightness

Coba cek file path backlight untuk mengatur brightness secara manual:

sudo nano /sys/class/backlight/... # sesuaikan dengan path yang sesuai

Contoh punyaku

sudo nano /sys/class/backlight/nvidia_wmi_ec_backlight/brightness # coba ganti valuenya lalu save

Jika cara ini tidak berhasil, lanjut ke langkah berikutnya.

4. Gunakan xrandr

Jika cara di atas tidak berhasil, gunakan xrandr :

xrandr --output eDP --brightness 0.8 # eDP ganti sesuai poin no 2 

Angka 0.7 bisa disesuaikan.

5. Install brightnessctl dan Buat Script Bash

Install brightnessctl terlebih dahulu:

sudo apt install brightnessctl

Buat tiga script berikut:

Script untuk meningkatkan brightness (inc.sh)

#!/bin/bash
inc=5
sudo brightnessctl set ${inc}%+
br=$(brightnessctl get)
br=$(echo "scale=2; $br / 100" | bc -l)
xrandr --output eDP --brightness "$br"

Script untuk menurunkan brightness (dec.sh)

#!/bin/bash
dec=5
sudo brightnessctl set ${dec}%-
br=$(brightnessctl get)
br=$(echo "scale=2; $br / 100" | bc -l)
xrandr --output eDP --brightness "$br"

Script untuk merestore brightness (res.sh)

#!/bin/bash
br=$(sudo brightnessctl get)
br=$(echo "scale=2; $br / 100" | bc -l)
xrandr --output eDP --brightness "$br"

Ganti eDP sesuai poin no2 untuk setiap script

Ubah permission script agar bisa dieksekusi:

chmod +x inc.sh dec.sh res.sh
6. Tambahkan brightnessctl ke sudoers

Buka file sudoers:

sudo visudo

Tambahkan baris berikut di bagian paling bawah:

namauser ALL=(ALL) NOPASSWD: /usr/bin/brightnessctl

namauser ganti sesuai username masing-masing

7. Buat Shortcut Keyboard

Atur shortcut keyboard untuk menjalankan inc.sh dan dec.sh. Setiap distro biasanya memiliki pengaturan keyboard shortcut.

Panggil res.sh di startup application.


Distro Linux Lain

Di beberapa forum Linux, metode berikut sering direkomendasikan: Buka konfigurasi GRUB:

sudo nano /etc/default/grub

Cari baris berikut:

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"

Tambahkan opsi berikut:

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash acpi_backlight=video"

Simpan dan update GRUB:

sudo update-grub
sudo reboot

Update

Update 19 Februari 2025, akhirnya nemu buat fixnya.
Edit kernel parameter dengan menambah salah satu dibawah

sudo kernelstub -a "acpi_backlight=native" # saya pakai native buat fixnya, kemudian reboot

cat /proc/cmdline untuk melihat kernel parameter
sudo kernelstub -d "acpi_backlight=native" pakai -d untuk menghapus parameter

Jika kalian pake GRUB, tinggal edit grubnya sama seperti di Distro Linux Lain
Donee! 🚀


Sumber & Referensi