My wife recently bought a selfie stick at Target for $5. It worked the first couple times she tried it after bringing it home from the store. However, problems emerged a few weeks later when she tried to use it again. We'd already thrown away the receipt, so fixing it was the only option.
I dutifully broke out my multimeter and set to work. I measured the resistance between each of the four terminals on the audio jack both with and without the button depressed. There was an open circuit between all of the terminals when the button was not depressed, as I had expected. When I pressed the button, the resistance between the two terminals farthest from the tip dropped to about 219 Ω.
I did a little bit of research and found out that those two terminals are the microphone and ground terminals.
While researching how selfie sticks for iPhones work, I found a couple more important details. I already knew that selfie sticks worked by sending a volume down/volume up command just like the remote control in a set of Apple earphones. Obviously the up and down commands have to be different so the phone knows if you want the volume increased or decreased. With a button, the easiest way to do this is to make each button have a different resistance.
Since I measured a non-zero resistance when the button was depressed, and the resistance changed when I depressed the button, it seemed like the stick should have been working just fine. When I pulled the rubber handle up to examine the pushbutton, I saw that the terminals of the button were exposed solder, and they were able to contact the metal frame of the selfie stick. My theory is that the switch was sometimes shorted out when it wasn't supposed to be, so the phone identified it as malfunctioning and ignored all commands from it.
My fix for this was pretty simple. I placed a piece of masking tape between the button and the metal frame. I then added a couple more pieces of tape on top to keep the button in place. Since making this simple modification, the selfie stick is now working normally again. You can see the modifications I made in the image below.
Sources / additional reading:
Photo by Nick Hubbard