Skip to content

[Bug]: Unable to setup DDC/CI monitor right after startup wayland session. #160

Description

@Cloud0310

Steps for reproducing the issue

  1. Config a DDC based monitor source with config
[[output.ddcutil]]
name = "P2711V"  # Titan Army P2711V
capturer = "none"
  1. use the bundled systemd service file to autostart wluma
# /usr/lib/systemd/user/wluma.service
[Unit]
Description=Adjusting screen brightness based on screen contents and amount of ambient light
PartOf=graphical-session.target
After=graphical-session.target

[Service]
ExecStart=/usr/bin/wluma
Restart=always
EnvironmentFile=-%E/wluma/service.conf
PrivateNetwork=true
PrivateMounts=false

[Install]
WantedBy=graphical-session.target
  1. Wluma is unable to detect the the monitor with log:
● wluma.service - Adjusting screen brightness based on screen contents and amount of ambient light
     Loaded: loaded (/usr/lib/systemd/user/wluma.service; enabled; preset: enabled)
    Drop-In: /home/cloud/.config/systemd/user/wluma.service.d
             └─override.conf
     Active: active (running) since Thu 2026-03-19 15:19:22 CST; 14min ago
 Invocation: 5ee297ea38c141039c3ed381afd29a2d
   Main PID: 2757 (wluma)
      Tasks: 3 (limit: 38075)
     Memory: 4.9M (peak: 6.4M)
        CPU: 2.866s
     CGroup: /user.slice/user-1000.slice/user@1000.service/app.slice/wluma.service
             └─2757 /usr/bin/wluma

Mar 19 15:19:22 Legion systemd[1646]: Started Adjusting screen brightness based on screen contents and amount of ambient light.
Mar 19 15:19:22 Legion wluma[2757]: [2026-03-19T07:19:22Z WARN  wluma] Skipping 'P2711V 0000000000000 LHC' as it might be disconnected: DDC/CI error: invalid DDC/CI length
Mar 19 15:19:22 Legion wluma[2757]: [2026-03-19T07:19:22Z INFO  wluma] Continue adjusting brightness and wluma will learn your preference over time.

To fix this, I need to manually restart the systemd service.

What is the buggy behavior?

Ignored the monitor even its plugged in.
Could be temporarily fixed by restart the service.

What is the expected behavior?

Work properly with monitor brightness detected normally.

Logs

