Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.
Ok, the results with the USBc cablematters adapter (with the same 16'cablematters HDMI cable) were even weirder.

So first and weirdest, it does not report back the Samsung monitor and instead reports itself as a built in monitor:
1641661083844.png


So it really didnt like the 3840x2160 mode. Initially I could only get it into 4096x2160@30hz and the screen was dim with horrible contrast. Then I had to reset the TV to game mode. After that, it let me switch to 3840x2160@60hz.

Interestingly, the cable matters USBc adapter shows 8k, 6k modes as well, but none of them work. if I try 7680x4320@30hz the TV reports bad signal, however, if I try 7680x4320@60hz, the TV just keeps spinning its 'beachball' trying to sync, but never does.

Anyway, attached is the AGC dump:
Display Path (Active) FB0 DICT 21​
surface_address 0x700000​
surface_bytes 33423360​
bytes_per_row 15360​
bits_per_pixel 32​
bits_per_component 10​
Is Connected YES​
Is Online YES​
Is SW Scaled NO​
WSAA State "Accelerated"​
SW Src Viewport 3840x2160 @ {0,0}​
SW Dst Viewport 3840x2160 @ {0,0}​
Stream Count 1​
FB Index 0​
Group Index 0​
Mode Id 0x80007001​
Depth Index 2​
HW Src Viewport 3840x2160 @ {0,0}​
HW Dst Viewport 3840x2160 @ {0,0}​
Underscan 100 % - {75:100}​
Stream@0 FB0 DICT 13​
Stream ID 0​
Is Enabled YES​
Is DPMS Off NO​
Change Flags 0​
Option Flags 0​
Sink Address 2.0​
HW Src Viewport 3840x2160 @ {0,0}​
HW Dst Viewport 3840x2160 @ {0,0}​
Timing FB0 DICT 24​
Display Mode 80007001​
Refresh Rate (Calculated) 60 Hz​
Refresh Rate (Stored) 0.0 Hz​
Window (Active) 3840 x 2160​
Window (Scaled) 0 x 0​
Scaled Inset 0 x 0​
Pixel Clock 594000000 Hz​
Scaler Flags 0​
Signal Config 0​
Blanking 560 x 90​
Border {left,right} {0, 0}​
Border {top,bottom} {0, 0}​
Sync Offset (h, v) 176 x 8​
Sync Pulse Width (h, v) 88, 10​
Sync Config (h, v) + x +​
Num Links 2​
VB Extension 0​
OUTPUT: Pixel Encoding 8 (YCbCr420)​
OUTPUT: Bits Per Color Component 4 (10 bpc)​
OUTPUT: Colorimetry 256 (BT.2020)​
OUTPUT: Dynamic Range 2 (HDR10)​
DSC: Num Slices 0 x 0​
DSC: Slice Dimensions 0 x 0​
DSC: Compressed BPP 0 bits, (0 bits*16) )​

Overall, the Cablematters adapter seems more "wonky" at least at first blush.

Anyway, appreciate any help making heads or tails of this.
 

Attachments

  • 6_AGD_6900_USBc_CablemattersAdapter_Cablematters16ftHDMICable_4k_60hz.txt
    265.4 KB · Views: 126
As an Amazon Associate, MacRumors earns a commission from qualifying purchases made through links in this post.
  • Like
Reactions: Arvine
Ok so got some extension cables to do some more testing until I get my final mount in place.
They're all rated for HDMI 2.1 40 Gbps at least?

So some interesting results as I'm now testing with the Sabrent USBc adapter and a new 16.4 foot version of this cable.

So first thing that is interesting is that the regular 4k (3840x2160@60hz) does not seem to initially work with this setup, however, setting it to 4096x2160@60hz does work, and then setting back to the 3840 mode then does work. Strange.

The 8k non scaled versions of resolution do not show up at all:
View attachment 1940845
View attachment 1940847
Do the 8K modes still exist in the Custom Resolutions tab? Post a copy of all the files at /Library/Displays/Contents/Resources/Overrides/DisplayVendorID-4c2d.
An issue is that changing the settings of the TV may change the EDID including the product number. For example, previously you posted EDID's that had product ID 0x7154 but these new ones have product ID 0x7153. The dates in the EDIDs are the same, so SwitchResX will use the same override file for both. I want to check the EDID in the override file to see which version it matches (so far I have four different versions from you - one pair for each product ID where each pair has a version that is modified by the VMM6100).

The changes in the EDID that I see with the Realtek (#5_AGD compared to the direct HDMI connection #1#2#3_AGD) are these:
- Model changed to 29011 (0x7153) but the date is the same so the display may be using the older EDID that SwitchResX found.
- the 2560x1440@60Hz mode is replaced by a 120Hz mode.
- An AMD FreeSync VSDB is added: 48Hz to 120 Hz.
I think the direct HDMI connection would have the same EDID if it were using the same TV settings? In other words, I believe the TV settings have changed since you provided the #3_AGD AGDCDiagnose file (game mode wasn't on in #3_AGD?)

You may wish to delete the override file and recreate it from scratch to make sure it has the correct EDID from the TV when connected with the Sabrent adapter.

Also HDR does not show up as an option, even in 4k in the displays panel.
From the AGDCDiagnose output, I see the Sabrent adapter uses the Realtek RTD2173 just like the Club-3d CAC-1085. With my CAC-1085, I could not get HDR to work in macOS until after applying a firmware update.
https://forums.macrumors.com/thread...ransfers-recommendation.2278473/post-29466205
You should contact Realtek for a firmware update, or you could try the one I got for the CAC-1085.

I also tried both 5k resolutions but the TV wouldn't work with them.
Those never worked so they'll probably continue to not work. If you want to try custom resolutions then I suggest experimenting in Windows since the Radeon software gives you more control (RGB, 444, 422, 420; 6,8,10,12 bpp, etc). Use CRU to create the custom resolutions.

So the results from AGC dump are attached.

I wish I knew what to look for in that AGC dump and how to translate that to what I need to enter in the custom resolutions tab of SwitchResX to see if we can get 8k via this route (particularly if we can enable DSC compression), but will need your help to figure that out. Thanks!

That said, snooping at the output I did notice it showed DSC seems to be enabled?
Timing FB0 DICT 24​
Display Mode 80007000​
Refresh Rate (Calculated) 60 Hz​
Refresh Rate (Stored) 0.0 Hz​
Window (Active) 3840 x 2160​
Window (Scaled) 0 x 0​
Scaled Inset 0 x 0​
Pixel Clock 594000000 Hz​
Blanking 560 x 90​
Border {left,right} {0, 0}​
Border {top,bottom} {0, 0}​
Sync Offset (h, v) 176 x 8​
Sync Pulse Width (h, v) 88, 10​
Sync Config (h, v) + x +​
Num Links 2​
VB Extension 0​
OUTPUT: Pixel Encoding 8 (YCbCr420)​
OUTPUT: Bits Per Color Component 4 (10 bpc)​
OUTPUT: Colorimetry 128 (BT.709)​
OUTPUT: Dynamic Range 1 (SDR)​
DSC: Num Slices 0 x 0
DSC: Slice Dimensions 0 x 0
DSC: Compressed BPP 0 bits, (0 bits*16) )
All the zeros means DSC is not being used - and also the zero for the "DSC Enable" flag in the DPCD registers for the display connection. But in the DPCD registers we see that this adapter can support DSC. We may need to figure how to make macOS use DSC. Below are DPCD registers related to DSC. I added some info from https://github.com/torvalds/linux/b...ee4fbd44b3039361d/include/drm/drm_dp_helper.h
Code:
000060: 0x03 0x21 0x00 0x02 0x2b 0x04 0x01 0x00 0x00 0x1f 0x0e 0x11 0x08 0x00 0x00 0x00
  Reg: 000060: 03 : DSC Support: 3                              DP_DSC_SUPPORT: DP_DSC_DECOMPRESSION_IS_SUPPORTED  (1 << 0)
  Reg: 000061: 21 : DSC Algorithm revision: 33                  DP_DSC_REV: 2.1
  Reg: 000062: 00 : DSC RC Buffer Block size: 0                 DP_DSC_RC_BUF_BLK_SIZE: DP_DSC_RC_BUF_BLK_SIZE_1
  Reg: 000063: 02 : DSC RC Buffer size: 2                       DP_DSC_RC_BUF_SIZE: 2?
  Reg: 000064: 2b : DSC slice Capabilities 1 : 43               DP_DSC_SLICE_CAP_1: 8, 4, 2, 1 
  Reg: 000065: 04 : DSC Line buffer bit depth: 4                DP_DSC_LINE_BUF_BIT_DEPTH: 13
  Reg: 000066: 01 : DSC Block prediction support: 1             DP_DSC_BLK_PREDICTION_SUPPORT: supported
  Reg: 000067: 00 : DSC Maximum bit per pixel: 0                DP_DSC_MAX_BITS_PER_PIXEL_LOW
  Reg: 000068: 00 : DSC Maximum bit per pixel: 0                DP_DSC_MAX_BITS_PER_PIXEL_HI: no limit?
  Reg: 000069: 1f : DSC Decoder color format capabilities: 31   DP_DSC_DEC_COLOR_FORMAT_CAP: RGB, 444, 422 simple, 422 native, 444 native
  Reg: 00006a: 0e : DSC decoder color depth capabilities: 14    DP_DSC_DEC_COLOR_DEPTH_CAP: 8, 10, 12bpc
  Reg: 00006b: 11 : DSC Peak Throughput: 17                     DP_DSC_PEAK_THROUGHPUT: 340 megapixels per second for both modes (hopefully per slice?)
  Reg: 00006c: 08 : DSC Maximum Slice width: 8                  DP_DSC_MAX_SLICE_WIDTH: 5120?
  Reg: 00006d: 00 : DSC Slice capabilities 2: 0                 DP_DSC_SLICE_CAP_2:
  Reg: 00006e: 00 : Reserved: 0
  Reg: 00006f: 00 : DSC Bits per pixel increment: 0             DP_DSC_BITS_PER_PIXEL_INC: 1/16th
000160: 0x00
  Reg: 000160: 00 : DSC Enable: 0x0
00020f: 0x00
  Reg: 00020f: 00 : DSC Status: 0
000280: 0x00
  Reg: 000280: 00 : FEC Status: 0
I mentioned the log show command previously. The output from that could determine if macOS is even considering DSC modes.
And don't forget to try the defaults write command I mentioned to set the default DSC bpp to 8 instead of 12. Do the log show before and after to show that the default has changed.

Ok, the results with the USBc cablematters adapter (with the same 16'cablematters HDMI cable) were even weirder.

So first and weirdest, it does not report back the Samsung monitor and instead reports itself as a built in monitor:
View attachment 1940863

So it really didnt like the 3840x2160 mode. Initially I could only get it into 4096x2160@30hz and the screen was dim with horrible contrast. Then I had to reset the TV to game mode. After that, it let me switch to 3840x2160@60hz.

Interestingly, the cable matters USBc adapter shows 8k, 6k modes as well, but none of them work. if I try 7680x4320@30hz the TV reports bad signal, however, if I try 7680x4320@60hz, the TV just keeps spinning its 'beachball' trying to sync, but never does.

Anyway, attached is the AGC dump:
Timing FB0 DICT 24​
Display Mode 80007001​
Refresh Rate (Calculated) 60 Hz​
Refresh Rate (Stored) 0.0 Hz​
Window (Active) 3840 x 2160​
Window (Scaled) 0 x 0​
Scaled Inset 0 x 0​
Pixel Clock 594000000 Hz​
Scaler Flags 0​
Signal Config 0​
Blanking 560 x 90​
Border {left,right} {0, 0}​
Border {top,bottom} {0, 0}​
Sync Offset (h, v) 176 x 8​
Sync Pulse Width (h, v) 88, 10​
Sync Config (h, v) + x +​
Num Links 2​
VB Extension 0​
OUTPUT: Pixel Encoding 8 (YCbCr420)​
OUTPUT: Bits Per Color Component 4 (10 bpc)​
OUTPUT: Colorimetry 256 (BT.2020)​
OUTPUT: Dynamic Range 2 (HDR10)​
DSC: Num Slices 0 x 0​
DSC: Slice Dimensions 0 x 0​
DSC: Compressed BPP 0 bits, (0 bits*16) )​

Overall, the Cablematters adapter seems more "wonky" at least at first blush.

Anyway, appreciate any help making heads or tails of this.
This adapter appears to be very similar to the Decon cable adapter. I mentioned before some of the similarities:
- Both use the VMM6100
- Both do not support DSC - apply the Cable Matters firmware update to at least the Cable Matters adapter. Dump the firmware version and other info (press the dump all button) before and after doing the firmware update.

The EDID changes it makes are similar (comparing #3_AGD with #6_AGD):
- the 8K50 and 8K60 modes are removed.

Actually, there's one difference I can't explain. In #6_AGD, the HDMI 2.1 VSDB has includes VRR 48 to 120Hz but every other EDID does not. I guess we need a dump using a direct connect to the HDMI port to determine if the Cable Matters adapter added that, or if the Sabrent adapter removed that.

I've attached a utility I made to dump some display info. Try it with the Sabrent adapter. It's a work in progress. Run the command like this:
./AllRez > 7_AllRez_Sabrent.txt

I'm still trying to determine where InstallTimingWithWireFormats function in CoreDisplay framework is storing the wired formats and the DSC modes.
Code:
Values for range, encode, bits, color expressed as range_encode_bits_color in show log output:
    range: "legacyRng"=0,"SDR"=1,"HDR10"=2,"DoVI_422"=4,"DoVI_tunnel"=8,"HDR_gamma"=0x10;
    encode: "legacyEnc"=0,"RGB"=1,"444"=2,"422"=4,"420"=8;
    bits: "legacyBit"=0,"_6"=1,"_8"=2,"10"=4,"12"=8,"16"=0x10;
    color: "legacyClr"=0,"Native"=1,"sRGB"=2,"P3"=4,"Adobe"=8,"xvYCC"=0x10,"WGRGB"=0x20,"BT601"=0x40,"BT709"=0x80,"BT2020"=0x100,"BT2100"=0x200;

DSC message in show log output:
    "Attempting to install DSC mode variant with parameters: BPP = %d, Width = %d, Height = %d"


Updates:
Feb 9, 2022: I've updated the AllRez utility again. It now dumps DisplayPort DPCD info. I added some M1 Mac stuff but haven't added the E-DDC, MCCS, DPCD stuff for them yet.
It seems I can't get DisplayPort Sideband Messages (for communicating with DisplayPort devices that are connected to branch devices - MST hubs) or E-DDC (for getting EDID longer than 256 bytes). For those capabilities, an IOFramebuffer patch is required (using something like Lilu/Whatevergreen).
April 19, 2022: The output is more compact (by removing some duplication). Parsed some more items from the IORegistry.
April 26, 2022: Moved AllRez to GitHub. https://github.com/joevt/AllRez
 
Last edited:
As an Amazon Associate, MacRumors earns a commission from qualifying purchases made through links in this post.
They're all rated for HDMI 2.1 40 Gbps at least?

Yes, it's a 48Gbps cable.

Do the 8K modes still exist in the Custom Resolutions tab? Post a copy of all the files at /Library/Displays/Contents/Resources/Overrides/DisplayVendorID-4c2d.
I'm not sure. I attached the file there, and I seem to have the custom resolutions shown in the tab but they have become inactive. I'm also going to switch to the Sabrent USBc adapter for now, since it seems to have DSC, and we might as well shoot for that brass ring.
1641672233852.png




An issue is that changing the settings of the TV may change the EDID including the product number. For example, previously you posted EDID's that had product ID 0x7154 but these new ones have product ID 0x7153. The dates in the EDIDs are the same, so SwitchResX will use the same override file for both. I want to check the EDID in the override file to see which version it matches (so far I have four different versions from you - one pair for each product ID where each pair has a version that is modified by the VMM6100).


The changes in the EDID that I see with the Realtek (#5_AGD compared to the direct HDMI connection #1#2#3_AGD) are these:
- Model changed to 29011 (0x7153) but the date is the same so the display may be using the older EDID that SwitchResX found.
- the 2560x1440@60Hz mode is replaced by a 120Hz mode.
- An AMD FreeSync VSDB is added: 48Hz to 120 Hz.
I think the direct HDMI connection would have the same EDID if it were using the same TV settings? In other words, I believe the TV settings have changed since you provided the #3_AGD AGDCDiagnose file (game mode wasn't on in #3_AGD?)
I think that's right. I probably didnt figure out game mode at that point.

You may wish to delete the override file and recreate it from scratch to make sure it has the correct EDID from the TV when connected with the Sabrent adapter.
I assume I do that by deleting the custom resolutions in the SwitchResX and re-entering. Do I re-enter with the same 8k settings we successfully used before, or are there variations shown in the ADC dump file that I need to use?

From the AGDCDiagnose output, I see the Sabrent adapter uses the Realtek RTD2173 just like the Club-3d CAC-1085. With my CAC-1085, I could not get HDR to work in macOS until after applying a firmware update.
https://forums.macrumors.com/thread...ransfers-recommendation.2278473/post-29466205
You should contact Realtek for a firmware update, or you could try the one I got for the CAC-1085.
I guess I can roam around the Sabrent site and see if I can find a firmware update. Right now, I kind of dont care about HDR and am curious to see if we can just get 8k to work, it's a 2ndary "nice to have" feature IMO. But I will look.

Those never worked so they'll probably continue to not work. If you want to try custom resolutions then I suggest experimenting in Windows since the Radeon software gives you more control (RGB, 444, 422, 420; 6,8,10,12 bpp, etc). Use CRU to create the custom resolutions.


All the zeros means DSC is not being used - and also the zero for the "DSC Enable" flag in the DPCD registers for the display
Ah, thank you for that.

connection. But in the DPCD registers we see that this adapter can support DSC. We may need to figure how to make macOS use DSC. Below are DPCD registers related to DSC. I added some info from https://github.com/torvalds/linux/b...ee4fbd44b3039361d/include/drm/drm_dp_helper.h
Code:
000060: 0x03 0x21 0x00 0x02 0x2b 0x04 0x01 0x00 0x00 0x1f 0x0e 0x11 0x08 0x00 0x00 0x00
  Reg: 000060: 03 : DSC Support: 3                              DP_DSC_SUPPORT: DP_DSC_DECOMPRESSION_IS_SUPPORTED  (1 << 0)
  Reg: 000061: 21 : DSC Algorithm revision: 33                  DP_DSC_REV: 2.1
  Reg: 000062: 00 : DSC RC Buffer Block size: 0                 DP_DSC_RC_BUF_BLK_SIZE: DP_DSC_RC_BUF_BLK_SIZE_1
  Reg: 000063: 02 : DSC RC Buffer size: 2                       DP_DSC_RC_BUF_SIZE: 2?
  Reg: 000064: 2b : DSC slice Capabilities 1 : 43               DP_DSC_SLICE_CAP_1: 8, 4, 2, 1
  Reg: 000065: 04 : DSC Line buffer bit depth: 4                DP_DSC_LINE_BUF_BIT_DEPTH: 13
  Reg: 000066: 01 : DSC Block prediction support: 1             DP_DSC_BLK_PREDICTION_SUPPORT: supported
  Reg: 000067: 00 : DSC Maximum bit per pixel: 0                DP_DSC_MAX_BITS_PER_PIXEL_LOW
  Reg: 000068: 00 : DSC Maximum bit per pixel: 0                DP_DSC_MAX_BITS_PER_PIXEL_HI: no limit?
  Reg: 000069: 1f : DSC Decoder color format capabilities: 31   DP_DSC_DEC_COLOR_FORMAT_CAP: RGB, 444, 422 simple, 422 native, 444 native
  Reg: 00006a: 0e : DSC decoder color depth capabilities: 14    DP_DSC_DEC_COLOR_DEPTH_CAP: 8, 10, 12bpc
  Reg: 00006b: 11 : DSC Peak Throughput: 17                     DP_DSC_PEAK_THROUGHPUT: 340 megapixels per second for both modes (hopefully per slice?)
  Reg: 00006c: 08 : DSC Maximum Slice width: 8                  DP_DSC_MAX_SLICE_WIDTH: 5120?
  Reg: 00006d: 00 : DSC Slice capabilities 2: 0                 DP_DSC_SLICE_CAP_2:
  Reg: 00006e: 00 : Reserved: 0
  Reg: 00006f: 00 : DSC Bits per pixel increment: 0             DP_DSC_BITS_PER_PIXEL_INC: 1/16th
000160: 0x00
  Reg: 000160: 00 : DSC Enable: 0x0
00020f: 0x00
  Reg: 00020f: 00 : DSC Status: 0
000280: 0x00
  Reg: 000280: 00 : FEC Status: 0
I mentioned the log show command previously. The output from that could determine if macOS is even considering DSC modes.
And don't forget to try the defaults write command I mentioned to set the default DSC bpp to 8 instead of 12. Do the log show before and after to show that the default has changed.

So I see your dwrite post 172 here. But not sure I know what the log show command is, do you mean through windows per this post 152 using the Debug message, or more likely per this post 140?

This adapter appears to be very similar to the Decon cable adapter. I mentioned before some of the similarities:
- Both use the VMM6100
- Both do not support DSC - apply the Cable Matters firmware update to at least the Cable Matters adapter. Dump the firmware version and other info (press the dump all button) before and after doing the firmware update.

The EDID changes it makes are similar (comparing #3_AGD with #6_AGD):
- the 8K50 and 8K60 modes are removed.

Actually, there's one difference I can't explain. In #6_AGD, the HDMI 2.1 VSDB has includes VRR 48 to 120Hz but every other EDID does not. I guess we need a dump using a direct connect to the HDMI port to determine if the Cable Matters adapter added that, or if the Sabrent adapter removed that.
Ok, do I dump via the above post 140 method or your attached utility?

I've attached a utility I made to dump some display info. Try it with the Sabrent adapter. It's a work in progress. Run the command like this:
./AllRez 2> 7_AllRez_Sabrent.txt

I'm still trying to determine where InstallTimingWithWireFormats function in CoreDisplay framework is storing the wired formats and the DSC modes.
Code:
Values for range, encode, bits, color expressed as range_encode_bits_color in show log output:
    range: "legacyRng"=0,"SDR"=1,"HDR10"=2,"DoVI_422"=4,"DoVI_tunnel"=8,"HDR_gamma"=0x10;
    encode: "legacyEnc"=0,"RGB"=1,"444"=2,"422"=4,"420"=8;
    bits: "legacyBit"=0,"_6"=1,"_8"=2,"10"=4,"12"=8,"16"=0x10;
    color: "legacyClr"=0,"Native"=1,"sRGB"=2,"P3"=4,"Adobe"=8,"xvYCC"=0x10,"WGRGB"=0x20,"BT601"=0x40,"BT709"=0x80,"BT2020"=0x100,"BT2100"=0x200;

DSC message in show log output:
    "Attempting to install DSC mode variant with parameters: BPP = %d, Width = %d, Height = %d"
 

Attachments

  • DisplayYearManufacture-2021-DisplayWeekManufacture-1.txt
    1.2 KB · Views: 126
Last edited:
So I think I messed something up on your log show command, this is what I typed

sh-3.2# log config --status --subsystem com.apple.CoreDisplay
Mode for 'com.apple.CoreDisplay' INFO PERSIST_DEFAULT​
sh-3.2# timestart="$(date "+%Y-%m-%d %H:%M:%S")"
sh-3.2# timeend="$(date "+%Y-%m-%d %H:%M:%S")"
sh-3.2# /usr/bin/log show --start $timestart --end $timeend --info --debug --style compact --source > log_USBc_HMDI_connectTest1.txt
Unused argument: 14:45:56​
Unused argument: 14:45:24​
Too many arguments to 'show' verb​
usage: log show [options] <archive>​
or: log show [options]​
description:​
Show the contents of the system log datastore or a log archive.​
Output contains only default level messages unless --info and/or​
--debug are specified.​
options:​
--[no-]backtrace Control whether backtraces are shown​
--[no-]debug Control whether "Debug" events are shown​
--[no-]info Control whether "Info" events are shown​
--[no-]loss Control whether message loss events are shown​
--[no-]signpost Control whether signposts are shown​
--color <mode> Control color output (valid: auto, always, none)​
--end <date> Display events up to the given end date​
--last <num>[m|h|d] Display recent events up to the given limit​
--[no-]pager Paginate output using less.​
--predicate <predicate> Filter events using the given predicate​
--process <pid> | <process> Filter events using the specified process​
--source Annotate output with source file and line-number​
--start <date> Display events from the given start date​
--style <style> Output format (valid: default, syslog, json, ndjson, compact)​
--timezone local | <tz> Use the given timezone when displaying event timestamps​
--mach-continuous-time Print mach continuous time timestamps rather than walltime​
valid time formats:​
'Y-M-D H:m:s+zzzz', 'Y-M-D H:m:s', 'Y-M-D', '@unixtime'​
predicate usage:​
Filter predicates follow the NSPredicate format described at:​
For predicate field/type details, see `log help predicates`.​

sh-3.2#

The file it generated was empty.
 
What OS are you running? Why is it running sh instead of zsh? Anyway, just put quotes around the times like this:
log show --start "$timestart" --end "$timeend" --info --debug --style compact --source > log_USBc_HMDI_connectTest1.txt

but don't forget to set the log level of CoreDisplay to debug first:
sudo log config --subsystem com.apple.CoreDisplay --mode level:debug
 
What OS are you running? Why is it running sh instead of zsh? Anyway, just put quotes around the times like this:
log show --start "$timestart" --end "$timeend" --info --debug --style compact --source > log_USBc_HMDI_connectTest1.txt

but don't forget to set the log level of CoreDisplay to debug first:
sudo log config --subsystem com.apple.CoreDisplay --mode level:debug

Running 12.1. I suspect because I log into root to run it because Im too lazy to use sudo and enter password multiple times. :D

Ok, I ran it, but I dont want to upload the entire file as it has a ton of email and other user account stuff. Is there a some specific command stuff I can search for and copy into a file for you? I did a grep of the file for "CoreDisplay" stuff in the file and copied it out. Does that help?

I saw it saying interesting things like "Attempting to install DSC mode variant with parameters".
 

Attachments

  • log_USBc_HMDI_connectTest1_CoreDisplayGrep.txt
    2 MB · Views: 185
Running 12.1. I suspect because I log into root to run it because Im too lazy to use sudo and enter password multiple times. :D

Ok, I ran it, but I dont want to upload the entire file as it has a ton of email and other user account stuff. Is there a some specific command stuff I can search for and copy into a file for you? I did a grep of the file for "CoreDisplay" stuff in the file and copied it out. Does that help?

I saw it saying interesting things like "Attempting to install DSC mode variant with parameters".
Yes, you can use grep to reduce the output. The log command has a --predicate option that lets you do arbitrarily complicated matching using expressions and logical or arithmetic operators but grep is easier for simpler matching.

Look at the original file that was produced, find lines that might be interesting, add it to the grep regular expression like this:
egrep -i -e "CoreDisplay|IODisplay|IOFB|SkyLight|AMD|Intel|WindowServer|Framebuffer" log_USBc_HMDI_connectTest1.txt > log_USBc_HMDI_connectTest1_grepped.txt
Of course CoreDisplay is the most important one.

Use the Finder to zip the result so it takes less time to upload and download and takes less space on the MacRumors servers.

Anyway, we can see from your output that macOS does consider DSC.
Code:
Attempting to install DSC mode variant with parameters: BPP = 192, Width = 480, Height = 1080
Attempting to install DSC mode variant with parameters: BPP = 192, Width = 960, Height = 1080
Attempting to install DSC mode variant with parameters: BPP = 192, Width = 1920, Height = 1080

Attempting to install DSC mode variant with parameters: BPP = 192, Width = 960, Height = 2160
Attempting to install DSC mode variant with parameters: BPP = 192, Width = 1920, Height = 2160
Attempting to install DSC mode variant with parameters: BPP = 192, Width = 3840, Height = 2160

Attempting to install DSC mode variant with parameters: BPP = 192, Width = 1024, Height = 2160
Attempting to install DSC mode variant with parameters: BPP = 192, Width = 2048, Height = 2160
Attempting to install DSC mode variant with parameters: BPP = 192, Width = 4096, Height = 2160

Attempting to install DSC mode variant with parameters: BPP = 192, Width = 1504, Height = 3384
Attempting to install DSC mode variant with parameters: BPP = 192, Width = 3008, Height = 3384

Attempting to install DSC mode variant with parameters: BPP = 192, Width = 1920, Height = 4320
Attempting to install DSC mode variant with parameters: BPP = 192, Width = 3840, Height = 4320

You haven't done the defaults write command yet to change the default DSC bpp to 8, so macOS is using the default 12 bpp (192 sixteenths of a bit per pixel = 12 bpp - this is an average bpp that the DSC compression must do).
I think the widths are for each slice so in the first case, 480x1080 is probably 4 slices to make 1920x1080.
You see that it's testing different number of slices for each resolution. In the case of 1920x1080, 3840x2160, and 4096x2160, it tries 1,2 and 4 slices. But for resolutions having width greater than the DSC Maximum Slice width (5120) such as your custom 6K 6016x3384 and the 8K 7680x4320 modes, it tries 2 and 4 slices.

The CoreDisplay log output doesn't say if the attempt to install the DSC modes is successful. So try the AllRez command (in it's currently limited state) to see if it shows anything.

Then do the defaults write command, reboot, and post another log and allrez and check the current resolutions in SwitchResX for changes.
 
Last edited:
  • Like
Reactions: Arvine
This is getting really complex :) Anyway... still waiting for my Sabrent adapter to be delivered but you already begin tinkering with it! You're great guys...

@ZombiePhysicist were you able to understand if it's VRR that disables dithering on Samsung TV? As I said, in Win 11 the only thing that makes dither disappear was enabling VRR for me, which seems to be inactive on macOS + HDMI 2.1 direct GPU port. Is passing trough the DisplayPort / USB - C port doing the trick? Or you just found a way to disable dithering someway different?
 
Last edited:
This is getting really complex :) Anyway... still waiting for my Sabrent adapter to be delivered but you already begin tinkering with it! You're great guys...

@ZombiePhysicist were you able to understand if it's VRR that disables dithering on Samsung TV? As I said, in Win 11 the only thing that makes dither disappear was enabling VRR for me, which seems to be inactive on macOS + HDMI 2.1 direct GPU port. Is passing trough the DisplayPort / USB - C port doing the trick? Or you just found a way to disable dithering someway different?

Have no idea. What consistently disables dithering on the Samsung for me is enabling game mode.
 
  • Wow
Reactions: PieroPontra
Yes, you can use grep to reduce the output. The log command has a --predicate option that lets you do arbitrarily complicated matching using expressions and logical or arithmetic operators but grep is easier for simpler matching.

Look at the original file that was produced, find lines that might be interesting, add it to the grep regular expression like this:
egrep -i -e "CoreDisplay|IODisplay|IOFB|SkyLight|AMD|Intel|WindowServer|Framebuffer" log_USBc_HMDI_connectTest1.txt > log_USBc_HMDI_connectTest1_grepped.txt
Of course CoreDisplay is the most important one.

Use the Finder to zip the result so it takes less time to upload and download and takes less space on the MacRumors servers.

Anyway, we can see from your output that macOS does consider DSC.
Code:
Attempting to install DSC mode variant with parameters: BPP = 192, Width = 480, Height = 1080
Attempting to install DSC mode variant with parameters: BPP = 192, Width = 960, Height = 1080
Attempting to install DSC mode variant with parameters: BPP = 192, Width = 1920, Height = 1080

