Giter Site home page Giter Site logo

Comments (61)

lazosweb avatar lazosweb commented on June 5, 2024 1

@vulgo Hi Vulgo, I think I made it work. Can you confirm also?

I copied what you have above with one small difference when I saw that force-online.
On the connectors of the HackinTool they have this "CNConnectorAlwaysConnected" and it will change the flag value to 0x000003CF from 0x000003C7

If you do not mind can you give it a go if indeed works for you. I tried it on my end and it works on reboot and shutdown.

<key>PciRoot(0x0)/Pci(0x2,0x0)</key>
	<dict>
		<key>AAPL,GfxYTile</key>
		<data>AQAAAA==</data>
		<key>AAPL,ig-platform-id</key>
		<data>BwCbPg==</data>
		<key>force-online</key>
		<data>AQAAAA==</data>
		<key>force-online-framebuffers</key>
		<data>AgAAAA==</data>
		<key>framebuffer-con1-enable</key>
		<data>AQAAAA==</data>
		<key>framebuffer-con1-flags</key>
		<data>zwMAAA==</data>
		<key>framebuffer-con1-type</key>
		<data>AAgAAA==</data>
		<key>framebuffer-memorycount</key>
		<data>AgAAAA==</data>
		<key>framebuffer-patch-enable</key>
		<data>AQAAAA==</data>
		<key>framebuffer-pipecount</key>
		<data>AgAAAA==</data>
		<key>framebuffer-portcount</key>
		<data>AgAAAA==</data>
		<key>framebuffer-unifiedmem</key>
		<data>AAAAgA==</data>
	</dict>

Update 1:
After further investigation I have a feeling the reason it works is different or in combination with the above.
This is what I realised...
When the monitor with the HDMI, the resolution is set to default for display the artifacts appear.
Screen Shot 2021-09-14 at 00 47 21

Then, because of the changes above, 2 refresh rates appear and if you click scaled and you pick one of the 2 refresh rates which is the same anyway it forces the screen to save the display information to scaled instead of default for the display and that what fixes this issue. The next time you reboot the scaled will be selected. If you go back to default for display with the above combination it wont work unless you change it back to scaled.
Screen Shot 2021-09-14 at 00 51 24

from prime-b460i-plus-hackintosh.

vulgo avatar vulgo commented on June 5, 2024 1

@lazosweb alright, have a good day.

from prime-b460i-plus-hackintosh.

vulgo avatar vulgo commented on June 5, 2024 1

OK thanks!

from prime-b460i-plus-hackintosh.

vulgo avatar vulgo commented on June 5, 2024 1

Thanks, i can see that your HDMI attached 1440p monitor also has restore states with differing pixel formats. Assuming the configuration with the lower depth is correct, you could try replacing those files with these ones attached. Reboot without framebuffer-con1-flags but with force-online for wake fix and see what happens.

windowserver.zip

from prime-b460i-plus-hackintosh.

lazosweb avatar lazosweb commented on June 5, 2024 1

Will do, but right now I have to go to work. It's 7:40am here :) I will let you know later when I am back home :)

from prime-b460i-plus-hackintosh.

vulgo avatar vulgo commented on June 5, 2024 1

from prime-b460i-plus-hackintosh.

vulgo avatar vulgo commented on June 5, 2024 1

If you open the windowserver plist in you can see it saves the user's current mode, resolution, colour depth, format etc in excruciating detail for each monitor.

If you can find out for me the product id for each monitor and tell me which one is plugged into the HDMI port I might be able to try again.

DisplayProductID in the IORegistry on an AppleDisplay node

Screenshot 2022-09-14 at 18 20 13

Or in the property list itself.

Deleting the files then booting with only the HDMI monitor connected should tell you what you need to know.

from prime-b460i-plus-hackintosh.

vulgo avatar vulgo commented on June 5, 2024 1

They made a desktop computer out of a tablet, the original M1 mini will be cheap when ours becomes obsolete with modern connectivity.

from prime-b460i-plus-hackintosh.

vulgo avatar vulgo commented on June 5, 2024 1

The chipset and RAM was the last thing I bought, i was waiting for Ice Lake low end edit: mid-end desktop

from prime-b460i-plus-hackintosh.

vulgo avatar vulgo commented on June 5, 2024

Yes @lazosweb! HDMI working here with your framebuffer-con1-flags 🥇

With CNConnectorAlwaysConnected bit set...

0x000003C7 0x000003CF
av-signal-type <08 00 00 00> <00 00 00 00>
connector-type <00 08 00 00> <00 08 00 00>
port-number 0x6 0x0

