Introduction
Here is the typical reaction of a person who is thinking about modifying the battery of his scooter and finds out the prices of quality custom batteries:
And that reaction is understandable. The whole aliexpress is full of lots “Dolidadta 100000mAh” for 50 bucks, which to the consumer look no worse than the batteries that local battery workshops sell for the price of another scooter, and the capacity is even “10 times greater”:
People also don’t get it: if a good battery costs as much as a whole scooter, then how does Xiaomi manage to sell not just a battery for that price, but a whole good scooter with a great battery?
Regarding Chinese 100,000 mAh batteries for 50 bucks: these batteries simply do not meet the declared characteristics. Their capacity may be 20 times less, low current capacity, cheapest BMS without balancing, and horrible build quality. They should not be bought at all, they’re not even worth the money they’re asking for, and they also might be flammable.
To be fair, not all aliexpress batteries are crap. I do know that there are some very good chinese batteries for their price. Let’s say I make a battery of expensive brand-name cells, and sell it for $300. But the Chinese can make a battery of cheaper cells, buying them in large quantities at a wholesale price, finally selling the battery for $150. Yes, the battery is 1.5 times worse, but the price is 2 times less! I’ve heard many times that “Aerdu” brand batteries are good for their price. But there’s no guarantee that their quality won’t go down tomorrow, so don’t take this example as a recommendation to buy:
So, if you take the time to choose a good seller, there’s a chance to get a battery that looks fine for its price, but there’s still a risk that the battery will degrade after a hundred of charge-discharge cycles, while the batteries assembled from branded cells are guaranteed to work 500+ cycles.
Now, regarding the second point: how do Xiaomi manage to make a scooter so cheap, while there is a good battery inside? The answer is obvious: such a giant manufacturer has a very low wholesale purchase price of components, high efficiency of manufacturing lines, and low price markup. No small “garage” company will ever be able to offer the same prices as a huge corporation. Let’s say we produce great quality batteries for $300, and, to tell the truth, there is no big profit – after parts ordering, rent and salary payments, customs duties and taxes – I am happy if I have money for food. But on the other hand, if Xiaomi was making the same batteries – they would easily reduce the retail price to $200.
It’s sad but true: if you want something unique that is not a mass-market product – it is usually expensive.
Additional internal battery idea
Are there two options only? Either play Chinese roulette, or pay the local battery manufacturer the cost of another scooter for a new custom battery? Actually no, there is a third alternative option, and that is what this article is about.
Original Xiaomi batteries are very good quality, but with a full battery replacement you have to sell your battery, often unreasonably cheap. So, the key idea is that there is no reason to COMPLETELY replace the scooter battery with another huge capacity one, it is better to ADD another small battery with a capacity approximately equal to the original one, finally getting the same double capacity with both batteries installed.
This kind of additional battery is not too huge, so it stays under $100 even if assembled of good branded cells. The battery is connected via a cheap wires splitter and located inside the scooter, so you do not have to spend money on an external bag as well.
Let me show you the final look first, and then I’ll show you the making process in detail step by step. We are making such a funny flat battery:
Then we place it under the original battery:
Of course, there is not enough space inside the scooter, so we install a 3D-printed spacer, which will add the necessary volume, losing some clearance:
And this is the final look of the scooter:
The range is increased by 80%, and the total cost of the upgrade is less than $100 if you do everything with your own hands.
A small inconvenience is that Xiaomi M365/Essential/1S/3 and PRO/PRO2 are slightly different in size, so we will have to design two batteries, but that’s okay, because the difference is small. We’ll take a very detailed look at how the battery is made and installed on M365/Essential/1S/3 models, and then briefly walk through the difference in the case of the PRO/PRO2 models.
Interested? Then prepare your 3D printers and soldering irons! =)
Xiaomi M365, Essential, 1S, Mi3 additional internal battery
Making the battery
The following materials are required:
18650 high-capacity cells, such as LG MJ1 or Samsung 35E – 20 pcs
Insulator rings – 20 pcs
8mm width and 0.1-0.15mm thick nickel strip – 1m
“Double” nickel strip – 1m
Daly BMS, 15A, common port – 1 pcs
XT30 plugs – 3 male ones and 2 female ones.
16AWG silicone wire: red – 1m, black – 1m
100mm heat shrink wrap – 2m
4-5mm heat shrink tubing – a few cm
10mm heat shrink tubing – a few cm
80mm self-adhesive fish paper insulator – 2m
Glue, sealant
Self-adhesive PVC foam tape
Screws M3x35, M3x30, M3x14, M3x6.
“JST” plug
Required tools:
3D printer with a 300×300 heated bed, PETG filament.
Spotwelder
Hot Air Gun
Soldering iron, soldering wire, flux
File, side cutters, scissors, screwdriver, paper cutter
Drill/screwdriver, 3.5mm drill bit, countersunk head chamfer
I have designed a 3D model of the battery first:
There is nothing special, let’s start with the cage, which consists of 7 parts tightened with screws:
The parts are finished after 10 hours of printing:
And wrap it into heat shrink:
That’s it, the additional battery is finished!
Battery installation
Now we have to make an “Y-cable” – a splitter, which makes it possible to connect an additional battery in parallel with the original one:
The current consumption is distributed between the batteries equally. Smart original battery measures the current in half the real one, but “believes” that you are just going with the wind, so it works fine without any warnings.
Both batteries are charged through the standard scooter charging port. When the original battery is being charged, its voltage rises, which causes current flow from its discharge port to the extra battery. Imagine that you feed a child, but he eats just half ot the meal, inconspicuously feeding a cat under the table =)
Pay your attention: this is really important to equalize batteries’ voltage before joining them. The voltage difference must not exceed 1V, for example 36.2V and 37.1V is fine, but 36.2V and 38V is too much. If this condition is not met, a high current flows between the batteries, damaging plugs, wires, and even the batteries.
The simplest way to equalize the voltages is to fully charge both batteries, so their voltage is about 41-42 volts. The original battery is easy to charge: just plug the charger into the scooter as usual and wait until the battery is full. But it’s more complicated with the extra battery, because it doesn’t have a round charging port, and there are 2 options to sort out this problem. The first solution is for people who like to make it nice, clean and perfect. You have to buy a “JST” wire, the same as the charging port of the original battery. Such wires are widely used for rc-car and aircraft hobbies:
Then make the following adapter:
The adapter connects the extra battery to the scooter charging port, so you can charge the battery with the original charger:
Well, if you don’t have the patience/time to buy a special wire and make an adapter, you can just plug the wires into the charging connector of the scooter:
After charging is complete, it is strongly recommended to make sure that both batteries are fully charged and their voltages are almost equal:
Okay, the voltages are equalized, let’s plug it all:
Turn the scooter on, launch some app that can monitor the scooter’s battery, like m365tools – play.google.com/store/apps/details?id=app.peretti.m365tools, swipe to the battery screen and check the current value. It normally does not exceed a few amps, otherwise check if batteries’ voltages are really equal or if polarity is correct. But it should be fine, after all, this is not rocket science.
So we made the battery and successfully connected it to the scooter. I mean that nothing exploded or melted, but in fact we have a couple more problems to deal with before we can screw the scooter bottom cover and go for a ride.
The main problem is “Charging mode.” The thing is that even though we have equalized the batteries’ voltages, later during riding, under load, due to different internal resistance, the voltages will become a little different, which can cause current to flow between the batteries from the extra battery to the original one, so the original bms wrongly detects that a charger is plugged, sending a corresponding signal to the main controller, which will stop the motor until the battery voltages are equalized again after a few minutes so there is no more charging current. It is a real fail to suddenly find yourself in such “charging mode” at a traffic light.
This problem is solved by flashing a custom scooter firmware, where the charging mode is totally disabled. There are different ways to flash the scooter, but the most popular and relevant in 2022 are XiaoDash and ScooterHacking. The first one is paid: it is required to pay about 10 EUR to activate the application, after which you can flexibly customize the parameters of the scooter firmware.On the other hand, ScooterHacking requires no money and you can use it for free, but the developers are open to donations via PayPal and you can pay later, if you are satisfied with the final result. Both teams of developers are cool guys and do a great job, implementing new features non-stop and overcoming spokes in wheels from the scooter manufacturer, which is under pressure from some governments who don’t like unlocked scooters racing 50 km/h.
I will use XiaoDash today. Find the application in Play Market – https://play.google.com/store/apps/details?id=m365.xiaodash.scooter – install and launch. You can see many settings that are currently inactive. The first thing to do is clicking “Perform scooter upgrade now” button to install XiaoDash firmware to your scooter:
Then you have to wait quite a long time until the firmware is installed:
And finally after a few minutes we get a message about successful installation:
That’s it, the scooter has been successfully flashed. Find the option to disable charging mode and toggle the slider:
Of course, disabling charging mode is only a tiny part of the functionality of this firmware, and in the future you can still adjust a huge number of parameters, such as maximum power, speed, and there is even a secret combination to switch the scooter from stock mode to powerful and fast (of course, to protect children, exclusively for testing on your own private land). But all these features are beyond the scope of this post.
Okay, we solved the problem with the charging mode, but there is still one more left: how to fit this extra battery into the scooter? We use a plastic spacer, printed on a 3D printer. Here is its model, which I specifically splitted into two parts, which fit into the standard 300*300 heated bed:
Print it, glue the parts together, finish it with a file, expand holes with a 3.5mm drill:
Let’s try it:
Performance gain test
Xiaomi PRO/PRO2 additional internal battery
The PRO/PRO2 covers also have battery supporting pads in the middle, but they are not too high, so a single layer of foam tape is sufficient for perfect fit:
M3x30 screws are not enough, they screw in just a couple of millimeters, so it would be better to use 32-33 millimeters ones. I wasn’t able to buy it, so I took 35mm screws and cut them. Finally, it looks like this:
The extra battery is made of Samsung 50E cells, each 5000mAh capacity, so the capacity of the whole 10s2p battery is 10000mAh, which, given the capacity of the original battery equal to 12400mAh, in theory, will multiply the scooter range by 1.8. I rode on the stock scooter and the modified one, marked down the following ranges:
Is it worth it?
I promised to double your scooter range for $100 – and it’s almost true. If using LG MJ1 and Samsung 50E cells, the range is increased by 80-90%, and the cost of materials is less than $100.
We overclocked the Xiaomi M365/1S/Mi3 range from 18 km to 33 km. Xiaomi PRO/PRO2 – from 29 km to 51 km.
By the way, I would like to clarify something about the scooter range, especially for those who have never owned an electric vehicle.
You probably have a question: 50+ km of range? Isn’t it too much? My entire city is 10 km in diameter. Who needs it? Delivery couriers only?
And the answer is below: imagine, if your combustion engine car is almost out of fuel, its acceleration and maximum speed is not reduced, it will just stop once the fuel is out. On the other hand, electric vehicles’ power depends on their battery charge level. If your battery is full – you have full speed and acceleration. If the battery is half charged – your speed and acceleration is not perfect, but still fine. But when the battery is less than half charged – the scooter becomes really slow and boring. That’s why you need 50km range to ride 20km with fun and joy.
For me, 40-50 km range is just enough to ride comfortably, not thinking about how many kilometers of charge are left and where to recharge.
So, I would say that this upgrade is a great option for Xiaomi M365/1S/Mi3 owners: you pay just $100 and almost double the range. Another way to get more range is selling the scooter and buying the PRO/PRO2 version instead, but it costs several times as much, just because you can’t sell a used scooter for a good price.
As for the PRO/PRO2, it’s not so obvious. The thing is that its original battery has good capacity, which is enough for most regular customers. But if you want more, there is no option to just buy a pro model, so the only way is a battery upgrade, and the extra flat battery is a very good choice compared to a full battery replacement, which costs $200-400.
In short, the additional internal battery mod, described in this post, is probably the best of cheap Xiaomi e-scooters upgrades. It’s really cheap, and the increase in performance for such a price is really impressive. At the same time, using my ready-made 3D models and guides, you can make it quickly and reliably. Links to all the models and materials are listed below, but first …
Advertising break
This battery is actually a solid “bottom cover”, with cells and BMS compactly placed inside, and there are just two pairs of wires sticking out – for connection to the internal battery and to the controller. Can you imagine how convenient it is: unscrew the original cover, and just screw a new “fat cover” in its place, connecting just a couple of plugs:
I especially made it rounded at front and back so the scooter wouldn’t look like an iron:
I also took care of the problem of voltage equalization at the first connection moment: my battery has a round port compatible with the original Xiaomi charger plug. And there is also a fuse in case the user still forgets to equalize the voltages during installation:
I paid great attention to protecting the battery from mechanical damage: the cover is milled of a solid 30mm HDPE sheet. This material has a ductile structure and is impossible to break by impact, and also slides well on obstacles. Next, after the HDPE layer, there is a 1mm steel plate responsible for protection against sharp, penetrating impacts. Yes, you can drive nails into this battery cover and it will be fine!
You know, I’m keen on Plug&Play solutions, so I couldn’t ignore the “charging mode” issue. There are 2 annoying things if you try to solve it by flashing:
1. Actually, you have to flash the scooter. It’s not too easy for dummies, and also newest versions of the scooter are getting harder and harder to be flashed due to manufacturer limitations.
2. After disabling the charging mode, the scooter stops responding visually to the charger connection. It doesn’t beep, doesn’t show the percentage of charge on the screen, and doesn’t flicker with the tail light.
So, I designed a tiny hardware emulator that joins the data exchange between the battery and the main controller, analyzing information about the current flowing. It checks if this current is similar to the current of the connected charger, and if not, it emulates the data as if there is no flowing current at all, so the controller does not enter the charging mode. And if the current behaves as if the charger is connected – the emulator doesn’t change the data exchange, and the scooter is charging as usual, displaying percentages on the screen and blinking with the back lamp. It’s a neat solution, isn’t it?
In summary, my battery set is as user-friendly as possible, I really have no idea how to make it even easier:
1. Fully charge the scooter as usual
2. Fully charge the extra battery through the compatible port on it
3. Unscrew the original battery cover.
4. Connect the emulator. You don’t need to flash the scooter.
5. Connect the extra battery
6. Screw the new “fat cover”
7. Enjoy
I like to give my products funny and easy to remember names. I was inspired to name this battery by my friend Peter from Hungary. When he saw it for the first time, he immediately said: “Wow, this battery looks like a boat!” So, say hello to “Boat battery” =)
That’s it, commercials are over. I know how smart people are pissed off by native advertising integrations, I hope at least half of the readers didn’t close the page in rage. =) The rest is all for you, and it’s free.
Links to 3D models and materials
3D models:
M365/1S/3/Essential 18650 cells based battery cage – https://www.thingiverse.com/thing:5596688
M365/1S/3/Essential bottom cover spacer – https://www.thingiverse.com/thing:5596327
PRO/PRO2 21700 cells based battery cage – https://www.thingiverse.com/thing:5596691
PRO/PRO2 bottom cover spacer – https://www.thingiverse.com/thing:5596353
Materials:
18650 cells LG MJ1 – https://eu.nkon.nl/lg-inr18650-mj1.html
18650 cells Samsung 35E – https://eu.nkon.nl/samsung-inr18650-35e.html
21700 cells Samsung 50E – https://eu.nkon.nl/samsung-inr21700-50e.html
21700 cells LG M50LT – https://eu.nkon.nl/lg-m50lt.html
Insulator rings 18650 – https://aliexpress.com/item/32827000489.html
Insulator rings 21700 – https://aliexpress.com/item/4000594833333.html
8mm width and 0.1-0.15mm thick nickel strip – https://aliexpress.com/item/1005001709407364.html
“Double” nickel strip – https://aliexpress.com/item/1005001687350946.html
Daly BMS, 15A, common port – https://aliexpress.com/item/32839578059.html
XT30 plugs – https://aliexpress.com/item/32784217001.html
16AWG silicone wire – https://aliexpress.com/item/33030343740.html
105mm heat shrink wrap – https://aliexpress.com/item/32877833260.html
80mm self-adhesive fish paper insulator – https://aliexpress.com/item/32878668190.html
Sealant – https://aliexpress.com/item/4001017724624.html
Self-adhesive PVC foam tape – https://aliexpress.com/item/33062619471.html
“JST” plug – https://aliexpress.com/item/32806921250.html
Heat shrink tubing – https://aliexpress.com/item/32820335995.html
Afterword
If you like this post, please share it on your social networks and e-scooter communities you belong to. It will really help me to get more customers, grow my small business, and release new cool devices. =)
I also invite you to join my telegram group related to Xiaomi and Ninebot electric scooters, where I share the newest inventions and answer the questions:
t.me/m365_custom_electronics_en
Thanks for your attention!