Attempting to install DSC mode variant with parameters: BPP = 192, Width = 960, Height = 2160
Attempting to install DSC mode variant with parameters: BPP = 192, Width = 1920, Height = 2160
Attempting to install DSC mode variant with parameters: BPP = 192, Width = 3840, Height = 2160

Attempting to install DSC mode variant with parameters: BPP = 192, Width = 1024, Height = 2160
Attempting to install DSC mode variant with parameters: BPP = 192, Width = 2048, Height = 2160
Attempting to install DSC mode variant with parameters: BPP = 192, Width = 4096, Height = 2160

Attempting to install DSC mode variant with parameters: BPP = 192, Width = 1504, Height = 3384
Attempting to install DSC mode variant with parameters: BPP = 192, Width = 3008, Height = 3384

Attempting to install DSC mode variant with parameters: BPP = 192, Width = 1920, Height = 4320
Attempting to install DSC mode variant with parameters: BPP = 192, Width = 3840, Height = 4320

You haven't done the defaults write command yet to change the default DSC bpp to 8, so macOS is using the default 12 bpp (192 sixteenths of a bit per pixel = 12 bpp - this is an average bpp that the DSC compression must do).
I think the widths are for each slice so in the first case, 480x1080 is probably 4 slices to make 1920x1080.
You see that it's testing different number of slices for each resolution. In the case of 1920x1080, 3840x2160, and 4096x2160, it tries 1,2 and 4 slices. But for resolutions having width greater than the DSC Maximum Slice width (5120) such as your custom 6K 6016x3384 and the 8K 7680x4320 modes, it tries 2 and 4 slices.

