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

Use the hash of the EDID as a display identification option #3757

Open
Jip-Hop opened this issue Dec 8, 2024 · 6 comments
Open

Use the hash of the EDID as a display identification option #3757

Jip-Hop opened this issue Dec 8, 2024 · 6 comments
Assignees
Labels
done All tasks are completed enhancement New feature or request internal pre-release Enable internal pre-releases under Settings/Applications/Updates
Milestone

Comments

@Jip-Hop
Copy link

Jip-Hop commented Dec 8, 2024

Would it be possible to use the reported native resolution as a secondary way to identify displays with same serial (for monitor with PbP enabled)?

That way some settings (like a disabled display) can be selectively applied. E.g. disable the second display when the monitor is running at full 5.120 x 2.160, but enable the second display when the reported native resolution is 2.560 x 2.160.

Or another example. With PbB enabled, both displays have a Current default resolution of 2.560 x 2.160 LoDPI @ 60Hz as seen in the System Configuration and Flexible Scaling menu. I'd like to set this to 1.280 x 1.080 HiDPI @ 60Hz by default. But I can't do this due to:

Please note that all displays with the same vendor and model number are affected by the changes!

I only want to change the default resolution of the displays when PbB is enabled in the monitor and leave the default to 2.560 x 1.080 HiDPI @ 75Hz when the reported native resolution is 5.120 x 2.160.

@waydabber
Copy link
Owner

The app could use the hash of the current EDID for identification - this usually changes as probably a different EDID is served in PbP mode to reflect the different aspect ratio and resolution options.

@waydabber waydabber changed the title Use reported native resolution to ID displays with same serial (PbP) Use the hash of the EDID as a display identification option Dec 8, 2024
@waydabber waydabber added the enhancement New feature or request label Dec 8, 2024
@Jip-Hop
Copy link
Author

Jip-Hop commented Dec 8, 2024

That sounds great, exactly what I was hoping/thinking!

@Jip-Hop
Copy link
Author

Jip-Hop commented Dec 8, 2024

Anything I can do on my end to help with this?

@waydabber waydabber self-assigned this Dec 12, 2024
@waydabber waydabber added this to the v3.2.2 milestone Dec 12, 2024
@waydabber waydabber added in progress Implementing unreleased Still baking in the oven done All tasks are completed and removed in progress Implementing labels Dec 12, 2024
@waydabber
Copy link
Owner

Screenshot 2024-12-12 at 23 59 16

@Jip-Hop
Copy link
Author

Jip-Hop commented Dec 13, 2024

Looking forward to test this! I'm on Version 3.2.2 Internal Pre-Release Build 35906 but don't see this yet. I'm curious how this would interact with #3758.

Swapping with layout protection is currently only possible when using UUID match. So to solve my P40w-20 PbP display issues I'd probably have to do this:

Name Mode Display ID Method Unique EDID
Full 5120x2160 PbP disabled Full EDID match Yes
Left 2560x2160 PbP UUID No
Right 2560x2160 PbP UUID No

Hopefully with Full EDID match BetterDisplay can distinguish properly between when I'm using my Full display, and when I'm using PbP mode. However, since the EDIDs of both halves in PbP are the same, macOS and BetterDisplay may still swap the Left and Right display. But I think I can manage this with the Swap Position feature.

@waydabber waydabber added internal pre-release Enable internal pre-releases under Settings/Applications/Updates and removed unreleased Still baking in the oven labels Dec 13, 2024
@waydabber
Copy link
Owner

This is now available in the latest internal pre-release. Well, I am not sure how will this behave, let's see. :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
done All tasks are completed enhancement New feature or request internal pre-release Enable internal pre-releases under Settings/Applications/Updates
Projects
None yet
Development

No branches or pull requests

2 participants