-
Notifications
You must be signed in to change notification settings - Fork 4
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
An error occurred setting monitor brightness (while transmitting data to the device on the I2C bus) #14
Comments
So first just to check I understood: your second monitor (MSI MAG274QRF) is working fine right - the brightness is being adjusted by the program successfully? The error in the log for your first monitor looks like there is a driver issue of some sort. The error we are seeing is coming from this call in the https://github.com/stephaneyfx/brightness/blob/master/src/windows.rs#L395-L400 If you google the error: "0xC0262582 / An error occurred while transmitting data to the device on the I2C bus" I am generally seeing that this is a driver error. These posts suggest it is the Intel graphics driver - are you using Intel graphics? https://www.dell.com/community/Monitors/U2715H-Intel-GPU-driver-updated-DDM-not-recognize-monitor/td-p/7475411 I would also suggest trying to update the drivers for your monitor itself. There is also this similar advice from Nirsoft's ControlMyMonitor:
|
The brightness isn't being adjusted on either monitor, just double checked. I'm on an AMD machine with NVIDIA graphics, so the issue seems to not be strictly with Intel. I have both monitor drivers installed since the beginning. Both monitors are connected directly to the GPU via DP. |
Hi @eddie-LA, I'm trying to figure out if your issue is with monitor drivers or the rust brightness crate. Would you please consider installing Monitorian, and seeing if you can control both of your screens with that utility? It provides a very helpful debug report using the probe button - https://github.com/emoacht/Monitorian#probe, if you could paste the results of that here, it might help us figure out what is wrong ? |
Hi there, sure! I completely lost track of this in the last couple of months. Over this time I've also updated to Windows 11. Could validate what works and what doesn't as well as try and solve this issue. I just don't have much free time these days, but I'll try to keep up. |
Hey there! I'm having essentially the same issue as Eddie with a very similar setup. The program successfully controls the brightness on one monitor (ASUS PG279Q) while it usually doesn't for the other (ASUS VG27AQ). What typically happens is that it will lower the brightness partially, but not all the way. My guess is that it is occasionally able to connect to the second monitor (and update it when it does), but usually not, leaving its brightness somewhere between 0-100 (I have it set to transition over 40 minutes). Occasionally when I reload the configuration it will be successful for both, but usually it says:
I went ahead and did a clean install for my graphics drivers, and manually located and installed the drivers for the problematic monitor (I couldn't find drivers for the other). Neither of these solutions worked, so I went ahead and installed Monitorian like you recommended to Eddie and used the probe button. I can control both of my monitors just fine with Monitorian, and I've attached the log that it generated at the end of this post. For clarity:
Also, the output I receive when running this program is very similar to what Eddie posted, but I'll post mine just for completeness:
Let me know if you figure anything out or need additional information, because I really like this program! |
Hi @jacks-cbus , sorry it is not working for you, and thanks for providing the logs. To be honest I'm kind of out of ideas! The error is actually coming from this crate, which may be a better place to raise the issue: We are getting an error calling the On the other hand according to Monitarian the When you say it occasionally works can you think of if there any particular correlation with your setup why that could be? Did you experience any intermittent behaviour with Monitarian when trying to set brightness? Maybe if the monitor works intermittently we could introduce a retry loop, and attempt setting brightness up 3 or so times before giving up? |
To be honest, it appears totally random to me as to when it successfully configures. This is likely purely coincidental, but I noticed when I unplugged the HDMI connector (leaving just the DP connector) and retried that it was able to configure. The first two times I tried this it was successful, but the third time it wasn't. I'll try and see if I can identify any patterns. Also it is much more likely than not to be unsuccessful in configuring the second monitor, so I'm not sure that three retries would be sufficient. Perhaps we could do something where the user could choose the number of retries or set it to retry indefinitely until successful, and be able to set a timer as to how often it should retry. This might be useful for identifying when it is most likely to successfully configure. |
Sure that sounds like a good idea @jacks-cbus , I can maybe look at it sometime in a few weeks |
Starting the app yields following output. My monitors are a Dell S2721DS (Monitor 1, DDC/CI on from monitor menu) and MSI MAG274QRF (Monitor 2, no DDC/CI setting in menu but works).
In addition:
The app window was not responding when I ran it from CMD to capture the log. Subsequent runs normally also yielded a non-responding window. Running once with elevation fixed it and it no longer needs to be run with elevation for the ncurses window to work. Above error still comes up, though.
The text was updated successfully, but these errors were encountered: