Note 20 Ultra has a secret 96hz display refresh rate - Here is how to enable it

Search This thread

DigDub

Member
Feb 18, 2010
15
17
I've tried the app for s20 and it does limit the max refresh rate to 96hz if I choose that option. HOWEVER, there's no VRR. This can be confirmed by going to a website that shows your current screen refresh rate, like displayhz.com. It will always stay at 96hz even if nothing is moving on the screen.

I did a adb shell dumpsys display and roughly got a clue. The min_refresh_rate is also set to the chosen hz when using the s20 app, so the min and max refresh rates are the same (i.e. no VRR).

To get VRR and 96hz, there is a need to use the manual adb command until someone else comes up with an app.

The adb command is:
adb shell settings put system peak_refresh_rate 96.0

There is no need to set the min_refresh_rate as required for s20 since it will lock the min refresh rate.

Running adb shell dumpsys display returned the following:

Using the s20 app to set the refresh rate
#14 << 08-27 09:28:48.694 >>
[DisplayModeDirector] Schedule to change allowedModes=[4, 8], displayId=0
-1:
PRIORITY_REFRESH_RATE_MODE -> Vote{width=-1, height=-1, minRefreshRate=48.0, maxRefreshRate=120.0}
PRIORITY_USER_SETTING_PEAK_REFRESH_RATE -> Vote{width=-1, height=-1, minRefreshRate=0.0, maxRefreshRate=96.0}
PRIORITY_USER_SETTING_MIN_REFRESH_RATE -> Vote{width=-1, height=-1, minRefreshRate=96.0, maxRefreshRate=Infinity}
SettingObserver mRefreshRateMode: REFRESH_RATE_MODE_SEAMLESS, mIsLowPowerModeEnabled: false
AppRequestObserver mLastAppRequestModeReason: NONE, mLastAppRequestModeReasonType: NONE_TYPE
BrightnessObserver mLowPowerModeEnabled: false, mHasLightSensorListener: false, mIsWirelessCharging=false

Using adb shell command to set the refresh rate
#15 << 08-27 09:58:11.156 >>
[DisplayModeDirector] Schedule to change allowedModes=[1, 2, 4, 5, 6, 8, 9, 10], displayId=0
-1:
PRIORITY_REFRESH_RATE_MODE -> Vote{width=-1, height=-1, minRefreshRate=48.0, maxRefreshRate=120.0}
PRIORITY_USER_SETTING_PEAK_REFRESH_RATE -> Vote{width=-1, height=-1, minRefreshRate=0.0, maxRefreshRate=96.0}
PRIORITY_USER_SETTING_MIN_REFRESH_RATE -> Vote{width=-1, height=-1, minRefreshRate=0.0, maxRefreshRate=Infinity}
SettingObserver mRefreshRateMode: REFRESH_RATE_MODE_SEAMLESS, mIsLowPowerModeEnabled: false
AppRequestObserver mLastAppRequestModeReason: NONE, mLastAppRequestModeReasonType: NONE_TYPE
BrightnessObserver mLowPowerModeEnabled: false, mHasLightSensorListener: false, mIsWirelessCharging=false

To confirm that VRR is indeed running correctly, go to displayhz.com and you can see the refresh rate is 60hz when nothing is moving on the screen. Touch the screen and it will spike to 96hz.
 
  • Like
Reactions: Manson79 and pcriz

pcriz

Senior Member
Aug 23, 2008
5,039
2,937
To confirm that VRR is indeed running correctly, go to displayhz.com and you can see the refresh rate is 60hz when nothing is moving on the screen. Touch the screen and it will spike to 96hz.

I'm curious. So is VRR broken until you run this command if you applied from the app at all
 

DigDub

Member
Feb 18, 2010
15
17
I didn't get to try the refresh rate prior using the app, so I can't say for sure if VRR was broken in the out-of-the-box adaptive rate setting. Maybe someone who hasn't installed the app yet can try see the refresh rate from displayhz.com website and see if it fluctuates accordingly, or if it's fixed.
 

pcriz

Senior Member
Aug 23, 2008
5,039
2,937
I didn't get to try the refresh rate prior using the app, so I can't say for sure if VRR was broken in the out-of-the-box adaptive rate setting. Maybe someone who hasn't installed the app yet can try see the refresh rate from displayhz.com website and see if it fluctuates accordingly, or if it's fixed.


Mine never drops on the webpage. Stays at about 119.6 without me touching the screen.
 
  • Like
Reactions: Manson79

AllAboutTech

Senior Member
Feb 17, 2011
1,399
617
Bucharest
I mean the app doesn't say battery saver. People assumed it would. The app says it will change your refresh rate. It does that.

the purpose of this app ia the following:
• it sets the higher refresh rate feom 120hz to only 96hz
• the inbuilt adaptive refresh rate then will work from 1hz to only up to 96hz

This means that the battery life gets improved on 96hz over 120hz.
No one said it is battery saver or reinventing the wheel!
I use this and I am pretty happy with the battery life and performance.
 

pcriz

Senior Member
Aug 23, 2008
5,039
2,937
the purpose of this app ia the following:
• it sets the higher refresh rate feom 120hz to only 96hz
• the inbuilt adaptive refresh rate then will work from 1hz to only up to 96hz

This means that the battery life gets improved on 96hz over 120hz.
No one said it is battery saver or reinventing the wheel!
I use this and I am pretty happy with the battery life and performance.

I don't know why you are quoting me. I mean did you even read what I said? Or what I quoted?

Someone said the app is a piece of **it because no one was seeing significant battery savings. I simply stated that the app does exactly what it says it does. Which is exactly what you just repeated bud.
 

Manson79

Senior Member
Feb 5, 2015
303
408
42
Mine never drops on the webpage. Stays at about 119.6 without me touching the screen.
Hi,
Same here, stuck at about 96 or 120 when I choose in the app, now same thing when I use adaptive smoothness from settings. It was not the case before I use the app... So I guess adaptive smoothness is no longuer working?
 
  • Like
Reactions: Saturny

pcriz

Senior Member
Aug 23, 2008
5,039
2,937
Hi,
Same here, stuck at about 96 or 120 when I choose in the app, now same thing when I use adaptive smoothness from settings. It was not the case before I use the app... So I guess adaptive smoothness is no longuer working?
I'm going to try the command the other user mentioned and see if it fixes it. Otherwise I might factory reset.
 
  • Like
Reactions: Manson79

AllAboutTech

Senior Member
Feb 17, 2011
1,399
617
Bucharest
I don't know why you are quoting me. I mean did you even read what I said? Or what I quoted?

Someone said the app is a piece of **it because no one was seeing significant battery savings. I simply stated that the app does exactly what it says it does. Which is exactly what you just repeated bud.

i quoted you because you quoted him, no other reason.
 

pcriz

Senior Member
Aug 23, 2008
5,039
2,937
Delete

---------- Post added at 08:11 AM ---------- Previous post was at 08:06 AM ----------

i quoted you because you quoted him, no other reason.
It would probably be less confusing to address that person since you seem to want to defend the app and they have a problem with it. Not me.
 

DigDub

Member
Feb 18, 2010
15
17
I'm going to try the command the other user mentioned and see if it fixes it. Otherwise I might factory reset.

You can just key in this adb shell command:
adb shell settings put system peak_refresh_rate 96.0

I did not input anything for the min_refresh_rate, it got reset to 0 on its own after I set the peak refresh rate.

VRR works after that and is capped at 96hz.
 
  • Like
Reactions: ruebarb and pcriz

pcriz

Senior Member
Aug 23, 2008
5,039
2,937
You can just key in this adb shell command:
adb shell settings put system peak_refresh_rate 96.0

I did not input anything for the min_refresh_rate, it got reset to 0 on its own after I set the peak refresh rate.