Mar 19 15:59:47 Legion wluma[2512]: [2026-03-19T07:59:47Z DEBUG wluma] == wluma v4.10.0 ==
Mar 19 15:59:47 Legion wluma[2512]: [2026-03-19T07:59:47Z DEBUG wluma] Using Config {
Mar 19 15:59:47 Legion wluma[2512]:         als: Time {
Mar 19 15:59:47 Legion wluma[2512]:             thresholds: {
Mar 19 15:59:47 Legion wluma[2512]:                 20: "night",
Mar 19 15:59:47 Legion wluma[2512]:                 11: "normal",
Mar 19 15:59:47 Legion wluma[2512]:                 7: "dark",
Mar 19 15:59:47 Legion wluma[2512]:                 16: "normal",
Mar 19 15:59:47 Legion wluma[2512]:                 13: "bright",
Mar 19 15:59:47 Legion wluma[2512]:                 9: "dim",
Mar 19 15:59:47 Legion wluma[2512]:                 18: "dark",
Mar 19 15:59:47 Legion wluma[2512]:                 0: "night",
Mar 19 15:59:47 Legion wluma[2512]:             },
Mar 19 15:59:47 Legion wluma[2512]:         },
Mar 19 15:59:47 Legion wluma[2512]:         output: [
Mar 19 15:59:47 Legion wluma[2512]:             Backlight(
Mar 19 15:59:47 Legion wluma[2512]:                 BacklightOutput {
Mar 19 15:59:47 Legion wluma[2512]:                     name: "eDP-1",
Mar 19 15:59:47 Legion wluma[2512]:                     path: "/sys/class/backlight/nvidia_0",
Mar 19 15:59:47 Legion wluma[2512]:                     capturer: None,
Mar 19 15:59:47 Legion wluma[2512]:                     min_brightness: 1,
Mar 19 15:59:47 Legion wluma[2512]:                     predictor: Adaptive,
Mar 19 15:59:47 Legion wluma[2512]:                 },
Mar 19 15:59:47 Legion wluma[2512]:             ),
Mar 19 15:59:47 Legion wluma[2512]:             DdcUtil(
Mar 19 15:59:47 Legion wluma[2512]:                 DdcUtilOutput {
Mar 19 15:59:47 Legion wluma[2512]:                     name: "P2711V",
Mar 19 15:59:47 Legion wluma[2512]:                     capturer: None,
Mar 19 15:59:47 Legion wluma[2512]:                     min_brightness: 1,
Mar 19 15:59:47 Legion wluma[2512]:                     predictor: Adaptive,
Mar 19 15:59:47 Legion wluma[2512]:                 },
Mar 19 15:59:47 Legion wluma[2512]:             ),
Mar 19 15:59:47 Legion wluma[2512]:         ],
Mar 19 15:59:47 Legion wluma[2512]:     }
Mar 19 15:59:47 Legion wluma[2512]: [2026-03-19T07:59:47Z DEBUG wluma::brightness::backlight] Using DBUS for /sys/class/backlight/nvidia_0 to change brightness value
Mar 19 15:59:47 Legion wluma[2512]: [2026-03-19T07:59:47Z DEBUG wluma::brightness::ddcutil] Discovered displays (check_caps=true): []
Mar 19 15:59:47 Legion wluma[2512]: [2026-03-19T07:59:47Z DEBUG wluma::brightness::ddcutil] Discovered displays (check_caps=false): ["P2711V 0000000000000 LHC"]
Mar 19 15:59:47 Legion wluma[2512]: [2026-03-19T07:59:47Z DEBUG wluma::brightness::ddcutil] Using display 'P2711V 0000000000000 LHC' for config 'P2711V' (check_caps=false)
Mar 19 15:59:47 Legion wluma[2512]: [2026-03-19T07:59:47Z INFO  wluma] Continue adjusting brightness and wluma will learn your preference over time.
Mar 19 15:59:48 Legion wluma[2512]: [2026-03-19T07:59:48Z ERROR wluma::brightness::controller] Unable to get brightness value: DDC/CI error: Expected DDC/CI length bit
Mar 19 15:59:49 Legion wluma[2512]: [2026-03-19T07:59:49Z ERROR wluma::brightness::controller] Unable to get brightness value: DDC/CI error: Expected DDC/CI length bit
Mar 19 15:59:49 Legion wluma[2512]: [2026-03-19T07:59:49Z ERROR wluma::brightness::controller] Unable to get brightness value: DDC/CI error: Expected DDC/CI length bit
Mar 19 15:59:49 Legion wluma[2512]: [2026-03-19T07:59:49Z ERROR wluma::brightness::controller] Unable to get brightness value: DDC/CI error: Expected DDC/CI length bit
Mar 19 15:59:49 Legion wluma[2512]: [2026-03-19T07:59:49Z ERROR wluma::brightness::controller] Unable to get brightness value: DDC/CI error: invalid DDC/CI length
Mar 19 15:59:49 Legion wluma[2512]: [2026-03-19T07:59:49Z ERROR wluma::brightness::controller] Unable to get brightness value: DDC/CI error: Expected DDC/CI length bit

Version

4.10.0

Environment

NO_MODIFIERS=$WLR_DRM_NO_MODIFIERS"
LSB Version:    n/a
Distributor ID: cachyos
Description:    CachyOS
Release:        rolling
Codename:       n/a
Linux Legion 6.19.7-1-cachyos #1 SMP PREEMPT_DYNAMIC Fri, 13 Mar 2026 16:01:21 +0000 x86_64 GNU/Linux
egrep: warning: egrep is obsolescent; using grep -E
clang 22.1.1-2
lib32-vulkan-icd-loader 1.4.341.0-1
lib32-vulkan-mesa-implicit-layers 2:26.0.3-2
lib32-vulkan-radeon 2:26.0.3-2
rust 1:1.94.0-2.1
rust-bindgen 0.72.1-1.1
rust-src 1:1.94.0-2.1
vulkan-headers 1:1.4.341.0-1
vulkan-icd-loader 1.4.341.0-1.1
vulkan-mesa-implicit-layers 2:26.0.3-2
vulkan-radeon 2:26.0.3-2
vulkan-tools 1.4.341.0-2.1
egrep: warning: egrep is obsolescent; using grep -E
zsh: command not found: dpkg
WLR_DRM_NO_MODIFIERS=

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions