Skip to content

Overclocking suite for Switch(Mariko ONLY) running on Atmosphere CFW.

License

Notifications You must be signed in to change notification settings

brinza666/Switch-OC-Suite

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

41 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Switch OC Suite

Overclocking suite for Switch (Mariko Only) running on Atmosphere CFW. Support Horizon OS 12.1.0/13.0.0/13.1.0.

Notice

Disclaimer

Proceed with caution!

I AM NOT RESPONSIBLE (NOR IS ANYONE ELSE) FOR ANYTHING THAT MIGHT HAPPEN TO YOUR CONSOLE (bans, internal component failure, etc.) by installing OC Suite or tinkering software/hardware with any info from this repo.

Features

  • CPU/GPU/RAM Overclock up to 2397.0/1344.0/2131.2 MHz
  • Auto-Boost CPU for faster game loading
  • Fan Control Optimization at high load
  • Modded sys-clk and ReverseNX(-Tools and -RT)
    • No need to change clocks manually after toggling modes in ReverseNX
    • Profile-aware clock override for all games
  • System Settings
    • Disable background services, less heat and power consumption in standby mode
    • Game recording and SysDVR streaming @ 60fps with high video bitrate
    • Option to change the threshold for chargers providing enough power
  • Remove copyright watermark in screenshots/recordings, courtesy of HookedBehemoth
  • TinyMemBenchNX: DRAM throughput and latency test based on tinymembench
  • MemTesterNX: A userspace utility for testing memory faults and stability based on memtester

