Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Samsung LS27D70xE - Setting value failed for feature x10 #479

Open
st0rm-shad0w opened this issue Dec 15, 2024 · 11 comments
Open

Samsung LS27D70xE - Setting value failed for feature x10 #479

st0rm-shad0w opened this issue Dec 15, 2024 · 11 comments
Labels
brightness feature x10 monitor specific problems with particular monitors setvcp

Comments

@st0rm-shad0w
Copy link

st0rm-shad0w commented Dec 15, 2024

Hello, I can't get ddcutil to change the brightness on my new monitor that is connected to a desktop box using an HDMI cable.

Commands Run:

~> ddcutil getvcp 10
VCP code 0x10 (Brightness                    ): current value =     0, max value =    50
~> ddcutil setvcp 10 20
Setting value failed for feature x10, rc=DDCRC_RETRIES(-3007): maximum retries exceeded
    Try errors: DDCRC_RETRIES

Error:

Setting value failed for feature x10, rc=DDCRC_RETRIES(-3007): maximum retries exceeded
    Try errors: DDCRC_RETRIES

HW Details:

ddcutil detect
Display 1
   I2C bus:  /dev/i2c-7
   DRM connector:           card0-HDMI-A-1
   EDID synopsis:
      Mfg id:               SAM - Samsung Electric Company
      Model:                LS27D70xE
      Product code:         30347  (0x768b)
      Serial number:        HNAX601157
      Binary serial number: 810899530 (0x3055584a)
      Manufacture year:     2024,  Week: 26
   VCP version:         2.0.

The result of ddcutil interrogate is attached.

interrogate.txt
ddcdata.txt

@rockowitz
Copy link
Owner

rockowitz commented Dec 15, 2024

Please build from branch 2.2.0-dev, run the following, and submit the output as an attachment

ddcutil setvcp 10 20 --trcfunc ddc_write_read_with_retry --trcfunc ddc_write_only_with_retry
ddcutil setvcp 10 20 --trcfunc ddc_write_read_with_retry --trcfunc ddc_write_only_with_retry --noverify
ddcutil getvcp 10 --trcfunc ddc_write_read_with_retry --trcfunc ddc_write_only_with_retry --noverify

@st0rm-shad0w
Copy link
Author

st0rm-shad0w commented Dec 15, 2024

Built and installed 2.2.0-dev HEAD:

~> ddcutil -V
ddcutil 2.2.0-dev
Copyright (C) 2015-2024 Sanford Rockowitz
License GPLv2: GNU GPL version 2 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

Output for the requested commands:

setvcp.txt
setvcp-noverify.txt
getvcp-noverify.txt

Other observation:

This time not seeing the below errors. But the screen turns off and on, without any effect.

Setting value failed for feature x10, rc=DDCRC_RETRIES(-3007): maximum retries exceeded
    Try errors: DDCRC_RETRIES

@rockowitz
Copy link
Owner

The sleep-multipliers being used are very low. Try explicitly setting option --sleep-multiplier 2.0.

@rockowitz
Copy link
Owner

Also, is the returned getvcp value for feature x10 really correct? The display would have to be dark or at least very dim. What happens if you adjust brightness in the screen's OSD? Is that even possible?

Feature xdc reports that the monitor display mode is x02 - Mixed. It's possible that the mode disallows changing brightness. Try setting the display into a User mode in the OSD.

@st0rm-shad0w
Copy link
Author

Also, is the returned getvcp value for feature x10 really correct? The display would have to be dark or at least very dim. What happens if you adjust brightness in the screen's OSD? Is that even possible?

Well the value noted in getvcp matches screen's OSD. But it doesn't get dark/ very dim at lower values (0). On the higher value side it only gets so bright eyes hurt. 😅

Feature xdc reports that the monitor display mode is x02 - Mixed. It's possible that the mode disallows changing brightness. Try setting the display into a User mode in the OSD.

This was the issue. I had adaptive brightness/ eye care technology on. After disabling it from the OSD, I'm able to change the brightness with ddcutil. Thanks!

Actually got the same hint here - https://wiki.archlinux.org/title/Backlight

ddcutil will fail to set some VCP features if there is a feature enabled on the monitor which already automatically adjusts them (e.g. Dynamic Contrast Ratio or BenQ's Eye Care technology).

Maybe having it mentioned in the top-level README would be a good inclusion?

@st0rm-shad0w
Copy link
Author

The sleep-multipliers being used are very low. Try explicitly setting option --sleep-multiplier 2.0.

What does this do?

@rockowitz
Copy link
Owner

There already are entries about setvcp failures in the extensive project FAQ. It's not practical to include all that information in the README, but I've added a reference to the FAQ in the README.

For more information about sleep-multipliers, search for "sleep-multiplier" on www.ddcutil.com.

@rockowitz rockowitz added setvcp monitor specific problems with particular monitors brightness feature x10 labels Dec 16, 2024
@st0rm-shad0w
Copy link
Author

Somehow I wasn't able to spot it. But if it's there, it should be fine, I suppose.

Also, a few other things noted:

  1. ddcutil 2.14 works too, just needs the brightness/ eye care technology to be disabled. However the brightness change transition seems to be smoother in 2.20.
  2. Even after disabling brightness/ eye care technology, the display mode is x02 - Mixed. Wonder how to change display into User mode, there are no explicit options in the OSD.

@st0rm-shad0w
Copy link
Author

Also, thanks again for all the help. Please feel free to close the issue.

@rockowitz
Copy link
Owner

Try setting feature x14, color preset. According to the CAPABILITIES command, which reads and interprets the monitor's capabilities string, it implements values x05, x08, x0b, and X0c, which are 6500K, 9300K, User 1, and User 2 respectively. The interaction between feature x14 (color preset) and feature xdc (display mode) is not defined in the Monitor Control Command Set spec - so it's a matter of how the monitor maker chose to implement the interaction.

And note that while the monitor responds to a request to read feature xdc, it is not reported in the capabilities string. Capabilities strings are regarded as hints, not taken as gospel. To see all the information that ddcutil has for a feature per the MCCS spec, use ddcutil capabilities --verbose.

@st0rm-shad0w
Copy link
Author

st0rm-shad0w commented Dec 17, 2024

I spoke too soon! After a shutdown and power-up, the issue reoccurred, and nothing seemed to fix it despite trying several solutions. However, toggling the "Brightness/Eye Care Technology" setting from ON to OFF from the screen's OSD somehow restored functionality to ddcutil, as if it re-authenticated or reset something.

Also, I was unable to set up feature 0x14 both before and after this issue.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
brightness feature x10 monitor specific problems with particular monitors setvcp
Projects
None yet
Development

No branches or pull requests

2 participants