Instructables

Galaxy Nexus (and others) headset remote with media controls

Picture of Galaxy Nexus (and others) headset remote with media controls
After being inspired by this project to make a remote control for a Nexus One using three resistance values across pins 3 and 4 of the headset plug - 0 ohms for play/pause, 220 ohms for skip back, and 600 ohms for skip forward, I set out to make something similar.  Since inline remotes are very common for Apple devices, I looked into hacking one to work with my Galaxy Nexus and came across this project.

Apple remotes have three buttons, volume up, play/pause, and volume down.  While play/pause uses the same 0 ohms as Android, volume up and down use complicated signals.  Fortunately for me, the method they use didn't look like it would interfere with the resistances for Android, and if it did, I could probably cut the traces.

I bought a cheap iLuv iEA15BLK inline remote from Amazon for $5.48 and cracked it open.  It is ideal for this project with three discrete, surface-mount, pushbutton switches with just the right amount of room between them for two 0603 size surface-mount resistors.  I ordered both from mouser.com for 5 cents each, not counting shipping.  I used CR0603-FX-2200ELF and CR0603-FX-5900ELF.

With the resistors in the right places, the remote now works with my Galaxy Nexus to play/pause, skip forward, and skip back, as demonstrated in the video below.   I also use JAYS Headset Control to add volume up and down using multiple taps of play/pause.

 

I've tested and confirmed it works on the Unlocked Galaxy Nexus, Verizon Galaxy Nexus, and original HTC EVO.

It also works on the Galaxy Note except that the fwd and back buttons actually make the volume go down and up, respectively.  So if you build it for the Note, reverse the resistors and use a headset utility, like JAYS, to control fwd and back.

It doesn't work on the Xperia Play, HTC Incredible 2, Samsung Droid Charge, and Samsung Galaxy S Vibrant.  It also no longer works on Apple devices...excellent.

Parts:
(1) iLuv iEA15BLK
(1) CR0603-FX-2200ELF
(1) CR0603-FX-5900ELF

Things you will need:
Soldering iron and accessories
Razor blade
Tweezers
Something to hold the circuit board
Magnifying glass (optional, but those resistors are tiny)

 
 
Remove these adsRemove these ads by Signing Up
anirwan4 months ago
how to make is work on galaxy s3....
So what value resistors where there in the first place, or was there none?. Reason I ask is I am wondering if a inline adapter could be used with the resistors in it that can be unplugged to use with apple?. Are the resistors in series with the mic and ground?
buddhra (author)  ajhoward_au1 year ago
The first two links I posted have pictures and answer your questions better than I can explain here, but the answers are none, not that I'm aware, and yes.
Starlet311 year ago
You're right in that I don't know much about the idevice protocol. What I did know however was that the protocol Apple does use is like CTIA but has different resistances/signals/whatever that idevices (and select others) can recognise and Android devices can't. So I know there's more to it than OMTP and CTIA. It's just easier for me to understand that way. :) Changing these resistances is what I thought you were doing and I was wrong to assume that it would work with any headset and for that I apologise. This is what I learned before I stumbled across your instructable and what a number of people have mentioned when it came to finding compatible headset in the Android community. I remember seeing a hack of some kind long ago related to this and it didn't involve resistors, but the location of said information escapes me.

I've already mentioned I have a bluetooth headset in my first post, but I don't really like the business of hoping it has enough charge and the occasional cutouts (which all BT headsets suffer from even if they are on the same side as the phone). Wired is more convenient for me. I've decided to have one last go and I'll pick up a Nokia AD-54. I'll try swapping the mic and ground and see what happens. They're as cheap as chips now anyway. I'll clean up the remote on the JVC one and give it away. It's no use to me and I certainly won't be getting on the Apple bandwagon, that's for sure. Sorry to have troubled you.
Starlet311 year ago
I don't think my last reply went through, so I'll send another (sorry of this double posts). There are 3 button (well, actually 4 if you count the special button) headsets for the new Sony smartphones called "Smart Headset". I would buy one but they're expensive and I have read reviews saying they don't last long and just die on their own. While thinking about it today, I'm wondering if converting a OMTP headset to CTIA would work for me. One that caught my eye is the Nokia AD-54.

