Battery Desync Fix NX Switch: Difference between revisions

From GameBrew
No edit summary
(not on the list..)
 
Line 37: Line 37:
# If you want this for OFW, reboot and boot OFW or Stock.
# If you want this for OFW, reboot and boot OFW or Stock.
# Do 2 full charging cycles (??% > 100% > 0% > 100% > 0%).
# Do 2 full charging cycles (??% > 100% > 0% > 100% > 0%).
# After it's done and values are now good, enter the app and press A to save calibration to sd card.
# Reboot into emuMMC, enter the app and press Y to restore the calibration from sd card.


Notes when using:
Notes when using:
Line 45: Line 47:
** Do not fully charge in there because it HOS will restore the previous Fuel Gauge context.
** Do not fully charge in there because it HOS will restore the previous Fuel Gauge context.


After it's done, you can repeat the procedure for emuMMC.
Order doesn't matter. If you started with emuMMC for steps 1 to 7, you do the 8th step on sysMMC CFW/OFW instead.


Do not switch in-between SYS, EMU and anything else without finishing the 2 charging cycles. Always be careful when rebooting until done.
Do not switch in-between SYS, EMU and anything else without finishing the 2 charging cycles and saving the calibration to sd. Always be careful when rebooting until done.


If the process was done wrong, you will need to start from scratch (sys or emu or both if a boot on both occured).
If the process was done wrong, you will need to start from scratch.


==Changelog==  
==Changelog==  
'''v1.3.0'''
'''v1.3.0'''
* Added save/restore of calibration to/from sd card
* Added save/restore of calibration to/from sd card.
* It greatly simplifies and time taken to finish the procedure
* It greatly simplifies and time taken to finish the procedure.
* Added more checks on relevant parts
* Added more checks on relevant parts.
'''v1.2.2'''
'''v1.2.2'''
* Added a mitigation for users that have corruption in system save data.
* Added a mitigation for users that have corruption in system save data.

Latest revision as of 04:05, 11 February 2024

Battery Desync Fix NX
Batterydesyncfixnxswitch.png
General
AuthorCTCaer
TypeSystem Tools
Version1.3.0
LicenseMixed
Last Updated2023/11/20
Links
Download
Website

Battery Desync Fix NX is a homebrew application that allows you to calibrate your Fuel Gauge IC with values based on your Switch's factory calibration data. This fixes issues with battery percentage being wrong.

During power off or reboot, HOS saves the calibration values, which are then restored during boot.

The issue is believed to be a hardware bug in the Fuel Gauge that is triggered by HOS. Specifically, it can happen on restore when Fuel Gauge has significantly different values from HOS last saved context.

Disclaimer: Please use at your own risk. This is a specialized app that must only run if user has real issues with capacity full and percentage. Easiest way to identify the issue is random up/downs on battery percentage and the "capacity now" not matching voltage avg/oc.

User guide

You must run this app in succession to your sysMMC and every emuMMC (if they exist). Otherwise the moment you switch to another one, it will desync again.

You can start from whichever you want. Assuming you start with SYS CFW or OFW/Stock:

  1. Boot SYS CFW.
  2. Run the app.
  3. Press X button for forcing init.
  4. Exit the app properly (press B).
  5. If you want this for OFW, reboot and boot OFW or Stock.
  6. Do 2 full charging cycles (??% > 100% > 0% > 100% > 0%).
  7. After it's done and values are now good, enter the app and press A to save calibration to sd card.
  8. Reboot into emuMMC, enter the app and press Y to restore the calibration from sd card.

Notes when using:

  • Do not reboot to something else until done.
  • When HOS forces a sleep because battery is too low, wake it again and again until it shows red battery icon.
  • In case HOS powered off, put charger to enter HOS.
    • If it's stuck on black screen and charger icon, unplug/plug after a bit so you can enter inside.
    • Do not fully charge in there because it HOS will restore the previous Fuel Gauge context.

Order doesn't matter. If you started with emuMMC for steps 1 to 7, you do the 8th step on sysMMC CFW/OFW instead.

Do not switch in-between SYS, EMU and anything else without finishing the 2 charging cycles and saving the calibration to sd. Always be careful when rebooting until done.

If the process was done wrong, you will need to start from scratch.

Changelog

v1.3.0

  • Added save/restore of calibration to/from sd card.
  • It greatly simplifies and time taken to finish the procedure.
  • Added more checks on relevant parts.

v1.2.2

  • Added a mitigation for users that have corruption in system save data.
  • Recompile with newer libnx.

v1.2.1

  • Recompile with newer libnx.

v1.2

  • First Release.

External links

Advertising: