Thank you all so much! The original post got such a great response it would be rude not to tell you more about the project.
Some media coverage
- Hacker News
First of all
This may be a little intrusive, but I’d appreciate it if you’d join our Discord server, and subscribe to my Instagram and/or X (Twitter). It will be the best “thanks” if you liked the article 🙂 Thank you, and May the Force be with you!
How I came up with the idea.
Yes, I know that the mouse is quite questionable in terms of convenience, but the main driver of my idea was these two clips.
Some time ago, I saw this video and immediately thought of what I needed to do to solve the author’s problem:
A year later, I saw this video and decided my time had come:
It became obvious to me that I should just charge the battery and do not to connect mouse schematics, well as it turns out it worked. Not without some interesting findings, though.
To make it ergonomic and prevent problems with the sensor (which is not working perfectly as it is) I will have to divide the mouse into 2 halves. I was prepared to have to lengthen the cable from the top part (touch sensor), but luckily, the standard length turned out to be enough.
The found models did not fit at all. I had to do it myself, and the first attempts were quite …. ugly, what can I say?
Moreover, all the Magic Mouse 3d models I’ve found aren’t perfect either. So, I adjusted the shape of the enclosure step by step, just by eye. It’s a concept, after all 🙂
Create-> print -> Adjust -> print -> Adjust -> print -> etc…
A last, but probably not the final option. After all, there is no limit to perfection. But if I were to perfect it, I’m afraid the project would never see the light of day
In the photo, you can notice a frame-adapter for the upper part of the mouse. It was made in only four iterations
Its task is essentially to repeat and extend the original mount (which, by the way, is quite difficult to disassemble without breaking anything off).
There is also a place for a spring (a long metal part near the button) and an offset lever that presses the button.
I was so confident of success that I didn’t even bother to see if the charging idea would work.
Better late than never. The labeling on the battery is not standard (3.61V), but according to the tests, it is a normal one cell that can be charged to 4.2V, which is defined as 100% in the OS.
My interesting find, for the careful reader
When I charge the battery using my BMC (TP4056) the mouse is not aware that it is in the process of charging.
The TP4056 raises the voltage to ~4.258V when the charge is complete. And then shuts down, and the battery stays at ~4.2V.
So here’s the finding:
If we monitor the percentage of charge in the OS, we see 100% at 4.15, and then the wonders begin.
At ~4.17V, the percentage drops to 99%.
~4.19V – 98%
~4.21V – 97%
~4.24V – 96%
After charging is finished and I restarted the mouse, the percentage is back to 100%.
Maybe I’ve found why the mouse is magical? 🙂
Next, I soldered a regular TP4056 directly to the battery outputs. Don’t have to make it complicated. With this battery capacity, it will do the job just fine, there is no need for additional current limiters. Just in case, I monitored the temperature while charging, and everything seemed to be working great.
The boring soldering of a few wires
People say you have to be very careful when working with batteries!
Do not overheat, open, or short-circuit them.
Wear goggles and have fire extinguishers handy. Trained professionals perform these stunts.
Proof of concept. Charging demo
The mouse continues to work while charging.
The system doesn’t track that it’s charging, but the battery percentage just goes up.
Just as I’d hoped
As in most advanced devices, I used double-sided tape to glue the battery on.
However, double-sided tape was mostly used for assembly as well. By the way, for the first time, I tried printing on an FDM printer at 60 microns (0.06mm) resolution.
I installed this adapter into the top of the mouse and taped it to the battery so it could be disassembled for fine-tuning. Once the exact position has been selected, it makes sense to glue it firmly in place and snap the top part into place.
A short video about the top-part extension adapter
Just trying it on and showing how the click works. I apologize for the noise of the printers in the background.
And then there’s the final view. I added high-tech hot glue (sarcasm) to secure the wires and USB-C port. If it works, why think of anything else?
Carefully connected the FFC cable and secured it with the native fasteners.
I added double-sided tape to the plastic extension adapter and simply taped it to the battery at the very end.
One more thing
When I started working on the project, I immediately had very global plans.
- Add RGB backlighting.
- Add a Raspberry Pi RP2040 with an accelerometer to activate the backlighting.
- Consider installing additional buttons connecting RP2040 to the Macbook with a separate BT channel or cable.
- Install an additional battery to ensure the operation of the backlighting.
Fortunately, I came to my senses in time.
But you know, sometimes it’s so hard to stop yourself.
I’m a systems engineer in JetBrains company. Uptime Lab founder. I’m glad to see you on my website! I hope you find my content useful. Please subscribe to my Instagram and Twitter. I post the newest updates there.