Does HDMI module or DisplayPort module support DDC/CI ?
It would be great if we can adjust brightness for the external monitor using the supported tools (or even better, using the light sensor on the webcam module to adjust automatically).
Does HDMI module or DisplayPort module support DDC/CI ?
It would be great if we can adjust brightness for the external monitor using the supported tools (or even better, using the light sensor on the webcam module to adjust automatically).
I only have the DisplayPort module on Framework 16 using a DELL P2415Q panel and yes ddcutil works
$ sudo ddcutil detect --verbose
Invalid display
I2C bus: /dev/i2c-11
DRM connector: card1-eDP-1
/sys/class/drm/card1-eDP-1/dpms On
/sys/class/drm/card1-eDP-1/enabled enabled
/sys/class/drm/card1-eDP-1/status connected
Driver: amdgpu
I2C address 0x50 (EDID) responsive: true
I2C address 0x37 (DDC) responsive: false
Is LVDS or EDP display: true
Is laptop display by EDID: false
Is laptop display: true
/sys/bus/i2c/devices/i2c-11/name AMDGPU DM aux hw bus 0
PCI device path: /sys/devices/pci0000:00/0000:00:08.1/0000:c2:00.0/drm/card1/card1-eDP-1/i2c-11
EDID synopsis:
Mfg id: BOE - BOE
Model:
Product code: 3017 (0x0bc9)
Serial number:
Binary serial number: 0 (0x00000000)
Manufacture year: 2022, Week: 48
EDID version: 1.4
Extra descriptor: NE160QDM-NZ6
Video input definition: 0xa5 - Digital Input (DisplayPort), Bit depth: 8
Supported features:
Digital display type: RGB 4:4:4
Standard sRGB color space: False
White x,y: 0.313, 0.329
Red x,y: 0.680, 0.315
Green x,y: 0.265, 0.692
Blue x,y: 0.145, 0.058
Extension blocks: 1
EDID source: I2C
EDID hex dump:
+0 +4 +8 +c 0 4 8 c
+0000 00 ff ff ff ff ff ff 00 09 e5 c9 0b 00 00 00 00 …
+0010 30 20 01 04 a5 22 16 78 03 3d 35 ae 50 43 b1 25 0 …".x.=5.PC.%
+0020 0e 50 54 00 00 00 01 01 01 01 01 01 01 01 01 01 .PT…
+0030 01 01 01 01 01 01 34 70 00 a0 a0 40 a0 60 30 20 …4p…@.`0
+0040 f6 0c 59 d7 10 00 00 1a 00 00 00 00 00 00 00 00 …Y…
+0050 00 00 00 00 00 00 00 00 00 00 00 00 00 fe 00 42 …B
+0060 4f 45 20 43 51 0a 20 20 20 20 20 20 00 00 00 fe OE CQ. …
+0070 00 4e 45 31 36 30 51 44 4d 2d 4e 5a 36 0a 01 0a .NE160QDM-NZ6…
This is a laptop display. Laptop displays do not support DDC/CIDisplay 1
I2C bus: /dev/i2c-15
DRM connector: card1-DP-4
/sys/class/drm/card1-DP-4/dpms On
/sys/class/drm/card1-DP-4/enabled enabled
/sys/class/drm/card1-DP-4/status connected
Driver: amdgpu
I2C address 0x50 (EDID) responsive: true
I2C address 0x37 (DDC) responsive: true
Is LVDS or EDP display: false
Is laptop display by EDID: false
Is laptop display: false
/sys/bus/i2c/devices/i2c-15/name AMDGPU DM aux hw bus 4
PCI device path: /sys/devices/pci0000:00/0000:00:08.1/0000:c2:00.0/drm/card1/card1-DP-4/i2c-15
EDID synopsis:
Mfg id: DEL - Dell Inc.
Model: DELL P2415Q
Product code: 41150 (0xa0be)
Serial number: D8VXF9A30HHB
Binary serial number: 810043458 (0x30484842)
Manufacture year: 2019, Week: 40
EDID version: 1.4
Extra descriptor:
Video input definition: 0xa5 - Digital Input (DisplayPort), Bit depth: 8
Supported features:
DPMS active-off
Digital display type: RGB 4:4:4 + YCrCb 4:4:4 + YCrCb 4:2:2
Standard sRGB color space: True
White x,y: 0.313, 0.329
Red x,y: 0.659, 0.334
Green x,y: 0.301, 0.639
Blue x,y: 0.149, 0.043
Extension blocks: 1
EDID source: I2C
EDID hex dump:
+0 +4 +8 +c 0 4 8 c
+0000 00 ff ff ff ff ff ff 00 10 ac be a0 42 48 48 30 …BHH0
+0010 28 1d 01 04 a5 35 1e 78 3a e2 45 a8 55 4d a3 26 (…5.x:.E.UM.&
+0020 0b 50 54 a5 4b 00 71 4f 81 80 a9 c0 a9 40 d1 c0 .PT.K.qO…@…
+0030 e1 00 d1 00 01 01 4d d0 00 a0 f0 70 3e 80 3e 30 …M…p>.>0
+0040 35 00 0f 28 21 00 00 1a 00 00 00 ff 00 44 38 56 5…(!..D8V
+0050 58 46 39 41 33 30 48 48 42 0a 00 00 00 fc 00 44 XF9A30HHB…D
+0060 45 4c 4c 20 50 32 34 31 35 51 0a 20 00 00 00 fd ELL P2415Q. …
+0070 00 1d 4c 1e 8c 36 00 0a 20 20 20 20 20 20 01 c8 …L…6… …
VCP version: 2.1
Controller mfg: Mstar
Firmware version: 1.4
Monitor uses invalid feature flag in DDC reply packet to indicate unsupported feature.
Current dynamic sleep adjustment multiplier: 0.00
$ sudo ddcutil getvcp known --bus 15
VCP code 0x02 (New control value ): No new control values (0x01)
VCP code 0x0b (Color temperature increment ): Invalid value: 0
VCP code 0x0c (Color temperature request ): 3000 + 2 * (feature 0B color temp increment) degree(s) Kelvin
VCP code 0x0e (Clock ): current value = 50, max value = 100
VCP code 0x10 (Brightness ): current value = 100, max value = 100
VCP code 0x12 (Contrast ): current value = 75, max value = 100
VCP code 0x14 (Select color preset ): User 1 (sl=0x0b)
VCP code 0x16 (Video gain: Red ): current value = 100, max value = 100
VCP code 0x18 (Video gain: Green ): current value = 95, max value = 100
VCP code 0x1a (Video gain: Blue ): current value = 87, max value = 100
VCP code 0x1e (Auto setup ): Auto setup not active (sl=0x00)
VCP code 0x20 (Horizontal Position (Phase) ): current value = 0, max value = 100
VCP code 0x30 (Vertical Position (Phase) ): current value = 0, max value = 100
VCP code 0x3e (Clock phase ): current value = 50, max value = 100
VCP code 0x52 (Active control ): Value: 0x00
VCP code 0x60 (Input Source ): DisplayPort-1 (sl=0x0f)
VCP code 0x6c (Video black level: Red ): current value = 50, max value = 255
VCP code 0x6e (Video black level: Green ): current value = 50, max value = 255
VCP code 0x70 (Video black level: Blue ): current value = 50, max value = 255
VCP code 0xaa (Screen Orientation ): 0 degrees (sl=0x01)
VCP code 0xac (Horizontal frequency ): 2228 hz
VCP code 0xae (Vertical frequency ): 59.99 hz
VCP code 0xb2 (Flat panel sub-pixel layout ): Red/Green/Blue vertical stripe (sl=0x01)
VCP code 0xb4 (Source Timing Mode ): mh=0x00, ml=0x02, sh=0x00, sl=0x01
VCP code 0xb6 (Display technology type ): LCD (active matrix) (sl=0x03)
VCP code 0xc0 (Display usage time ): Usage time (hours) = 12474 (0x0030ba) mh=0xff, ml=0xff, sh=0x30, sl=0xba
VCP code 0xc6 (Application enable key ): 0x45cc
VCP code 0xc8 (Display controller type ): Mfg: Mstar (sl=0x05), controller number: mh=0x00, ml=0x00, sh=0x56
VCP code 0xc9 (Display firmware level ): 1.4
VCP code 0xca (OSD ): OSD Enabled (sl=0x02)
VCP code 0xd6 (Power mode ): DPM: On, DPMS: Off (sl=0x01)
VCP code 0xdc (Display Mode ): Standard/Default mode (sl=0x00)
VCP code 0xdf (VCP Version ): 2.1
this last one changes screen brightness to 100
$ sudo ddcutil setvcp 0x10 100
That’s really good.
I checked my 3rd gen HDMI and USB-C (directly connected to the display) with ddcutil, turns out both of those support DDC/CI.
~$ sudo ddcutil detect --verbose
Invalid display
I2C bus: /dev/i2c-11
DRM connector: card1-eDP-1
/sys/class/drm/card1-eDP-1/dpms On
/sys/class/drm/card1-eDP-1/enabled enabled
/sys/class/drm/card1-eDP-1/status connected
Driver: amdgpu
I2C address 0x50 (EDID) responsive: true
I2C address 0x37 (DDC) responsive: false
Is LVDS or EDP display: true
Is laptop display by EDID: false
Is laptop display: true
/sys/bus/i2c/devices/i2c-11/name AMDGPU DM aux hw bus 0
PCI device path: /sys/devices/pci0000:00/0000:00:08.1/0000:c1:00.0/drm/card1/card1-eDP-1/i2c-11
EDID synopsis:
Mfg id: BOE - BOE
Model:
Product code: 3018 (0x0bca)
Serial number:
Binary serial number: 0 (0x00000000)
Manufacture year: 2022, Week: 47
EDID version: 1.4
Extra descriptor: NE135FBM-N41
Video input definition: 0xa5 - Digital Input (DisplayPort), Bit depth: 8
Supported features:
Digital display type: RGB 4:4:4
Standard sRGB color space: False
White x,y: 0.312, 0.328
Red x,y: 0.640, 0.329
Green x,y: 0.300, 0.600
Blue x,y: 0.149, 0.060
Extension blocks: 0
EDID source: I2C
EDID hex dump:
+0 +4 +8 +c 0 4 8 c
+0000 00 ff ff ff ff ff ff 00 09 e5 ca 0b 00 00 00 00 ................
+0010 2f 20 01 04 a5 1c 13 78 03 de 50 a3 54 4c 99 26 / .....x..P.TL.&
+0020 0f 50 54 00 00 00 01 01 01 01 01 01 01 01 01 01 .PT.............
+0030 01 01 01 01 01 01 11 5c d0 18 81 e0 2d 50 30 20 .......\....-P0
+0040 36 00 1d be 10 00 00 1a a7 49 d0 18 81 e0 2d 50 6........I....-P
+0050 30 20 36 00 1d be 10 00 00 1a 00 00 00 fe 00 42 0 6............B
+0060 4f 45 20 43 51 0a 20 20 20 20 20 20 00 00 00 fe OE CQ. ....
+0070 00 4e 45 31 33 35 46 42 4d 2d 4e 34 31 0a 00 73 .NE135FBM-N41..s
This is a laptop display. Laptop displays do not support DDC/CI
Display 1
I2C bus: /dev/i2c-13
DRM connector: card1-DP-2
/sys/class/drm/card1-DP-2/dpms On
/sys/class/drm/card1-DP-2/enabled enabled
/sys/class/drm/card1-DP-2/status connected
Driver: amdgpu
I2C address 0x50 (EDID) responsive: true
I2C address 0x37 (DDC) responsive: true
Is LVDS or EDP display: false
Is laptop display by EDID: false
Is laptop display: false
/sys/bus/i2c/devices/i2c-13/name AMDGPU DM aux hw bus 2
PCI device path: /sys/devices/pci0000:00/0000:00:08.1/0000:c1:00.0/drm/card1/card1-DP-2/i2c-13
EDID synopsis:
Mfg id: VSC - ViewSonic Corporation
Model: VG2755-2K
Product code: 20023 (0x4e37)
Serial number: <REDACTED>
Binary serial number: 0xffffffff
Manufacture year: 2022, Week: 10
EDID version: 1.4
Extra descriptor:
Video input definition: 0xa5 - Digital Input (DisplayPort), Bit depth: 8
Supported features:
DPMS active-off
Digital display type: RGB 4:4:4 + YCrCb 4:4:4 + YCrCb 4:2:2
Standard sRGB color space: True
White x,y: 0.313, 0.329
Red x,y: 0.651, 0.332
Green x,y: 0.303, 0.632
Blue x,y: 0.151, 0.058
Extension blocks: 1
EDID source: I2C
EDID hex dump:
+0 +4 +8 +c 0 4 8 c
+0000 00 ff ff ff ff ff ff 00 5a 63 37 4e ff ff ff ff ........Zc7N....
+0010 0a 20 01 04 a5 3c 22 78 3b cb f5 a6 55 4d a1 26 . ...<"x;...UM.&
+0020 0e 50 54 bf ef 80 d1 40 d1 00 d1 c0 b3 00 95 00 .PT....@........
+0030 90 40 81 80 81 c0 56 5e 00 a0 a0 a0 29 50 30 20 .@....V^....)P0
+0040 35 00 55 50 21 00 00 1a 00 00 00 ff 00 56 4b 4c 5.UP!........VKL
+0050 32 32 31 30 41 30 35 34 34 0a 00 00 00 fd 00 31 2210A0544......1
+0060 4b 0f 5a 19 00 0a 20 20 20 20 20 20 00 00 00 fc K.Z... ....
+0070 00 56 47 32 37 35 35 2d 32 4b 0a 20 20 20 01 c8 .VG2755-2K. ..
VCP version: 2.2
Controller mfg: RealTek
Firmware version: 1.1
Monitor uses invalid feature flag in DDC reply packet to indicate unsupported feature.
Current dynamic sleep adjustment multiplier: 0.05
Display 2
I2C bus: /dev/i2c-14
DRM connector: card1-DP-3
/sys/class/drm/card1-DP-3/dpms On
/sys/class/drm/card1-DP-3/enabled enabled
/sys/class/drm/card1-DP-3/status connected
Driver: amdgpu
I2C address 0x50 (EDID) responsive: true
I2C address 0x37 (DDC) responsive: true
Is LVDS or EDP display: false
Is laptop display by EDID: false
Is laptop display: false
/sys/bus/i2c/devices/i2c-14/name AMDGPU DM aux hw bus 3
PCI device path: /sys/devices/pci0000:00/0000:00:08.1/0000:c1:00.0/drm/card1/card1-DP-3/i2c-14
EDID synopsis:
Mfg id: GEC - UNK
Model: Onlap1102H
Product code: 25 (0x0019)
Serial number: 8888
Binary serial number: 34952 (0x00008888)
Manufacture year: 2017, Week: 0
EDID version: 1.3
Extra descriptor:
Video input definition: 0x80 - Digital Input
Supported features:
DPMS standby
DPMS suspend
DPMS active-off
Digital display type: RGB 4:4:4 + YCrCb 4:4:4
Standard sRGB color space: False
White x,y: 0.310, 0.330
Red x,y: 0.640, 0.330
Green x,y: 0.300, 0.625
Blue x,y: 0.150, 0.060
Extension blocks: 1
EDID source: I2C
EDID hex dump:
+0 +4 +8 +c 0 4 8 c
+0000 00 ff ff ff ff ff ff 00 1c a3 19 00 88 88 00 00 ................
+0010 00 1b 01 03 80 1a 0e 78 ee ec 96 a3 54 4c a0 26 .......x....TL.&
+0020 0f 4f 54 21 08 00 81 00 81 80 81 c0 95 00 95 40 .OT!...........@
+0030 b3 00 a9 c0 d1 c0 02 3a 80 18 71 38 2d 40 58 2c .......:..q8-@X,
+0040 45 00 00 90 10 00 00 1e 00 00 00 ff 00 38 38 38 E............888
+0050 38 0a 20 20 20 20 20 20 20 20 00 00 00 fd 00 30 8. .....0
+0060 3e 1e 44 11 00 0a 20 20 20 20 20 20 00 00 00 fc >.D... ....
+0070 00 4f 6e 6c 61 70 31 31 30 32 48 0a 20 20 01 62 .Onlap1102H. .b
VCP version: 2.1
Controller mfg: Novatek
Firmware version: 1.0
Monitor uses invalid feature flag in DDC reply packet to indicate unsupported feature.
Current dynamic sleep adjustment multiplier: 0.00
I thought GNOME 45 has built-in brightness control with DDC/CI, until I found this GNOME extension and realize how dumb I am for asking this question without checking with ddcutil first.