The CoreDisplay log output doesn't say if the attempt to install the DSC modes is successful. So try the AllRez command (in it's currently limited state) to see if it shows anything.

Then do the defaults write command, reboot, and post another log and allrez and check the current resolutions in SwitchResX for changes.

Thanks, I'm going to create a little scratch disk to boot into and do all this stuff. I dont want to mess with my production setup beyond what I've done. Will try and report back. Thank you!
 
Ok the Sabrent DA-UCH8 USB-C to HDMI 2.1 doesn't work. I can't use @ZombiePhysicist custom SwitchResX parameters and, even worse, in Windows I'm limited to 8K 30Hz no VRR 8 bit and dithering. I suspect the USB-C DP Alt Mode port of the 6800 XT doesn't support DSC. Should I try a more straightforward DP -- > HDMI adapter just like zombie? I suppose so...

The thing is: CableDeconn cable it's advertised for 8K 30Hz, and I think that's the reason why it goes 4:2:0 8 bit for zombie, basically trading color accuracy for faster refresh rate.

Can't Apple just support this 2.1 standards? it's terribly annoying seeing windows handling this stuff smooth as butter and macos staying behind because Apple's making whims.

1641805019288.png


So... which one? Club3d adapter (advertised as 8K 60Hz DSC compatible but no VRR maybe?) OR Cabledeconn cable (8K 30Hz ?!? VRR ?!?) please check image below for reference. Can you @ZombiePhysicist please verify if you got VRR (basic HDMI VRR / Freesync / G-Sync) at least in windows?

