Switch Oled 8000mAh(80% MORE PLAYTIME) Battery Mod(Showcase/Guide) [Part 1]

To celebrate the reveal of the Switch 2, I decided to finally pick up the soldering iron and finish a project I have been working on for years; doubling the Switch's battery life.

WARNING: Attempting this mod without requisite knowledge or research may result in FIRE, EXPLOSION OR WORSE!

Before I continue the post, let me show proof that my switch has 8000mAh of capacity now.
Picture of my Fuel Gauge info. 7943mAh.


Now that that's out of the way, let me talk about the more interesting part, journey to achieve a near doubling of battery capacity for the switch. Over a year ago, I posted my first viable battery mod. If you want the remaining portion of my guide to make sense, you should probably read that post. At the time, I knew more was possible and set out to improve the capacity of the switch even further. I did more research and bought everything I thought I would need. However, a failed modchip install and life kinda got in the way. I also thought that more people on the western net would try their hands at a battery mod and evolve the methods in the guide I wrote. However, apart from one bodged implementation by a Youtuber, nothing materialized. So after getting some more equipment to salvage my OLED and finally install a modchip, I have a improved battery mod up and running.


Step 1: Cell Selection & Testing
I won't be going through the details of what makes a good cell and how to test batteries you find online this time, read my previous guide for that.

Instead, this time I'll be outlining some potential candidates and what I chose. Battery bay max size has been expanded to 72(w)x77(l)x9.5?~(h)mm this time with some internal physical "alterations" I made this time.


[TABLE=full]
[TR]
[TD]Cell/Battery Origin and Name[/TD]
[TD]Capacity(mAh), Voltage(V)[/TD]
[TD]Dimensions(HHWWLL)[/TD]
[TD]Remarks[/TD]
[/TR]
[TR]
[TD]LeEco LePro 3 AI Edition, LTF26A[/TD]
[TD]4000, 3.85[/TD]
[TD]436876[/TD]
[TD]The original cells used in my old post. Most of the ones on the market are >5years old, but I haven't found a suitable replacement for a 4mm thick cell.[/TD]
[/TR]
[TR]
[TD]Meizu 17(Pro) 3rd Party High-Capacity Cell, BA091F?[/TD]
[TD]5100, 3.87[/TD]
[TD]516874[/TD]
[TD]The best 5mm cell I found when I first began a year ago. Still the easiest to find and cheapest of the 5mm cells. Has a 4500mAh capacity when charged to 4.2v.[/TD]
[/TR]
[TR]
[TD]Meizu 15 Plus, BA891[/TD]
[TD]3500, 3.85[/TD]
[TD]386878[/TD]
[TD]A useful option if the other cell used is too thick with the LTF26A. Suffers from the same issue as the LTF26A to a lesser extent.[/TD]
[/TR]
[TR]
[TD]Huawei Pura 70 Ultra, HB536979[/TD]
[TD]5200, 3.91[/TD]
[TD]536979[/TD]
[TD]The cell that has maximum utilization of the switch's battery bay area. Difficult to source and without standout characteristics to compensate.[/TD]
[/TR]
[TR]
[TD]Vivo X200 Pro, BA72[/TD]
[TD]6000, 3.84[/TD]
[TD]546776[/TD]
[TD]The best 5mm~ cell in early 2025. Has chart topping power density and capacity due to use of lithium-silicon chemistry. Possible to source on Chinese 2nd-hand markets for a high price due to demand from DIY cell phone battery capacity upgrades.[/TD]
[/TR]
[/TABLE]

At the time I started this mod, the only real viable options to construct a 9.5mm~ battery was LTF26A+BA091F(9100mAh). However in 2025, due to a wave of Chinese smartphones hitting the market with silicon anode batteries, we can construct a 10000mAh(LTF26A+BA72) battery. Once this technology becomes more commonplace and more viable cells arrive, expect my 8000mAh mod to look underwhelming.

