jpmoran
· 2 days ago
I am using the supplied Thunderbolt cable and as you can see in the image I don't have a 144Hz option.
· 2 days ago
I believe the MacBook Pro 2016 is limited to DisplayPort 1.2 because the Thunderbolt 3 controller is Alpine Ridge instead of the newer Titan Ridge.jpmoran
· 2 days ago
How do I get my MBP 2016 with Radeon Pro 460 to connect to an LG 38WN95C-W at the advertised 144hz refresh rate? I'm only getting the option for 60Hz & 75hz.[/HEADING]
I am using the supplied Thunderbolt cable and as you can see in the image I don't have a 144Hz option.
/System/Library/Extensions/AppleGraphicsControl.kext/Contents/MacOS/AGDCDiagnose -a > AGDCDiagnose_DP12.txt 2>&1
/System/Library/Extensions/AppleGraphicsControl.kext/Contents/MacOS/AGDCDiagnose -a > AGDCDiagnose_DP14.txt 2>&1
/System/Library/Extensions/AppleGraphicsControl.kext/Contents/MacOS/AGDCDiagnose -a > AGDCDiagnose_DP14_noThunderbolt.txt 2>&1
You were talking to a person that doesn't know macOS.I have contacted Apple support with the same question. (I have the same LG monitor) The official answer is that macOS doesn't support anything above 60Hz. They even told me it's strange I am getting 75Hz at all, as the system should be capped at 60Hz. Not sure, if they just didn't feel like helping me out...
I can see you got it to 75Hz as well, so it is possible to get higher than 60Hz. However, this seems to be the official answer... no 144Hz.
Edit: I have the 2019 MBP 16", so I assume it should have DP1.4. If that one doesn't have it, not sure which one does.
Did you read the user manual? Page 22.Thanks for the reply. How do I change the Displayport Version? Is it based on the cable or a setting?
The only thing we can get from that is that the Thunderbolt connection is working at 40 Gbps instead of 20 Gbps so HBR3 is a possibility (except your Thunderbolt controller will only take HBR2 as input).Here are the settings for TB3 and the Radeon Pro 460 shown in the system info
Yes, I did. Although the option-key only works for resolutions, not for refresh rate afaik.You were talking to a person that doesn't know macOS.
2019 MBP 16" should have DisplayPort 1.4 and should let you do 144 Hz. Did you hold the option key and click "Scaled" in the Displays preferences panel? If that doesn't show 144Hz then you need to try something like SwitchResX.
So can anyone tell me what the benefit of the LG 38WN95C-W monitor over the 38WK95C-W is?
There is no limit in refresh rate in macOS. Click "Show low resolution modes" also.Yes, I did. Although the option-key only works for resolutions, not for refresh rate afaik.
Out of curiosity, have you ever seen an Apple system running at more than 75Hz? Now that I think about it, even their Pro XDR display with all its awesomeness is running at 60Hz. The LG UltraFine (and other displays from LG for Mac) run at 60Hz. I don't see a reason why either Apple or LG would not go up to 120Hz apart from the system not supporting it. Mind you, all the "for Mac" displays cost way more than the LG 38WN95C that we are talking about here, so I don't think it's a cost issue.
SwitchResX is useful because you can see which resolutions are just scaled resolutions or actual timings.SwitchResX is wort a try, yes. I am using it at work on a 1920x1200 display to get it to a 2560x1600 resolution and it works fine. I have not tried it on the LG, yet, so I would like to know, if it works. Do let us know. I have to say, there are more problems with the ultra wide, like night shift not working (see here).
Did you follow the instructions in the comments? (download pciutils, compile and install, set nvram boot-args, restart?)I ran the script, but all the resulting files were blank. I am running Mojave 10.14.6. Do I need to use a different version of the script?
I agree with your assessment of the specifications. The monitor is very bright and the text is clear.
I guess the bottom line is, is there anyone out there that is running this monitor on a Mac, of any year, at 170Hz without an eGPU?
Ok, that is awesome. I never thought it is possible to get night shift, full resolution and high refresh rate. Acer does seem to have figured out how to support Macs... How is the monitor connected? Is it DP or TB? Maybe it's worth a try connecting the monitor over DP. I only had it ever connected over TB.There is no limit in refresh rate in macOS. Click "Show low resolution modes" also.
View attachment 1687680View attachment 1687679
SwitchResX is useful because you can see which resolutions are just scaled resolutions or actual timings.
connection via DisplayPort or Thunderbolt doesn't matter - they both use DisplayPort. Thunderbolt could be limited to 20 Gbps if the cable is bad. In that case, the DisplayPort signal would be limited to HBR2 link rate.Ok, that is awesome. I never thought it is possible to get night shift, full resolution and high refresh rate. Acer does seem to have figured out how to support Macs... How is the monitor connected? Is it DP or TB? Maybe it's worth a try connecting the monitor over DP. I only had it ever connected over TB.
Ok, so I did some digging and now I am even more confused than before.
So I set the DP version on my monitor to 1.1 (it's connected with TB, mind you) and I get this:
Locked at Full HD and 60Hz, no surprises there. Then I switch to DP1.2.
Same as before, full resolution but only goes up to 75Hz. Then I go back to DP1.4 and then this...
I don't know why, but now I have the full resolution and 144Hz! Ok, that is weird. Still no Night Shift though, but some progress at least!
I tried but was not able to get it to work. Maybe I need some directions on compiling it. a little more detailed than the github instructions.Did you follow the instructions in the comments? (download pciutils, compile and install, set nvram boot-args, restart?)
I installed everything, but I still get black log files. Can you post a set of command line instructions?I tried but was not able to get it to work. Maybe I need some directions on compiling it. a little more detailed than the github instructions.
Show what you did then I can tell you what went wrong.I installed everything, but I still get black log files. Can you post a set of command line instructions?
Please format your replies like I've done above. Use [ code ] ... [ /code ] around text from Terminal.app (remove spaces after [ and before ]. Convert triple line spacing to single line spacing using search/replace in a text editor.Code:MacBookPro-4:untitled folder 2 jpmoran$ git clone https://gist.github.com/e3cd4ff08aae06279134969c98ca3ab7.git pcitree Cloning into 'pcitree'... remote: Enumerating objects: 4, done. remote: Total 4 (delta 0), reused 0 (delta 0), pack-reused 4 Unpacking objects: 100% (4/4), done. MacBookPro-4:untitled folder 2 jpmoran$ git clone https://github.com/joevt/pciutils.git Cloning into 'pciutils'... remote: Enumerating objects: 4301, done. remote: Total 4301 (delta 0), reused 0 (delta 0), pack-reused 4301 Receiving objects: 100% (4301/4301), 1.50 MiB | 3.85 MiB/s, done. Resolving deltas: 100% (3180/3180), done. MacBookPro-4:untitled folder 2 jpmoran$ cd pciutils MacBookPro-4:pciutils jpmoran$ make cd lib && ./configure Configuring libpci for your system... x86_64--darwin 18.7.0 x86_64 darwin Looking for access methods... darwin i386-ports dump Checking for zlib support... no (auto-detected) Checking for DNS support... no (auto-detected) Checking whether to build a shared library... no (set manually) /Applications/Xcode.app/Contents/Developer/usr/bin/make -C lib all gcc -O2 -Wall -W -Wno-parentheses -Wstrict-prototypes -Wmissing-prototypes -c -o init.o init.c gcc -O2 -Wall -W -Wno-parentheses -Wstrict-prototypes -Wmissing-prototypes -c -o access.o access.c gcc -O2 -Wall -W -Wno-parentheses -Wstrict-prototypes -Wmissing-prototypes -c -o generic.o generic.c gcc -O2 -Wall -W -Wno-parentheses -Wstrict-prototypes -Wmissing-prototypes -c -o dump.o dump.c gcc -O2 -Wall -W -Wno-parentheses -Wstrict-prototypes -Wmissing-prototypes -c -o names.o names.c gcc -O2 -Wall -W -Wno-parentheses -Wstrict-prototypes -Wmissing-prototypes -c -o filter.o filter.c gcc -O2 -Wall -W -Wno-parentheses -Wstrict-prototypes -Wmissing-prototypes -c -o names-hash.o names-hash.c gcc -O2 -Wall -W -Wno-parentheses -Wstrict-prototypes -Wmissing-prototypes -c -o names-parse.o names-parse.c gcc -O2 -Wall -W -Wno-parentheses -Wstrict-prototypes -Wmissing-prototypes -c -o names-net.o names-net.c gcc -O2 -Wall -W -Wno-parentheses -Wstrict-prototypes -Wmissing-prototypes -c -o names-cache.o names-cache.c gcc -O2 -Wall -W -Wno-parentheses -Wstrict-prototypes -Wmissing-prototypes -c -o names-hwdb.o names-hwdb.c gcc -O2 -Wall -W -Wno-parentheses -Wstrict-prototypes -Wmissing-prototypes -c -o params.o params.c gcc -O2 -Wall -W -Wno-parentheses -Wstrict-prototypes -Wmissing-prototypes -c -o caps.o caps.c gcc -O2 -Wall -W -Wno-parentheses -Wstrict-prototypes -Wmissing-prototypes -c -o i386-ports.o i386-ports.c gcc -O2 -Wall -W -Wno-parentheses -Wstrict-prototypes -Wmissing-prototypes -c -o darwin.o darwin.c gcc -O2 -Wall -W -Wno-parentheses -Wstrict-prototypes -Wmissing-prototypes -c -o DirectHW.o DirectHW.c rm -f libpci.a ar rcs libpci.a init.o access.o generic.o dump.o names.o filter.o names-hash.o names-parse.o names-net.o names-cache.o names-hwdb.o params.o caps.o i386-ports.o darwin.o DirectHW.o ranlib libpci.a sed <libpci.pc.in >libpci.pc -e 's,@PREFIX@,/usr/local,' \ -e 's,@INCDIR@,/usr/local/include,' \ -e 's,@LIBDIR@,/usr/local/lib,' \ -e 's,@IDSDIR@,/usr/local/share,' \ -e 's,@Version@,3.6.4,' \ -e 's,@LDLIBS@, -lresolv -framework CoreFoundation -framework IOKit,' gcc -O2 -Wall -W -Wno-parentheses -Wstrict-prototypes -Wmissing-prototypes -c -o lspci.o lspci.c gcc -O2 -Wall -W -Wno-parentheses -Wstrict-prototypes -Wmissing-prototypes -c -o ls-vpd.o ls-vpd.c gcc -O2 -Wall -W -Wno-parentheses -Wstrict-prototypes -Wmissing-prototypes -c -o ls-caps.o ls-caps.c gcc -O2 -Wall -W -Wno-parentheses -Wstrict-prototypes -Wmissing-prototypes -c -o ls-caps-vendor.o ls-caps-vendor.c gcc -O2 -Wall -W -Wno-parentheses -Wstrict-prototypes -Wmissing-prototypes -c -o ls-ecaps.o ls-ecaps.c gcc -O2 -Wall -W -Wno-parentheses -Wstrict-prototypes -Wmissing-prototypes -c -o ls-kernel.o ls-kernel.c gcc -O2 -Wall -W -Wno-parentheses -Wstrict-prototypes -Wmissing-prototypes -c -o ls-tree.o ls-tree.c gcc -O2 -Wall -W -Wno-parentheses -Wstrict-prototypes -Wmissing-prototypes -c -o ls-map.o ls-map.c gcc -O2 -Wall -W -Wno-parentheses -Wstrict-prototypes -Wmissing-prototypes -c -o common.o common.c gcc lspci.o ls-vpd.o ls-caps.o ls-caps-vendor.o ls-ecaps.o ls-kernel.o ls-tree.o ls-map.o common.o lib/libpci.a -lresolv -framework CoreFoundation -framework IOKit -o lspci gcc -O2 -Wall -W -Wno-parentheses -Wstrict-prototypes -Wmissing-prototypes -c -o setpci.o setpci.c gcc setpci.o common.o lib/libpci.a -lresolv -framework CoreFoundation -framework IOKit -o setpci gcc -O2 -Wall -W -Wno-parentheses -Wstrict-prototypes -Wmissing-prototypes -c -o example.o example.c gcc example.o lib/libpci.a -lresolv -framework CoreFoundation -framework IOKit -o example M=`echo 2020-01-25 | sed 's/-01-/-January-/;s/-02-/-February-/;s/-03-/-March-/;s/-04-/-April-/;s/-05-/-May-/;s/-06-/-June-/;s/-07-/-July-/;s/-08-/-August-/;s/-09-/-September-/;s/-10-/-October-/;s/-11-/-November-/;s/-12-/-December-/;s/\(.*\)-\(.*\)-\(.*\)/\3 \2 \1/'` ; sed <lspci.man >lspci.8 "s/@today@/$M/;s/@Version@/pciutils-3.6.4/;s#@IDSDIR@#/usr/local/share#" M=`echo 2020-01-25 | sed 's/-01-/-January-/;s/-02-/-February-/;s/-03-/-March-/;s/-04-/-April-/;s/-05-/-May-/;s/-06-/-June-/;s/-07-/-July-/;s/-08-/-August-/;s/-09-/-September-/;s/-10-/-October-/;s/-11-/-November-/;s/-12-/-December-/;s/\(.*\)-\(.*\)-\(.*\)/\3 \2 \1/'` ; sed <setpci.man >setpci.8 "s/@today@/$M/;s/@Version@/pciutils-3.6.4/;s#@IDSDIR@#/usr/local/share#" M=`echo 2020-01-25 | sed 's/-01-/-January-/;s/-02-/-February-/;s/-03-/-March-/;s/-04-/-April-/;s/-05-/-May-/;s/-06-/-June-/;s/-07-/-July-/;s/-08-/-August-/;s/-09-/-September-/;s/-10-/-October-/;s/-11-/-November-/;s/-12-/-December-/;s/\(.*\)-\(.*\)-\(.*\)/\3 \2 \1/'` ; sed <pcilib.man >pcilib.7 "s/@today@/$M/;s/@Version@/pciutils-3.6.4/;s#@IDSDIR@#/usr/local/share#" M=`echo 2020-01-25 | sed 's/-01-/-January-/;s/-02-/-February-/;s/-03-/-March-/;s/-04-/-April-/;s/-05-/-May-/;s/-06-/-June-/;s/-07-/-July-/;s/-08-/-August-/;s/-09-/-September-/;s/-10-/-October-/;s/-11-/-November-/;s/-12-/-December-/;s/\(.*\)-\(.*\)-\(.*\)/\3 \2 \1/'` ; sed <pci.ids.man >pci.ids.5 "s/@today@/$M/;s/@Version@/pciutils-3.6.4/;s#@IDSDIR@#/usr/local/share#" sed <update-pciids.sh >update-pciids "s@^DEST=.*@DEST=/usr/local/share/pci.ids@;s@^PCI_COMPRESSED_IDS=.*@PCI_COMPRESSED_IDS=@" chmod +x update-pciids M=`echo 2020-01-25 | sed 's/-01-/-January-/;s/-02-/-February-/;s/-03-/-March-/;s/-04-/-April-/;s/-05-/-May-/;s/-06-/-June-/;s/-07-/-July-/;s/-08-/-August-/;s/-09-/-September-/;s/-10-/-October-/;s/-11-/-November-/;s/-12-/-December-/;s/\(.*\)-\(.*\)-\(.*\)/\3 \2 \1/'` ; sed <update-pciids.man >update-pciids.8 "s/@today@/$M/;s/@Version@/pciutils-3.6.4/;s#@IDSDIR@#/usr/local/share#" MacBookPro-4:pciutils jpmoran$ sudo make install /Applications/Xcode.app/Contents/Developer/usr/bin/make -C lib all make[1]: Nothing to be done for `all'. install -d -m 755 /usr/local/sbin /usr/local/share /usr/local/share/man/man8 /usr/local/share/man/man7 //usr/local/share/man/man5 install -c -m 755 -s lspci setpci /usr/local/sbin install -c -m 755 update-pciids /usr/local/sbin install -c -m 644 pci.ids /usr/local/share install -c -m 644 lspci.8 setpci.8 update-pciids.8 /usr/local/share/man/man8 install -c -m 644 pcilib.7 /usr/local/share/man/man7 install -c -m 644 pci.ids.5 /usr/local/share/man/man5 MacBookPro-4:pciutils jpmoran$ grep -q /usr/local/sbin /etc/paths || sudo sed -e $'1i\\\n/usr/local/sbin\\\n' -i "" /etc/paths MacBookPro-4:pciutils jpmoran$ sudo update-pciids sudo: update-pciids: command not found MacBookPro-4:pciutils jpmoran$ cd ../pcitree MacBookPro-4:pcitree jpmoran$ ls pcitree.sh MacBookPro-4:pcitree jpmoran$ chmod +x pcitree.sh MacBookPro-4:pcitree jpmoran$ sudo ./pcitree.sh #=========================================================================================
sudo update-pciids
returned an error sudo: update-pciids: command not found
grep -q /usr/local/sbin ...
you need to use a new Terminal.app window because the modification to the /etc/paths file doesn't take effect right away in the current Terminal.app window. I'll modify the instructions.nvram boot-args
debug=0x144
then append it (include the previous contents in the new string)sudo nvram boot-args="debug=0x144"
Last login: Mon Dec 7 19:42:20 on ttys000
MacBookPro-4:~ jpmoran$ sudo update-pciids
Password:
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 263k 100 263k 0 0 149k 0 0:00:01 0:00:01 --:--:-- 149k
Done.
MacBookPro-4:~ jpmoran$ sudo lspci
DirectHW.kext not loaded.
lspci: Cannot find any working access method.
MacBookPro-4:~ jpmoran$
In macOS, using Sierra or later, nvram boot-args must have at least the following debug=0x144. If it does not, then:
sudo nvram boot-args="debug=0x144 ... other contents of boot-args here ..."
This may require SIP to be disabled, otherwise execute the command without sudo in Recovery's Terminal.app.
Correct. DirectHW.kext is not required for Mojave.It appears that I need DirectHW.kext, but I am using Mojave, so I did not think it was required.
I said check your nvram boot-args with:I'm sorry. My terminal skills are no better than cutting and pasting. not sure how to verify and correct this part.
nvram boot-args
boot-args somestuff=1234
sudo nvram boot-args="somestuff=1234 debug=0x144"
Last login: Mon Dec 7 19:44:34 on ttys001
MacBookPro-4:~ jpmoran$ nvram boot-args
nvram: Error getting variable - 'boot-args': (iokit/common) data was not found
MacBookPro-4:~ jpmoran$
It means you have no boot-args nvram variable. You can print all the Apple nvram variables with:Code:Last login: Mon Dec 7 19:44:34 on ttys001 MacBookPro-4:~ jpmoran$ nvram boot-args nvram: Error getting variable - 'boot-args': (iokit/common) data was not found MacBookPro-4:~ jpmoran$
Do I need to be in a specific directory when I run the terminal command?
nvram -p
sudo nvram boot-args="debug=0x144"
MacBookPro-4:~ jpmoran$ sudo boot-args="debug=0x144"
usage: sudo -h | -K | -k | -V
usage: sudo -v [-AknS] [-g group] [-h host] [-p prompt] [-u user]
usage: sudo -l [-AknS] [-g group] [-h host] [-p prompt] [-U user] [-u user]
[command]
usage: sudo [-AbEHknPS] [-C num] [-g group] [-h host] [-p prompt] [-T timeout]
[-u user] [VAR=value] [-i|-s] [<command>]
usage: sudo -e [-AknS] [-C num] [-g group] [-h host] [-p prompt] [-T timeout]
[-u user] file ...
MacBookPro-4:~ jpmoran$ sudo nvram boot-args="debug=0x144"
Password:
nvram: Error setting variable - 'boot-args': (iokit/common) not permitted
MacBookPro-4:~ jpmoran$
I meant sudo nvram...Unfortunately no luck with that
Code:MacBookPro-4:~ jpmoran$ sudo boot-args="debug=0x144" usage: sudo -h | -K | -k | -V usage: sudo -v [-AknS] [-g group] [-h host] [-p prompt] [-u user] usage: sudo -l [-AknS] [-g group] [-h host] [-p prompt] [-U user] [-u user] [command] usage: sudo [-AbEHknPS] [-C num] [-g group] [-h host] [-p prompt] [-T timeout] [-u user] [VAR=value] [-i|-s] [<command>] usage: sudo -e [-AknS] [-C num] [-g group] [-h host] [-p prompt] [-T timeout] [-u user] file ... MacBookPro-4:~ jpmoran$ sudo nvram boot-args="debug=0x144" Password: nvram: Error setting variable - 'boot-args': (iokit/common) not permitted MacBookPro-4:~ jpmoran$