Connecting a switch directly to a phone

Hi All!

I went down a rabbit hole after reading this post about using a trrs jack and connecting the ground and mic wires from one of my old pair of Apple headphones. My hope is to directly connect the switch to the jack on an iOS device and use the switch without any go between hardware. My little experiment did not work but wanted to see if this was actually possible? Maybe I just soldered the wrong wires together?

1 Like

Hey @loretod - I’ve tested this out myself and it is possible to connect a single switch to a smartphone through the headphone jack by wiring it in a specific way to a TRRS jack and using the built-in universal switch access in the phone. (This was using a Android device, a Samsung S6. The Apple authentication piece as described in this Stackflow answer may complicate things, and may explain why my colleague had some trouble with my makeshift adapter.)

You’re probably aware already, but for the benefit of others, it isn’t possible to plug an access switch with a standard mono jack (which has two connectors) directly into the headphone jack. It also appears as though the volume up and volume down or forward / reverse functions can’t be set up as universal switch inputs on most phones.

Note that there are two different standards for how the jacks/plugs are wired: OMTP and CTIA. In this case, it won’t matter as we’re using the same pins (MIC and GND). (More info: https://help.longtailproducts.com/hc/en-us/articles/207970396-Smartphone-Headset-Standards-Apple-iPhone-AHJ-CTIA-OMTP)

Most modern smartphones use four conductor jacks on their headphone jack (at least that still have headphone jacks) Android devices use the CTIA standard (TRRS is MIC, GND, RT, LT). Shorting or closing a switch between MIC and GND is interpreted as pause / play, which can be used as an universal switch input.

TRRS CTIA

Soldering to existing TRRS cables / headsets can be tricky as the wires tend to be very fine. Sounds like that may be the only option for Apple devices.

For other types of phones, another option is to get your hands on a TRRS terminal block (e.g., https://www.adafruit.com/product/2914, ~$2.50 OR https://www.digikey.com/short/z41ctv) and a mono jack. Connecting the two wires from the mono jack to the Sleeve and Ring2 on the terminal block will create a simple adapter.

Once you connect an access switch to the mono jack, and plug the TRRS terminal into the phone, you’ll need to go in the Accessibility settings to set up the universal switch by pressing on the button.

That’s great news @MMC_Jake! I’ll order some of the terminal blocks and see if that does the trick. Way better than getting an Arduino something in the middle if you just want a single switch connected. Good to know it works with Android hopefully the terminal will be successful on iOS. Maybe I’ll also try to solder directly to the jack instead of the wires. They are super delicate.

1 Like

Another option here could be to hack one of those Bluetooth Camera shutters (https://www.amazon.ca/Bluetooth-Remote-Control-CamKix-Smartphones/dp/B0113W5ZLW, ~$10 CAD). You can often find them much cheaper at Dollar Stores. If I remember correctly, these can also be mapped to a universal switch input. It may be possible to attach a mono jack in place of the switch to make a simple interface. You’ll likely still be limited to a single switch, but this bypasses the Apple authentication hurdle.

Right! I actually have some of those around here somewhere. I was going to try and modify it for one of my clients awhile back but bluetooth was very unreliable at the time and the connection kept dropping and had to re-pair frequently. I think it’s gotten much better so will try again.

Out of curiosity, what type of task are you trying to accomplish with the switch? Single switch scanning?

Yup, scanning would be great. I’m also hoping to get parents and providers to create custom interactive games for kids on Scratch and then use the switch to activate the game. Nothing fancy.