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

Dual BENQ GW2270 displays don't change brightness at the same time. In fact, one of them doesn't change brightness at all. #9

Open
adrianocr opened this issue Dec 3, 2019 · 13 comments

Comments

@adrianocr
Copy link

I have (2) BENQ GW2270 monitors connected to my MacBook Pro (late 2013) via thunderbold ports and a thunderbolt to dvi cable(s). ExternalDisplayBrightness manages to change the brightness of the left (primary) monitor, but doesn't change the other monitor's brightness. Neither via the solo command, or the dual cmd modifier shortcut.

@fnesveda
Copy link
Owner

fnesveda commented Dec 3, 2019

Hi,

which version of ExternalDisplayBrightness are you using? I've released a new version which should fix exactly this issue just yesterday.

There might also be an issue with the Thunderbolt to DVI adapter, it possibly doesn't support passing the necessary DDC/CI commands through properly.

Could you please run the following command in Terminal and send me its output?

ioreg -c IOFramebuffer -r -l -f -w 0

It might be quite long, so uploading it to pastebin or similar service might be better than just pasting it here.

Also, in case you have Xcode installed, could you please run this playground and upload its output here?

Thank you!

@adrianocr
Copy link
Author

adrianocr commented Dec 3, 2019

I don't have xcode currently installed and if I remember correctly its a large download so I'll need to do that later tonight or tomorrow.

In the meantime here's a paste of the command you me to run: https://hastebin.com/usamufubef.cpp

Edit: I forgot to mention that I am running the latest version of ExternalDisplayBrightness. The one showing in releases from yesterday.

@fnesveda
Copy link
Owner

fnesveda commented Dec 3, 2019

Okay, thanks for the ioreg output, that should help debugging. So when you try to change the brightness of the secondary display, does something happen, anything at all, or does it just do nothing?

EDIT: One more question, what happens when you disconnect the working display and try to change the brightness on the display that it normally doesn't work on?

@adrianocr
Copy link
Author

adrianocr commented Dec 4, 2019

The left side monitor is the primary screen. The one that show's the macOS dock.

I changed the +/- shortcut to F1 and F2. If I place my mouse on the left side monitor and press F1, the left side monitor changes brightness correctly. If I place my mouse over the right side monitor (non-primary) and press F1, I see the OSD brightness thing on the screen and it shows that the brightness is decreasing but it doesn't actually decrease.

If I unplug the left side monitor and only leave the right side plugged in, the right side monitor becomes the primary screen and ExternalDisplayBrightness correctly adjusts the brighteness up and down with F1 and F2 -- so the issue is apparently NOT the monitor itself.

Additionally if I flip the ports (thunderbolt) the monitors are connected to, the issue also flips. In this case the right side monitor becomes the primary device and the brightness control works, but the left side monitor doesn't increase or decrease.

Lastly I flipped the ports and then tested both ports separately and it continues to work no matter which port or order the monitor(s) is connected to / connected in.

Seems to me that the issue is that ExternalDisplayBrigthness tries to control both but is only successful at controlling the primary screen, no matter which order it is or what port order is used, etc.

@fnesveda
Copy link
Owner

fnesveda commented Dec 4, 2019

Okay, that's good information, thanks. This is most probably a different issue than #6, since there the behavior was different, and it was resolved for the user who reported it with commit e20bfb8.

If you get a chance, could you please download Xcode and run the previously mentioned playground?
Or, since Xcode is indeed pretty large, maybe installing only the command-line developer tools and downloading and unpacking this swift file and running it in the terminal could be faster:

cd /path/to/unpacked/IdenticalDisplaysTest.swift
xcode-select --install
/usr/bin/swift IdenticalDisplaysTest.swift

Thank you!

@adrianocr
Copy link
Author

Yup, here you go:

❯ /usr/bin/swift ./IdenticalDisplaysTest.swift
Displays:
    ID: 1952342667
        Vendor: 2513
        Model:  30939
        Serial: 21573
        Unit:   7
    ID: 1952342668
        Vendor: 2513
        Model:  30939
        Serial: 21573
        Unit:   8

Framebuffers:
    Port: 17671
        Vendor:   0
        Model:    0
        Serial:   0
        Location: unknown
    Port: 17675
        Vendor:   2513
        Model:    30939
        Serial:   21573
        Location: IOService:/AppleACPIPlatformExpert/PCI0@0/AppleACPIPCI/P0P2@1/IOPP/GFX0@0/NVDA,Display-B@1/NVDA/display0/AppleDisplay
    Port: 17679
        Vendor:   2513
        Model:    30939
        Serial:   21573
        Location: IOService:/AppleACPIPlatformExpert/PCI0@0/AppleACPIPCI/P0P2@1/IOPP/GFX0@0/NVDA,Display-C@2/NVDA/display0/AppleDisplay
    Port: 17683
        Vendor:   0
        Model:    0
        Serial:   0
        Location: unknown
    Port: 17687
        Vendor:   0
        Model:    0
        Serial:   0
        Location: unknown

@fnesveda
Copy link
Owner

fnesveda commented Dec 4, 2019

Thanks. It seems the workaround I did for the previous issue doesn't work in every case, unfortunately. I'll see if I can find a better solution.

@MitchJackson94
Copy link

I'm also having the same issue I can only change the brightness of each screen not them both at the same time I'm using a Macbook pro 2016 one cable goes straight from USB C to HDMI and one goes through a dock to HDMI.

@dsielert
Copy link

same issue here.. its two controls changes one screen brightness

@zshannon
Copy link

Same here. 2 brightness display HUDs pop up and change value, only main display changes brightness

@BrychanOdlum
Copy link

BrychanOdlum commented Apr 21, 2020

Same here, three Samsung S24H850s connected via eGPU (1x HDMI, 2x DP). This is changing one of the HDMI monitors, and one of the DP monitors, but not the second DP monitor. Happy to run any debug locally if it helps.

Edit:
Actually, I think one of the monitor could be slightly different. Two were purchased together, from the UK. The third came from continental Europe. I see that one of them has a varying DisplayProductID and IODisplayEDID than the other two.

Edit 2:
Unplugged, replugged one of the DP monitors. Now the option to change brightness on all displays at once does not work at all. I only see the indicator shown on the one where it is now changing.

@Canorus
Copy link

Canorus commented Jul 11, 2020

Same issue here. Two identical monitor through eGPU. Result of ioreg -c IOFramebuffer -r -l -f -w 0 is uploaded to gist

@NylonDiamond
Copy link

This is unfortunate. In the mean time, you all can go with https://github.com/MonitorControl/MonitorControl . It seems to be working fine with 3+ and duplicate displays for me.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

8 participants