[EXPERIMENTAL] About screen refresh rate

Search This thread

C3C076

Recognized Contributor
Dec 15, 2012
7,749
24,714
Bratislava
ceco.sk.eu.org
!!! WARNING !!!
Some of the users reported they are having issues with Google gestures / OOS gestures navigation after enabling mode 0 described below
and that the only way that worked to fix them was to perform a factory reset. Use at your own risk and always have a backup plan.
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------

While implementing a QS tile for switching screen refresh rate into GravityBox I came across some interesting facts during reverse engineering.
Refresh rate has in fact 3 modes already although settings app shows only 2 of them (60Hz/90Hz).
Code:
.field private static final ONEPLUS_SCREEN_REFRESH_RATE:Ljava/lang/String; = "oneplus_screen_refresh_rate"
.field private static final OP_60HZ_MODE_VALUE:I = 0x1
.field private static final OP_90HZ_MODE_VALUE:I = 0x0
.field private static final OP_AUTO_MODE_VALUE:I = 0x2

90Hz mode as can be seen in the settings is in fact mapped to AUTO_MODE (0x2) which most likely is the reason why we can observer some auto-switching which is
based on screen content (e.g. video playing, etc.). Using mode 0 should in theory enable full-time 90Hz without auto-switching.
I can't confirm exactly as I'm using it for a short period of time.

Anybody willing to experiment it should be possible to switch modes using adb shell:
Code:
adb shell settings put global oneplus_screen_refresh_rate [mode]
where [mode] is 0 for 90Hz, 1 for 60Hz and 2 for Auto mode

When using mode 0, none of the existing options in the settings will be selected.
Also, option summary text in Display settings will show 60Hz which is a bug - simply they did not account for a fact that somebody can change the value to something else from outside.
 
Last edited:

thebigtross

Senior Member
Aug 19, 2013
272
51
Mega improvement. We are in 90hz. Strange that in gui it set option to 2 (auto). They know it will consume 5 to 10% battery more [emoji16]
 
  • Like
Reactions: kewlpanda

omar2005

Senior Member
Jun 11, 2016
257
113
Doha
Thank u so much ....I noticed that the apps were stuttering while scrolling sometimes but now it's perfect :)
 

Fauxnetiks

Member
Jun 29, 2014
20
5
Wow, works like a champ, I was getting this weird thing where PoGo would open at 90hz refresh, then when I left and came back it would drop to something much lower.
 

trapcoder

Senior Member
Sep 21, 2017
684
400
What's the recommended setting?


IH4fZyx.gif


What recommended settings are you referring to ? There's only 0, 1 , 2

Either you wan't it to be 90 all the time, 60 or auto
 
  • Like
Reactions: ChiDi9901

ledvedder

Senior Member
I guess I'm a bit confused. The OP says 0 = 90Hz. But then it says when using mode 0, none of the existing options will be selected.

2 sets it to 90Hz, 1 sets it to 60HZ, and 0 sets it to no options.

Is 0 really the auto setting?

Sent from my GM1915 using Tapatalk
 
Last edited:

C3C076

Recognized Contributor
Dec 15, 2012
7,749
24,714
Bratislava
ceco.sk.eu.org
I guess I'm a bit confused. The OP says 0 = 90Hz. But then it says when using mode 0, none of the existing options will be selected.

2 sets it to 90Hz, 1 sets it to 60HZ, and 0 sets it to no options.

Is 0 really the auto setting?
Mode 2 is auto but it is shown as 90Hz in the Settings on purpose - that's how devs decided to cover up existing auto mode as it's probably not fully finished. Native 90Hz is mode 0. But mode 0 is not mapped in the Settings to any option that's why none is selected.

I don't see it in your app, is there a new version of it ?
It's work in progress
 

Pfeffernuss

Senior Member
Jun 30, 2009
5,198
1,962
Wassenaar
This is genuinely an amazing tip, the scrolling on sites which included videos was horrible.

Extremely happy with this :good:
 

Top Liked Posts

  • There are no posts matching your filters.
  • 42
    !!! WARNING !!!
    Some of the users reported they are having issues with Google gestures / OOS gestures navigation after enabling mode 0 described below
    and that the only way that worked to fix them was to perform a factory reset. Use at your own risk and always have a backup plan.
    ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------

    While implementing a QS tile for switching screen refresh rate into GravityBox I came across some interesting facts during reverse engineering.
    Refresh rate has in fact 3 modes already although settings app shows only 2 of them (60Hz/90Hz).
    Code:
    .field private static final ONEPLUS_SCREEN_REFRESH_RATE:Ljava/lang/String; = "oneplus_screen_refresh_rate"
    .field private static final OP_60HZ_MODE_VALUE:I = 0x1
    .field private static final OP_90HZ_MODE_VALUE:I = 0x0
    .field private static final OP_AUTO_MODE_VALUE:I = 0x2

    90Hz mode as can be seen in the settings is in fact mapped to AUTO_MODE (0x2) which most likely is the reason why we can observer some auto-switching which is
    based on screen content (e.g. video playing, etc.). Using mode 0 should in theory enable full-time 90Hz without auto-switching.
    I can't confirm exactly as I'm using it for a short period of time.

    Anybody willing to experiment it should be possible to switch modes using adb shell:
    Code:
    adb shell settings put global oneplus_screen_refresh_rate [mode]
    where [mode] is 0 for 90Hz, 1 for 60Hz and 2 for Auto mode

    When using mode 0, none of the existing options in the settings will be selected.
    Also, option summary text in Display settings will show 60Hz which is a bug - simply they did not account for a fact that somebody can change the value to something else from outside.
    13
    On a side note. Already have these brand new beautiful tiles in GravityBox :)
    4
    Any other way to do this without using a pc or gravity box?
    you can use a terminal emulator
    3
    And the odd, was that it only got fixed after a factory reset.
    I'm just leaving it in 90hz in settings.

    I used the one from jOneplus Tools from playstore and it works great. I use navigation gestures and no issues
    3
    Also do not get mistaken by option in Settings app showing 60Hz when mode is set to full 90Hz.
    It'a s bug in the Settings app - simply they did not account for a fact that somebody can change the value to something else from outside.