Brightness Keys not Detected by xInput

Title pretty much explains the issue. I’m currently running Manjaro with i3wm on a Dell G15 Laptop, and when pressing fn+f6 / fn+f7, (the brightness down and up keys respectively,) the operating system doesn’t seem to receive the keydown/up signal in xinput test. I know for a fact that they work in windows, so it isn’t a hardware issue. I’ve been manually setting it with xrandr, but that’s tedious.

Sys info:

System:
  Kernel: 6.5.13-7-MANJARO arch: x86_64 bits: 64 compiler: gcc v: 13.2.1
    clocksource: tsc available: acpi_pm
    parameters: BOOT_IMAGE=/boot/vmlinuz-6.5-x86_64
    root=UUID=a4a28a95-b194-4d87-aa4f-0dec2500c0e4 rw quiet apparmor=1
    security=apparmor resume=UUID=bd435fa8-9f6a-4f6c-a636-10bf41f23040
    udev.log_priority=3
  Desktop: i3 v: 4.23 info: i3bar vt: 7 dm: LightDM v: 1.32.0
    Distro: Manjaro Linux base: Arch Linux
Machine:
  Type: Laptop System: Dell product: Dell G15 5510 v: N/A
    serial: <superuser required> Chassis: type: 10 serial: <superuser required>
  Mobo: Dell model: 0J67YK v: A01 serial: <superuser required> UEFI: Dell
    v: 1.20.0 date: 08/01/2023
Battery:
  ID-1: BAT0 charge: 8.1 Wh (19.6%) condition: 41.3/54.9 Wh (75.3%) volts: 10.7
    min: 11.4 model: SMP DELL P8P1P95 type: Li-poly serial: <filter>
    status: discharging
CPU:
  Info: model: Intel Core i7-10870H bits: 64 type: MT MCP arch: Comet Lake
    gen: core 10 level: v3 note: check built: 2020 process: Intel 14nm family: 6
    model-id: 0xA5 (165) stepping: 2 microcode: 0xF8
  Topology: cpus: 1x cores: 8 tpc: 2 threads: 16 smt: enabled cache:
    L1: 512 KiB desc: d-8x32 KiB; i-8x32 KiB L2: 2 MiB desc: 8x256 KiB L3: 16 MiB
    desc: 1x16 MiB
  Speed (MHz): avg: 800 min/max: 800/5000 scaling: driver: intel_pstate
    governor: powersave cores: 1: 800 2: 800 3: 800 4: 800 5: 800 6: 800 7: 800
    8: 800 9: 800 10: 800 11: 800 12: 800 13: 800 14: 800 15: 800 16: 800
    bogomips: 70421
  Flags: avx avx2 ht lm nx pae sse sse2 sse3 sse4_1 sse4_2 ssse3 vmx
  Vulnerabilities:
  Type: gather_data_sampling mitigation: Microcode
  Type: itlb_multihit status: KVM: VMX disabled
  Type: l1tf status: Not affected
  Type: mds status: Not affected
  Type: meltdown status: Not affected
  Type: mmio_stale_data mitigation: Clear CPU buffers; SMT vulnerable
  Type: retbleed mitigation: Enhanced IBRS
  Type: spec_rstack_overflow status: Not affected
  Type: spec_store_bypass mitigation: Speculative Store Bypass disabled via
    prctl
  Type: spectre_v1 mitigation: usercopy/swapgs barriers and __user pointer
    sanitization
  Type: spectre_v2 mitigation: Enhanced / Automatic IBRS, IBPB: conditional,
    RSB filling, PBRSB-eIBRS: SW sequence
  Type: srbds mitigation: Microcode
  Type: tsx_async_abort status: Not affected
