Several months ago, my favourite gaming mouse, a Logitech G500, developed an annoying problem that I will call “ghost clicks”. This is how I explained it to Logitech support:
If I hold the left mouse button for a long time, such as if I want to select a long section of text, it will randomly “let go” and my selection will be broken, even though my finger did *not* let go. Another case is if I click and hold a scroll bar to slowly scroll a webpage, it will randomly “let go”, as if the button released and re-clicked by itself.
Fortunately, Logitech has an excellent 3-year warranty and my mouse was only 2 years old, so they sent me a brand new G500s (the G500 model is now discontinued). Being the holiday season, I decided to gift the new one to my brother, use a spare mouse at work (3.5-year old MX518, still going strong!), and make do with my semi-broken G500 with the ghost-clicks at home.
Long story short, I had a mouse that still felt and looked great, but with a left mouse click that only worked about 70% of the time. This is just tantalizing enough to convince you that everything is OK, and then BAM! – a ghost click when you least expect it. After a few months I was determined to fix it.
A review of the different solutions
Searching on the internet, I found lots of people reporting similar mouse problems, many with Logitech but others as well, with almost as many DIY solutions. For example, this tutorial [Red Ferret 2012] shows how to fix a Logitech M705 by opening up the microswitch (the black box) and restoring the “bend” in the piece of copper (“leaf spring”). Sounds great! But I couldn’t understand why this should work — could a simple bend on the non-moving end of the copper really cause this trouble?
Researching further, I actually found a number of distinct solutions, all claiming to fix this or a similar problem (the tutorial referenced above actually links to #2):
- Bend the central curve outward [Overclockers 2005]
- Make the central curve ‘flatter’ and/or make a curve at the non-moving end of the spring [Overclockers 2009]
- Clean the metal contacts [Superuser 2011]
- Replace the entire microswitch assembly (requires soldering)
- File off the plastic ‘indentations’ under the mouse buttons [Instructables]
- A different, cheaper mouse (Dell OEM). Seems to imply a mechanical problem with cheap plastic used in the button design rather than an electrical one.
- Insulate against static electricity buildup [Youtube 2013]
- Really? This guy claims to get the problem with a brand new G500 mouse, but only in low humidity. I guess it’s possible, but for most people it’s a wear-and-tear issue.
- A software fix to detect and ignore double-clicks [Daniel Jackson]
OK, so two solutions that contradict each other (#1 and #2), two that sound very dubious (#5 and #6), and a software fix (#7) that, while creative, attacks the symptom rather than the root cause. To me, the best-sounding solution was #3, as the problem described was an exact match for my own. This solution makes a lot of sense since it’s targeting the part that makes electrical contact when you click, and over time, oxidation most likely builds up and interferes with this contact. And it turns out that this was the solution that worked for me!
Red Ferret essentially recommends Solutions #1 and #2, though it confusingly seems to imply that the curve at the end is more important, as opposed to the central curve that’s pointed out by Overclockers. The importance of this “end curve” is later disputed, since not every mouse/microswitch has it — for example, that user’s MX Revolution and my G500 don’t. These sites had the most comments reporting success though. Supposedly the curve in the middle of the leaf spring affects the stiffness of the clicker. (It’s possible these people had a different problem than I did — many people actually described their problem as the mouse double-clicking when it should single-click, while I mostly experienced spontaneous release while holding down the button.) The issue I have with this solution is that “bending it” is so vague and imprecise, it is hard to know which shape is the correct one. Also, putting the copper spring back into its place was so incredibly difficult that while trying to wrestle it into place with a pair of tweezers, I most likely bent the damn curve out of shape again anyway.
Finally, if you don’t want to fiddle with tiny, finicky springs, then solution #4 is for you. Just replace the whole microswitch assembly without opening it up. Of course this requires the ability to solder and de-solder the thing from the circuit board, trading one steady-hand activity for another. I’ve tried soldering before and was no good at it, plus I wasn’t patient enough to wait for a new switch to arrive. So I set out to fix my spring!
Taking apart the mouse!
Since solutions #1-3 all involve taking apart the microswitch, I figured I’d try them all out at the same time. Here are the steps.
DISCLAIMER: This repair will require you to work with very tiny parts. A steady hand, a pair of tweezers, and lots of patience is recommended. I take no responsibility if you damage your mouse, or if you lose the pieces and/or your sanity! 😉
1. Peel off the sticky pads to reveal 4 screws (a 5th screw is behind the “Logitech” sticker — just poke a hole through to reach this one), and unscrew them. Tip: the pad has two layers (a smooth one and a sticky one); make sure you dig under both layers before removing.
2. Pry apart the upper shell from the base. Tip: Remove the weight cartridge first, then you can use the empty slot as a finger-hold. Watch out for the ribbon cable that connects the two pieces.
See these two black boxes labelled “Omron”? Those are the microswitches and the little white bit should make a clicking sound when you press on it.
3. a) Before doing the next step, cover the top of the switch with a piece of sticky tape, so you don’t lose the white bit.
3. b) Pry apart the top half of the microswitch casing. This is the 2nd hardest part of the whole procedure. Take a look at the shape of the top half and try to wedge a sharp blade at the seams.
Before you remove the leaf spring (that metallic, copper looking piece), study it carefully. One end is fixed. The other end is mobile and moves up and down (the spring action should snap it upwards if you’re not applying any force). This mobile end has a bump on the bottom, which makes contact with another metallic piece at the bottom, this is what closes the switch and sends the signal that the mouse button is pressed. There is also a curved part in the middle, on the underside. The open end of this curve is also fixed (this will be important when you put it back later).
(WARNING: While the next step is very easy, it can be very difficult and time-consuming to put the spring back. A few commenters have suggested that you can clean off the corrosion without removing the spring, by using a piece of sandpaper or a US dollar bill. Then you could skip step 4 and step 6, the hardest part of the repair! Thanks to BIPED, Edsel, and Milton for the suggestion.)
4. Remove the leaf spring. This is very easy. Just nudge it sideways toward you and it will pop out.
5. The bump which makes contact is probably dirty. Just scrape it a bit with a small flat head screwdriver and it should be shiny again. Below is the result after cleaning.
(If you want, you can also try bending the spring outward/inward or however you think is best. I did not do this.)
6. The hardest part of this repair: Putting the spring back into the switch. There are three (3) key spots you need to fit. Look closely at the photos below and you’ll see that two of the metal things sticking up actually have a microscopic notch on the right-hand side; the fixed/non-moving end of the spring fits into the left-most notch (not under!), and the open end of the curved part of the spring fits into the notch in the middle. The mobile end of the spring slides right under the “roof” of the 3rd spot. When you get it right, the spring should be stable, should be able to strike the contact easily, and spring back quickly.
This part is difficult because of the precision required. The spring is extremely tiny and thin, and likes to bounce right out of your fingers. The notches are extremely small; I wasn’t able to see them with the naked eye. I highly recommend a small pair of tweezers. Even with this, it took me about 30 tries before I was able to get it right.
7. Now put the pieces of your mouse back together and you’re done! To make sure you did it correctly, test the clicker at each step, i.e. try clicking the spring mechanism, then try clicking the white bit on top of the black box, then finally try clicking the left mouse button with the USB plugged in.
All in all, it took me about 1 hour 45 mins from start to finish (based on the timestamps of my photos). My mouse click is now working 100% and I can do long drags with no hiccups. The fix was a success! And it’s clear to me that the culprit was the buildup of either corrosion or residue on the copper contacts. Bending the spring made no difference; my clicker was always very springy, and bending it (or trying to) didn’t change that.
Regardless of the reason, I am pretty happy. The G500 was an expensive mouse and 2 years would have been too short of a lifespan. Hopefully this gives it a few more years of life.
UPDATE 2015-Nov-15: It’s nearly two years later and I’m still using the same G500 mouse with no problems in sight. I’ve also updated this post with a few small suggestions from the comments. Thanks everyone!