It comes in white (which I want) and the functions include forward and backward seeking and probably volume. You can also use any earphones you want and it has a clip on the back too. I don't mind it bigger than the sleek stuff about on the market today, I just want something that works! Would switching the mic and ground connections directly in the remote work? I found an image showing the connections for the headset too...

I'm sorry, but multiple presses seems like an annoying "poor man's" solution when it is possible for an android phone to have similar functions to an idevice. I'm also going to search on how the Sony Smart Headset works. Somebody must've opened one by now... But the way it sounds is that your phone was OMTP and you just modded a CTIA remote to work on it. Nothing special there, as I thought this was all about somehow getting an idevice compatible remote to work with a CTIA android device. But please correct me if I'm wrong. 
nokia_hs_45_ad54_stereo_headset_handsfree_kit.jpgad-54pin_888.jpg
buddhra (author)  Starlet311 year ago
From your questions, I don't think you've studied this project that I linked to in the write-up.  It really breaks down clearly how this works.  If you look at his "One-Step-Beyond Cable" diagram, that's exactly what I have modified this adapter to be.  That's opposed to the second link I posted that explains how the iDevice protocol works, which is what I'm bypassing.

The Galaxy Nexus and the iLuv adapter I modified are both CTIA standard.  If I was trying to switch from CTIA to OMTP, that would be a simple swap of two wires.  No resistors would be needed.

As far as integrating with yours goes, just because it's CTIA standard, that doesn't mean that these resistor combinations will do what you want.  It just means that pin 3 is GND and pin 4 is MIC.  The iDevices use CTIA also, but my headset adapter obviously does not work with them because they use an entirely different method.  Even within Samsung phones, with the Note line, my adapter doesn't control FWD and BACK, it does volume down and up.  So there's a lot more to it than just simply CTIA or OMTP.

