Nexus One Headset Controls: Issue, Solution and the Aftermath


I've been using the Nexus One Headset for quite some time now and never had any problems. However recently I found out that the Headset controls stopped responding while the headphones were working fine. My first assumption was that some application would have latched on to the control bits. So I killed most of the applications, then rebooted  and I also factory reset the phone, but the issue persisted.


The issue was with the hardware. I connected a spare HTC Desire headset to my phone, to no surprise it worked. So the fault was with the my Headset.

After searching the web and tearing in to the hardware I could finally solve the problem. Here is how-

The Problem:
The Unshielded copper wire wound around within the cable had torn due to twisting and turning of the cable.
This is the common (GND) for the function keys and hence the controls didn’t work.

Verifying it:
Hold the Multimeter across the 4th Connector (Sleeve) and the 3rd Connector (counting from the tip). The Multimeter should read as shorted or Zero Ohms when you press the play button.

Some of the Resistance readings across 4th and 3rd connectors:
Buttons pressed
Resistance
(Ideal value)
Resistance
(Recurring stable value)
Play/Pause
0 Ω (short-circuit)
0 Ω (short-circuit)
Previous
220 Ω
221 Ω
Next
600 Ω
605 Ω

Solution:
I connected the torn wires again and the controls worked. But I had to replace the jack with a new one since the copper wire had torn very close to the plug.

Note:
The plug is TRRS (Tip-Ring-Ring-Sleeve) type 3.5mm. 

Headset affected:
HTC RC E150/E160

Similar Headsets are provided with:
Desire, Desire Z, Desire HD

Below are some the images and wiring diagrams that might help you. There are images of the headset controls dismantled just in case if you are interested.

Conclusion:
Handle your hardware with care :)

Images: