sidevesh / Luminance

A simple GTK application to control brightness of displays including external displays supporting DDC/CI
GNU General Public License v3.0
88 stars 4 forks source link

Debian Testing : No displays found #30

Closed pled closed 1 week ago

pled commented 1 week ago

Hi, I Just discovered and installed your application using .deb on my Debian Trixie. I have 2 displays supposed to support DDC/CI :

When launching Luminance GUI, I get "No displays found". When using command line, here is what I get :

$ /usr/bin/com.sidevesh.Luminance -l
No displays found.

(libddcutil:5852): GLib-CRITICAL **: 10:06:27.249: g_atomic_ref_count_dec: assertion 'old_value > 0' failed
Erreur de segmentation

NOTE : After that, I cannot launch it again, it says "Another instance of the application is already running." although I don't see anything in the process list.

System uses Wayland and here is the config :

$ neofetch 
       _,met$$$$$gg.          pascal@Ryzen7-5700G 
    ,g$$$$$$$$$$$$$$$P.       ------------------- 
  ,g$$P"     """Y$$.".        OS: Debian GNU/Linux trixie/sid x86_64 
 ,$$P'              `$$$.     Kernel: 6.9.7-amd64 
',$$P       ,ggs.     `$$b:   Uptime: 4 mins 
`d$$'     ,$P"'   .    $$$    Packages: 3280 (dpkg), 6 (flatpak) 
 $$P      d$'     ,    $$P    Shell: bash 5.2.21 
 $$:      $$.   -    ,d$$'    Resolution: 1920x1080 
 $$;      Y$b._   _,d$P'      DE: GNOME 44.9 
 Y$$.    `.`"Y$$$$P"'         WM: Mutter 
 `$$b      "-.__              WM Theme: Adwaita 
  `Y$$                        Theme: Adwaita [GTK2/3] 
   `Y$$.                      Icons: Colloid [GTK2/3] 
     `$$b.                    Terminal: kgx 
       `Y$$b.                 CPU: AMD Ryzen 7 5700G with Radeon Graphics (16) @ 4.67 
          `"Y$b._             GPU: AMD ATI Radeon Vega Series / Radeon Vega Mobile Se 
              `"""            Memory: 4531MiB / 31389MiB 

Let me know if you need more information, or if I missed something.

sidevesh commented 1 week ago

if you delete the /tmp/com.sidevesh.Luminance.lock file then the app will run again, can you try using ddcutil interrogate command and let me know if it is able to list and control your monitors ?

pled commented 1 week ago

Here is the output :

$ ddcutil interrogate
No /dev/i2c devices exist.
ddcutil requires module i2c-dev.

So I created that file (if module i2c-dev is not built into your kernel) :

$ cat /etc/modules-load.d/ddcutil.conf 
i2c-dev

After reboot, I can see my monitors in Luminance ! :+1:

Capture d’écran du 2024-07-06 15-49-01

NOTE : the brand for Display 2 (AOC) is not displayed. Looking at ddcutil ouput, it is like this :

$ ddcutil detect
Display 1
   I2C bus:  /dev/i2c-3
   DRM connector:           card0-HDMI-A-1
   EDID synopsis:
      Mfg id:               PHL - Philips Consumer Electronics Company
      Model:                PHL 243S7
      Product code:         2319  (0x090f)
      Serial number:        UHB1847036174
      Binary serial number: 36174 (0x00008d4e)
      Manufacture year:     2018,  Week: 47
   VCP version:         2.2

Display 2
   I2C bus:  /dev/i2c-6
   DRM connector:           card0-DP-1
   EDID synopsis:
      Mfg id:               AOC - UNK
      Model:                24G2W1G3-
      Product code:         9218  (0x2402)
      Serial number:        1J4PBHA008631
      Binary serial number: 8631 (0x000021b7)
      Manufacture year:     2023,  Week: 47
   VCP version:         2.1

The manufacturer is in Mfg id, the 3 first characters... May be you could enhance the display in the App ?

sidevesh commented 1 week ago

Enhancing the name of monitor is something ddcutil will have to do since this app relies on it, I am glad the issue is resolved for you, Closing ticket

pled commented 1 week ago

Strictly speaking, ddcutil returns the model for model field, that sounds logical. The brand is in the Mfg id field.

So in other words, you may also displays the brand along the model name for each monitor, to enhance your app. Just a suggestion.