macOS Tahoe 26 compatibility - EOL for MonitorControl 4.x?
Before opening the issue, have you...?
- [x] Searched for existing issues
- [x] Looked through the wiki
- [x] Updated MonitorControl to the latest version (if applicable)
Describe the bug
macOS 26.0 (Public Beta) has changed style native OSD for Display Brightness and Volume For whatever reason, these no longer reflect on actual Brightness / Volume values which is a usability problem
Steps to reproduce
- Install macOS 26.0 Tahoe (Public Beta 1)
- Try changing brightness or volumes of an external Display via DDC
- Observe how OSD is shown, but does not reflect the actual values, which renders it unusable
Expected behavior
OSD for Brightness and Volume control should display the actual values currently applied to External Display
Anything else?
I know this is a beta and support is not yet expected, but have to report this issue for future use, since release is expected in September I also have to use macOS 26.0 for work, so this is a real issue for me The assumption is that (Private?) API interface has changed As a temporary solution, custom HUD implementation may be used to replace native
Environment Information (please complete the following information)
- macOS version: 26.0 (25A5316i) aka Public Beta 1
- Mac model: Mac mini (2020) and MacBook Pro 14" (2021)
- MonitorControl version: 4.3.3 Build 7123
- Monitor(s): BenQ GW2790QT
- Apple Silicon/M1 (yes or no): yes
I recommend using BetterDisplay's 4.x version with full Tahoe compatibility.
Unfortunatelly MonitorControl won't be able to use the native OSD any longer on Tahoe. Implementing a full glass OSD replacement (like the one in BetterDisplay) would require disabling UI compatibility, but that will break MonitorControl sliders and various AppKit/Cocoa hacks that make the Menu look like as it is - so actually a full rewrite would be needed for Tahoe glass (then a migration to SwiftUI would make sense). So I think this is basically the EOL of MonitorControl in its current form, it just does not make sense to continue updating the old code.
I might create a MonitorControl 5 derived from BetterDisplay.
https://github.com/waydabber/BetterDisplay/releases
Well, the DisplayBuddy definitely works, however, it is also overloaded with unnecessary details. I mean, what most people need is a simple app to install and get monitor controlled like if it were native. That was the beauty of MonitorControl.
You are probably right about supporting the old code — I can relate, had my own share of working with legacy code.
The derived & simplified version of BetterDisplay for MonitorControl 5 sounds like the right choice at this point — there already is a good and supported solution, so why not use it.
I might create a MonitorControl 5 derived from BetterDisplay.
Up vote for a v5 of MontorControl. A sliced before, the simplicity of MonitorControl is much more appreciated than Better display
Honestly BetterDisplay with a default installation looks and works very much like MonitorControl and is simple to use. The added features/complexity appears only if you expand the app menu (wanting more features) or start using/configuring advanced stuff.
Anyway, I am thinking about what to do with MonitorControl. As Tahoe beta 5 (public beta 2) seems to have fixed the issues with auto brightness for built-in displays, it looks like MonitorControl mostly works without change (as its UI is presented in compatibility mode). The only issue is the OSD - but even that "kinda" works. So there is no rush I think.
@waydabber we agree to disagree. MonitorControl has a much cleaner look. :-)
I like both, designed them both. :)
(note: you can also remove the trial message from BD even if you don't get Pro and of course do away with the configure button by clicking on it - appears on new display connects only).
For me Monitor Control 4.2.0 is also crashing on Tahoe 26.0 Beta (25A5327h).
It seems to crash reliably immediately I try to use Monitor Control to change the brightness of my built in display (Apple M1 Macbook Air, MacBookAir10,1). It reverts to the system UI popping up instead; and no more Monitor Control for other monitors. Monitor Control works (except for not displaying the actual brightness value, as reported above) while I stick to only changing the brightness of my external display.
Let me know if I can gather any logs to help?
4.2.0 should not work for built-in displays since Sequoia. Try 4.3.3.
Hmm - I did check for updates before bothering you. It says it is up to date!
But you are right, that fixes the crash issue - many thanks.
Yes, 4.2.0 can't auto update to 4.3.3 due to some app signing issues.
The initial bug description may not reflect situation on the latest macOS Tahoe :
with unupdated MonitorControl v4.3.3, but on updated macOS Tahoe to 26.1,
when pressing F1 or F2 (default brightness control),
for the built-in Display macOS indicator changes, i.e. OK, see picture.
but for the second (external) Display macOS indicator still does not change, i.e. not reflecting.
However, we can say that the issues is only partially true as it was initially described.
- Initial comment to the issues, suggests BetterDisplay. It is not even open source! Look at the https://github.com/waydabber/BetterDisplay there is only README, I would not trust that, especially that there would be good and free future releases. (Other branch has 4 years old code https://github.com/waydabber/BetterDisplay/tree/opensource) And @waydabber did not even care to in initial comment say, that he is promoting own non open source questionable software.
With option "Show percentage" enabled, I actually get better results as macOS Tahoe itself, as the OS does not show numeric values anymore.
to @mikebeaton, you did not even looked at https://github.com/MonitorControl/MonitorControl/issues/, where https://github.com/MonitorControl/MonitorControl/issues/1663 is pinned
ando all, please stay focused on the initial issue solved for this software
Hi @PaulVe2024,
The system OSD framework used by MonitorControl (which is used to invoke the native macOS OSD) is now on its way out and only partially works in Tahoe (it seems to be partially bridged to Control Center, but not fully - seems to show the volume and brightness OSD in current Tahoe builds in a limited fashion but does not pass values, like in first Tahoe betas where it at least partially worked). There is no fix to that or any known way to access the Control Center OSD directly, so right now the only way forward is a full custom reimplementation mimicking the native OSD (that's what I've done with BetterDisplay).
I welcome any PRs with sufficient quality from the community to solve the problem in the current MC open source code.
About BetterDisplay - of course you don't have to use it at it is indeed not open source. I don't think that makes it "questionable" necessary - but I understand the perspective (although I might point out that a true opensource-only enthusiast should not be using macOS 🙃). If you are just after free stuff, all MC features are free in BD and it can also show the percentages in the native (looking) OSD as well.