VRR works after that and is capped at 96hz.

Command worked. I had to reboot. I capped back at the default. I probably won't mess with the app again until someone accounts for the issue.
 

Kiran-Kumar

Senior Member
Apr 25, 2017
652
164
Bangalore
No need of running the adb command, just go to display settings and switch to standard and then to adaptive motion smoothness.
This will release the lock and enable adaptive/variable refresh rate again.
If we manually run adb command or through the app the motion smoothness is set to 'high', which means both min and peak are locked to the same value.
 

pcriz

Senior Member
Aug 23, 2008
5,039
2,937
No need of running the adb command, just go to display settings and switch to standard and then to adaptive motion smoothness.
This will release the lock and enable adaptive/variable refresh rate again.
If we manually run adb command or through the app the motion smoothness is set to 'high', which means both min and peak are locked to the same value.
Mine never changed, I went from standard and back. 120 ran constantly. Had to run the command.

Op was mistaken on two accounts. Saying it maintained the VRR and that it scaled from 1hz up.
 
Last edited:

andkovt

New member
Aug 17, 2020
1
0
I noticed something interesting when running "adb shell dumpsys display"
Code:
mVotesByDisplay:
    -1:
      PRIORITY_REFRESH_RATE_MODE -> Vote{width=-1, height=-1, minRefreshRate=48.0, maxRefreshRate=120.0}
      PRIORITY_USER_SETTING_PEAK_REFRESH_RATE -> Vote{width=-1, height=-1, minRefreshRate=0.0, maxRefreshRate=120.0}
      PRIORITY_USER_SETTING_MIN_REFRESH_RATE -> Vote{width=-1, height=-1, minRefreshRate=0.0, maxRefreshRate=Infinity}
      PRIORITY_LOW_BRIGHTNESS -> Vote{width=-1, height=-1, minRefreshRate=120.0, maxRefreshRate=120.0}
  SettingsObserver
    mDefaultPeakRefreshRate: 120.0
    mRefreshRateMode: REFRESH_RATE_MODE_SEAMLESS
    mIsLowPowerModeEnabled: false
  AppRequestObserver
    mAppRequestedModeByDisplay:
    mLastAppRequestModeReason: NONE
    mLastAppRequestModeReasonType: NONE_TYPE
  BrightnessObserver
    mLowPowerModeEnabled: false
    mHasLightSensorListener: true
    mAmbientLux: 10.576586
    mIsWirelessCharging: false
    mDisplayBrightnessThreshold: 0
    mDisplayBrightnessThreshold: 0
    mAmbientBrightnessThreshold: 40
    mAmbientBrightnessThreshold: 7400

There is a low ambient brightness threshold and if the ambient light is below it the screen becomes locked at 120Hz. After flashing a flashlight at the screen refresh rate dropped to 60Hz.
When "peak_refresh_rate" is set to 96.0, variable refresh rate seems to work no matter the ambient light level.
 
Last edited:

DigDub

Member
Feb 18, 2010
15
17
No need of running the adb command, just go to display settings and switch to standard and then to adaptive motion smoothness.
This will release the lock and enable adaptive/variable refresh rate again.
If we manually run adb command or through the app the motion smoothness is set to 'high', which means both min and peak are locked to the same value.
It doesn't change for mine. Still gets locked to the hz that is selected in the app if I switch to standard and back to adaptive. Have to use the manual adb command to set the peak refresh rate, leave the min refresh rate alone so that it remains at 0 and the VRR can do its work. The app locks both the peak and min refresh rates to the same, hence VRR does not kick in.
 
  • Like
Reactions: ruebarb

AllAboutTech

