Page 1 of 3

ULMB 60Hz Guide

Posted: 03 Aug 2017, 15:35
by RealNC
Chief Blur Buster wrote:UPDATE: New Instructions With Screenshots:
HOWTO: 60 Hz ULMB Hack
I wasn't aware that ULMB can do 60Hz single-strobe on many monitors that don't actually support it officially. Mine only goes down to 85Hz by default. I've seen people here report that VT tweaks can force 60Hz ULMB, so I tried that and it worked just fine on my monitor (a ViewSonic XG2703-GS.)

If you want to try it, here's how to do it:

In CRU, find the lowest mode that can do ULMB. Also look in the extension block if the mode doesn't appear on the main list. Here, it's the 2560x1440@85Hz mode. Double-click the mode. Make a note of the pixel clock value (here it's 346.50MHz.) Click the "Copy" button. Cancel the dialog.

Open the 60Hz mode (double-click it.) Make sure you're editing the native 60Hz mode, not some low-resolution one. Leave the "Timings" drop-down list at "Manual"; don't change it. Click the "Paste" button. In the refresh rate box, enter "60.007" (more on that later*.) Click the "Total" radio button, and in the "Vertical" box enter a value high enough so that the pixel clock becomes equal to the value you noted before (346.50MHz in my case.) If you can't get it exactly right, get it as close as possible. In my case, that's 2123, and the final pixel clock value is 346.52MHz.

And that's it. Confirm all dialogs until CRU closes, and run the "restart64.exe" program (or "restart.exe" on 32-bit). Make sure G-Sync is disabled in the nvidia panel, then switch to 60Hz, and in the monitor's OSD try to enable ULMB. If it works, congratulations :mrgreen: If not, you can try and play some more with the timings (for example by copying timings from other ULMB-modes instead of the lowest ULMB-capable mode). Could be hit-and-miss. If nothing works, you can revert all the changes you did in CRU by running "reset-all.exe" and rebooting.

Beware though: If ULMB works, the flicker is more severe than 85Hz ULMB, and MUCH more severe than 100Hz ULMB. I'm not a doctor, but you might not want to try this if you're prone to seizures :P

*As for the "60.007Hz" value we entered above, that's just a trick to get lower input lag with vsync by using RTSS to cap to 60FPS. 60.007Hz with a 60FPS cap will lower input lag without introducing noticeable micro-stutter.

Re: ULMB 60Hz Guide

Posted: 03 Aug 2017, 15:50
by Chief Blur Buster
Chief Blur Buster wrote:UPDATE: New Instructions With Screenshots:
HOWTO: 60 Hz ULMB Hack
Good mini howto for GSYNC monitors supporting NVIDIA ULMB -- we'll need to publish one at some point for emulator users.

Also, how Vertical Total is entered, can affect the amount of strobe crosstalk that occurs on some monitors.

For example, if you increase Vertical Total via Vertical Back Porch or via Vertical Front Porch -- you may have less strobe crosstalk at http://www.testufo.com/crosstalk ....

If you subtract from one and add to the other, you will keep your dotclock exactly the same as before, while simultaneously shifting the strobe crosstalk position upwards/downwards (by 1 pixel). For example, to shift a strobe-crosstalk band downwards by about 300 pixels, you may, for example, transfer 300 between Front/Back porches of the Vertical Total. The larger your blanking interval, the more range of adjustment (in Front/Back Porch tweaking) you have.

This won't help all models of monitors with Motion Blur Reduction Backlights -- but it may help some models immensely. Transferring numbers between Vertical Front Porch/Back Porch is one way of tricking a strobe backlight flash to occur slightly earlier or slightly later. This is useful for monitors with no strobe phase adjustment setting in their on-screen menus. Adjusting strobe backlight timing can help prevent strobe backlight flash timing & LCD GtG pixel transition timing from interfering with each other (creating amplified strobe crosstalk)

Experiment with both methods of Large Vertical Totals, for your targeted refresh rate, on your targeted monitor. This does not always help all models of monitors, and there's more lockdown on monitors (ULMB is less flexible). However, tweaking the balance between Front/Back (during Large Vertical Totals) may be a useful workaround to adjust the amount of double-image effects in different locations of the screen.

Re: ULMB 60Hz Guide

Posted: 04 Aug 2017, 04:50
by lexlazootin
G-Sync works in sets of 10 in pixel clock, so at 100hz my HT is 2080, and if it's not 2080 ULMB will not turn on, for the resolution to even register the pixel clock need to be between 230 and 240.

So it's a combination of having the right HT AND Pixelclock for the hack to work. (On my Benq XL2420G it was VT and not HT)

@Chief Blur Buster

The best i could do was 63 - 63 for the Front and Sync, any higher then that and my fields would just fill up red and not let me continue no matter what i did. I'm guessing there is some sort of ingrained limit? NVCP would let me but it will let you no matter what you type. http://i.imgur.com/87xdQpE.png

I couldn't really see a difference but maybe i'm wrong, if it is i think it might be too small for me to notice.

Re: ULMB 60Hz Guide

Posted: 04 Aug 2017, 04:57
by RealNC
It seems ULMB is tweaked for the "perfect" middle-ground, which is why IMO the best starting point is to copy the timings from a "supported" ULMB mode and then match the pixel clock as close as possible by only modifying VT. This seems to make the middle of the screen have the least amount of crosstalk, while at the top and bottom crosstalk is amplified right/left respectively.

Unfortunately, the g-sync module is pretty aggressive with enforcing accepted timings. If you push the pixel clock too far, it won't allow ULMB. But I assume this is simply because my monitor only allows ULMB up to 120Hz. Using 60Hz with the pixel clock of 165Hz for example will disable ULMB.

Also, the g-sync module seems very picky about front/back porch. It won't accept the signal if you stray too far. But as mentioned, the default timings are actually well balanced and crosstalk seems almost perfectly "centered".

But oh my god is the 60Hz flicker annoying on 27" :-P I have to sit quite far away to actually make it practical. That, or using a lower resolution like 1600x900 1:1 without scaling. I also couldn't stand 60Hz flicker on CRT, but I don't remember it being that annoying even on 60Hz CRT TVs. There's definitely a difference between CRT and LCD strobing, even at the same screen size. Even though it's the same flicker frequency, LCD strobing seems way more disturbing compared to phosphor.

Re: ULMB 60Hz Guide

Posted: 05 Aug 2017, 02:25
by Chief Blur Buster
RealNC wrote:But oh my god is the 60Hz flicker annoying on 27" :-P I have to sit quite far away to actually make it practical. That, or using a lower resolution like 1600x900 1:1 without scaling. I also couldn't stand 60Hz flicker on CRT, but I don't remember it being that annoying even on 60Hz CRT TVs. There's definitely a difference between CRT and LCD strobing, even at the same screen size. Even though it's the same flicker frequency, LCD strobing seems way more disturbing compared to phosphor.
Increased visibility of 60 Hz flicker is due to two things:
(1) Strobing is a square wave -- while CRT phosphor decay is a curve
(2) Strobing is global -- while CRT is scanning (something is usually illuminated).

Scanning backlights will probably have less annoying dynamics than strobe backlights, but they also have their own issues too.

Re: ULMB 60Hz Guide

Posted: 13 Aug 2017, 08:38
by masterotaku
Wow, this is great!

With this same principle, I could create ULMB resolutions up to 127Hz on my Asus PG278QR, using the Nvidia Control Panel. Although for G-Sync + ULMB use, 126Hz and above showed an issue (black screen for brief moments) when a game tried to reach that fps limit.

So I settled for 125Hz (VT1469). This will be great in case I play Quake 3 again :D .

I also tried to reach the lowest refresh rate with single strobing. It was 37Hz (VT 3444).

Basically any refresh rate works as long as the final pixel clock is the same as the base 85Hz or 120Hz. For the ones derived from 120Hz, I tried to be near the G-Sync+ULMB pixel clock corresponding to VT1530, which is 499.3920MHz.

Thanks to this guide I now also have more unofficial refresh rates to choose for 3D Vision :).

Re: ULMB 60Hz Guide

Posted: 13 Aug 2017, 09:51
by Chief Blur Buster
masterotaku wrote:Basically any refresh rate works as long as the final pixel clock is the same as the base 85Hz or 120Hz. For the ones derived from 120Hz, I tried to be near the G-Sync+ULMB pixel clock corresponding to VT1530, which is 499.3920MHz.
Very interesting!

In ToastyX, have you tried shifting pixels between Vertical Front Porch / Vertical Back Porch to shift the "crosstalk band" up/down at http://www.testufo.com/crosstalk

For other CRU such as NVIDIA, Back Porch may not be displayed -- it is calculated automatically. To do the same, try increasing/decreasing Front Porch (But not to a number greater than (Total - Back Porch - Sync))

My PG278Q (original) does not like custom refresh rates. Only the overclocking-supported models (165Hz) does.

Re: ULMB 60Hz Guide

Posted: 13 Aug 2017, 11:32
by masterotaku
Chief Blur Buster wrote: In ToastyX, have you tried shifting pixels between Vertical Front Porch / Vertical Back Porch to shift the "crosstalk band" up/down at http://www.testufo.com/crosstalk

For other CRU such as NVIDIA, Back Porch may not be displayed -- it is calculated automatically. To do the same, try increasing/decreasing Front Porch (But not to a number greater than (Total - Back Porch - Sync))

My PG278Q (original) does not like custom refresh rates. Only the overclocking-supported models (165Hz) does.
I didn't try that yet. Crosstalk is very good without touching anything else, although at 125 and 126 Hz there's some at the top (first row of UFOs), while at 120Hz there's almost zero.

Re: ULMB 60Hz Guide

Posted: 13 Aug 2017, 16:15
by Falkentyne
You guys are making me buy a ULMB Gsync monitor now.
60 HZ SINGLE STROBE?
NOW I can play my emulators and 60 hz games!

Re: ULMB 60Hz Guide

Posted: 13 Aug 2017, 20:48
by RealNC
Falkentyne wrote:You guys are making me buy a ULMB Gsync monitor now.
60 HZ SINGLE STROBE?
NOW I can play my emulators and 60 hz games!
You'll need to stick to TN panels though. You're not gonna like IPS crosstalk.

And make sure you can stand the flicker... If you could demo a unit first, that would be best. 60Hz strobing on LCD looks like 30Hz CRT or something. It's really bad.