Details

  • Overclock
    • Safe CPU/GPU OC clock: 1963.5/1267.2 MHz.
      • Anything above that are not in the table of official module and are all wild guess.
      • Max clock(2397.0/1344.0 MHz) may not work on some SoCs.
    • Recommended RAM clock: 1862.4 MHz for most DRAM chips, except Hynix ones (1795.2/1728.0 MHz).
      • RAM clock is set permanently via ptm-patch, rather than sys-clk, considering the ability to select other clocks than the max one is lost if RAM OC takes into effect, and the impact of added power consumption is negligible.
      • Use Hekate to check out the brand of your RAM chips.
      • Choose RAM clock with care, or your eMMC filesystem will be corrupted.
      • Once RAM overvolting is available on Mariko, we may gain more stability and reach higher clock.
    • Mariko variants have much lower power consumption compared to Erista, therefore GPU clock capping is lifted for Mariko.
    • For more info, see README.md in sys-clk-OC.
  • Auto-Boost CPU for faster game loading
    • When a game launches or is in loading screen, sys-clk will boost CPU to 1963.5 MHz for ~10 seconds or until the loading screen ends.
    • Some games don't utilize SetCpuBoostMode at all, e.g. Overcooked 2, so Auto-Boost will be unavailable to these games.
    • To disable this feature, simply remove boost_start.flag and boost.flag in /config/sys-clk/ .
  • Fan Control Optimization at high load for IcosaMariko/Hoag
    • Higher tolerable temperature and smoother fan curve. Set holdable_tskin to 56˚C. Previously it's set to 48˚C, so by default the fan would go crazy (80~100%) easily with a slight degree of OC.
  • Modded sys-clk and ReverseNX(-Tools and -RT)
    • No need to change clocks manually after toggling modes in ReverseNX
      • Add /config/sys-clk/downclock_dock.flag to use handheld clocks in Docked mode when Handheld mode is set in ReverseNX.
      • To disable this feature, use original version of ReverseNX-RT and delete /config/sys-clk/ReverseNX_sync.flag.
    • Profile-aware clock override for all games
      • Add [A111111111111111] title config in /config/sys-clk/config.ini to set frequency override globally:
        [A111111111111111]
        docked_cpu=
        docked_gpu=
        handheld_charging_cpu=
        handheld_charging_gpu=
        handheld_charging_usb_cpu=
        handheld_charging_usb_gpu=
        handheld_charging_official_cpu=
        handheld_charging_official_gpu=
        handheld_cpu=
        handheld_gpu=
  • Disable background services, less heat and power consumption in standby mode
    • Remove the "Disable Background service" part in /atmosphere/config/system_settings.ini if you use Nintendo Online services.
  • Game recording and SysDVR streaming @ 60fps with high video bitrate (7.5Mbps)
    • (Recommended)dvr-patches: Allow recording in any games.
    • For optimal streaming experience, SysDVR via USB interface is recommended.
    • Known Issues (won't fix)
      • Game recordings may be less than 30 seconds if higher bitrate is used.
      • It has noticeable performance impacts in demanding games.
      • Video duration shown in album will be twice than the actual value, while the playback speed is not affected.
    • To disable this feature, simply remove the [am.debug] section in system_settings.ini.
  • Option to change the threshold for chargers providing enough power
    • Find the string enough_power_threshold_mw in system_settings.ini. The default value is 0x9858 (39,000 mW).
    • To lower the threshold, you may change the value to 0x4268 (17,000 mW). Now the system and "sys-clk" will see typical Power Delivery chargers that only supply up to 18W (9V/2A) as "Official Chargers".

Installation

Method A: AIO Package

Contains:

  • Patches for pcv and ptm modules
  • Patch tools for pcv module (only for amd64 Windows, build yourself otherwise): hactoolnet, nx2elf, elf2nso from switch-tools, hacPack, bsdiff-win (bsdiff)
  • Prebuilt sys-clk-OC and ReverseNX-RT modified for OC
  • system-settings.ini with some QoL improvements

Notice:

  • Patching SysNAND is NOT recommended. Since system files are directly altered, you could NOT boot to stock(OFW) until you revert the patch.
  • Restoring pcv backup is required before updating Horizon OS and booting OFW. Launch the patcher.te script to restore your backup.
  • Do NOT forget to reapply ptm-patch after changing RAM OC clock.

Steps:

  1. Make sure you are running targeted HOS, and have prod.keys with latest master key (_0c) dumped by Lockpick_RCM.
  2. Loader patches for Atmosphere: Grab from the web and apply. I won't provide them here. (Or build AMS with ValidateAcidSignature() stubbed.)
  3. Place all the files in SdOut into SD card. See Details section for more info.
    • Be careful of /atmosphere/config/system_settings.ini, you may want to edit it manually.
    • Remove all the files in previous OC Suite version before updating to avoid conflicts.
  4. Dump your pcv module. If you already have the pcv backup of targeted HOS version, jump to Step 5. Otherwise, redump is required.
    • Load TegraExplorer (v4.0.0 or later) in hekate.
    • Choose PCVPatcher.te in Scripts section.
    • Select the MMC you'd like to mount and Dump PCV Module Backup
    • Wait for Done! showing up and transfer the backup /atmosphere/oc_patches/pcv-backup to your PC.
  5. Extract PatchTools folder from the AIO package, put pcv-backup and prod.keys in.
  6. Select RAM frequency and prepare the patches:
    • Copy the /atmosphere/oc_patches/xx-xxxx.x/ptm-patch folder ->/atmosphere/exefs_patches/ on your SD card.
    • Copy /atmosphere/oc_patches/xx-xxxx.x/pcv-bspatch -> PatchTools on your PC.
  7. Run Patcher.bat in PatchTools (NOT with admin privileges).
  8. Move the patched pcv-module to /atmosphere/oc_patches/.
  9. In TegraExplorer, Browse SD -> patcher.te -> Launch Script and then Apply Patched PCV Module.
  10. Wait for Done! and then reboot to enjoy.

Method B: For Pro-users

Grab necessary patches from the repo, then compile sys-clk, ReverseNX-RT and Atmosphere with devkitpro. Simply build loader.kip from Atmosphere and load it with hekate if you don't feel like wasting time.

Acknowledgement

About

Overclocking suite for Switch(Mariko ONLY) running on Atmosphere CFW.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published