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

DDC communication fails more often than succeeds, and setting features never succeeds. #303

Open
kennyrkun opened this issue Mar 19, 2023 · 5 comments
Labels
monitor specific problems with particular monitors Raspberry Pi

Comments

@kennyrkun
Copy link

Hello, I am trying to control the brightness on a Planar PCT2435 monitor connected to a Raspberry Pi 4. The monitor should support DDC, per page 16 of the user manual.

Occasionally, ddcutil detect reports Display 1 with the correct information about the monitor and VCP Version: 2.1. Typically, this command only works one time and using it again after will report "Invalid display", as well as "VCP version: Detection failed". These does not appear to be exclusive to one another, as sometimes it will report "Invalid display" with a correct VCP version, and other times it will report "Display 1" with DDC communication failed.

I will attach the output of ddcutil interrogate, because I'm really not sure what's going on :( I believe this issue could be related to #288, "ddcutil sometimes work, sometimes detection error". I created a separate issue because we are using different hardware.

ddcutil interrogate.txt

@rockowitz
Copy link
Owner

First, thank you for creating a separate issue, and also for including the interrogate output.

You are using a very old release of ddcutil, 0.9.2 from November 2018. In particular, it lacks the --sleep-multiplier option added in ddcutil 0.9.8.

Your symptoms (sometimes things work, sometimes they don't) suggest a marginal DDC implementation in the monitor. The one way that ddcutil can sometimes address this problem is by increasing the amount of time from that specified for waiting between sending a DDC request packet and reading the reply packet. The way to do that is the *--sleep-multiplier option, e.g. --sleep-multiplier 2.0.

@rockowitz rockowitz added monitor specific problems with particular monitors Raspberry Pi labels Mar 19, 2023
@kennyrkun
Copy link
Author

kennyrkun commented Mar 19, 2023

Okay, the package is outdated. I have installed
ddcutil using apt, and I'm not super familiar with apt. Is there a newer version of the package that I can upgrade to, or do I need to compile and install from source? If so, I can compile but I do not know how to install the package manually.

edit: 2022/03/19 22:33 gmt
I updated my Pi to Raspbain Bullseye, and am running version 0.9.9 of ddcutil, and having the same problem. I ran ddcutil setvcp 10 50 and it worked, but I couldn't get any commands to work again after that. Most of the time I'm still getting Display not found as the result for setvcp. I've also been getting this error with every run of ddcutil: Open failed for /dev/usb/hiddev2: errno=EACCES(13): Permission denied, though, I believe this is an issue with an internal configuration of mine somewhere rather than an issue with ddcutil, and I am not running with sudo.

I have attached another run of ddcutil interrogate.

dductil_interrogate.txt

@rockowitz
Copy link
Owner

Have you tried using option --sleep-multiplier 2.0?

@kennyrkun
Copy link
Author

It appears the issue persists even when using --sleep-multiplier 2.0. Occasionally the command will work, but usually it says Display not found..

ddcutil interrogate.txt

@rockowitz
Copy link
Owner

I'm afraid I don't have any further suggestions. The statistics in the interrogate output (which you can see if you use the --stats option on a command) show large numbers of data errors, and even those operations that ultimately succeed often require a large number of retries. In addition to --sleep-multiplier, you could also try raising the --maxtries values, but given the extent of data errors I doubt that would resolve the problem. FYI, the option --ddc will report the individual data errors.

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

No branches or pull requests

2 participants