...the HDMI framebuffer connector-type remains as HDMI but the port-number and av-signal-type have changed. The connected monitor is now presented as Built-in Display or iMac. The Hackintool Displays tab might be able to harmonise things.

Before CNConnectorAlwaysConnected the framebuffer driver was getting confused

EDIT: but with WhateverGreen force-online workaround the display status that gets returned is actually 1

kernel: (AppleIntelCFLGraphicsFramebuffer) [IGFB][LOG  ][DISPLAY   ] FB1 Getting display status
kernel: (AppleIntelCFLGraphicsFramebuffer) [IGFB][LOG  ][POWER     ] FB1 Setting DP power state = 1
kernel: (AppleIntelCFLGraphicsFramebuffer) [IGFB][ERROR  ] FB1: WriteAUX Timeout for addr 600 with Status = 0xe00002d6
kernel: (AppleIntelCFLGraphicsFramebuffer) [IGFB][ERROR  ] FB1: ReadAUX Timeout for addr 600 with Status = 0xe00002d6
kernel: (AppleIntelCFLGraphicsFramebuffer) [IGFB][ERROR  ] FB1: WriteAUX Timeout for addr 600 with Status = 0xe00002d6
kernel: (AppleIntelCFLGraphicsFramebuffer) [IGFB][ERROR  ] FB1: ReadAUX Timeout for addr 600 with Status = 0xe00002d6
kernel: (AppleIntelCFLGraphicsFramebuffer) [IGFB][ERROR  ] FB1: WriteAUX Timeout for addr 600 with Status = 0xe00002d6
kernel: (AppleIntelCFLGraphicsFramebuffer) [IGFB][ERROR  ] FB1: ReadAUX Timeout for addr 600 with Status = 0xe00002d6
kernel: (AppleIntelCFLGraphicsFramebuffer) [IGFB][LOG  ][POWER     ] Set DP power state failed. Returned state 0
kernel: (AppleIntelCFLGraphicsFramebuffer) [IGFB][LOG  ][DISPLAY   ] Setting DP power failed (0xe00002bc), ignoring empty dongle handling (likely HDMI/TMDS case)
kernel: (AppleIntelCFLGraphicsFramebuffer) [IGFB][LOG  ][DISPLAY   ] FB1 Display status is = 0

now

kernel: (AppleIntelCFLGraphicsFramebuffer) [IGFB][LOG  ][DISPLAY   ] FB1 Getting display status
kernel: (AppleIntelCFLGraphicsFramebuffer) [IGFB][LOG  ][DISPLAY   ] FB1 Display status is = 1

and the driver still detects HDMI/DVI correctly

kernel: (AppleIntelCFLGraphicsFramebuffer) [IGFB][LOG  ][DISPLAY   ] [Getonline_info] Setting up HDMI based on EDID
kernel: (AppleIntelCFLGraphicsFramebuffer) [IGFB][LOG  ][DISPLAY   ] [Getonline_info] (idx:1) (update:1) [adapter]3:0 / [online]1:0 / [porttype]1:1 / [EDID]Diff?:255
kernel: (AppleIntelCFLGraphicsFramebuffer) [IGFB][LOG  ][DISPLAY   ] [Getonline_info] fIsHDMI=1, fEnableAudio=1, newOnline=1, fOnline=0, newPortType=1, fMaxPixelClock=300000000

Now I do not think we still need force-online and force-online-framebuffers, maybe you can confirm this?

Excellent work lazosweb 😃

from prime-b460i-plus-hackintosh.

lazosweb avatar lazosweb commented on June 5, 2024

If I remember correctly the force-online had to do with waking up the monitor during sleep. All I can confirm is that after I removed those two (force-online and force-online-framebuffers) during sleep the HDMI monitor wakes up normally I do not have any issue. But looking what you are posting above you are more savy than me :D. When the HDMI monitor woke up it immediately displayed the login screen and when I logged in the monitor again went black for a sec and then came back online. I am not sure if force-online helps with that, at the end the monitor came back without any issue.

...the HDMI framebuffer connector-type remains as HDMI but the port-number and av-signal-type have changed. The connected monitor is now presented as Built-in Display or iMac. The Hackintool Displays tab might be able to harmonise things.

This part I did not understand it...

Something that I forgot to mention is that using the above configuration the monitor's audio disappears from the audio list. Can you confirm also? Is this normal behaviour?

Also I want to ask you why the memory on the patch is set to 2048Mb? What is the correct one? The 2048 or the 1536Mb on the system report? Because I removed those patches...