You may want to consider a bluetooth solution, like this Jabra Play.  I have the predecessor, the Clipper and it will give you the controls you want and a wide compatibility across different phones in the future.  
Starlet311 year ago
This looks like what I may be looking for... I just received a new JVC marshmallow headset that was made for i-devices that I hoped would work on my Sony Xperia Tipo (which uses the CTIA standard), but alas only the middle button worked. I cracked open the remote and this is what I found (see image). There are two tiny resistors on the back side of the PCB. The one closest to the mic says "418" (this also happens to be near the "volume up" button. The other one says "818".

If I changed these two resistors with the two mentioned in your instructable, would it make the button visible to the phone? Or do you think swapping the mic and ground wires would work? Or should I do both? I don't want to mess about to much in case I ruin them (cosmetically and functionally, that remote was a pain in the butt to open and will need a little TLC), but I would really like a headset that I can use to answer calls, and use to control my music. I'm hoping that it would be possible to configure it as follows:

Middle button: Play/Pause/Answer/End Calls

+ button: Volume Up/Skip Forward (and if possible forward search a track if held down. Is there an app that allows this?)

- button: Volume Down/Skip Backward (and of course rewind a track if held down)

This is what a bluetooth headset that I have can do, but I rarely use it as it's uncomfortable to wear and its battery doesn't last long. A wired headset gives better sound quality anyway (all without draining your phone's battery) and not even the best bluetooth headset in the world would convince me otherwise. I'm not prepared to pay a lot for a headset that will do all this and in the end will die because of poor materials or crap design.

I would rather modify a cheaper one and not lose as much and just buy another when the first one dies. So, er... if this possible or am I clutching at straws? I chose this headset as a lot of reviews praised the microphone and I've used the mashmallow earphone before so I know how comfy they are. That is something worth spending the time to work with!
SANY0167.JPG
buddhra (author)  Starlet311 year ago
The goal of this modification is to connect pin 3 of the jack (GND) to pin 4 (MIC) and do it through different resistors to send a FWD or BACK command. That'll be step one for you, to determine if your phone will even accept those commands. In my limited experience, not many do and I've never tested a Sony. My installation of the resistors just uses the installed switches to do it and the layout of that particular controller just happened to work well.

Without inspecting your circuit further, I can't say for sure about whether replacing your resistors will make it work, but I suspect not. That was not the case for mine. None of the original circuitry was intended to do what this modification does.

Since the middle button is working, you could just use something like Jay's Headset Control App or Headset Button Controller. That wouldn't give you use of the other buttons, but will let you do volume and skip functions. I'm not aware of any apps that will let you customize the extra buttons anyway.
hygnos71 year ago
Great hack. But for the less experienced hacker this hack would be much easier to accomplish. Simply buying a headset with working controls from ebay (just like these) and solder on a female mini jack socket for any headphones to be used.
2012-09-07 06.59.45.jpg
Pretty much what I did except I added new ear pices instead of a mini jack socket. I agree that this is much easier.
MartiniGM1 year ago
I do think you're project is interesting. I took a HTC three button headset and upgraded the earplugs with earplugs from a pretty good Shure headset with faulty cabling. After buying my new phone, a Samsung Note 2, it still works but as you write it controls the volume instead but can be changed with a headset app.
Paceman1011 year ago
kapnobatai,
did you try this mod on the AKG 451 remote? Interested to know if it was successful or not!

Cheers!
kapnobatai1 year ago
Hi, great hack, congrats! one question: if I understood right, you added the resistors only for the nexus to recognize and execute 'skip forward' and 'skip back'. couldn't this be recognized and included along with the 'play/pause' trigger by a custom app such as Headset Button Controller or JAYS Headset Control?thanks
buddhra (author)  kapnobatai1 year ago
As far I know, the headset control apps only recognize play/pause button presses. I use JAY'S and I know there are no options for the fwd and back buttons. I'm not sure if it's possible or not.
Theoretically, as long as the device recognize the 'skip' commands, they should be found somewhere in order to be included as buttons. I'll contact the apps developers, but I suspect this is possible only at a deeper ROM level. I ve read somewhere that the fruit company has the patent on this kind of 'resistance change trigger' for volume control. thanks anyway, it s an interesting subject, because, obviously, if integrated in an app, the skip functions can be also customized as any kind of command. I ll try you hack on the remote from AKG K451, but I have to check if its microphone will work with android based devices. Thanks for sharing!
nightalon1 year ago
Would there be any way to wire in a tiny switch (switchable with a pen perhaps) to switch between "Android mode" and "iOS mode"?
buddhra (author)  nightalon1 year ago
Sure it's possible, but this stuff is so tiny, I don't think I could do it.
chokingjaik2 years ago
I have a set of Skullcandy 50/50's and they have a 3 button control on them.
I took a photo of the board. It looks almost the same, but I can't tell if your board had connections before or after you put in the resistors.

https://www.dropbox.com/s/wtotlj8f8miuukf/IMG_0001.JPG
buddhra (author)  chokingjaik2 years ago
It did have the little solder pads to start with, they're part of the switches. It's hard to say on yours which pads are connected together and which aren't without taking an ohmmeter to it. Your pads look farther apart as well, so my resistor sizes probably won't work. You should be able to connect it to your phone and use a piece of wire in place of the resistors and touch it between the pads to see if you can make the phone pause/play. The pads where you get a response are where the resistors go.

Good luck.
Thanks for the post. Should it work with a Samsung Galaxy S2 ?
I cant find bigger resistor but 201 works with headsetbutton controler as intended (on sgs2)
buddhra (author)  aalreadytaken2 years ago
Sorry, I don't know anyone with a GS II to test it on.
lkatrencik2 years ago
is it possible to do it on driver/software level?
buddhra (author)  lkatrencik2 years ago
Not that I know of.
niryk2 years ago
Hi buddhra,
Thank you very much!!!
I have a Galaxy nexus and my wife just surprised me with beats by dre dre solo HD (iphone!!) headphones.. so instead of returning them i connected 590&150 ohm resistors and it is working perfectly ;)
cyberoidx2 years ago
For phones that it doesn't work on, I think you're supposed to swap the left and ground wires.
Kryptonite2 years ago
Featured on Hackaday!! Very nice, I especially like how it no longer works with iProducts. Who would want to use one of those?