mirror of
https://github.com/MonitorControl/MonitorControl.git
synced 2026-05-15 22:01:08 -06:00
[GH-ISSUE #843] Always increases brightness of external display after sleep #534
Labels
No labels
Status: Abandoned
arm64
beta
beta
bug
done
duplicate
enhancement
feedback needed from reporter
in progress
invalid
investigating
known Issue
monitor Issue
pull-request
translation
unable to reproduce
unreleased
x86
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference: github-starred/MonitorControl#534
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @arobertn on GitHub (Dec 12, 2021).
Original GitHub issue: https://github.com/MonitorControl/MonitorControl/issues/843
Originally assigned to: @waydabber on GitHub.
Before opening the issue, have you...?
Describe the bug
It always jacks up the brightness of the external display after sleep. I am using MonitorControl to "slave" my external monitor brightness to the interrnal, which autoadjusts to ambient light. I have a Samsung external monitor connected through DisplayPort through a Thunderbolt docking station. I've also tried Lunar (commercial product) and it does not have this issue.
Steps to reproduce
Expected behavior
Expected behavior
The app resumes by setting the external monitor to approximately the same percentage as the internal, as it was before.
Actual behavior
The app jacks up the external display to blinding levels. I need to manually adjust it back down.
Anything else?
No response
Environment Information (please complete the following information)
@arobertn commented on GitHub (Dec 12, 2021):
Happy to collect debug logs if there is some way to do this.
@waydabber commented on GitHub (Dec 14, 2021):
Hi @arobertn - sorry for being late with the response.
If you do not use the sync setting, does the display retain the last brightness set? What happens if you change the following settings either to "Apply last saved values" or "Attempt to read display"?
Thank you!
@arobertn commented on GitHub (Dec 15, 2021):
I thought your response was pretty quick :). I tried both the first and the last option there, and they seemed to behave the same. Note, the "Attempt to read display settings" is unclear. What I'd like it to do is read internal display, and use said result to force-update the external, but I don't know if it does that. I didn't try the middle one since the light level could be different when starting/waking, so restoring previous values is not of any use.
I did check what was getting logged in Console, but there were no lines that seemed to relate to reading or writing display values. If it might be of interest anyway, I can collect some.
@waydabber commented on GitHub (Dec 17, 2021):
Hi @arobertn sorry for the delayed answer. The "Attempt to read..." will read the currently set brightness to the external display and synchronize MonitorControl with that. The "Apply last saved..." will reapply the brightness setting according to MonitorControl after wake (if the display resets its brightness for some reason).
If both the built-in and external display wake to the same brightness as before, then the difference between them should be constant. MC only synchronizes brightness difference after the wake period.
Does the internal screen's brightness the same after wake as before sleep?
@arobertn commented on GitHub (Dec 17, 2021):
I (think) I have MonitorControl disabled from doing any updates to the internal display (see screenshot). I have "Automatically adjust brightness" set in Mac preferences for that one. My external monitor does not have a light sensor and so will wake up as it was before, regardless if it was broad daylight then and now the room is dark. But it sounds like the functionality I am after (slave external to internal, the latter being managed according to ambient light by macOS) is not a supported use case.
@waydabber commented on GitHub (Dec 17, 2021):
Hi @arobertn - even in the setup above, MonitorControl reads the internal display's brightness and replicates the changes to the external display. It is important to note that only change (delta) is replicated, not absolute numbers, as MonitorControl has no way of knowing what percentage of DDC brightness corresponds to what percentage of the internal display's brightness (as both displays have different characteristics and max. brightnesses). So if the internal display is set to 30%, the external to 60% upon wake, these will not be synchronized, but if the internal display increased from 30% to 40% by the ambient light sensor, the external screen will also increment gradually from 60% to 70%. The way this works allows users to independently adjust the two displays manually and sync their brightness manually using their own eye's judgement and then let the system synchronize from that point using the amibent light sensor input that is reflected in the internal display's brightness changes.
@waydabber commented on GitHub (Dec 21, 2021):
I am not sure if there is an issue here or things work as they should be working. I'll convert this into a discussion, we can continue there - if a better method is worked out, we can create a feature request out of it.