Battery Desync Fix NX Switch: Difference between revisions

From GameBrew
(Created page with "{{Infobox Switch Homebrews |title=Battery Desync Fix NX |image=batterydesyncfixnxswitch.png |description=Homebrew for fixing battery desync on Nintendo Switch. |author=CTCaer |lastupdated=2023/06/09 |type=Utilities |version=1.2.2 |license=Mixed |download=https://dlhb.gamebrew.org/switchhomebrews/batterydesyncfixnxswitch.7z |website=https://github.com/CTCaer/battery_desync_fix_nx |source= |donation= }} {{#seo: |title=Switch Homebrew Apps (Utilities) - GameBrew |title_mode...")
 
No edit summary
Line 5: Line 5:
|author=CTCaer
|author=CTCaer
|lastupdated=2023/06/09
|lastupdated=2023/06/09
|type=Utilities
|type=System Tools
|version=1.2.2
|version=1.2.2
|license=Mixed
|license=Mixed
|download=https://dlhb.gamebrew.org/switchhomebrews/batterydesyncfixnxswitch.7z
|download=https://github.com/CTCaer/battery_desync_fix_nx
|website=https://github.com/CTCaer/battery_desync_fix_nx
|website=https://github.com/CTCaer/battery_desync_fix_nx
|source=
|source=
Line 19: Line 19:
|image_alt=Battery Desync Fix NX
|image_alt=Battery Desync Fix NX
}}
}}
Battery Desync Fix NX app allows you to calibrate your Fuel Gauge IC with values based on your Switch's factory calibration data. The purpose of this program is to address an issue known as battery desync, which is believed to be a hardware bug in the Fuel Gauge IC that is triggered by the operating system. Battery desync can occur when the Fuel Gauge IC has significantly different values from the last saved context in the operating system. This can lead to inaccurate battery percentage readings and other issues.
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.


==How to calibrate your battery==
During power off or reboot, HOS saves the calibration values, which are then restored during boot.  
# Boot the console into the system custom firmware (CFW).
# Run the Battery Desync Fix NX app.
# Press the X button to force initialization.
# Exit the app properly by pressing the B button.
# If you want to calibrate the battery for the official firmware (OFW), reboot the console and boot into OFW or stock firmware.
# Perform two full charging cycles, which involve charging the battery from a low percentage to 100%, then discharging it back to 0% and repeating the process. It is important not to switch to another firmware or reboot during this process.
#* Note: If the console goes into sleep mode due to low battery, wake it up and continue the charging cycle until the battery icon shows as red.
#* If the console powers off, connect the charger to enter the operating system. If the console is stuck on a black screen with the charger icon, unplug and plug it back in after a short period to enter the operating system. Do not fully charge the battery in this state, as the operating system will restore the previous Fuel Gauge context.  


'''It is important to follow these steps carefully and not switch between different firmware or modes (such as sysMMC and emuMMC) without completing the two charging cycles'''. If the process is done incorrectly, it may be necessary to start from scratch and recalibrate the battery for the affected firmware or modes.
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==
'''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.
It is worth noting that the Battery Desync Fix NX app does not come with any support. It is provided as a specialized app for users who are experiencing real issues with their battery capacity and percentage readings. The developer does not offer support for the app and it should not be included in packs or app stores.
 
==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:
# Boot SYS CFW.
# Run the app.
# Press X button for forcing init.
# Exit the app properly (press B).
# If you want this for OFW, reboot and boot OFW or Stock.
# Do 2 full charging cycles (??% > 100% > 0% > 100% > 0%).
 
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.
 
After it's done, you can repeat the procedure for emuMMC.
 
Do not switch in-between SYS, EMU and anything else without finishing the 2 charging cycles. 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).


==Changelog==  
==Changelog==  
'''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.
* Recompile with newer libnx
* Recompile with newer libnx.
'''v1.2.1'''
'''v1.2.1'''
*Recompile with newer libnx
*Recompile with newer libnx.
'''v1.2'''
'''v1.2'''
* First Release.
* First Release.


== External links ==
== External links ==
* Github - https://github.com/CTCaer/battery_desync_fix_nx
* Twitter - https://twitter.com/CTCaer/status/1540028516477157376
* GitHub - https://github.com/CTCaer/battery_desync_fix_nx

Revision as of 13:58, 17 July 2023

Battery Desync Fix NX
Batterydesyncfixnxswitch.png
General
AuthorCTCaer
TypeSystem Tools
Version1.2.2
LicenseMixed
Last Updated2023/06/09
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%).

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.

After it's done, you can repeat the procedure for emuMMC.

Do not switch in-between SYS, EMU and anything else without finishing the 2 charging cycles. 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).

Changelog

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: