15

I've got a MacBook Pro (Early 2015, OS 10.11.2) and I've also got a Dell 2209WAf monitor, which I'm using with a VGA cable and this adaptor.

The monitor's optimum resolution is 1680x1050 @ 60Hz and RDM shows this as an option. However, when I try to use that resolution, my screen looks like this Screen looks terrible, it's not as easy to see from the photo which is clearly not right (it looks impossibly pixellated and really hurts my eyes, you can barely see anything on the screen).

On the monitor, it says it's displaying 800x600 when my Mac says it's displaying 1680x1050.

I've seen questions about VGA cables/adaptors etc. asked before, but they all said it was to do with the resolution being too high. My monitor (and adaptor) can display 1920x1080 so that would appear to not be the case here.

The options for the resolution in Displays all work perfectly (various ones from 800x600 up to 1400x1050 when Alt-Scaled) but then it jumps up to 1920x1080. How can I add 1680x1050 to this list, as presumably that would display clearly? SwitchResX doesn't fix this and neither does RDM, I've seen stuff about editing .plist files but that was all for Yosemite, apparently it's different for El Capitan.

Any help is massively appreciated!

  • I suggest replacing that adapter and cable for analog VGA signal for an adapter and cable for digital DVI signal. That monitor does support DVI. – Basil Bourque Oct 18 '16 at 6:39
15

You can go to System Preferences > Displays, then option-click (press option key while left-clicking) on Scaled to expose additional resolutions that aren't exposed with a normal left-click.

Otherwise, you have a great choice of software for that, like switchResX:

Why hassling with Apple's inbuilt screen settings, when there is so much more to get and much easier, too?

With SwitchResX you get back control on your screen – or screens even! There are plenty of inbuilt options...

  • 1
    Alt-clicking (left not right) does show more resolutions, but 1680x1050 is not one of them. SwitchResX has the same issue as RDM. Thanks though :) – Dan Grove Dec 28 '15 at 15:47
  • In the advanced setting either ? You're welcome :) – StrawHara Dec 28 '15 at 15:52
  • have you tried to create a CUSTOM scaled resolution using SwitchResX ? it should help... with RDM I believe the custom resolutions are not yet available I submitted a feature request. – JOKe Jan 11 '17 at 8:54
  • SwitchResX helped me to get 2560x1440@60Hz on my new MacBook Pro 2017, using USB-C AV Adapter. – Dio Phung Sep 1 '17 at 5:55
  • 1
    this answer does solve my issue, I secondary display get this issue from time to time, even system reboot doesn't solve it. option-click on Display preference panel works. thanks! – Vincent Jun 6 '18 at 1:01
6

Okay, so I managed to work out what the issue was in the end - it was OS X's handling of the EDID data from the monitor. Windows evidently could read the data just fine, which is why it worked perfectly every time. Where Apple don't develop plug-and-play drivers for monitors (I assume) and hadn't added a profile for mine, it couldn't recognise it.