Graphics:
  Device-1: Intel CometLake-H GT2 [UHD Graphics] vendor: Dell driver: i915
    v: kernel arch: Gen-9.5 process: Intel 14nm built: 2016-20 ports:
    active: eDP-1 empty: DP-1, DP-2, HDMI-A-1, HDMI-A-2 bus-ID: 00:02.0
    chip-ID: 8086:9bc4 class-ID: 0300
  Device-2: NVIDIA GA107M [GeForce RTX 3050 Mobile] vendor: Dell
    driver: nvidia v: 545.29.06 alternate: nouveau,nvidia_drm non-free: 545.xx+
    status: current (as of 2023-11; EOL~2026-12-xx) arch: Ampere code: GAxxx
    process: TSMC n7 (7nm) built: 2020-2023 pcie: gen: 3 speed: 8 GT/s lanes: 8
    link-max: gen: 4 speed: 16 GT/s lanes: 16 bus-ID: 01:00.0
    chip-ID: 10de:25a2 class-ID: 0300
  Device-3: Microdia Integrated_Webcam_HD driver: uvcvideo type: USB rev: 2.0
    speed: 480 Mb/s lanes: 1 mode: 2.0 bus-ID: 1-5:2 chip-ID: 0c45:6720
    class-ID: 0e02
  Display: x11 server: X.Org v: 21.1.10 driver: X: loaded: modesetting,nvidia
    alternate: fbdev,nouveau,nv,vesa dri: iris gpu: i915 display-ID: :0
    screens: 1
  Screen-1: 0 s-res: 1920x1080 s-dpi: 96 s-size: 508x285mm (20.00x11.22")
    s-diag: 582mm (22.93")
  Monitor-1: eDP-1 model: AU Optronics 0xed8f built: 2019 res: 1920x1080
    hz: 120 dpi: 142 gamma: 1.2 size: 344x193mm (13.54x7.6") diag: 394mm (15.5")
    ratio: 16:9 modes: 1920x1080
  API: EGL v: 1.5 hw: drv: intel iris drv: nvidia platforms: device: 0
    drv: nvidia device: 1 drv: iris device: 3 drv: swrast gbm: drv: kms_swrast
    surfaceless: drv: nvidia x11: drv: iris inactive: wayland,device-2
  API: OpenGL v: 4.6.0 compat-v: 4.5 vendor: intel mesa v: 23.1.9-manjaro1.1
    glx-v: 1.4 direct-render: yes renderer: Mesa Intel UHD Graphics (CML GT2)
    device-ID: 8086:9bc4 memory: 15.04 GiB unified: yes
Audio:
  Device-1: Intel Comet Lake PCH cAVS vendor: Dell
    driver: sof-audio-pci-intel-cnl alternate: snd_hda_intel, snd_soc_skl,
    snd_sof_pci_intel_cnl bus-ID: 00:1f.3 chip-ID: 8086:06c8 class-ID: 0401
  Device-2: NVIDIA driver: snd_hda_intel v: kernel pcie: gen: 3 speed: 8 GT/s
    lanes: 8 link-max: gen: 4 speed: 16 GT/s lanes: 16 bus-ID: 01:00.1
    chip-ID: 10de:2291 class-ID: 0403
  API: ALSA v: k6.5.13-7-MANJARO status: kernel-api with: aoss
    type: oss-emulator tools: alsactl,alsamixer,amixer
  Server-1: JACK v: 1.9.22 status: off tools: N/A
  Server-2: PipeWire v: 1.0.0 status: active with: 1: pipewire-pulse
    status: active 2: wireplumber status: active 3: pipewire-alsa type: plugin
    tools: pactl,pw-cat,pw-cli,wpctl
Network:
  Device-1: Intel Comet Lake PCH CNVi WiFi driver: iwlwifi v: kernel
    bus-ID: 00:14.3 chip-ID: 8086:06f0 class-ID: 0280
  IF: wlp0s20f3 state: up mac: <filter>
  Device-2: Realtek RTL8111/8168/8411 PCI Express Gigabit Ethernet
    vendor: Dell driver: r8169 v: kernel pcie: gen: 1 speed: 2.5 GT/s lanes: 1
    port: 3000 bus-ID: 04:00.0 chip-ID: 10ec:8168 class-ID: 0200
  IF: enp4s0 state: down mac: <filter>
Bluetooth:
  Device-1: Intel AX201 Bluetooth driver: btusb v: 0.8 type: USB rev: 2.0
    speed: 12 Mb/s lanes: 1 mode: 1.1 bus-ID: 1-14:3 chip-ID: 8087:0026
    class-ID: e001
  Report: btmgmt ID: hci0 rfk-id: 0 state: up address: <filter> bt-v: 5.2
    lmp-v: 11 status: discoverable: no pairing: no class-ID: 6c010c
Drives:
  Local Storage: total: 1.38 TiB used: 21.45 GiB (1.5%)
  SMART Message: Required tool smartctl not installed. Check --recommends
  ID-1: /dev/nvme0n1 maj-min: 259:5 vendor: Toshiba model: KBG40ZNS512G NVMe
    KIOXIA 512GB size: 476.94 GiB block-size: physical: 512 B logical: 512 B
    speed: 31.6 Gb/s lanes: 4 tech: SSD serial: <filter> fw-rev: 10410106
    temp: 26.9 C scheme: GPT
  ID-2: /dev/nvme1n1 maj-min: 259:0 vendor: Western Digital
    model: WD BLACK SN770 1TB size: 931.51 GiB block-size: physical: 512 B
    logical: 512 B speed: 63.2 Gb/s lanes: 4 tech: SSD serial: <filter>
    fw-rev: 731100WD temp: 30.9 C scheme: GPT
Partition:
  ID-1: / raw-size: 146.48 GiB size: 143.13 GiB (97.71%) used: 13.48 GiB (9.4%)
    fs: ext4 dev: /dev/nvme1n1p3 maj-min: 259:3
  ID-2: /boot/efi raw-size: 512 MiB size: 511 MiB (99.80%)
    used: 288 KiB (0.1%) fs: vfat dev: /dev/nvme1n1p2 maj-min: 259:2
  ID-3: /home raw-size: 97.66 GiB size: 95.56 GiB (97.86%)
    used: 7.97 GiB (8.3%) fs: ext4 dev: /dev/nvme1n1p4 maj-min: 259:4
Swap:
  Kernel: swappiness: 60 (default) cache-pressure: 100 (default) zswap: yes
    compressor: zstd max-pool: 20%
  ID-1: swap-1 type: file size: 512 MiB used: 0 KiB (0.0%) priority: -2
    file: /swapfile
  ID-2: swap-2 type: partition size: 16 GiB used: 0 KiB (0.0%) priority: -3
    dev: /dev/nvme1n1p1 maj-min: 259:1
Sensors:
  System Temperatures: cpu: 35.0 C pch: 34.0 C mobo: N/A
  Fan Speeds (rpm): N/A
Info:
  Processes: 309 Uptime: 1d 17h 26m wakeups: 13 Memory: total: 16 GiB
  note: est. available: 15.4 GiB used: 3.66 GiB (23.8%) Init: systemd v: 254
  default: graphical tool: systemctl Compilers: gcc: 13.2.1 clang: 16.0.6
  Packages: pm: pacman pkgs: 1105 libs: 298 tools: pamac,yay Shell: Bash
  v: 5.2.21 running-in: alacritty inxi: 3.3.31

Any help would be appreciated!

That is normal. They will no appear in libinput as well. That are hardware keys which go straight to the kernel. When I remember and nothing changed, then you have to add this yourself in the config file.

Here is list: XF86 keyboard symbols - LQWiki

So something like:

bindsym XF86MonBrightnessUp exec --no-startup-id xbacklight -inc 5
bindsym XF86MonBrightnessDown exec --no-startup-id xbacklight -dec 5

or use xrandr instead of xbacklight…

Thanks for the help. I’ve added those lines to my config file and refreshed i3, but I’m still not getting any response when pressing the keys. I can confirm that xbacklight is working in the terminal, but it requires sudo access. Does that affect things? Sorry, I’m still relatively new to Linux.

Normally it wouldn’t need sudo. Is your account part of the group video?

If you used xrandr to adjust brightness, then this is software only, xbacklight should adjust the hardware backlight.