How to Unlock 120 FPS High Refresh Rate in Android Games
Complete Guide to Unlocking 120 FPS High Refresh Rate in Android Games
Modern Android flagship and midrange smartphones boast stunning 120Hz and 144Hz AMOLED displays with ultra-low latency touch digitizers. However, when you launch competitive shooters or demanding 3D games, OEM software daemons frequently force your screen refresh rate down to 60Hz. This artificial cap is applied by background performance managers like Xiaomi Joyose and Samsung GOS to restrict power draw. This technical guide outlines how to configure system display parameters using SetEdit, disable background throttling daemons, and sustain true 120 FPS gameplay without rooting your device.
1. The Engineering Behind 60Hz Display Throttling and OEM Game Optimizers
Modern Android displays incorporate Low-Temperature Polycrystalline Oxide (LTPO) backplanes that dynamically scale refresh rates from 1Hz up to 120Hz. While LTPO technology conserves battery life during static reading, its implementation in custom Android interfaces often impairs 3D gaming performance.
Android's display compositor, SurfaceFlinger, queries system configuration tables to decide which refresh rate to assign to an active window surface. When an application launches, background vendor services intercept the window request:
- Xiaomi Joyose: On HyperOS and MIUI devices, Joyose monitors system thermals and package signatures. If an active package belongs to a known intensive game (e.g., Genshin Impact, COD Mobile, or PUBG Mobile), Joyose injects a dynamic constraint into the display subsystem, forcing the display hardware to cap output at 60Hz.
- Samsung Game Optimizing Service (GOS): Samsung implements kernel-level thermal governor profiles. As soon as internal sensors reach moderate temperatures, GOS aggressively downclocks GPU frequencies and lowers SurfaceFlinger sync pulses from 120Hz to 60Hz.
- Engine-Level Caps: Game engines like Unity and Unreal Engine frequently ship with conservative defaults (e.g.,
Application.targetFrameRate = 60) unless the specific device model exists in the game publisher's verified cloud whitelist.
2. Display Refresh Rate & Thermal Cap Matrix
Consult this comparative matrix to evaluate the behavior of popular Android interfaces when running 3D titles under stock versus optimized parameters.
| OEM Android Skin | Throttling Daemon | Default Game Refresh | Override Methodology |
|---|---|---|---|
| Xiaomi HyperOS / MIUI | com.xiaomi.joyose | 60Hz Capped | SetEdit user_refresh_rate = 1 & Joyose Freeze |
| Samsung One UI (S23/S24) | Game Optimizing Service (GOS) | 60Hz - 90Hz Dynamic | Game Booster Alternate Performance + SetEdit |
| OnePlus / Realme OxygenOS | OPlus Games / Athena | 60Hz Capped | SetEdit peak_refresh_rate = 120.0 |
| Google Pixel Stock Android | AOSP Display HAL | 60Hz - 120Hz LTPO | Developer Options 'Force peak refresh rate' |
3. Step-by-Step 120Hz Force Override Walkthrough & Setup Guide
Follow this technical walkthrough to configure your Android display subsystem to sustain 120Hz across all gaming applications without root access.
-
Step 1: Install SetEdit and Verify Developer Settings
Install the official SetEdit (Settings Database Editor) utility from Google Play Store. Next, navigate to Settings > Developer Options and enable Show refresh rate. This renders a real-time hardware frequency counter in the upper-left corner of your display.
-
Step 2: Grant WRITE_SECURE_SETTINGS via ADB or Shizuku
Certain display keys reside in the protected Global settings table. Connect your phone to a computer with ADB or open an on-device Shizuku terminal, and execute:
adb shell pm grant by4a.setedit22 android.permission.WRITE_SECURE_SETTINGS
This grants SetEdit administrative permission to update system database keys safely. -
Step 3: Modify System Refresh Rate Keys in SetEdit
Open SetEdit and ensure the dropdown at the top is set to System Table. Scroll down alphabetically to locate the following keys:
- Locate
user_refresh_rate: Tap it, select Edit Value, change it to1, and tap Save Changes. - Locate
peak_refresh_rate: Set this value to120.0or144.0matching your display hardware specifications. - Locate
min_refresh_rate: Set this to120.0to stop dynamic LTPO drop-downs during static scenes.
- Locate
-
Step 4: Disable Xiaomi Joyose Daemon (For HyperOS / MIUI Users)
If you are on a Xiaomi, Redmi, or POCO device, Joyose will attempt to revert your changes upon game launch. Use an ADB command or Shizuku debloater (such as Canta or Hail) to clear Joyose cache and disable the package:
adb shell pm disable-user --user 0 com.xiaomi.joyose
This completely terminates background thermal throttling of display frequencies. -
Step 5: Configure In-Game Video Graphics Preferences
Launch your target game. In the visual settings menu, set Frame Rate to Ultra, Extreme, or 120 FPS. Lower shader complexity, motion blur, and screen resolution by one notch to give the GPU sufficient headroom to deliver a consistent 120 FPS frame pacing stream.
4. Hardware Specifications & Display Panel Baseline
The following technical requirements table outlines the hardware specifications and baseline parameters necessary for genuine 120 FPS rendering.
| Target Package / App Name | AOSP Display Subsystem & SurfaceFlinger Compositor |
|---|---|
| Operating System & Platform | Android 11, 12, 13, 14, 15 (ARM64 Snapdragon & Dimensity) |
| Display Hardware & Refresh Version | 120Hz / 144Hz AMOLED / OLED LTPO Hardware Panel |
| Memory & Thermal Footprint | Trip point: 40°C - 42°C chassis limit; <20MB tuning footprint |
| Root & Developer Mode Status | Zero Root Required: AOSP Developer Options + WRITE_SECURE_SETTINGS |
5. Performance Advantages & Tradeoffs of High Refresh Gaming
Uncapping frame rates to 120 FPS delivers remarkable competitive responsiveness while introducing physical hardware demands.
Key Advantages
- Cuts display latency by 50% (8.33ms frame times vs 16.67ms at 60 FPS).
- Significantly clearer motion tracking in fast-paced first-person shooters.
- Eliminates micro-stuttering caused by erratic LTPO refresh rate switching.
- Provides instantaneous touch digitizer tracking and crosshair precision.
Potential Tradeoffs
- Increases battery consumption by approximately 25% to 40% during active gaming.
- Higher thermal dissipation can cause phone chassis to warm up without external cooling.
- Setting changes may revert following a full Android system OS update.
6. Sustained Thermal Management & Frame Pacing
Rendering at 120 FPS generates significant heat. To sustain peak performance over multi-hour gaming tournaments without thermal throttling, implement these hardware best practices:
A. Active Thermoelectric Peltier Cooling
Passive phone cases trap thermal energy within the chassis. Remove protective silicone cases during gaming sessions and mount an active magnetic Peltier cooler (e.g., Black Shark Magnetic Cooler or Flydigi B6X). Active cooling maintains internal battery temperatures below 36°C, completely preventing OEM thermal governors from triggering fallback protocols.
B. Bypass Charging (Separation of Power Delivery)
Charging a smartphone battery while playing games generates double heat. Modern gaming smartphones (Asus ROG, Black Shark, POCO, Infinix) feature Bypass Charging, delivering power directly to the motherboard while pausing battery replenishment. Enabling this feature eliminates battery charging thermals entirely.
7. Display Refresh Calibration & Frame Pacing Diagnostics
Unlocking high refresh rates provides diminished visual returns if the underlying graphics engine fails to maintain consistent frame pacing. When a display operates at 120Hz, each display frame renders within an exact 8.33-millisecond hardware window. If game engine draw calls fluctuate between 90 FPS and 115 FPS, the Android WindowManager introduces duplicate frame buffers, resulting in perceived micro-stutter and judder despite high numerical framerate readings.
To diagnose and resolve cadence mismatches, inspect the real-time frame time graph using OEM profiling overlays or developer tools. If frame times spike during camera rotation, lowering secondary post-processing effects such as volumetric fog, dynamic reflections, and ambient occlusion stabilizes draw call execution. Locking frame times to a consistent rendering window ensures butter-smooth visual fluidity while extending device battery longevity during competitive gaming.
Topic Taxonomy & Related Tech Guides:
Frequently Asked Questions & Troubleshooting
Author & Reviewer
Verified Android Gaming & App Specialist with 8+ years of experience testing games and safe mods.
Explore Other Pillars
DMCA & Trademark Fair-Use Disclaimer
All trademarks, logos, and company names mentioned in this editorial guide are the property of their respective owners. Mention of any product, service, or trademark is for identification, comparative review, and educational reporting under nominative fair use. For copyright inquiries, please review our DMCA Compliance Policy.