I did a initial test of the cells I used for the mod and got a potential real capacity of 7565mAh.
IMG_20240226_162927.jpg

That seemed satisfactory to me at the time, so I continued.


Step 2: Creating a Modded Battery pack for the Switch.
The same principles as my previous guide apply. I chose to use the Switch's original Battery protection circuit instead of bypassing it and using my own this time. This will bite me in the ass later in the guide which is why this thing needs a Part 2. I don't have any pictures of the assembly this time, so you'll have to use your imagination for now.

Step 3: Modifications to the Switch Frame
This was the step I skipped out on last time. This adds over a 1mm to the battery bay thickness and accounts for 1000mAh out of the 1600mAh increase over last time.

First up, strip the Switch's metal midframe of everything except maybe the speakers:
Untitled.jpg

You can buy these things online, so do that if you want a backup or to revert the mod.

Next, knock out all the metal in the battery compartment. I used a hammer and pliers for this. Probably not the best tools since I caused a crack that spread outside of the the battery compartment. A dremel with a cutting disc is probably more appropriate.
IMG_20250118_031935.jpg
IMG_20250118_031932.jpg


This is just a rough cut, you need to sand/grind down the edges. I used a knockoff dremel with a cutting disk and sanding disk.
IMG_20250118_155425.jpg


Remember to clean the midframe and workspace of metal dust unless a shorted motherboard repair seems particularly fun and cheap.


Step 4: Make it Fit

Reassemble your switch up to this point:
IMG_20250118_184910.jpg
IMG_20250118_184154.jpg


Now, we need to mount the battery to the sidewalls of the compartment now since bonding it directly to the screen is a idea and removing it will inccurs a high change of damaging the screen. I used foam and VHB tape to give my battery some wiggle room to expand.
IMG_20250118_192142.jpg


Now you might have also noticed, the EMI shield needs trimming to fit. Trim EMI shield & anntenae(if needed) accordingly and appropiately to fit the battery. Trim off only black plastic of anntenae.

Step 5: Enjoy!
After reassembling the switch, discharge and recharge the battery 100-0, 0-100. By 0%, I mean 0%. Make sure the switch switch turns off with the red battery warning. Recharge till charging current is 0mA to ensure battery is fully charged.

You should probably do some experiments to make sure your battery isn't a dud. I ran this scene and setup for 15w power draw in P5R. It held steady for 10minutes. The stock battery would 100% brownout here.

IMG_20250119_204121.jpg


If you followed my steps 100% up to this point you would have noticed the capacity got was most likely around 7400mAh, well, there is one more step I took..

Bonus Step: Modifications to Hekate to Force Charging to 4.4v
By default, non-lite switches charge to 4.2v. This means on our 4.4v, 4.5v smartphone cells we are losing as much as 10-15% of the rated capacity. The switch's bq24193 is 100% capable of charging to 4.4v though, we just need to send the right commands to this IC.

I downloaded the hekate source code and poked around and found how to force any max charge voltage. Now I am a terrible coder and know basically no C++, so what I did is probably extremely inadvisible, but it did work.

I made the following in changes in bq24193.c:
1737721544471.png


Booting into Hekate now shows us 4400mV charge voltage instead of 4208mV. Great! But...


Life is never that easy.
First of all, my decision to use the switch battery protection board means any voltage above 4.3v reaching the battery causes over-charge protection to kick in. Bummer. But not a dealbreaker at all. Setting charge voltage to 4288mV fixes this for now and gives us 8000mAh of capacity. And it's easily fixable with a board meant for 3.85v cells and some craftsmanship.

The real problem is that the moment HOS is booted, the bq24193 is set back to 4.208v. In theory, homebrew could be written to set it back immediately after boot. On the switchbrew website it seems the powctl service can be used to change charge voltage in HOS easily. Fantastic!

...Except for the fact it's not present on retail units.

Ok, no problem, I'll do it the hard way and use bus services instead and set the charge voltage by communicating with the charge controller via I2C.