@joevt any update on the kext way? Maybe there’s some hope in tweaking macOS drivers? I’m out of the return window, this risks to cost me a lot :eek::eek::eek:

1641806978227.png
 
Last edited:
Ok the Sabrent DA-UCH8 USB-C to HDMI 2.1 doesn't work. I can't use @ZombiePhysicist custom SwitchResX parameters and, even worse, in Windows I'm limited to 8K 30Hz no VRR 8 bit and dithering. I suspect the USB-C DP Alt Mode port of the 6800 XT doesn't support DSC. Should I try a more straightforward DP -- > HDMI adapter just like zombie? I suppose so...

The thing is: CableDeconn cable it's advertised for 8K 30Hz, and I think that's the reason why it goes 4:2:0 8 bit for zombie, basically trading color accuracy for faster refresh rate.

Can't Apple just support this 2.1 standards? it's terribly annoying seeing windows handling this stuff smooth as butter and macos staying behind because Apple's making whims.

View attachment 1941831

So... which one? Club3d adapter (advertised as 8K 60Hz DSC compatible but no VRR maybe?) OR Cabledeconn cable (8K 30Hz ?!? VRR ?!?) please check image below for reference. Can you @ZombiePhysicist please verify if you got VRR (basic HDMI VRR / Freesync / G-Sync) at least in windows?

@joevt any update on the kext way? Maybe there’s some hope in tweaking macOS drivers? I’m out of the return window, this risks to cost me a lot :eek::eek::eek:

View attachment 1941841

What TV do you have? If it's a Samgsung, did you put it into game mode? I would make sure it's in game mode and try things again.

I show how to get into game mode in post 149.
 
What TV do you have? If it's a Samgsung, did you put it into game mode? I would make sure it's in game mode and try things again.

I show how to get into game mode in post 149.
Yeah sure, it's a 55QN700A which is basically a small QN800A MiniLED and in macOS dither stays even in game mode at 4K@60. In Win 11 the only things that make dither go is Game Mode + VRR or Game Mode + 120Hz
 
Yeah sure, it's a 55QN700A which is basically a small QN800A MiniLED and in macOS dither stays even in game mode at 4K@60. In Win 11 the only things that make dither go is Game Mode + VRR or Game Mode + 120Hz

So interesting. Game mode makes it go away for me, seemingly, regardless of what cable/OS I have plugged in. I wonder if a firmware update might help? My TV updated its firmware as soon as I connected it to internet.
 
So interesting. Game mode makes it go away for me, seemingly, regardless of what cable/OS I have plugged in. I wonder if a firmware update might help? My TV updated its firmware as soon as I connected it to internet.
Samsung today released an update for my model and... guess what? Useless
 
Just FYI, I havent found a firmware update for the Sabrent USBc/HDMI adapter.

Here is the site:

Here is the firmware download site:

I looked based on its model number which I think is this DA-UCH8, but didnt see anything.
 
Just FYI, I havent found a firmware update for the Sabrent USBc/HDMI adapter.

Here is the site:

Here is the firmware download site:

I looked based on its model number which I think is this DA-UCH8, but didnt see anything.
Can you get 4K or 1080p HDR in macOS using the Sabrent adapter? If so, then you probably don't need a firmware update (make sure the adapter supports HDR in Windows first). They won't have a firmware update unless they know of a problem. Then they'll ask Realtek if they have updates that might fix the problem. Then they'll post the update in their downloads section if they know it fixes a problem.

The firmware I received from Club-3d for the CAC-1085 updated the version from 0.09 to 1.07. I've attached the updater. I don't know if it works with the Sabrent, but maybe you can use it to check the firmware's current version. In Windows, install the billboard driver according to the instructions in the CAC-1085 firmware update instructions.rtfd file (you may need to view that in macOS), then run the 01_ReadVersion.bat file to get the firmware version.
 

Attachments

  • CAC-1085 1.07 firmware update.zip
    10.9 MB · Views: 133
Can you get 4K or 1080p HDR in macOS using the Sabrent adapter? If so, then you probably don't need a firmware update (make sure the adapter supports HDR in Windows first). They won't have a firmware update unless they know of a problem. Then they'll ask Realtek if they have updates that might fix the problem. Then they'll post the update in their downloads section if they know it fixes a problem.

The firmware I received from Club-3d for the CAC-1085 updated the version from 0.09 to 1.07. I've attached the updater. I don't know if it works with the Sabrent, but maybe you can use it to check the firmware's current version. In Windows, install the billboard driver according to the instructions in the CAC-1085 firmware update instructions.rtfd file (you may need to view that in macOS), then run the 01_ReadVersion.bat file to get the firmware version.
I’m trying this too with the Sabrent.

What do you think about my actual condition? Should I buy the Club3D CAC-1085 or the Cabledeconn cable?

And, speaking of this 2.1 mess with Apple, what’s your opinion? Do you think we’ll find a way to force it to work or we just have to hope Apple will embrace 2.1?

What about your ideas regarding drivers for Navi 21 in MacOS and whatevergreen kext?

Sorry, I don’t want to stress you but you seem to be skilled in this and, you know… you need an engineer to build a bridge ?
 
I’m trying this too with the Sabrent.
I'll look forward to any info you post about your setup and attempts (all the info gathering methods that I described previously).

What do you think about my actual condition? Should I buy the Club3D CAC-1085 or the Cabledeconn cable?
The Cabledeconn cable doesn't interest me since it doesn't support DSC (unless you want to try updating its firmware with the Cable Matters 20138 firmware). You may want to try it to see if you can reproduce ZombiePhysicist's 8K60 4:2:0 success. That would be an interesting data point.

And, speaking of this 2.1 mess with Apple, what’s your opinion? Do you think we’ll find a way to force it to work or we just have to hope Apple will embrace 2.1?
Hoping for Apple to do something is a waste of time. They may get around to it eventually. They might require you to buy a new Mac to get the feature you want, because why give it you for free?

What about your ideas regarding drivers for Navi 21 in MacOS and whatevergreen kext?
I'm still looking into it. These things don't happen overnight.
 
I'll look forward to any info you post about your setup and attempts (all the info gathering methods that I described previously).


The Cabledeconn cable doesn't interest me since it doesn't support DSC (unless you want to try updating its firmware with the Cable Matters 20138 firmware). You may want to try it to see if you can reproduce ZombiePhysicist's 8K60 4:2:0 success. That would be an interesting data point.


Hoping for Apple to do something is a waste of time. They may get around to it eventually. They might require you to buy a new Mac to get the feature you want, because why give it you for free?


I'm still looking into it. These things don't happen overnight.
So basically we have no cable / adapter DP 1.4 to HDMI 2.1 which actually supports DSC? Sabrent one is supposed to do, but it doesn't work and I don't know if it's adapter's fault or USB-C port on GPU not supporting DSC. Which cable / adapter do you suggest (based on your tests and guessing)?

I tried to check / update firmware on it, but it seems it's not recognized by the software. It runs, but shows no infos.

Ok... fingers crossed for whatevergreen magics. Thanks a lot for your big support.
 
So basically we have no cable / adapter DP 1.4 to HDMI 2.1 which actually supports DSC? Sabrent one is supposed to do, but it doesn't work and I don't know if it's adapter's fault or USB-C port on GPU not supporting DSC. Which cable / adapter do you suggest (based on your tests and guessing)?
@ZombiePhysicist 's adapter and TV support DSC. We just haven't found a way to get macOS to use DSC with them yet. Tests remain to be completed.

We don't know anything about your adapter or TV since you have not provided any of the requested info.

I tried to check / update firmware on it, but it seems it's not recognized by the software. It runs, but shows no infos.
You installed the billboard driver first? I suppose it's possible that the firmware updater checks for a certain product even though the products use the same chip.
 
@ZombiePhysicist 's adapter and TV support DSC. We just haven't found a way to get macOS to use DSC with them yet. Tests remain to be completed.

We don't know anything about your adapter or TV since you have not provided any of the requested info.


You installed the billboard driver first? I suppose it's possible that the firmware updater checks for a certain product even though the products use the same chip.
I have the same Sabrent adapter as Zombie's, the USB-C to HDMI 2.1 one
I have a Samsung UE55QN700A which supports HDMI 2.1 on all ports with DSC tested working at 8K 60Hz FullRGB / YCbCr 4:4:4 10 bit VRR Freesync HDR in Windows 11 tested with a direct HDMI 2.1 connection with GPU's HDMI port and TV
Please ask for any other info you need

Yes I installed the driver first with no luck.

Immagine 2022-01-11 151238.jpg
 
Last edited:
I have the same Sabrent adapter as Zombie's, the USB-C to HDMI 2.1 one
I have a Samsung UE55QN700A which supports HDMI 2.1 on all ports with DSC tested working at 8K 60Hz FullRGB / YCbCr 4:4:4 10 bit VRR Freesync HDR in Windows 11 tested with a direct HDMI 2.1 connection with GPU's HDMI port and TV
Please ask for any other info you need
View attachment 1942365
Everything I asked from @ZombiePhysicist:
- Tests in Windows to see if 8K60 works from HDMI and from DisplayPort adapter.
- AGDCDiagnose for the TV connected to HDMI and another for the TV connected to each DisplayPort adapter #93
- A screenshot of the Display Information tab in SwitchResX for each connection type. Override the frequency ranges if they're not at least 200Hz, 400kHz, 2400MHz.
- Custom timings in SwitchResX for 4K120, 5K30, 5K60, 6K30, 6K60, 8K30, 8K60 #99 - #109
- The log show commands of #140 or #180 with grep command from #182
- The defaults write command to change default DSC bpp #172 then redo log show with this setting.
- The AllRez command after each change in connection or settings #177

Is HDR possible with the Sabrent in macOS? If not, then you can send an e-mail to Sabrent tech support to get a firmware update like the one that solves the same problem for the CAC-1085 which has the same chip.
 
  • Like
Reactions: ZombiePhysicist
Everything I asked from @ZombiePhysicist:
- Tests in Windows to see if 8K60 works from HDMI and from DisplayPort adapter.
- AGDCDiagnose for the TV connected to HDMI and another for the TV connected to each DisplayPort adapter #93
- A screenshot of the Display Information tab in SwitchResX for each connection type. Override the frequency ranges if they're not at least 200Hz, 400kHz, 2400MHz.
- Custom timings in SwitchResX for 4K120, 5K30, 5K60, 6K30, 6K60, 8K30, 8K60 #99 - #109
- The log show commands of #140 or #180 with grep command from #182
- The defaults write command to change default DSC bpp #172 then redo log show with this setting.
- The AllRez command after each change in connection or settings #177

Is HDR possible with the Sabrent in macOS? If not, then you can send an e-mail to Sabrent tech support to get a firmware update like the one that solves the same problem for the CAC-1085 which has the same chip.
Well... this is overwhelming unfortunately. I don't know what AGDCDiagnose is, I don't even know the existence of SwitchResX since the other day, I don't know how to use terminal commands. I'm feeling like an idiot, believe me, I don't think I'll be able to give this kind of help... basically out of reach for me. I'm sorry, really sorry... maybe I should just shut up and wait for you guys to came to some conclusion?
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.