Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Wired headset buttons cause no reaction. #5

Closed
Giangiva opened this issue Oct 18, 2013 · 59 comments
Closed

Wired headset buttons cause no reaction. #5

Giangiva opened this issue Oct 18, 2013 · 59 comments

Comments

@Giangiva
Copy link

I have a Mi2S 32GB bought directly from xiaomi.
I also own a wired headset from xiaomi as well, which is working fine with the MIUI rom (ok, it's not the best, but it's working... :-) )
When plugged in the phone using this rom, I can hear the sound through it, but pressing the buttons has no effect.
I even tried watching the logcat, but I couldn't notice any change in it when pressing the buttons on the headset.

@M1cha
Copy link
Owner

M1cha commented Oct 20, 2013

This seems to be the device:
I/InputReader( 568): Device added: id=3, name='apq8064-tabla-snd-card Headset Jack', sources=0x80000000

I think we need to create "apq8064-tabla-snd-card_Headset_Jack.kl" but I don't know the keycodes for this device and I don't know how to find them, too. Any idea?

@Giangiva
Copy link
Author

I have installed the cm 10.2 4.3.1 made by cofface in my system2: do you think I can get those keycodes using that rom?
Or, since your kernel is different, also the keycodes will be different?
btw, is this a problem only on my phone (Mi2S) or do you see it in your one too (you own a Mi2, don't you)?
Another idea: since the device seems to be created, can't we read its events from any place in /proc or in /sys?

@M1cha
Copy link
Owner

M1cha commented Oct 23, 2013

I don't know if that works but you could try to get the keycodes via CWM.
advanced -> key test

@Giangiva
Copy link
Author

I tried it, but I got no reaction... :-(
The only code I got is the one for the 'back' key that I pressed to get out of the key test.

@M1cha
Copy link
Owner

M1cha commented Oct 25, 2013

Does this app show the keycodes?
https://github.com/chrisboyle/keytest/downloads

@Giangiva
Copy link
Author

Unfortunately, not.
I can see other buttons with it: menu, back, but nothing happens when I press the keys on the headset.

@ghost
Copy link

ghost commented Nov 22, 2013

I have Klipsch earphones (w/ microphone and single button), which work fully on Miui w/ MI2S 32GB.

The "key test.apk" does not register any key press for the earphones button, while CWM reports ScanCode 256.

Just for the information of those interested: from the view point of plug wiring, MI2 seems compatible with iPhone with the only difference that volume +/- buttons (if exist) do not work on Android. This is IMHO true for any recent Android devices (e.g. last "smart" Samsung with the old "nokia" style was SGS i9000). There are available simple adapters, which switch the mic & ground. The two existing "standards" are shown at the attached picture.
zs-1

@ghost
Copy link

ghost commented Nov 22, 2013

Ivan's ROM (see the other issue #6 ) reads the Scan Code as 226.
ivan_button

@Giangiva
Copy link
Author

Giangiva commented Dec 7, 2013

Hi M1cha,

today, with the 3/12/2013 release, I tried again the wired headset: no luck.
Then I tried with the key test in the cwm recovery: success!
The "play" button is code 256
The "forward" button is code 257
The "rewind" button is code 258
Given that, now, the system seems to be able to read the keys, how can I "convince" the apps to do something with these keys?

@Vosje
Copy link

Vosje commented Dec 12, 2013

Hi Guys,

I have the same problem, am using an IPhone headset. During Phone calls the mic doesn't work. I can hear the otter person, they can't hear me

@M1cha
Copy link
Owner

M1cha commented Dec 12, 2013

Vosje: that's a different problem and has nothing to do with this issue.

@Vosje
Copy link

Vosje commented Dec 12, 2013

Ok sorry, I'll make a new post for this one then.

@Vosje
Copy link

Vosje commented Dec 13, 2013

I’ve tested this, the internal mic doesn’t work when I connect my headset

Van: M1cha [mailto:notifications@github.com]
Verzonden: donderdag 12 december 2013 11:02
Aan: M1cha/android_device_xiaomi_aries
CC: Vosje
Onderwerp: Re: [android_device_xiaomi_aries] Wired headset buttons cause no reaction. (#5)

Vosje: that's a different problem and has nothing to do with this issue.


Reply to this email directly or view it on GitHub #5 (comment) . https://github.com/notifications/beacon/LpC5HU4AhD5GXAfa-5Ysuz7r-G5u1avzgNC0YB9dULC46TN-ROemz8tSyiWdcNwX.gif

@M1cha
Copy link
Owner

M1cha commented Dec 16, 2013

does that work?
http://d-h.st/Fw5

@ghost
Copy link

ghost commented Dec 16, 2013

Nope. Flashed it and cannot see any change. No reaction, Key Test apk does not notice the presses either.

@M1cha
Copy link
Owner

M1cha commented Jan 19, 2014

can u confirm that this is fixed in latest build from linuxx?

@jrizzoli
Copy link

I don't have buttons on my headset, so I can't try, but if it should works if m1cha pushed the commit before 18-01-14 22:30 (GMT+1)

@DaRoni
Copy link

DaRoni commented Jan 20, 2014

Works only increase the volume button.
Play button and decrease the volume button does not work.
flashed cm-11-20140118-UNOFFICIAL-ARIS + pa_gapps-modular-full-4.4.2-20140117-signed, checked with Apollo.

@M1cha
Copy link
Owner

M1cha commented Jan 20, 2014

dump the keycodes in CWM, and check with input test apps if the buttons are at least recognized

@DaRoni
Copy link

DaRoni commented Jan 22, 2014

same as before
The "play" button is code 256
The "forward" button is code 257
The "rewind" button is code 258

@M1cha
Copy link
Owner

M1cha commented Jan 22, 2014

ah ok that's the reason. u don't have play, vol+ and vol- u have play, forward,rewind

@M1cha
Copy link
Owner

M1cha commented Jan 22, 2014

ah and btw please ceck the keycodes with the app I've posted above.
CWM uses 4.1 kernel and shows different keycodes

@ghost
Copy link

ghost commented Jan 22, 2014

Just for those interested: it appears that "vol +" and "vol -" on Apple headset use different resistance (Ohm) values than "rewind" and "forward" on some Android headsets. And what may work on one Android, may not necessarily work on another Android.

I wonder, if the driver/hw in Mi2 can catch all the "key presses" of various headsets or just some. (I have only a single button headset, however.)

At least Play/Pause button seems to be the same accross platforms.

http://www.instructables.com/id/Galaxy-Nexus-and-others-headset-remote-with-medi/

@ghost
Copy link

ghost commented Feb 1, 2014

On CM @ 2014-01-25: I was surprised, that presses of the single button on my headset generates different scanCodes in Keytest.apkg, namely 256, 257, 258, 263. Quite randomly, without a clear pattern. scanCode 263 maps to Keycode 25 (volume down), scanCode 257 maps to Keycode 79 (headsethook), while the others are not mapped to any Keycode. I have shot a screen cast, if needed.

On ivan's ROM [1], the presses of the button alwaysgenerate the same scanCode 226 (which is mapped to Key code 79.

http://xiaomi.eu/community/threads/aosp-4-4-kitkat-rom-aosp-by-ivan.22682/page-10#post-195465

Could it be a driver issue?

Edit1: the same headset (Klipsch) behaves the same on another Mi2S phone with M1cha's CM11. A different headset (iFrogz audio) generates just a single scanCode 256 on the same ROM.

@ghost
Copy link

ghost commented Feb 5, 2014

@M1cha: how about opening a thread at xiaomi.eu to find out what scanCodes exist for various users with current release of your CM11?

For myself, I am just fine to edit apq8064-tabla-snd-card_Headset_Jack.kl after flashing CM11, but resolving the bug might be a bit better ;-)

@LobsterJohnson
Copy link

Here is what I got with my philips uptown using the play/answer button with CM11 by cofface:

Keycode:79
KeyEvent: KeyEvent { action=ACTION_DOWN,
keyCode=KEYCODE_HEADSETHOOK,
scanCode=226, metaState=0, flags=0x8,
repeat=226, metaState=0, flags=0x8,
repeatCount=0, eventTime71612207,
downTime=71612207, deviceld=3, source0x101

@shivwolf
Copy link

shivwolf commented Jul 8, 2014

Same problem.
Me on mi2s with dual boot:
On cyanogenmod 11-20140619-nightly-aries:

  • = -
    Play works
  • don't works
    On miui v5 works fine.

Got the m1cha recovery.
Can I test something to you?

@disparil
Copy link

Same problem here
Me on Mi2 with WIUI v5 KK 4.4.4 (based on CM11)

Volume + works as -
Play works ok
Volume - don't works

@JustAMan
Copy link

JustAMan commented Sep 3, 2014

I have Xiaomi Gold Pistons (headset with 3 buttons) and Xiaomi MiKey (in-jack button), both don't work correctly in CM11 (but work okay in stock MIUI, so hardware is okay).

No buttons seem to work (not even play/pause button on the headset, at least it won't control Apollo player).

I tried testing buttons in the CWM I have (some 6.0.x I believe), and it detects play and some volume (up or down - don't remember), but doesn't detect neither other volume button nor MiKey presses.

I'm using CM11 m8 snapshot.

How can I debug this thing? :)

P.S. Tried KeyTest app - it, too, detects volume up and play/pause presses (though it says "keyCode=KEYCODE_UNKNOWN" for both), scan code for volume up is 262, for play is 256.

@JustAMan
Copy link

JustAMan commented Sep 7, 2014

I think I see why Xiaomi headset buttons don't work - they use different resistance values for buttons compared to what the kernel in @M1cha build expects.

I've compared "sound/soc/msm/apq8064.c" in kernel source between @M1cha version and official (at least that's what I found) version from Xiaomi (https://github.com/MiCode/mi2_kernel), and they differ in the function that I understand as setting button resistances: at

static void *def_tabla_mbhc_cal(void)

somewhere in its code there is this:

Xiaomi M1cha
btn_low[0] = -75; btn_low[0] = -50;
btn_high[0] = 150; btn_high[0] = 10;
btn_low[1] = 151; btn_low[1] = 11;
btn_high[1] = 330; btn_high[1] = 52;
btn_low[2] = 331; btn_low[2] = 53;
btn_high[2] = 655; btn_high[2] = 94;
btn_low[3] = 21; btn_low[3] = 95;
btn_high[3] = 62; btn_high[3] = 133;
btn_low[4] = 154; btn_low[4] = 134;
btn_high[4] = 181; btn_high[4] = 171;
btn_low[5] = 182; btn_low[5] = 172;
btn_high[5] = 218; btn_high[5] = 208;
btn_low[6] = 219; btn_low[6] = 209;
btn_high[6] = 254; btn_high[6] = 244;
btn_low[7] = 63; btn_low[7] = 245;
btn_high[7] = 104; btn_high[7] = 330;

I think I may try to compile my own fork of @M1cha kernel with those lines taken from Xiaomi to fix Xiaomi headset buttons.

@JustAMan
Copy link

JustAMan commented Sep 7, 2014

I've fixed (at least on my device) both Xiaomi Pistons (gold, v.2) and MiKey with CM11 m8.
I had to re-compile the kernel (with some changes) and to change keylayout file.

Pull requests are:
M1cha/android_kernel_xiaomi_aries#2
#62

@JustAMan
Copy link

JustAMan commented Sep 8, 2014

If anyone is using CM11 m8 stable release - here's CWM-flashable patch that fixes MiKey and Xiaomi Pistons
https://github.com/JustAMan/android_kernel_xiaomi_aries/releases/download/pistons-mikey-fixed/cm11-pistons-mikey-fix.zip

At least on my Mi2S it works perfectly after that. Give it a try and let me know if it fails.

@shivwolf
Copy link

shivwolf commented Sep 8, 2014

Thank you JustAMan, i´ll try it this evening and comment here.
Is it just a patch? Or is a complete recovery for pistons & mikey?

@JustAMan
Copy link

JustAMan commented Sep 8, 2014

It's new kernel (based on latest cm-11 version from M1cha repos) which fixes buttons on the headset and MiKey (at least on my device).

It should be applied via CWM just like any other update package - via "install zip from sdcard" menu.

@shivwolf
Copy link

shivwolf commented Sep 8, 2014

Perfect, I´ll give a try!

@shivwolf
Copy link

shivwolf commented Sep 8, 2014

Works fine on my mi2s (32GB)
Cm11 snapshot + Cwm recovery(m1cha)

A lot of thanks JustAMan & Co.

@jrizzoli
Copy link

jrizzoli commented Sep 8, 2014

Can I commit this to cm for u? (I'll give u credits ofc)

Sent from my Xiaomi Mi 2S
On Sep 8, 2014 5:42 PM, "shivwolf" notifications@github.com wrote:

Works fine on my mi2s (32GB)
Cm11 snapshot + Cwm recovery(m1cha)

A lot of thanks JustAMan & Co.


Reply to this email directly or view it on GitHub
#5 (comment)
.

@M1cha
Copy link
Owner

M1cha commented Sep 8, 2014

It has been merged to CM already.

@M1cha M1cha closed this as completed Sep 8, 2014
@jrizzoli
Copy link

jrizzoli commented Sep 8, 2014

Better :P

2014-09-08 17:47 GMT+02:00 M1cha notifications@github.com:

It has been merged to CM already.


Reply to this email directly or view it on GitHub
#5 (comment)
.

@archont00
Copy link

Hello guys, the new values for btn_[high|low] have an affect on scan codes.

My earbuds report various scan codes for a single button press - IMHO the precision of Mi2s is better than the precision of resistors in the earbuds. I can simply assign the same Key Code to the various Scan Codes in "apq8064...Button_Jack.kl" config file to resolve the problem for myself, though it would be better to have the "bigger" config file available for everyone.

This is a good solution as long as the reported scan codes do not overlap with Volume Up/Down of other earbuds.

To check if there is an overlap or not, I would appreciate if you can report again the Scan Codes for your earbuds.

After installing the patched kernel (or at least CM nightly 2014-09-09), will you please run the Key Test app and report:

Earbud name
Button   ScanCode
-----------------------------------------------------
Klipsch for Android with microphone
Play/Pause  256 (most often), 257 , 258, 263 (rarely)

Apple earbuds with microphone
Play/Pause   256
Volume Up  - ignored
Volume Down - ignored

The Volume Up/Down being ignored is expected behaviour, since Apple uses a different technology for these buttons (probably capacitators instead of resistors).

Thnx a lot!

@shivwolf
Copy link

shivwolf commented Sep 9, 2014

Earbud: Xiaomi Piston

Keytest inside recovery(m1cha):
up - 263
down - ignored
play - 257

keytest.apk in CM 11 + JustAMan patch:
up - 24
down - 25
play - 79

keytest.apk in miui
up - 24
down - 25
play - 79

@JustAMan
Copy link

JustAMan commented Sep 9, 2014

@milankni
Play/pause button should be as easy as making 0 resistance, so it should always be scan code 256.

I can provide you a "debug" kernel which dumps measured voltage in dmesg, and we can try to see if specific values need to be tuned.

@archont00
Copy link

@JustAMan
You are about right, however on xda it is mentioned that the resistor value for pressed play/pause button is not neccessarily close to 0 Ohm (short-circuit), E.g. Samsung earbuds have slightly higher resistence.

http://forum.xda-developers.com/showpost.php?p=34185923&postcount=24

My Klipsch earbuds may have a buggy button (worn out?) leading to some inconsistent values and now I guess a workaround of assigning mutliple scanCodes to a single Key Code should not be pushed upstream.
Anyway, if you are so kind and provide me with the debug kernel, I would be happy to see the voltages. (I assume there is not a direct correlation between voltage/resistence and scanCodes. I will try to look into the code if I can find the mapping).

@M1cha
Copy link
Owner

M1cha commented Sep 10, 2014

@milankni does you have different scancodes in MIUI, too? It could be a kernel bug.

@JustAMan
Copy link

@milankni
Here you go: https://github.com/JustAMan/android_kernel_xiaomi_aries/releases/download/pistons-mikey-fixed/cm11-debug-buttons.zip

You just flash it with CWM, boot your phone, wait till it finishes booting, plug your headset and press some buttons.
Then with "adb shell su -c dmesg >dmesg.txt" you get dmesg and search for "mv=" string there, it would be some voltage measurements made by the kernel (either when you plug something - it measures voltage to understand what you've plugged, or when you press a button).

@shivwolf
Copy link

Im trying to test things for u guys, but isn´t working too well.

I´ve installed the test program by JustAMan, entered the console and when I wrote the line, I get the message:
"can´t create dmesg.txt :Read-only file system"

I´d tried
adb shell su -c dmesg >/mnt/sdcard/prueba.txt
and this responses:
Error: device not found.
But this time I get the "prueba.txt" file, but inside, only appears
daemon not running.starting it now on port 5038 *
*daemon started succesfully

Any tip?

@M1cha
Copy link
Owner

M1cha commented Sep 10, 2014

adb is used to establish a connection with a android device. Since you're using terminal emulator you don't need that connection. Just remove the "adb shell" part of your command.

@shivwolf
Copy link

I´ve tried and get this (if search by "mv", I got a lot of lines, I think the good ones are lines with "determine button")

Here they are (only copy those who arent repeated)

<7>[ 66.280517] tabla_determine_button: micmv=18, btn=0
<7>[ 66.293151] tabla_determine_button: micmv=16, btn=0
<7>[ 72.411285] tabla_determine_button: micmv=272, btn=1
<7>[ 73.271118] tabla_determine_button: micmv=253, btn=1
<7>[ 74.972534] tabla_determine_button: micmv=598, btn=2

And this, I suppose that they are detecting when I plug it:
<7>[ 60.508209] tabla_codec_get_plug_type: Detect attempt 0, detected Headset (mic_mv=1386)
<7>[ 60.508209] tabla_codec_get_plug_type: Detect attempt 1, detected Headset (mic_mv=1556)
<7>[ 60.508209] tabla_codec_get_plug_type: Detect attempt 2, detected Headset (mic_mv=2012)
<7>[ 60.508209] tabla_codec_get_plug_type: Detect attempt 3, detected Headset (mic_mv=2153)
<7>[ 60.508239] tabla_codec_get_plug_type: Detected plug type 1

I hope will be helpful

@JustAMan
Copy link

@shivwolf
Are you trying to demonstrate something not working? I was under impression you have (like me) Xiaomi Pistons and they work with my patch, so I was expecting some values from those for whom the patch doesn't work (like those with Klipsch earpods or something).

Nevertheless it's good to see you were able to use my debug kernel :)

@shivwolf
Copy link

Hahaha
Im trying to be helpful in any way.

By the way,im trying to learn how to build a ROM,how it works, and how to use some commands or debugging tools.
Thats why i try to use all i found here

But you are un true, got the pistons and now are working.
And now ive learned how to use your debug.
Thanks for it and,of course,for the patch

@archont00
Copy link

@M1cha
I tried w/ latest MIUI (international edition) and the behaviour of the Klipsch earbuds is the same.

@JustAMan
Copy link

@shivwolf
You're welcome :) Both in using the patch and learning how to use other stuff.

@milankni
Can you follow the instructions I've written above about using debug kernel and getting the debug values for your Klipsch buds (just like shivwolf did)?

@archont00
Copy link

@JustAMan
Here it is - I have grepped the dmesg output for "mv", while repeatedly pressing the button on Klipsch as crazy ;)

<7>[  489.091583] tabla_codec_get_plug_type: Detect attempt 0, detected Headset (mic_mv=1119)
<7>[  489.091613] tabla_codec_get_plug_type: Detect attempt 1, detected Headset (mic_mv=1360)
<7>[  489.091644] tabla_codec_get_plug_type: Detect attempt 2, detected Headset (mic_mv=1853)
<7>[  489.091674] tabla_codec_get_plug_type: Detect attempt 3, detected Headset (mic_mv=2009)
<7>[  494.595703] tabla_determine_button: micmv=199, btn=1
<7>[  494.609374] tabla_determine_button: micmv=20, btn=0
<7>[  494.883850] tabla_determine_button: micmv=42, btn=0
<7>[  494.897521] tabla_determine_button: micmv=619, btn=2
<7>[  498.459533] tabla_determine_button: micmv=12, btn=0
<7>[  498.473724] tabla_determine_button: micmv=9, btn=0
<7>[  500.421539] tabla_determine_button: micmv=12, btn=0
<7>[  500.436096] tabla_determine_button: micmv=12, btn=0
<7>[  507.923431] tabla_determine_button: micmv=12, btn=0
<7>[  507.936157] tabla_determine_button: micmv=16, btn=0
<7>[  508.153350] tabla_determine_button: micmv=9, btn=0
<7>[  508.166076] tabla_determine_button: micmv=9, btn=0
<7>[  509.486694] tabla_determine_button: micmv=131, btn=0
<7>[  509.501861] tabla_determine_button: micmv=157, btn=1
<7>[  509.729492] tabla_determine_button: micmv=38, btn=0
<7>[  509.743652] tabla_determine_button: micmv=20, btn=0
<7>[  509.963378] tabla_determine_button: micmv=243, btn=1
<7>[  509.976104] tabla_determine_button: micmv=254, btn=1
<7>[  511.812713] tabla_determine_button: micmv=34, btn=0
<7>[  511.826629] tabla_determine_button: micmv=31, btn=0
<7>[  515.267272] tabla_determine_button: micmv=16, btn=0
<7>[  515.283233] tabla_determine_button: micmv=23, btn=0
<7>[  515.826446] tabla_determine_button: micmv=12, btn=0
<7>[  515.839843] tabla_determine_button: micmv=12, btn=0
<7>[  517.656036] tabla_determine_button: micmv=9, btn=0
<7>[  517.670196] tabla_determine_button: micmv=9, btn=0
<7>[  518.124786] tabla_determine_button: micmv=9, btn=0
<7>[  518.138671] tabla_determine_button: micmv=9, btn=0
<7>[  519.698608] tabla_determine_button: micmv=93, btn=0
<7>[  519.711395] tabla_determine_button: micmv=58, btn=0
<7>[  520.309265] tabla_determine_button: micmv=42, btn=0
<7>[  520.323699] tabla_determine_button: micmv=45, btn=0
<7>[  520.797851] tabla_determine_button: micmv=27, btn=0
<7>[  520.811981] tabla_determine_button: micmv=27, btn=0
<7>[  521.732177] tabla_determine_button: micmv=12, btn=0
<7>[  521.744934] tabla_determine_button: micmv=12, btn=0
<7>[  522.722534] tabla_determine_button: micmv=283, btn=1
<7>[  522.736755] tabla_determine_button: micmv=300, btn=1
<7>[  523.511169] tabla_determine_button: micmv=42, btn=0
<7>[  523.524810] tabla_determine_button: micmv=16, btn=0
<7>[  523.845031] tabla_determine_button: micmv=16, btn=0
<7>[  523.859039] tabla_determine_button: micmv=12, btn=0
<7>[  524.149810] tabla_determine_button: micmv=20, btn=0
<7>[  524.163848] tabla_determine_button: micmv=20, btn=0
<7>[  524.363250] tabla_determine_button: micmv=38, btn=0
<7>[  524.375976] tabla_determine_button: micmv=34, btn=0
<7>[  526.242889] tabla_determine_button: micmv=166, btn=1
<7>[  526.257049] tabla_determine_button: micmv=106, btn=0
<7>[  526.554504] tabla_determine_button: micmv=10, btn=0
<7>[  526.567413] tabla_determine_button: micmv=9, btn=0
<7>[  526.824737] tabla_determine_button: micmv=9, btn=0
<7>[  526.837951] tabla_determine_button: micmv=9, btn=0
<7>[  527.118927] tabla_determine_button: micmv=9, btn=0
<7>[  527.133697] tabla_determine_button: micmv=9, btn=0
<7>[  527.652038] tabla_determine_button: micmv=20, btn=0
<7>[  527.664794] tabla_determine_button: micmv=23, btn=0
<7>[  528.399047] tabla_determine_button: micmv=34, btn=0
<7>[  528.412841] tabla_determine_button: micmv=31, btn=0
<7>[  528.693328] tabla_determine_button: micmv=20, btn=0
<7>[  528.706054] tabla_determine_button: micmv=20, btn=0
<7>[  529.029602] tabla_determine_button: micmv=38, btn=0
<7>[  529.043212] tabla_determine_button: micmv=38, btn=0
<7>[  529.744415] tabla_determine_button: micmv=14, btn=0
<7>[  529.757476] tabla_determine_button: micmv=12, btn=0
<7>[  530.609344] tabla_determine_button: micmv=27, btn=0
<7>[  530.623565] tabla_determine_button: micmv=20, btn=0
<7>[  530.969604] tabla_determine_button: micmv=27, btn=0
<7>[  530.983703] tabla_determine_button: micmv=23, btn=0
<7>[  531.779663] tabla_determine_button: micmv=31, btn=0
<7>[  531.792388] tabla_determine_button: micmv=29, btn=0
<7>[  533.385070] tabla_determine_button: micmv=12, btn=0
<7>[  533.399200] tabla_determine_button: micmv=16, btn=0
<7>[  534.037261] tabla_determine_button: micmv=20, btn=0
<7>[  534.051513] tabla_determine_button: micmv=23, btn=0
<7>[  534.409790] tabla_determine_button: micmv=23, btn=0
<7>[  534.423706] tabla_determine_button: micmv=23, btn=0
<7>[  534.699676] tabla_determine_button: micmv=16, btn=0
<7>[  534.713806] tabla_determine_button: micmv=12, btn=0
<7>[  535.054351] tabla_determine_button: micmv=12, btn=0
<7>[  535.067291] tabla_determine_button: micmv=12, btn=0
<7>[  535.934570] tabla_determine_button: micmv=9, btn=0
<7>[  535.948547] tabla_determine_button: micmv=9, btn=0
<7>[  536.956268] tabla_determine_button: micmv=16, btn=0
<7>[  536.969879] tabla_determine_button: micmv=16, btn=0
<7>[  537.304870] tabla_determine_button: micmv=243, btn=1
<7>[  537.318725] tabla_determine_button: micmv=247, btn=1
<7>[  537.574371] tabla_determine_button: micmv=258, btn=1
<7>[  537.587188] tabla_determine_button: micmv=245, btn=1
<7>[  537.929840] tabla_determine_button: micmv=34, btn=0
<7>[  537.942657] tabla_determine_button: micmv=34, btn=0
<7>[  538.614227] tabla_determine_button: micmv=38, btn=0
<7>[  538.629669] tabla_determine_button: micmv=38, btn=0
<7>[  539.889343] tabla_determine_button: micmv=12, btn=0
<7>[  539.903594] tabla_determine_button: micmv=12, btn=0
<7>[  540.193237] tabla_determine_button: micmv=27, btn=0
<7>[  540.206115] tabla_determine_button: micmv=16, btn=0
<7>[  540.489593] tabla_determine_button: micmv=23, btn=0
<7>[  540.503784] tabla_determine_button: micmv=21, btn=0
<7>[  540.926147] tabla_determine_button: micmv=131, btn=0
<7>[  540.940368] tabla_determine_button: micmv=65, btn=0
<7>[  541.461761] tabla_determine_button: micmv=60, btn=0
<7>[  541.476593] tabla_determine_button: micmv=51, btn=0
<7>[  542.333953] tabla_determine_button: micmv=31, btn=0
<7>[  542.347686] tabla_determine_button: micmv=29, btn=0
<7>[  543.466766] tabla_determine_button: micmv=9, btn=0
<7>[  543.481262] tabla_determine_button: micmv=9, btn=0
<7>[  544.011840] tabla_determine_button: micmv=219, btn=1
<7>[  544.026062] tabla_determine_button: micmv=115, btn=0
<7>[  544.491027] tabla_determine_button: micmv=113, btn=0
<7>[  544.503753] tabla_determine_button: micmv=108, btn=0
<7>[  545.112915] tabla_determine_button: micmv=76, btn=0
<7>[  545.129272] tabla_determine_button: micmv=65, btn=0
<7>[  546.000793] tabla_determine_button: micmv=9, btn=0
<7>[  546.014923] tabla_determine_button: micmv=9, btn=0
<7>[  546.374816] tabla_determine_button: micmv=73, btn=0
<7>[  546.389312] tabla_determine_button: micmv=18, btn=0
<7>[  547.033630] tabla_determine_button: micmv=9, btn=0
<7>[  547.048583] tabla_determine_button: micmv=9, btn=0
<7>[  547.263305] tabla_determine_button: micmv=9, btn=0
<7>[  547.276031] tabla_determine_button: micmv=9, btn=0
<7>[  547.711761] tabla_determine_button: micmv=135, btn=0
<7>[  547.725921] tabla_determine_button: couldn't find button number for mic mv 1137
<7>[  547.725952] tabla_determine_button: micmv=1137, btn=-1
<7>[  548.178436] tabla_determine_button: micmv=18, btn=0
<7>[  548.192687] tabla_determine_button: micmv=16, btn=0

@JustAMan
Copy link

@milankni
Does your Klipsch has one button only? The log you posted suggests yours headset has several buttons... if you have one button - most likely this log means that contacts within it are really worn out.

@archont00
Copy link

My Klipsch are the Android variant with a single button. I opened the button+mike box and cleaned the micro switch (similar like here https://d3nevzfk7ii3be.cloudfront.net/igi/PnTfYP4BawrolrqD , just a bit tinier). Now it seems that the same scanCode is always returned.
It must have oxidised, not worn out. Anyway, we'll see after some time.

@JustAMan
Copy link

@milankni
Great to hear that your problem seems to be fixed now :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

10 participants