Files
claudetools/projects/community-forum/forum-posts/kde-plasma-brightness-nvidia-intel-fix.md
Mike Swanson 5cbd49ce24 Reorganize repo: compartmentalize scripts by client/project
Move 150+ scripts from root and scripts/ into client/project directories:
- clients/dataforth/scripts/ (110 files: AD2, sync, SSH, DB, DOS scripts)
- clients/bg-builders/scripts/ (14 files: Lesley mgmt, Exchange, termination)
- clients/internal-infrastructure/scripts/ (10 files: GDAP, Gitea, backups)
- projects/msp-tools/scripts/ (9 files: CIPP, MSP onboarding, Datto)
- projects/gururmm-agent/scripts/ (3 files: API test, JWT, record counts)
- clients/glaztech/scripts/ (1 file: CentraStage removal)

Also reorganized:
- VPN scripts → infrastructure/vpn-configs/
- Retrieved API/JS files → api/
- Forum posts → projects/community-forum/forum-posts/
- SSH docs → clients/internal-infrastructure/docs/
- NWTOC/CTONW docs → projects/wrightstown-smarthome/docs/
- ACG website files → projects/internal/acg-website-2025/
- Dataforth docs → clients/dataforth/docs/
- schema-retrieved.sql → docs/database/

Deleted 24 tmp_*.ps1 one-off debug scripts (preserved in git history).
Root reduced from 220+ files to 62 items (docs + directories only).

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-20 17:15:07 -07:00

2.7 KiB

Fix: KDE Plasma Brightness Stuck at ~20% on Intel/NVIDIA Hybrid Laptop

Environment

  • OS: CachyOS (Arch-based), kernel 6.19.7-1-cachyos
  • DE: KDE Plasma 6
  • GPU: Intel Arrow Lake-S (integrated) + NVIDIA RTX 5070 Ti Mobile
  • Laptop: ASUS (model with dual NVMe)

Problem

KDE brightness slider showed 100%, but the screen was visibly much dimmer than it should be. Adjusting brightness via hotkeys would make it even dimmer — any hotkey press reset the panel to a dim state.

Diagnosis

Two backlight interfaces exist:

ls /sys/class/backlight/
# intel_backlight  nvidia_0

cat /sys/class/backlight/intel_backlight/brightness
# 100
cat /sys/class/backlight/intel_backlight/max_brightness
# 496

cat /sys/class/backlight/nvidia_0/brightness
# 100
cat /sys/class/backlight/nvidia_0/max_brightness
# 100

cat /sys/class/backlight/intel_backlight/type
# raw
cat /sys/class/backlight/nvidia_0/type
# raw

Root cause: Both backlights report type raw, so KDE couldn't distinguish which was the "real" panel backlight. nvidia_0 has max=100, intel_backlight has max=496. When KDE's brightness hotkeys set "100%" via nvidia_0's scale, it wrote 100 to intel_backlight — which is only ~20% of its actual 496 range.

Fix

Immediate Fix

Set the correct brightness:

sudo sh -c 'echo 496 > /sys/class/backlight/intel_backlight/brightness'

Permanent Fix - Hide nvidia_0 via udev

Create /etc/udev/rules.d/backlight.rules:

sudo tee /etc/udev/rules.d/backlight.rules > /dev/null << 'EOF'
# Disable nvidia_0 backlight - conflicts with intel_backlight on this laptop
# KDE picks up nvidia_0 (max=100) and maps it incorrectly to intel_backlight (max=496)
SUBSYSTEM=="backlight", KERNEL=="nvidia_0", ATTR{brightness}="0", RUN+="/bin/chmod 000 /sys/class/backlight/nvidia_0"
EOF

Apply immediately (without reboot):

sudo chmod 000 /sys/class/backlight/nvidia_0
sudo udevadm control --reload-rules
systemctl --user restart plasma-powerdevil

Verification

After hiding nvidia_0, KDE only sees intel_backlight and maps the slider/hotkeys correctly to the 0-496 range. Full brightness is restored and hotkeys work as expected.

Why This Happens

On Intel/NVIDIA hybrid laptops, both GPUs may expose a backlight interface. The NVIDIA driver creates nvidia_0 even though the actual panel backlight is controlled by intel_backlight. Since both report type raw, KDE (powerdevil) can pick up the wrong one. The nvidia_0 interface has a max of 100 — when KDE writes that value to the actual panel controller (max 496), you get ~20% brightness.

This is most common on newer laptops with Intel Arrow Lake + RTX 40/50 series mobile GPUs running the proprietary NVIDIA driver.