In the end, it was a relatively simple fix. Here are the steps I followed (some very basic knowledge of Terminal is necessary for the second half, it's mostly common sense though).

Things you'll need:

  • A Mac/computer running OS X that isn't currently recognising your monitor correctly (duh)
  • Access to a PC running Windows (with same connections as Mac, DVI and VGA have different EDIDs for instance) or Mac via Boot Camp
  • A USB drive in FAT32 (doesn't need to be big)

  1. Boot into Windows from your Mac if you can (or alternatively plug a Windows machine into the monitor that isn't working properly)
  2. Download and run MonitorInfoView.exe from here (some similar applications don't export the full 128 bit hex code you need for the EDID) and select the monitor you need the EDID for - make sure you don't choose the internal screen if you're on a MacBook! Then export the EDID data as a .rtf file (it's in one of the options in the menu bar) and save it to a drive that can be read by Windows and Mac machines.
  3. In the .rtf file (at the bottom) there should be a Hex table - this is your monitor's EDID data. Remove the "0x00" (etc.) code from the start of each row and copy the resulting text into www.edidreader.com. The Hex key needs to be in the format that edidreader can read, as otherwise the code won't work for the second half of this tutorial (I made that mistake first time) - the tool should display exactly the same data as what you got in the .rtf file when all three checkboxes are ticked.
  4. If your EDID data isn't corrupted, follow the steps in this excellent tutorial here about how to edit the Overrides in OS X. To do this, you'll need to disable SIP (reboot Mac holding Cmd+R, run "csrultil disable" via Utilities > Terminal and then reboot and log back in. Also, the location of the Overrides folder has changed in El Capitan, so it's now in /System/Library/Displays/Contents/Resources/Overrides instead of what's mentioned in the forum guide.

If your EDID data isn't being read at all by anything, you'll need to either use another monitor (that broken one won't ever work properly) or have the defective one replaced etc.

I hope this can somehow be helpful to someone - I couldn't find a comprehensive guide about how to solve this problem anywhere (and I've been looking solidly for 2 days+)!

Peace, Dan

4

I don't have enough points to add comments, but I just had the same issue and found the reply by Dan Grove extremely helpful. This reply is in regard with the step 2 of his proposed solution.

It can be skipped by retrieving the monitor's EDID data from SwitchResX. You can download the trial version and, in the monitor tab of SwitchResX preferences you'll see an "Export EDID" button on the top right-hand side.

I thought this might be useful since it doesn't involve any Windows machines.

  • It's best to include a link to the post that you referenced for reference. – Allan Apr 5 '16 at 13:55
1

No program is needed. I was seeking help around forums and I decide to try with cable (without any adaptors) I bought cable for less than 4quid and I got full 2560x1440 it's Mini DisplayPort to DisplayPort cable (thunderbolt to display port on external monitor). If resolution still not showing keep holding Option key and click on Scaled (in Display settings). Good luck!

1

I've spent the last 4 hours (at least) fixing that issue on macOS Sierra. The way I managed to do it is based on Dan Grove's reply to himself in this same thread, but with more DIY (thanks Dan!).

Few things I think are important to understand about EDID files:

  1. For one given screen device, EDID files are different depending on the OS.
  2. DO NOT retrieve the EDID from the computer where you have the issue (as suggested by chiara in this thread) – it did not work for me and gave me corrupted data.
  3. You will need need a computer where the screen works (typically running Windows) to retrieve the correct EDID to then port it to Mac.

Now, following Dan Grove list of steps (see his post above), I would bring some clarifications as follow:

Step 1 – I used a real Windows computer to do that, not a Virtual Machine.

Step 2 – There was no option to export the EDID data as an RTF file in MonitorInfoView when I did it, probably because the software got updated since. I had to click on View > Lower Pane > EDID Hex Dump to actually see the Hex part.

Step 3 – For those who don't know what Hex is, below is a screenshot. You will have to remove the surrounding parts (highlighted in red) to only keep the Hex part (highlighted in green).

enter image description here You can then copy and paste the green part in EDID Reader as Dan explained. You don't necessarily need to have the 3 boxes ticked, just click on Parse Edid and check if the information on the right reflect what your screen device should be – e.g you should be able to see the resolution you're trying to make work.

Step 4 – This is the tricky part which got me confused. The tutorial is asking for you to output the result of the following Terminal command in a text file ioreg -lw0, and search for various strings within the said file.

Unless I'm mistaken, ioreg stands for Input/Output Register, meaning it's basically listing all the devices of your machine. However, having 2 screen devices (the native Macbook screen + the external one I was trying to make work), you need to be careful not to be mistaken with your native screen.

The tutorial asks you to look for the IODisplayEDID string but my external screen did not have any in the ioreg output (which is certainly why is was not working). The correct IODisplayEDID data to create is the one we found in the Hex part, highlighted in green above. This is the string you need to port into a mac Overrides file (just follow the tutorial if you have no idea what I'm talking about).

To avoid mistakes, just be aware that the DisplayVendorID for the Apple native screens seems to be 1552. If during the tutorial you end up using this ID, you're about to change the settings of your native screen, not the external one :)

I hope this brings some clarification to the very useful steps from Dan Grove.

Cheers fred

0

I had a similar problem today with an iMac and a SyncMaster225BW display also with 1680x1050 native resolution. Tried SwitchResX which did not seem to work. But the problem seemed to fix itself after a reboot - the secondary display came up in native resolution. (This was after uninstalling SwitchResX.)

What I actually did was reboot into recovery mode and turned off the SIP (planning to modify one of the DisplayVendorID files according to instructions that turned out to be unnecessary). I doubt turning off SIP had anything to do with it, but it's possible.

  • 1
    I've tried editing the DisplayVendorID files but it didn't work at all, I have no idea how to make it "just work" normally. I can't be buying new adaptors (even though I don't think that's the problem) all the time, the way Apple has integrated displays into OS X is shoddy to say the least - lots of people on forums etc. have problems very similar to mine. The real pain in the bottom is that the display works perfectly in Windows 10 from my Mac. – Dan Grove Dec 28 '15 at 21:33
0

you can follow Force RGB mode in Mac OS X to fix the picture quality of an external monitor .

  • 1
    Welcome to Ask Different! We're trying to find the best answers and those answers will provide info as to why they're the best. Explain why you think the link you provided will answer the question. Links can change and become outdated so we prefer the answers to not just be a link. See How to Answer on how to provide a quality answer. - From Review – fsb Oct 4 '16 at 18:13
0

After updating to macOS Sierra I encountered same issue. As I understand it was because mac recognised it as TV instead of as additional monitor. Next steps helped me to solve the problem:

  1. Save file from embdev.net to Downloads folder.
  2. Run in terminal cd ~/Downloads and ruby patch-edid.rb It will generate folder with name something like DisplayVendorID-4b1f
  3. Reboot Mac holding Cmd+R, run csrutil disable via Utilities > Terminal and then reboot and log back in.
  4. Copy generated folder to /System/Library/Displays/Contents/Resources/Overrides. Needs entering admin password.
  5. Reboot mac. It should be ok now.
  6. Repeat step 3 but running csrutil enable instead.
  • People relying on this answer need to understand the file download is not from Apple, it's from a 3rd-party site. – fsb Oct 6 '16 at 18:07
0

I found the issue was with the monitor. By changing 1 setting the resolution was fixed. See here:

On the Mac: System Preferences > Displays > Under the Display tab set the Underscan -> slide to OFF! (This ensures it is in the default position)

On your Monitor: Image Control > Custom Scaling > Overscan ---- OFF!

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .