davidhi7 / ddcci-plasmoid

KDE Plasma widget to adjust the brightness of multiple external monitors
MIT License
390 stars 11 forks source link

Monitor not detected #45

Open fwappy opened 9 months ago

fwappy commented 9 months ago

This monitor is detected by ddcutil detect, and I am able to control the brightness with ddcutil setvcp 10 <value>, but python3 -m ddcci_plasmoid_backend detect returns: {"command": "detect", "value": []}

Debug Log:

DEBUG __main__: backend version: 0.1.8
DEBUG __main__: ddcutil version: 1.4.1
DEBUG __main__: argv: /home/ezra/.local/lib/python3.11/site-packages/ddcci_plasmoid_backend/__main__.py --debug-log /tmp/dddebug detect
DEBUG ddcci_plasmoid_backend.ddcci: Execute command: `ddcutil detect`
DEBUG ddcci_plasmoid_backend.ddcci: [code]   ddcutil detect: 0
DEBUG ddcci_plasmoid_backend.ddcci: [stdout] ddcutil detect: Invalid display
   I2C bus:  /dev/i2c-17
   DRM connector:           card2-eDP-2
   EDID synopsis:
      Mfg id:               TMX - Thermotrex Corporation
      Model:                TL140ADXP01
      Product code:         5249  (0x1481)
      Serial number:        
      Binary serial number: 0 (0x00000000)
      Manufacture year:     2021,  Week: 29
   DDC communication failed
   This is an eDP laptop display. Laptop displays do not support DDC/CI.

Display 1
   I2C bus:  /dev/i2c-19
   DRM connector:           card2-DP-3
   EDID synopsis:
      Mfg id:               GGL - Google Inc.
      Model:                GOOGLE JN32A
      Product code:         58156  (0xe32c)
      Serial number:        00110082
      Binary serial number: 16843009 (0x01010101)
      Manufacture year:     2020,  Week: 11
   VCP version:         2.1
DEBUG ddcci_plasmoid_backend.ddcci: [stderr] ddcutil detect: 

DEBUG ddcci_plasmoid_backend.ddcci: Found 2 entries at root level
DEBUG ddcci_plasmoid_backend.ddcci: Key Invalid display does not match pattern for valid display, so skip it
DEBUG ddcci_plasmoid_backend.ddcci: Execute command: `ddcutil getvcp --bus 19 --brief 10`
DEBUG ddcci_plasmoid_backend.ddcci: [code]   ddcutil getvcp --bus 19 --brief 10: 1
DEBUG ddcci_plasmoid_backend.ddcci: [stdout] ddcutil getvcp --bus 19 --brief 10: VCP 10 ERR
DEBUG ddcci_plasmoid_backend.ddcci: [stderr] ddcutil getvcp --bus 19 --brief 10: 

DEBUG __main__: Command 'ddcutil getvcp --bus 19 --brief 10' returned non-zero exit status 1.
DEBUG __main__: Detected 0 working monitor busses, 1 non-working bus.
davidhi7 commented 9 months ago

Querying the current monitor brightness fails. Try to run the command ddcutil getvcp --bus 19 --brief 10 manually a couple of times to see if it's just unreliable or fails every time.

fwappy commented 9 months ago

It worked one time (the first time I tried during this attempt) but I cannot reproduce

~> ddcutil getvcp --bus 19 --brief 10
VCP 10 C 0 100
davidhi7 commented 9 months ago

You could try to increase the sleep multiplier to values greater than 1 and see if it helps: https://www.ddcutil.com/performance_options/#option-sleep-multipliera-nameoption_sleep_multiplier.

fwappy commented 9 months ago

Works every time now!

~> ddcutil getvcp --bus 19 --brief 10 --sleep-multiplier 1.5
VCP 10 C 0 100

How do I pass this argument to plasma-ddcci-backend?

davidhi7 commented 9 months ago

This is currently not possible, I'm working on it but it'll take some time. You could instead try to install ddcutil 2.0.0 which might work without using the sleep-multiplier argument.