Senior Member
Feb 17, 2011
1,399
617
Bucharest
I noticed something interesting when running "adb shell dumpsys display"
Code:
mVotesByDisplay:
    -1:
      PRIORITY_REFRESH_RATE_MODE -> Vote{width=-1, height=-1, minRefreshRate=48.0, maxRefreshRate=120.0}
      PRIORITY_USER_SETTING_PEAK_REFRESH_RATE -> Vote{width=-1, height=-1, minRefreshRate=0.0, maxRefreshRate=120.0}
      PRIORITY_USER_SETTING_MIN_REFRESH_RATE -> Vote{width=-1, height=-1, minRefreshRate=0.0, maxRefreshRate=Infinity}
      PRIORITY_LOW_BRIGHTNESS -> Vote{width=-1, height=-1, minRefreshRate=120.0, maxRefreshRate=120.0}
  SettingsObserver
    mDefaultPeakRefreshRate: 120.0
    mRefreshRateMode: REFRESH_RATE_MODE_SEAMLESS
    mIsLowPowerModeEnabled: false
  AppRequestObserver
    mAppRequestedModeByDisplay:
    mLastAppRequestModeReason: NONE
    mLastAppRequestModeReasonType: NONE_TYPE
  BrightnessObserver
    mLowPowerModeEnabled: false
    mHasLightSensorListener: true
    mAmbientLux: 10.576586
    mIsWirelessCharging: false
    mDisplayBrightnessThreshold: 0
    mDisplayBrightnessThreshold: 0
    mAmbientBrightnessThreshold: 40
    mAmbientBrightnessThreshold: 7400

There is a low ambient brightness threshold and if the ambient light is below it the screen becomes locked at 120Hz. After flashing a flashlight at the screen refresh rate dropped to 60Hz.
When "peak_refresh_rate" is set to 96.0, variable refresh rate seems to work no matter the ambient light level.

more exactly please?!
 

Top Liked Posts

  • There are no posts matching your filters.
  • 10
    Hi All,

    Seems like Samsung has added some trick to their Note 20 Ultra, beside the Adaptive refresh option.
    = Galaxy Note 20 Ultra has a hidden 96Hz display mode=

    Normally, adaptive refresh rate from display sesstings in Galaxy Note 20 Ultra allows the phone, based on the actual open application to refresh the screen from 1hz up to 120hz.
    With this 96hz hidden option you can restrict the adaptive refresh rate to work from 1hz up to 96hz allowing your phone to prolong battery life.


    https://www.sammobile.com/news/galaxy-s20-96hz-refresh-rate-mode/amp/

    https://labs.xda-developers.com/store/app/sszb.s20.refresh

    [{id=1, width=1440, height=3200, fps=60.000004},
    {id=2, width=1440, height=3200, fps=48.0},

    {id=3, width=1080, height=2400, fps=120.00001},
    {id=4, width=1080, height=2400, fps=96.00001},
    {id=5, width=1080, height=2400, fps=60.000004},
    {id=6, width=1080, height=2400, fps=48.0},

    {id=7, width=720, height=1600, fps=120.00001},
    {id=8, width=720, height=1600, fps=96.00001},
    {id=9, width=720, height=1600, fps=60.000004},
    {id=10, width=720, height=1600, fps=48.0}]

    everyone says it is working. check and comment.
    cheers.
    4
    Nice! but why do this? Imagine spending so much money on a phone to run it at 96hz
    If it's anything like the S20U then it surprisingly makes a significant difference in battery life, and can not tell the difference between 96hz and 120hz. On my S20U I got almost 2hrs more SOT running 96hz. Will give my Note 20U a couple weeks before I post results on the Note20U though.
    3
    Thanks OP...working Note 20 Ultra

    Sent from my SM-N986U using Tapatalk
    2
    Probably to save a little battery but still have the option of more then standard 60hz. Having different options is always a good thing.

    Sent from my SM-N975U using Tapatalk
    2
    Thanks. Now only if we could force 96hz and at 1440p.
Our Apps
Get our official app!
The best way to access XDA on your phone
Nav Gestures
Add swipe gestures to any Android
One Handed Mode
Eases uses one hand with your phone