I have been developing an app in my spare time to assist with switching to and from NVidia Surround mode. It is a very simple app with limited features but gets the job done. It will detect new/exiting processes and load a profile that you have configured. In theory the app should be able to handle any screen configuration, the NVidia driver permitting.
Interesting problem to have, would love to see your setup. I have not tested the app in such a situation but it might work, I am not sure what will happen with the SLI switch. If it does not work I would be willing to try and add it.
Did you use one of the setup files or are you running from a clone of the repository? If you have a log file that could also help me a ton to hopefully find the bug. I will retest the installer and check I did not miss something.
I use NVidia to setup my Surround profile then using the NVSA app to save that config. Then I switch to normal non-surround desktop and use the windows display manager to disable the screens that I don't want active and then use NVSA app to save that config. Then I edit each application in the list to use one of the saved configs. I will add a wiki over the next few days.
As to your SLI problem I have found a possible way to implement it. I unfortunately don't have a SLI setup so will not be able to test fully before releasing. Will post back once completed.
Entr0py86, I gotta say, I think you've got something cooking here.
I bit the bullet and dumped my SLI setup. I think I'm done with that. Nvidia support has been worse and worse these past two years.
Anyway, with a single card, and you're updated fix, I think I've got it working, and I'm really liking what I've experienced so far. We'll see how it holds up, but seems very promising.
The setup was a little confusing, as it asks for the default and default surround settings back to back, which I don't think is possible. I had to load the single screen setup first, then run your program and save as default. Then close program. Setup surround settings, rerun program and set default surround. With the setups stored, indeed it appears that your program can switch back and forth on demand.
This is something Nvidia hasn't been able to provide for us for at least the last 4-5 years that I've been triple monitor. Very nice work.
I haven't fiddled yet with attaching a particular setup to a particular game, but that may be the topper.
Thanks a bunch. Guys, pick up this fix!
You have earned my donation. Please tell send me a link. I can do Paypal, steam.
I have tested the setup procedure in it's totality again and everything worked as expected. The application would ask you to save your current desktop setup as the default profile. Then it will ask you to switch to your surround desktop setup and save it. At any point that the messages are being displayed can you still tweak your setup. The profile is only saved once you click OK. Once your surround profile is saved, NVSA will then switch back to your default profile and display the main form. I tried to make the setup as seamless as possible but if I can make it more intuitive I would greatly appreciate some input to improve the process.
Regarding setup: I didn't realize I could keep the program open while changing the setup to surround. If that's the case, the only other thing would be helpful would be to allow the flexibility to store the defaults in either order. In other words, if I'm already using my default surround setup, let me store that, than change to default non-surround setup. Currently, as far as I can tell, I have to be in non-surround setup first to run the program.
(honestly, none of this matters once it's up and running. Nothing some documentation can't solve)
Any word on how future proof your fix might be to Windows 10 updates etc?
I will have a look at getting it to work that way, makes sense. I will also be adding documentation over next few weeks. Might only get to it over the festive.
I will keep it up to date as I myself use it as well. So far no updates have broken the setup. So fingers crossed.
That is pretty fantastic Entr0py86!! If I still used Surround I'd be happy to help but I am no longer using it and would have loved to have had it when I was using it. I will pass it on to those that I know who still do use it. Keep up the great work!
Azza Fusion 4000 Liquid Cooled Full/Mini-ITX Tower - AMD Ryzen 1700x CPU - Tt Water 3.0 Ultimate CPU Cooler - ASUS ROG Crosshair VI Extreme - 2x EVGA GTX 980 in SLI - Geil 16GB - Klipsch 5.1 THX Speakers - Vertex 4 128GB SSD, Sandisk 256GB SSD, Samsung 512GB 850 PRO SSD, WD Black 320GB & Two times Toshiba 5TB (one for Games and the other for Storage) - Logitech G502 - Corsair K65 RGB - Logitech G13 - Win10 Pro 64bit - 2-over-1 Viewsonic VA2448M 24" (2x 1920x1080 Secondary) & Samsung CHG90 Series Curved 49" (3840x1080) - Ergotech Monitor Stand - Shout out to WSGF for the upgrade on my stand!
I have updated the app with a few bug fixes. I will create a new release as soon as I have tested them, currently away on holiday. I have also created a wiki to show how the app works and what everything does. https://github.com/Entr0py86/NVidia_Surround_Assistant/wiki Please let me know if something does not make sense or needs more elaboration.
Hope everyone as a blessed festive and lots of happy moments
I have unfortunatly not been able to compelte the auto detection of SLI as I need to figure out how to create Direct3d instances. I will report back as soon as I have figured it out. I will create a beta release when the time comes for you to test. The enable/disable of SLI seems to be very straight forward. So if you would like to just test without auto detection I can release a version were you manualy control it for now?
Yes, enable/disable SLI is very straightforward, and including that is not a requirement. Maybe that's the way to go. What I would want to be able to do save 3 different profiles:
SLI Surround
SLI disabled surround
SLI disabled, no surround
I certainly don't mind enabling/disabling SLI, but need ability to save multiple profiles. It may be in there already, I have just stored the default setup and been using that, as I pulled out my second card. I need to put the card back in though, so I'll really get a test.
Sorry for the confusion, I was refering to enabling/disabling SLI from the NVSA profile perspective. Unfortunatly it seems that the surround setting will need to be added to the saved profile. I am almost there and should have something by the weekend for you to test. I do hope it works as there seems to be a criteria that SLI needs to be enabled/disabled before an application creates a Direct3d device. If that is the case there might be a problem using the auto detection for games/applications that would need SLI changes. This will depend on the game/application being launched. If the detection is done before any Direct3d devices are created, by the game/application, and then the SLI switch is done, no problem but if the switch is done after a Direct3d device is created there could be problems and the game/NVidia driver could crash. At worst one would have to manually launch the applications from NVSA which will first apply the profile and then launch the game or one could load the profile and then launch the game. I will post a link to a beta build for the SLI version as soon as I have completed it. Kind Regards
I have completed the beta build https://github.com/Entr0py86/NVidia_Surround_Assistant/releases/tag/V1.1.0. If possible please give it a try and let me know if it works. I unfortunately do not have the hw required for testing. It should now be able to detect and then save the sli setup to the profiles.
Oh boy, I'm very interested in testing this out. Switching in and out of SLI surround has been so painful, and now throwing VR into the mix, that after 4 generations of SLI builds, this generation I thought I would stop with SLI.
But if this works, I'm diving back in!
Cant test until next week, but fingers crossed big time.
Hello, thank you for your efforts, your tool does not work for me: See the end of this message for details on invoking just-in-time (JIT) debugging instead of this dialog box.
************** Exception Text ************** System.NullReferenceException: Object reference not set to an instance of an object. at NVidia_Surround_Assistant.SurroundManager.SM_SaveDefaultSurroundSetup() at NVidia_Surround_Assistant.NVSA_SetupWizard.NextPanel() at System.Windows.Forms.Control.OnClick(EventArgs e) at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks) at System.Windows.Forms.Control.WndProc(Message& m) at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
************** JIT Debugging ************** To enable just-in-time (JIT) debugging, the .config file for this application or computer (machine.config) must have the jitDebugging value set in the system.windows.forms section. The application must also be compiled with debugging enabled.
When JIT debugging is enabled, any unhandled exception will be sent to the JIT debugger registered on the computer rather than be handled by this dialog box.
Also, I don't know if your tool also takes care of this too but it is definitely a pain for me:
1. when switching from normal to surround, it uses a resolution with only one monitor active (1920x1080) so I have to change all the time to bezel corrected 5900x1080... 2. when switching from surround to normal, I have to do WIN-P and select "Extend" to make sure the desktop is extended, then I also have to open Nvidia control panel, select my third monitor (which is the only one plugged with HDMI) and tell it to use "Full range" RGB instead of limited.
This is killing me all the time. Almost prevents me from using it.