Upgrade your battery for 35 hours of battery life
With my IRex iLiad out of warranty, I decided to take inspiration from Calviny's experiment and replace the original batteries with higher-capacity ones. The following is a rough guide to how I did it, with pictures.
Contents |
[edit] WARNING
I have put other warnings in here, but I want to emphasize that doing this can potentially wreck your iLiad in many, many ways. Performing this mod will definitely void your warranty.
Most important is to be VERY careful to prevent short-circuits. I strongly recommend putting a liberal helping of electrical tape on all exposed electrical contacts and circuit boards before putting the case back together. Also, be aware that the exposed edges of the silver plastic battery wrapper can be slightly conductive, so I recommend taping them too.
Also, the batteries are thick and fit snugly in the case. If you force anything during reassembly you could easily break your screen. Make sure it fits, and don't press too hard!
If you are very careful and take plenty of precautions, this can be an easy mod that greatly enhances your iLiad experience. But please, please be careful! This guide comes with no guarantee, and I take no responsibility if you break your iLiad while following it.
[edit] Equipment
To do this you will need to own and be able to use the following tools, at minimum:
- A #6 Torx screwdriver
- An X-ACTO knife, razor blade, or other sharp tool
- A voltmeter/multimeter
- A decent soldering iron
For the current implementation you will also need ssh access to your iLiad, or at the very least shell access plus the ability to write a few simple scripts. If there is enough interest I may provide an installer for the necessary software in the future.
[edit] Step 1: Open the case
The iLiad's case is very easy to open:
- Remove the stylus and any memory cards or card blanks.
- There are 12 screws on the back. Use the #6 Torx to unscrew and remove them all. Put them aside, somewhere safe.
- The case will open easily along the top and one side. To open the bottom and other side, carefully slide a credit card down the edge to release the hooks.
- The battery and speaker wires connect the front of the case to the back of the case. They can be unplugged carefully to allow the two halves of the case to be separated.
- Set aside the front half of the case.
- Remove the speaker and the battery assembly from the back half of the case. They are affixed in with double-stick tape and may be a little difficult to pull out. Be careful not to stress or damage the battery circuit board.
[edit] Step 2: New Batteries
The v1 iLiad's original batteries are two polymer lithium-ion batteries with a rated capacity of about 1100 mAh. (Contrary to what I said in my poem, the capacity is not printed on the outside as far as I can recall.) Calviny upgraded his iLiad with 1800 mAh cells, but I wanted to push the limit, so after some searching and measuring I picked out these:
They're $15.95 each, or about $32 for two. For reference, the battery model number is H605084, rated to 2C current drain.
Each battery is 84mm x 50mm x 6mm thick, the same size as Calviny's except 1.8mm thicker. It turns out that this is not a problem, because the iLiad case has about 1.8mm of extra space inside. These batteries fit pretty well: it's snug, but for me at least there wasn't any major trouble getting them to fit.
Karel warned that fitting batteries too tightly might cause overheating or other problems, because lithium-ion batteries need to expand when charged. I haven't had any problems along those lines at all. There seems to be enough room at the battery edges to allow expansion. These particular batteries are also UL-listed, which means they should be resistant to explosion or catastrophic failure in the event that they are punctured or short-circuited.
Before you install the batteries:
- Use the multimeter to be sure the batteries have the same charge.
- Do this by measuring the voltage of each battery.
- If the two batteries have the same voltage within +/- 0.010 volts, that's probably close enough.
- If the batteries are not the same, you will need to charge one (or drain the other) in a controlled manner until they are the same. Otherwise you won't be using their full capacity.
The batteries I received from BatterySpace.com were almost identical in charge, so this was no problem for me.
[edit] Step 3: Case Modification
The back half of the iLiad shell has plastic fins and posts that hold the original batteries in position and add structural integrity to the frame. You will need to remove them to make space for the new batteries, which will fit so snugly that they'll provide their own structural reinforcement.
Each plastic fin can be removed pretty easily by scoring along the base of each side with a sharp knife, and then bending it over until it snaps off. The posts are harder to remove, but with care and patience you can cut them away. Notice that I only removed the edges of the screw posts at the lower left and right; you want to make just enough space for the battery and leave the screw hole alone.
[edit] Step 4: Switch Batteries
Here is where you put your soldering skills to the test.
- Remove the old batteries from the battery control circuit board.
- I tried solder wick at first, but it was easier to just heat each tab with the soldering iron, then push or pull it off.
- Solder on the new batteries.
- There is not a lot of room, so put the batteries and circuit board in the case first. Get their relative positions correct before you solder.
- Be careful not to accidentally short-circuit the battery terminals while soldering.
- Be careful not to overheat the battery with the soldering iron. It might help to clip a heat sink to the base of the tab.
- The new batteries are wider than the old ones, so the outer terminal tabs have to be folded at 90 degrees to reach the circuit board contacts.
- Apply electrical tape wherever necessary to guard against accidental short-circuits.
- Fold the circuit board back down into position. Make sure it's far enough down that the plug can still plug in to the motherboard jack when you re-assemble the case.
- Apply a strip of electrical tape along the top of the circuit board, covering the electrical contact points and exposed battery tabs. (Not shown in figures.) This will help prevent accidental short-circuits when the case is reassembled.
[edit] Step 5: Re-assemble the case
Now you can put the case back together. I actually threw away the speaker at this point: it doesn't fit beside the new battery, and I never use it anyway. If you want to keep it I suppose you can shave down the other plastic bits and just move the speaker up a bit.
You will have to re-plug the battery board into the main circuit board before putting the case halves together. If the battery board is not down far enough the plug will pop out when you put the case together, so be sure to fold it down and push down the batteries as well.
Be careful and don't force anything. You don't want to break the screen. If it doesn't want to go, try to find what's in the way. Everything fits for me, so it should fit for you, but the first time it took me some fiddling to make everything sit just right.
Once everything snaps into place, try turning it on to be sure the battery connection is good. If it turns on, go ahead and screw the case back together!
[edit] Step 6: Replacement Software
For various reasons the iLiad does not always seem to recognize or adjust for a larger battery size, although it is (in principle) able to. The battery icon still goes to zero in 10-12 hours, and the powerMgr program will then automatically shut off the iLiad.
To solve this problem I modified the original battery.o kernel module and powerMgr program to use battery voltage to monitor the battery status. There are some small differences, but this approach keeps most of the original iLiad functionality.
This software should also support virtually any battery size. You can use it on the original iLiad as well, although you may not see any benefit from it.
Warning 1 : It is HIGHLY RECOMMENDED that you backup the original start.sh and powerMgr before installing this software. It is also recommended that you backup personal files and be prepared to reflash your iLiad if necessary. I take no responsibility if you brick your iLiad with this modification. I have tested it and it works for me, but it may not work for you.
Warning 2 : This software will ONLY work with lithium-ion / lithium-polymer batteries. Do NOT attempt to replace your iLiad's batteries with any other kind.
The above link contains the source code and binaries for the modified battery.o and powerMgr, as well as a modified start.sh startup script. More detailed information about the programs can be found in the README file. The binaries were compiled and tested for v2.11 iLiad software, but they should work for 2.12 as far as I know...?
You will have to manually install the files as follows:
- Manually create the directory "/lib/modules/2.4.19-rmk7-pxa2-irex1/kernel/drivers/irex".
- Copy battery.o to /lib/modules/2.4.19-rmk7-pxa2-irex1/kernel/drivers/irex/battery.o
- Copy powerMgr to /usr/bin/powerMgr
- Copy start.sh to /home/root/start.sh
- Reboot, and you're done!
With this newest software you do NOT have to fully charge the iLiad after installation, and you do NOT have to keep the iLiad on while charging. (These were limitations of previous versions. This newest version should "just work".) For full information on how this software is different, consult the README file.
This is the setup I use on my iLiad, and it works fine. If you have any problems, let me know.
[edit] Summary and Conclusion
Major steps:
- Install two 2800 mAh batteries.
- Replace the powerMgr with my two power management programs.
Results :
- New run-time (minimal use): 35 hours, 15 minutes.
- Charging time: about 7-8 hours with the iLiad on, about 6 hours with the iLiad off.
The larger batteries add to the iLiad's weight, making it a little harder to hold it up in one hand for long periods. On the positive side, it also makes the iLiad feel more solid and stable in the hand.
The only drawback to this mod is the improvised software I had to add. My software is not as user-friendly and not as reliable as the iLiad's built-in battery hardware. However, if and when iRex releases the source codes for powerMgr and the battery kernel module, it should be easy to alter them so that the iLiad will work with and auto-detect almost any battery size.
In my opinion, this is a very powerful mod that greatly extends the iLiad's capabilities, and I'm definitely glad I did it!