mirror of
https://github.com/MonitorControl/MonitorControl.git
synced 2026-05-15 14:15:55 -06:00
[GH-ISSUE #27] Automatically adjust external display based on internal display + Touch Bar support #27
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#27
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 @funbben on GitHub (Apr 13, 2018).
Original GitHub issue: https://github.com/MonitorControl/MonitorControl/issues/27
Originally assigned to: @waydabber on GitHub.
It would be nice to be able to use the mac "auto adjust brightness" to set the brightness of external display automatically
https://i.stack.imgur.com/eYQuM.png
@the0neyouseek commented on GitHub (Apr 14, 2018):
Hi @funbben,
Thats a great idea but would be quite difficult to implement because this feature depends on the ambient light sensor (located next to the camera) of your Macbook Pro/iMac and not all external screen have one.
I'll leave this issue open for now to see if anyone has a better idea about tackling this.
PS. We could, for exemple use the one present on your MBP/iMac if we have one, but I'm not sure how. I'll look into it.
@funbben commented on GitHub (Apr 14, 2018):
The idea was to use mac internal sensor and apply same setting as Mac display
@retrography commented on GitHub (Jun 18, 2018):
I think the idea @funbben described is actually very interesting. The only thing is: One will have to check first whether the computer is a laptop and whether it is running the clamshell mode or not.
@rowanalex123 commented on GitHub (Jul 18, 2018):
Hammerspoon provides the lux reading from the ambient light sensor on Macs. Apprently they use the raw value from the sensor and run Mozilla's algorithm to convert it to lux
@retrography commented on GitHub (Jul 18, 2018):
@rowanalex123 Have you actually tried that? The function only returns an error for me -- which is a -1 (on MacBook Pro 2016).
@rowanalex123 commented on GitHub (Jul 19, 2018):
I tried it now. It returns -1 for me as well on a 2017 Mac pro
@arnoappenzeller commented on GitHub (Jan 8, 2019):
I would really like this idea with using the Mac Books ambient sensor.
Has someone already tried this code for reading the data?
I think I'm gonna play around a bit with it soon
@the0neyouseek commented on GitHub (Jan 10, 2019):
Hi, first of all sorry for the late response.
I'll try to work on this feature this week-end.
@jcastro commented on GitHub (Aug 30, 2019):
Just something that might be of interest. The new LG 2019 Ultrafine 5k is finally using the light sensor (see https://twitter.com/jonatan/status/1167163794281455616) so maybe there's a chance to use that information to automatically change others' display brightness (probably with a configurable offset for the value)
@jcastro commented on GitHub (Oct 14, 2019):
Another interesting fact, looks like now even the older LG Ultrafine 5k that didn't have the auto-brightness working now it's enabled if you are on Catalina.
@rshev commented on GitHub (May 4, 2020):
Just found this app, mainly because I'd like to have different brightness during the day and in the evenings, and immediately thought of this idea. Has anyone had any luck reading ambient light values? I might help, I do swift for a living.
@dmatora commented on GitHub (Jul 3, 2020):
@the0neyouseek
There is an open source console app that allows automatically changing brightness on old UltraFine 4K/5K monitors that don't have ambient light support built into maOS.
https://github.com/qvacua/ultrafine-auto-brightness
I own old UltraFine 4K monitor and would love to see it's ambient light sensor support in MonitorControl
It would also be awesome to trigger dark theme based on ambient light sensor value, like this (not very user friendly) open source app does http://codes.kary.us/health/starlight
And finally there is an open source app that allows to use Macbook sensor to adjust brightness of external monitor https://github.com/OCJvanDijk/Brightness-Sync it's code can be used for those who use regular monitors with no ambient light sensor
@stale[bot] commented on GitHub (Aug 3, 2021):
Hey there, it looks like there has been no activity on this issue recently. Has the issue been fixed, or does it still require attention? This issue may be closed if no further activity occurs. Thank you for your contributions.
@sraka1 commented on GitHub (Aug 6, 2021):
Feature request is still pending. Commenting so it's not auto-closed.
@waydabber commented on GitHub (Aug 20, 2021):
This might be a bit out of focus for MonitorControl right now but still we might add this function in the future as apparently this is among the core ideas all the way back to 2018. :)
There is an app called Lunar however made by @alin23 that already does this thing for those who are impatient for a solution.
@alin23 commented on GitHub (Aug 20, 2021):
Thanks @waydabber for letting people know about Lunar! Indeed, Lunar has Sync mode which takes advantage of Automatically adjust brightness by syncing the already adjusted brightness of the built-in display to the external monitors.
The problem with reading the sensor directly is that:
If anyone is interested in reading the lux value on M1 Macs, because that is possible there, here is how to retrieve it from the command line:
Doing that in Swift would require iterating the I/O Kit registry by matching the class
AppleSPUCT720and then extracting theCurrentLuxproperty. Probably something like this:@waydabber commented on GitHub (Aug 20, 2021):
Wow @alin23 thanks for the detailed info! I wanted to go on the route of reading the internal display brightness (as that will also help on an other request, namely the use of the MBP touch bar slider for brightness change - I think we have a similar situation there that we can only infer the selected brightness only from the display's brightness itself, but I am not entirely sure, since I don't have an MBP myself and hate the idea of the touchbar. :))
But there is a rather long list of other accumulated issues to be dealt with so I am afraid this one does not have the highest prioirty at the moment.
@waydabber commented on GitHub (Aug 26, 2021):
Here is what we can do regarding the ambient light sensor, the touch bar slider and the Control Center brightness slider:
Based on this, we can do brightness change replication from the internal display to the external displays. The issues are still numerous:
This issue is related if we want all out synchronization: https://github.com/MonitorControl/MonitorControl/issues/418
I am not yet sure where to go with this and how well would the end result work. :)
@waydabber commented on GitHub (Sep 11, 2021):
Just some info about the progress regarding this issue:
@waydabber commented on GitHub (Sep 19, 2021):
Brightness change synchronization from Built-In and Apple displays to other displays is now added. This makes Touch Bar, Ambient light sensor, Control Center and System Preferences induced changes affect all displays. Synchronization is not direct, but only changes are replicated - the user can intervene and adjust at any time.
https://github.com/MonitorControl/MonitorControl/discussions/596