Mine looks like that now:

<key>PciRoot(0x0)/Pci(0x2,0x0)</key>
			<dict>
				<key>AAPL,GfxYTile</key>
				<data>AQAAAA==</data>
				<key>AAPL,ig-platform-id</key>
				<data>BwCbPg==</data>
				<key>framebuffer-con1-enable</key>
				<data>AQAAAA==</data>
				<key>framebuffer-con1-flags</key>
				<data>zwMAAA==</data>
				<key>framebuffer-con1-type</key>
				<data>AAgAAA==</data>
				<key>framebuffer-patch-enable</key>
				<data>AQAAAA==</data>
				<key>framebuffer-pipecount</key>
				<data>AgAAAA==</data>
				<key>framebuffer-portcount</key>
				<data>AgAAAA==</data>
			</dict>

from prime-b460i-plus-hackintosh.

vulgo avatar vulgo commented on June 5, 2024

the monitor again went black for a sec and then came back online. I am not sure if force-online helps with that, at the end the monitor came back without any issue

I'm briefly seeing excessive flickering and fading when logging in and out, during power state transitions etc, force-online seems not to help.

This part I did not understand it...

Your artefacts and strange refresh rate options in comment 2 might be helped by a Hackintool display override.

Something that I forgot to mention is that using the above configuration the monitor's audio disappears from the audio list. Can you confirm also? Is this normal behaviour?

Well I noticed that audio-codec-info was cleared with these patches, but here i am using only USB audio. I will look into it though, are you using AppleALC.kext?

Also I want to ask you why the memory on the patch is set to 2048Mb? What is the correct one?

It just increases the maximum shared memory for iGPU, it is optional.

Because I removed those patches...

Agreed, i think the patches you kept are the required ones at this point.

from prime-b460i-plus-hackintosh.

lazosweb avatar lazosweb commented on June 5, 2024

Well I noticed that audio-codec-info was cleared with these patches, but here i am using only USB audio. I will look into it though, are you using AppleALC.kext?

Yes, I am using AppleALC. I have bluetooth earbuds, and I also have audio on the other monitor just in case. Is just a comment for the next person that all this might be helpful.

Your artefacts and strange refresh rate options in comment 2 might be helped by a Hackintool display override.

Understood, I just need to read the documentation because I have no idea where I need to place the exported files from the Hackintool.

It just increases the maximum shared memory for iGPU, it is optional.

Any advantages of that?

from prime-b460i-plus-hackintosh.

vulgo avatar vulgo commented on June 5, 2024

Any advantages of that?

Graphics will stutter if the gpu runs out of shared system RAM. If not, then it probably makes no difference. OS isn't going to allow 2G if it's not getting utilised.

from prime-b460i-plus-hackintosh.

vulgo avatar vulgo commented on June 5, 2024

Device Properties

<key>PciRoot(0x0)/Pci(0x2,0x0)</key>
<dict>
	<key>AAPL,ig-platform-id</key>
	<data>BwCbPg==</data>
	<key>AAPL,GfxYTile</key>
	<data>AQAAAA==</data>	
	<key>framebuffer-patch-enable</key>
	<data>AQAAAA==</data>
	<key>framebuffer-pipecount</key>
	<data>AgAAAA==</data>
	<key>framebuffer-portcount</key>
	<data>AgAAAA==</data>
	<key>framebuffer-unifiedmem</key>
	<data>AAAAgA==</data>
	<key>framebuffer-con1-enable</key>
	<data>AQAAAA==</data>
	<key>framebuffer-con1-type</key>
	<data>AAgAAA==</data>
	<key>force-online</key>
	<data>AQAAAA==</data>
	<key>force-online-framebuffers</key>
	<data>AgAAAA==</data>
</dict>

Files

files.zip

  • displayset -> /usr/local/bin
  • local.displayset.plist -> $HOME/Library/LaunchAgents

Load launchd job

$ launchctl load "$HOME/Library/LaunchAgents/local.displayset.plist"

System Preferences -> Displays

Enable mirroring optimised for DP port

Source

main.cpp.zip

from prime-b460i-plus-hackintosh.

lazosweb avatar lazosweb commented on June 5, 2024

Hi,

I understood what to do with the files.zip but not with the source main.cpp.zip...

from prime-b460i-plus-hackintosh.

vulgo avatar vulgo commented on June 5, 2024

Hi @lazosweb, it is the source of the displayset binary containing methods of interest. The question is with the above loaded and after logging in, do both displays function (with audio)?

A second question is are both displays in Default for display resolution?

