I wanted a skip backwards button for audiobooks in the car so I used the android headphone button standard.

Android 3.5mm headset accessory spec says that you can have 4 buttons by putting different resistances between mic and ground.

  • Function A(0Ω)
    • short: play/pause
    • double: next
    • long: trigger assist
  • Function B(240Ω): vol up
  • Function C(470Ω): vol down
  • Function D(135Ω): “reserved”

You supposed to do some fancy math with the mic resistance, but as I don’t intend to have a mic on this I skipped it

The hard part was getting function D to do anything. I can’t get any of the key press debugging apps I tried to register it. It definitely does things by default, like make tasker save, or close the pulldown menu. No idea what the phone thinks it is though.

I did eventually get AutoMediaButtons from the tasker AutoApps family to register it as a “pressy” button.

“Pressy” appears to be some product that is a headphone jack and just has a single button. It’s weird that I can’t make tasker recognize it in any normal fashion, but at least now I can have it tell my media player to skip back a bit. When the question of how to make a pressy button trigger tasker is asked the responses are to use a custom app to detect it and then call tasker, which is super dumb.

Ignore the fact that I ended up with rewind on the right, I’m not resoldering it.

I haven’t used this in the car yet but it seems to be working on the bench.