But, as we have established earlier, I don't know how to make Switch Homebrew or write C++. This is way above my pay grade.

So for now, I have to charge with the switch powered off after booting hekate. Sucks to suck, I guess.


If anyone reading this knows how to do write what I want to do, please help me, or there probably won't be a part 2 with a 9000mAh+ battery :(
 

Attachments

  • 1737720991457.png
    1737720991457.png
    25 KB · Views: 124
Last edited by DaLZy,
I did. In clean ofw and emunand I have 7695mah but with edited Prodinfo as a Switch lite battery
Did you accomplish this with simply using CTCaer's Battery Fixer?

The traditional Nintendo method for calibration doesn't stick and neither does draining/charging in hekate (though hekate will temporarily show the higher capacity, it will drop over time).
 
Did you accomplish this with simply using CTCaer's Battery Fixer?

The traditional Nintendo method for calibration doesn't stick and neither does draining/charging in hekate (though hekate will temporarily show the higher capacity, it will drop over time).
only with CTCaer you will stuck under 6500-6600 because of the Voltage limit. The battery in Switch lite has a little higher voltage so you can charge it a little higher if you change it in Prodinfo
 
only with CTCaer you will stuck under 6500-6600 because of the Voltage limit. The battery in Switch lite has a little higher voltage so you can charge it a little higher if you change it in Prodinfo
Ahh, I see. How did you change prodinfo?
 
After messing with this more, I think I understand now that CAL0 = prodinfo.

@DaLZy
Are you around?
Asked a good friend if he is able to modify atmosphere or write a module for this.
Modded his console with a bigger battery and he delivered.
Many many thanks @lulle2007200 to make this possible.


Alternatively, set BatteryVersion to 2 in cal0 and run ctcaers battery desync fix once (2 stands for the battery model in the switch light, which is a 3.8v battery, is charged up to 4.3v)

As a Switch Lite owner, the battery version trick doesn't help, unfortunately. I tried the first method as well and kept receiving a fatal crash.

For reference, I'm attempting to calibrate a "6250" mah battery from SuperBuy that can go up to 4.4v (I'm unable to share a link due to number of posts but there are links in one of the early posts of this thread to similar batteries).
 
After messing with this more, I think I understand now that CAL0 = prodinfo.



As a Switch Lite owner, the battery version trick doesn't help, unfortunately. I tried the first method as well and kept receiving a fatal crash.

For reference, I'm attempting to calibrate a "6250" mah battery from SuperBuy that can go up to 4.4v (I'm unable to share a link due to number of posts but there are links in one of the early posts of this thread to similar batteries).
Sorry I didn´t read your whole post . Not work on Lite :D
Only with homebrew
 
Skilled, patient and ambitious people like you are the reason why Hardware modding can be so great! Love to see all the crazy things people here do, most the time for passion and why not <3
 
Is something like this possible on Lite? I don't need this much battery life, just enough to equal a stock OLED.
 
@DaLZy
Are you around?
Asked a good friend if he is able to modify atmosphere or write a module for this.
Modded his console with a bigger battery and he delivered.
Many many thanks @lulle2007200 to make this possible.
https://github.com/lulle2007200/i2c-mitm

Alternatively, set BatteryVersion to 2 in cal0 and run ctcaers battery desync fix once (2 stands for the battery model in the switch light, which is a 3.8v battery, is charged up to 4.3v)

and

https://github.com/lulle2007200/BatteryVersionEditor
Hey, thanks for sharing this guide! I'm trying to get 4.3V charging working on my Switch, and I've already:

1. Set BatteryVersion=2 in cal0

2. Confirmed I'm using a 4.3V-compatible battery

But even after rebooting, Hekate still shows the charge limit as 4208mV. I'm not sure if I need to run the battery_desync_fix_nx tool, or if the i2c-mitm module is required. Could you walk me through the exact steps to get the voltage limit to update?

Appreciate your work on this!
 

Site & Scene News

Popular threads in this forum