from prime-b460i-plus-hackintosh.

lazosweb avatar lazosweb commented on June 5, 2024

The above, I do not know where they defer...

<key>PciRoot(0x0)/Pci(0x2,0x0)</key>
			<dict>
				<key>AAPL,GfxYTile</key>
				<data>AQAAAA==</data>
				<key>AAPL,ig-platform-id</key>
				<data>BwCbPg==</data>
				<key>force-online</key>
				<data>AQAAAA==</data>
				<key>force-online-framebuffers</key>
				<data>AgAAAA==</data>
				<key>framebuffer-con1-enable</key>
				<data>AQAAAA==</data>
				<key>framebuffer-con1-flags</key>
				<data>zwMAAA==</data>
				<key>framebuffer-con1-type</key>
				<data>AAgAAA==</data>
				<key>framebuffer-patch-enable</key>
				<data>AQAAAA==</data>
				<key>framebuffer-pipecount</key>
				<data>AgAAAA==</data>
				<key>framebuffer-portcount</key>
				<data>AgAAAA==</data>
			</dict>

But all I get is a blue screen and again I need to turn off the monitor but I have audio on both monitors...
Added those files too but I did not see any difference.

from prime-b460i-plus-hackintosh.

vulgo avatar vulgo commented on June 5, 2024

But all I get is a blue screen and again I need to turn off the monitor but I have audio on both monitors...
Added those files too but I did not see any difference.

You enabled screen mirroring, optimised for the display connected to the DisplayPort? And execute launchctl load "$HOME/Library/LaunchAgents/local.displayset.plist" without errors?

Also, your device props differ. And don't leave it at the login window or you will get a blue screen.

Edit: you have framebuffer-con1-flags property, please try without, thanks.

from prime-b460i-plus-hackintosh.

lazosweb avatar lazosweb commented on June 5, 2024

There is not an option to "Enable mirroring optimised for DP port"

I executed the command without an issue but every time I login there is security pop up for "launchd"...

image

from prime-b460i-plus-hackintosh.

vulgo avatar vulgo commented on June 5, 2024

Mirror option should be in the "arrangement" tab. For testing neither display should be iMac built-in display, maybe that is coming from patched connector flag.

from prime-b460i-plus-hackintosh.

lazosweb avatar lazosweb commented on June 5, 2024

Nope, even the arrangement tab does not have the option other than the "Mirror Displays" checkbox. Once I remove the connector flag I get a blue screen and the audio back. Turning off the DP monitor solves the issue. How do I know if the display is not "iMac built-in" is this info in the Hackintool?

from prime-b460i-plus-hackintosh.

vulgo avatar vulgo commented on June 5, 2024

Screenshot 2021-09-22 at 01 12 52

Screenshot 2021-09-22 at 01 13 06

If the options are Default for display for each monitor then select those.

How do I know if the display is not "iMac built-in" is this info in the Hackintool?

It might be. Your screenshot shows PL2792Q and *iMac*. The IORegistry(Explorer) or System Information app Graphics/Displays section will also indicate this.

Maybe you have a display override kext loading or the patched connector flags device property being added.

For your information, to revert the launchd job from starting at login

launchctl unload -w "$HOME/Library/LaunchAgents/local.displayset.plist"

from prime-b460i-plus-hackintosh.

lazosweb avatar lazosweb commented on June 5, 2024

@vulgo Why mirror the displays? I am extending the displays...

You are correct about the built-in/iMac display...
image

These are the OC Kexts that I use...
image

from prime-b460i-plus-hackintosh.

vulgo avatar vulgo commented on June 5, 2024

Why mirror the displays? I am extending the displays...

Some observations and speculative working assumptions regarding the boot process.

  • Intel GOP driver + ASUS/AMI firmware is mirroring the displays
  • ASUS provides no configuration of Intel GOP driver, only choose PEG/iGPU or disable iGPU when PEG is present
  • GOP configuration options might be present in AMI firmware but "hidden" from firmware settings (or just not implemented) by ASUS
  • On my system, Apple boot.efi then designates the DP port the "boot display"
  • The mirroring and/or data describing framebuffer(s) as provided by firmware is probably not what boot.efi is expecting
  • When boot.efi ends, the data describing framebuffer(s) is almost certainly not what the display server process is expecting when taking over the framebuffer(s), or it doesn't match the hardware
  • However, and for reasons unknown to me, if mirroring is enabled in the previous configuration (i.e. macOS preferences) the effects of this incompatibility are somehow avoided
  • Otherwise at this point only one display is actually working properly, we have to force the other into a valid mode via a configuration change, e.g. unplugging/removing/adding a display
  • But say OS mirroring was enabled, now the login window is shown correctly (but mirrored on both monitors)
  • And we can use the CoreGraphics displays API to switch off the mirroring for the login/session (e.g. as in displayset + launchd job), forcing a valid mode

More general speculations.

  • The logic of which display is "main" at what stage during the boot process may mean on different systems it is not the same port
  • In OS mirroring options, optimize for... setting may have to be swapped, or if no "optimizations" are required this setting may not be available
  • A lot of the manual logic, mirroring in OS etc. should be movable into displayset program and it might be made to run early in the boot process rather than at login
  • With valid WEG framebuffer configuration, the problems with iGPU and dual monitors at boot might have more to do with the macOS frameworks APIs and display/window server processes, rather than the graphics kernel extensions and framebuffers

Notes.

  • Once both monitors are online, it does actually work OK.

from prime-b460i-plus-hackintosh.

lazosweb avatar lazosweb commented on June 5, 2024

Ok, now I see what you are trying to do... Select mirroring and then upon logging in the launchd script will remove the mirroring (to put it simply.) I will give it ago when I am back home in about 9 hours :(...

from prime-b460i-plus-hackintosh.

lazosweb avatar lazosweb commented on June 5, 2024

Good morning @vulgo, apologies for the late reply...
I tried mirroring the monitors. I saw the "optimised for" upon selecting mirroring but still after a reboot at login one of the screens was still blue or with artifacts. After I logged in, it did not make much difference when the launchd code was executed. (I removed the connector-flag)...

from prime-b460i-plus-hackintosh.

vulgo avatar vulgo commented on June 5, 2024

You tried optimise for the other display @lazosweb? Here i must always choose DP or I get the same result as you describe, for your system it may be the other port.

from prime-b460i-plus-hackintosh.

lazosweb avatar lazosweb commented on June 5, 2024

I tried both, none worked.

from prime-b460i-plus-hackintosh.

vulgo avatar vulgo commented on June 5, 2024

@lazosweb the blue screen might be caused by unsupported mode setting on that display.

Using the unplug workaround my HDMI monitor reports 10 bit color depth which is not true, as the hardware depth is only 8 bit.

Using the connector-flags workaround 8 bit is detected correctly.

Amusingly, once booted with the connector-flags workaround (no launchd job), after

  • deleting window server preferences
  • creating new window server preferences
  • removing connector-flags dev prop
  • rebooting

...everything seems to work as expected. Until deleting the window server preferences and then you will have a blue screen again.

from prime-b460i-plus-hackintosh.

vulgo avatar vulgo commented on June 5, 2024

Attached (display hardware specific) broken and working window server preferences.

works.zip
not-working.zip

The state for the login window is restored from /Library/Preferences/com.apple.windowserver.plist which appears to get derived from user preferences in "$HOME"/Library/Preferences/ByHost upon certain changes. The user preferences are used once a user logs in. When no saved state is available the modes get picked up some other way, which is probably close to the actual source of the problem.

from prime-b460i-plus-hackintosh.

vulgo avatar vulgo commented on June 5, 2024

@lazosweb if possible can you attach your window server preferences? Thank you.

cp "$HOME"/Library/Preferences/ByHost/com.apple.windowserver*.plist "$HOME"/Desktop
cp /Library/Preferences/com.apple.windowserver.plist "$HOME"/Desktop/windowserver-system.plist

from prime-b460i-plus-hackintosh.

lazosweb avatar lazosweb commented on June 5, 2024

Hi @vulgo , find attached...

Archive.zip

from prime-b460i-plus-hackintosh.

lazosweb avatar lazosweb commented on June 5, 2024

@vulgo , you are a magician!!!

I replaced the files and removed the con1-flags. Rebooted, monitor flickers, goes into standby mode and wakes up, I see some artifacts while on apple loading bar (normal behaviour even before I replace the files) and after a few of those the login screen appears without any issue (NO blue screen or artifacts).
I have audio on the HDMI monitor also.

What did you do?

Another question. This HDMI monitor is 144/165Hz is this something that we can fix also? I am not sure if HDMI can do that because on my windows PC these monitor were connect by DP. Now on my Windows PC 1 monitor on DP and the other on HDMI and the same on the Hackintosh.

from prime-b460i-plus-hackintosh.

vulgo avatar vulgo commented on June 5, 2024

What did you do?

I removed a display set that contained an HDMI configuration @ 10-bit mode from the window server preferences. Comparing valid to invalid, you can see the positive here is the incorrect mode that was removed.

@@ -1,5 +1,6 @@
-{	Active = 1;
-	Depth = 4;
+{	
+	Active = 1;
+	Depth = 8;
 	DisplayID = 478264613;
 	DisplayProductID = 1167;
 	DisplaySerialNumber = 1964023527;
@@ -16,13 +17,13 @@
 	Mirrored = 0;
 	Mode = {
 		BitsPerPixel = 32;
-		BitsPerSample = 8;
-		DepthFormat = 4;
+		BitsPerSample = 10;
+		DepthFormat = 8;
 		Height = 1440;
 		IODisplayModeID = -2147463168;
 		IOFlags = 34603015;
-		Mode = 0;
-		PixelEncoding = "--------RRRRRRRRGGGGGGGGBBBBBBBB";
+		Mode = 1;
+		PixelEncoding = "--RRRRRRRRRRGGGGGGGGGGBBBBBBBBBB";
 		RefreshRate = 60;
 		SamplesPerPixel = 3;
 		UsableForDesktopGUI = :true;
@@ -42,7 +43,7 @@
 	};
 	OriginX = 0;
 	OriginY = 0;
-	PixelEncoding = "--------RRRRRRRRGGGGGGGGBBBBBBBB";
+	PixelEncoding = "--RRRRRRRRRRGGGGGGGGGGBBBBBBBBBB";
 	"RefreshRate16.16" = 3932160;
 	Resolution = 1;
 	Unit = 1;
@@ -53,13 +54,13 @@
 	UnmirroredLimitsWidth = 2560;
 	UnmirroredMode = {
 		BitsPerPixel = 32;
-		BitsPerSample = 8;
-		DepthFormat = 4;
+		BitsPerSample = 10;
+		DepthFormat = 8;
 		Height = 1440;
 		IODisplayModeID = -2147463168;
 		IOFlags = 34603015;
-		Mode = 0;
-		PixelEncoding = "--------RRRRRRRRGGGGGGGGBBBBBBBB";
+		Mode = 1;
+		PixelEncoding = "--RRRRRRRRRRGGGGGGGGGGBBBBBBBBBB";
 		RefreshRate = 60;
 		SamplesPerPixel = 3;
 		UsableForDesktopGUI = :true;

The assumption is that your HDMI monitor neither supports nor declares support in the EDID for 10-bit color. To confirm, please can you attach your display EDIDs @lazosweb, thanks.

ioreg -irlc IODisplayConnect | grep EDID | xargs > "$HOME"/Desktop/EDIDs.txt

Your first comment here I think also describes the effects of this problem. Maybe setting a scaled resolution creates the valid mode in window server preferences.

Another question. This HDMI monitor is 144/165Hz is this something that we can fix also?

ASUS claim the HDMI version is 1.4 which doesn't support that refresh rate at 1440p.

from prime-b460i-plus-hackintosh.

lazosweb avatar lazosweb commented on June 5, 2024

Thanks for the details... I was expecting that HDMI 1.4b was going to be an issue... I think the new boards from Intel like H570, Z590 support HDMI 2.0...

Your first comment here I think also describes the effects of this problem. Maybe setting a scaled resolution creates the valid mode in window server preferences.

Yes and no. I think it was a combination of the scaled + con1-flags that made it work.

Find attached the EDID.

EDIDs.txt

from prime-b460i-plus-hackintosh.

lazosweb avatar lazosweb commented on June 5, 2024

Hi @vulgo . I have an issue that I might need your help.
Previously (if you look at the YouTube video) the monitors were setup as follow: The DP on the right monitor and the HDMI port on the left monitor. With the latest files you gave me everything has been working fantastic.

But, I went and bought HDMI and DP Splitters. If you do not know what they are is a piece of hardware that you connect 2 DP ports from 2 PCs and then 1 more cable on the other side to connect to the monitor. You press a button to switch between the 2 PCs. https://www.amazon.de/-/en/Displayport-Bidirectional-Converter-Projectors-gray/dp/B08T7HG6RR/ref=sr_1_3?crid=1NAVO4E5D608T&dchild=1&keywords=dp+splitter&qid=1633491604&qsid=261-1602540-9223808&sprefix=DP+splitt%2Caps%2C270&sr=8-3&sres=B08T7HG6RR%2CB074G3KJM5%2CB077SQP8KF%2CB074G3ZJGN%2CB092CF6YYH%2CB076ZKZLXT%2CB079Z89CV6%2CB093PQVK3C%2CB07V1NZ9TZ%2CB08QZCWR4F%2CB07T8BPZG2%2CB085S4HZCZ%2CB00V07XW3E%2CB097P2P44W%2CB01KRERV0U%2CB081GGNWCX

With this change now the DP is on the left monitor 165Hz one and the HDMI is on the right monitor... When I boot up I can see the boot screen on both monitors but again when the Mac OS is loaded the DP monitor goes on standby mode and only the HDMI monitor works, sometimes with artifacts sometimes not. Turning on and off the screens does nothing to the DP monitor.

If I go to system settings I can see the DP monitor there with the 165Hz and everything is just black and on standby mode, I removed the files that you sent me, I played around with the iGPU patches and nothing works...

from prime-b460i-plus-hackintosh.

lazosweb avatar lazosweb commented on June 5, 2024

I had it all wrong. It seems that the reason it does not work is that bi-directional switch. It does work without any issue when I switch to my Windows PC but when I change to the Hackintosh it detects the screen but no output no matter if I change cables etc. When I boot on the hackintosh both screen display the boot bios screen but prior of display the login screen the DP monitor goes black (but like I said is detected is there but no output)

If I directly connect a DP cable without the switch there is no issue....

from prime-b460i-plus-hackintosh.

vulgo avatar vulgo commented on June 5, 2024

Hello @lazosweb the display port adapters i have encountered are never passive devices. Although i never used a DP switch. You might see how the monitor or switch device connected using IORegistry explorer 2.1.

from prime-b460i-plus-hackintosh.

lazosweb avatar lazosweb commented on June 5, 2024

I do not really understand what I see on the IORegistry Explorer 2.1. Connecting the DP on the DP Switch and directly to the monitor I think it displays the same stuff just there is no output when is connected to the switch. Anyway, I will stay with just changing the inputs from the monitors instead. Those switches are kind of messy. Cables here and there...

from prime-b460i-plus-hackintosh.

lazosweb avatar lazosweb commented on June 5, 2024

Hi @vulgo,

I have another favor to ask.
I changed my Acer Predator monitor to an iiyama one and the issue with flickering and artifacts is back.
I attached again the same files you asked me before. Is it something that you can fix easily like the other time?
Thanks in advance.

Edit: I just updated the files again.

Edit2: I deleted all the host preferences and the com.apple.windowsserver.plist and system generated new files which contain what I have at the moment.

Archive.zip

from prime-b460i-plus-hackintosh.

vulgo avatar vulgo commented on June 5, 2024
  • delete these files from ../Preferences and ../Preferences/ByHost
  • reboot
  • turn off the monitors and back on again
  • report back if this does not resolve the flickering
  • send any new com.apple.windowserver property lists from ./Preferences and ../Preferences/ByHost

from prime-b460i-plus-hackintosh.

vulgo avatar vulgo commented on June 5, 2024

There is no alternate mode from the startup mode in that file for either monitor

from prime-b460i-plus-hackintosh.

lazosweb avatar lazosweb commented on June 5, 2024

@vulgo thanks for your reply, give me a min to understand.
The attached Archive.zip was created after I deleted the com.apple.windowserver.plist and everything inside the ByHost.
Hackintosh rebooted and created new files at boot or when I did something in the display preferences which is the one in my archive.zip.

The flickering stops as before when I turn on and off the monitor.

There is something missing in these files that I need to do something else?

from prime-b460i-plus-hackintosh.

vulgo avatar vulgo commented on June 5, 2024

Try replacing this file

com.apple.windowserver.37CE7344-CE89-5E97-B206-5255A0EE2D34.plist.zip

from prime-b460i-plus-hackintosh.

lazosweb avatar lazosweb commented on June 5, 2024

Replacing the file unfortunately it did not work...

Look, the old way still works, if in the config.plist I add that "CNConnectorAlwaysConnected" (I do not know what this flag does) the monitors work as before. Both monitors go into scaled resolution and there is no flickering... I do not see any side effects. Sleep works etc...

To be honest I still prefer your original solution where you edited the windows.server.plist you modified some depths etc and it worked...

I still do not get it how all this works and what needs to be done to be fixed without the above flag.

from prime-b460i-plus-hackintosh.

lazosweb avatar lazosweb commented on June 5, 2024

@vulgo That's easy!
The DisplaySerialNumber is the hex code for the last 4 digits of the serial number of the monitor 0x561 is 1377 that is the HDMI monitor. DisplayProductID 0x6630
Screen Shot 2022-09-14 at 20 56 50

This is the DP monitor and the serial number ends 1068 or 0x42c and the DiplayProductID is 0x666d
image

If you need anything else let me know.
Thank you so much for taking your time to assist me.

from prime-b460i-plus-hackintosh.

vulgo avatar vulgo commented on June 5, 2024

Hi @lazosweb I altered your DP monitor preferences by mistake, I will guess again on the HDMI one

com.apple.windowserver.37CE7344-CE89-5E97-B206-5255A0EE2D34.plist.zip

I just followed the diff (which is actually in reverse) changing the fields for the monitor with 26160 or 0x6630 product id. Let me know if it helps.

from prime-b460i-plus-hackintosh.

lazosweb avatar lazosweb commented on June 5, 2024

Hi @vulgo, I tried the file but it does not work.
Do not worry about it, having that flag that I mentioned on my previous posts does the trick anyway.

Thanks again for taking your time to assist.

from prime-b460i-plus-hackintosh.

vulgo avatar vulgo commented on June 5, 2024

Hi @lazosweb one difference is your window preferences are now per login by host so the login window itself is not going to be using that file?

The driver just doesn't do multi monitor on our machine, Apple modified the old driver rather than writing a proper 600 series driver, they were busy on Apple's own graphics.

from prime-b460i-plus-hackintosh.

vulgo avatar vulgo commented on June 5, 2024

I like the Apple studio but can only afford a more powerful Mini. I can't even afford that.

from prime-b460i-plus-hackintosh.

lazosweb avatar lazosweb commented on June 5, 2024

Hi @vulgo . I do not know what triggered that change on the window preferences. Maybe this happened when I changed the monitor and I tried to fix it by myself I deleted all windows preferences files and on reboot the OS created new one. Once more do not worry about it the "CNConnectorAlwaysConnected" flag in config.plist does the same thing. What is an extra flag? :)

I am not fan of Apple especially the hardware part... but I love the OS more clean than any Windows Version...

I do not know what we will do once Apple drops completely the Intel support. I hope it will take a lot of years.

from prime-b460i-plus-hackintosh.

vulgo avatar vulgo commented on June 5, 2024

I think the move to a ByHost can happen simply upgrading the OS. Our board has Skylake USB and Apple are moving at speed so I'd guess a year or two. By then perfectly serviceable refurbished chiplet Macs will be available.

from prime-b460i-plus-hackintosh.

lazosweb avatar lazosweb commented on June 5, 2024

But the Monterey upgrade was done before I changed my monitor. Once I swap the monitor everything broke, understandable since it was a different monitor.

On your motherboard which CPU do u have? I have the 10600.

from prime-b460i-plus-hackintosh.

vulgo avatar vulgo commented on June 5, 2024

I have 10500T over time it generates less heat but is clocked lower, during busy times it turbos forever so it uses like 2W idle and 95W in full use. Ridiculous.

from prime-b460i-plus-hackintosh.

vulgo avatar vulgo commented on June 5, 2024

But the Monterey upgrade was done before I changed my monitor.

that's what i mean, the upgrade changes it

from prime-b460i-plus-hackintosh.

lazosweb avatar lazosweb commented on June 5, 2024

Did you ever try to play a 4k movie HEVC with it? My 10600 when I do that and I am working on another window or something I see the IGPU going to 100% and the movie will start stuttering here and there...

from prime-b460i-plus-hackintosh.

vulgo avatar vulgo commented on June 5, 2024

Did you ever try to play a 4k movie HEVC with it? My 10600 when I do that and I am working on another window or something I see the IGPU going to 100% and the movie will start stuttering here and there...

I have a WX4100 stuffed in there for things like that. I got it reasonably priced before the prices rose. And my 1440p monitor is only 23.8inch so the PPI is better than say a 27". The backlight is seriously too bright though for home use. VLC makes 1080p x265 look fine to me. I never viewed a 4k file on it. Maybe a demo.

from prime-b460i-plus-hackintosh.

vulgo avatar vulgo commented on June 5, 2024

I have a WX4100 stuffed in there for things like that

thank ya chosen deity given the problems with HD graphics

from prime-b460i-plus-hackintosh.

lazosweb avatar lazosweb commented on June 5, 2024

Yes, I forgot. You have a dedicate GPU. My case is like a MAC mini there is no space for that...

from prime-b460i-plus-hackintosh.

vulgo avatar vulgo commented on June 5, 2024

Yes, I forgot. You have a dedicate GPU. My case is like a MAC mini there is no space for that...

Mines Mac Studio size but the Studio beats it in every way except cost. I'm a refurbished second-hand person.

from prime-b460i-plus-hackintosh.

Related Issues (9)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.