You are not logged in.

#1 2022-01-16 01:36:00

logothete
Member
Registered: 2022-01-06
Posts: 44

F8 Microphone Mute Key of HP Envy Doesn't Work

Hello Everyone,
I have installed Arch with KDE Plasma 5.23.5 and Linux kernel 5.16 on an HP Envy 15 ep-1020ca.  The f8 key, here assigned as a microphone kill-switch, is dysfunctional on Linux -- but not entirely so.

Problem A: The key, when pressed on its own, does nothing.
Problem B: The LED light within the key does not turn on.

Complication 1: the key actually works in conjunction with Shift, Meta, FN, etc. It is only in isolation that the key does nothing.
Complication 2: The other kill-switch, the webcam kill-switch, works out of the box, including its LED.

I don't really know any relevant information for the LED right off the bat, but I can at least provide a good deal of relevant info for problem A

Relevant Outputs for Problem A

Two entries from

 cat /proc/bus/input/devices
 
I: Bus=0011 Vendor=0001 Product=0001 Version=ab83
N: Name="AT Translated Set 2 keyboard"
P: Phys=isa0060/serio0/input0
S: Sysfs=/devices/platform/i8042/serio0/input/input4
U: Uniq=
H: Handlers=sysrq kbd leds event4 
B: PROP=0
B: EV=120013
B: KEY=20000 20 0 0 1500f02100000 3803078f900d401 feffffdfffefffff fffffffffffffffe
B: MSC=10
B: LED=7

and

I: Bus=0019 Vendor=0000 Product=0000 Version=0000
N: Name="HP WMI hotkeys"
P: Phys=wmi/input0
S: Sysfs=/devices/virtual/input/input18
U: Uniq=
H: Handlers=kbd event7 
B: PROP=0
B: EV=33
B: KEY=4000000000 0 1000700000000 2102400 0 0
B: MSC=10
B: SW=20

Are evidently keyboard related.

For the keyboard:

sudo evtest /dev/input/event4

Event: time 1642292662.134237, type 4 (EV_MSC), code 4 (MSC_SCAN), value 82
Event: time 1642292662.134237, -------------- SYN_REPORT ------------
Event: time 1642292662.191780, type 4 (EV_MSC), code 4 (MSC_SCAN), value 82
Event: time 1642292662.191780, -------------- SYN_REPORT ------------
Event: time 1642292662.203598, type 4 (EV_MSC), code 4 (MSC_SCAN), value 58
Event: time 1642292662.203598, -------------- SYN_REPORT ------------

For the hotkeys:

sudo evtest /dev/input/event7
Event: time 1642292759.584058, type 4 (EV_MSC), code 4 (MSC_SCAN), value 270
Event: time 1642292759.584058, type 1 (EV_KEY), code 240 (KEY_UNKNOWN), value 1
Event: time 1642292759.584058, -------------- SYN_REPORT ------------
Event: time 1642292759.584064, type 1 (EV_KEY), code 240 (KEY_UNKNOWN), value 0
Event: time 1642292759.584064, -------------- SYN_REPORT ------------
sudo libinput debug-events --show-keycodes
event7   KEYBOARD_KEY            +0.100s       KEY_UNKNOWN (240) pressed
 event7   KEYBOARD_KEY            +0.100s       KEY_UNKNOWN (240) released

It looks like f8 on its own is part of the hotkeys input and not the "keyboard" input (one wonders why these would exist separately?)

Moving on:

 sudo dmesg -w
[ 6366.969105] atkbd serio0: Unknown key pressed (translated set 2, code 0x82 on isa0060/serio0).
[ 6366.969117] atkbd serio0: Use 'setkeycodes e002 <keycode>' to make it known.
[ 6367.068332] hp_wmi: Unknown key code - 0x270
[ 6367.076286] atkbd serio0: Unknown key released (translated set 2, code 0x82 on isa0060/serio0).
[ 6367.076290] atkbd serio0: Use 'setkeycodes e002 <keycode>' to make it known.

This is a little weird that this is talking about translated set 2.Looking under the hood more I can tell you the following

 cat /sys/class/input/input18/modalias
input:b0019v0000p0000e0000-e0,1,4,5,k8A,8D,94,99,E0,E1,E2,F0,166,ram4,lsfw5, 

and

 cat /sys/class/input/input18/modalias
input:b0011v0001p0001eAB83-e0, 1,4,11,14,k71,72,73,74,75,76,77,79,7A,7B,7C,7D,7E,7F,80,8A,8C,8E,8F,98,9B,9C,9D,9E,9F,A3,A4,A5,A6,AC,AD,B7,B8,B9,D4,D9,E0,E1,E2,E3,EC,EE,F0,185,1D1,ram4,l0,1,2,sfw


I think I bought my laptop from the Mandela Effect dimension -- I don't think its even possible to buy one anymore, and it seems it was only ever sold in Canada. It isn't even mentioned in the Arch wiki entry about HP. It's closest relative, the Envy 15 ep0020, cannot install any flavor of Linux due to having two NVMe hard-drives installed with no way to toggle RAID AHCI on and off.

All help is very much appreciated!

Offline

#2 2022-01-23 20:21:56

paulkerry
Member
From: Sheffield, UK
Registered: 2014-10-02
Posts: 611

Re: F8 Microphone Mute Key of HP Envy Doesn't Work

Offline

#3 2022-01-24 04:13:26

logothete
Member
Registered: 2022-01-06
Posts: 44

Re: F8 Microphone Mute Key of HP Envy Doesn't Work

Similar, no doubt. The workaround there pseudo-works -- though It still won't get me to the default expected behavior, which is to mute when pressing f8 WITHOUT some additional key.

Offline

#4 2022-01-24 08:10:10

seth
Member
From: Don't DM me only for attention
Registered: 2012-09-03
Posts: 74,313

Re: F8 Microphone Mute Key of HP Envy Doesn't Work

https://wiki.archlinux.org/title/Map_sc … o_keycodes
Does

setkeycodes e002 KEY_MUTE

get you the desired functionality?

Edit: if the symbol isn't resolved, try

setkeycodes e002 113

Last edited by seth (2022-01-24 08:11:03)

Offline

#5 2022-01-24 14:46:21

logothete
Member
Registered: 2022-01-06
Posts: 44

Re: F8 Microphone Mute Key of HP Envy Doesn't Work

 setkeycodes e002 113 

sets the key to mute speaker audio, so it's a step in the right direction -- the functionality sought being to mute the microphone input.
Thanks for your reply, seth!

Offline

#6 2022-01-24 14:57:43

seth
Member
From: Don't DM me only for attention
Registered: 2012-09-03
Posts: 74,313

Re: F8 Microphone Mute Key of HP Envy Doesn't Work

Ah, sorry.
KEY_MICMUTE should be 248

Offline

#7 2022-01-24 15:10:18

logothete
Member
Registered: 2022-01-06
Posts: 44

Re: F8 Microphone Mute Key of HP Envy Doesn't Work

Tragically,

 setkeycodes e002 248 

does nothing sad

Offline

#8 2022-01-24 15:13:28

seth
Member
From: Don't DM me only for attention
Registered: 2012-09-03
Posts: 74,313

Re: F8 Microphone Mute Key of HP Envy Doesn't Work

Any changes to the evtest results?

Offline

#9 2022-01-24 16:48:52

logothete
Member
Registered: 2022-01-06
Posts: 44

Re: F8 Microphone Mute Key of HP Envy Doesn't Work

Yes, actually!

 sudo evtest sudo evtest /dev/input/event4

 Event: time 1643042776.527640, type 4 (EV_MSC), code 4 (MSC_SCAN), value 82
Event: time 1643042776.527640, type 1 (EV_KEY), code 248 (KEY_MICMUTE), value 0
Event: time 1643042776.527640, -------------- SYN_REPORT ------------
Event: time 1643042776.532815, type 4 (EV_MSC), code 4 (MSC_SCAN), value 58
Event: time 1643042776.532815, -------------- SYN_REPORT ------------

has changed. There is no change to input 6, the hotkeys.

Offline

#10 2022-01-24 20:18:50

seth
Member
From: Don't DM me only for attention
Registered: 2012-09-03
Posts: 74,313

Re: F8 Microphone Mute Key of HP Envy Doesn't Work

So it's only about binding some action there (I guess the key also shows up in xev?)
Google yells https://nikhilwanpal.in/blog/mute-mic-w … f%20choice! at me.

Offline

#11 2022-01-24 22:30:51

logothete
Member
Registered: 2022-01-06
Posts: 44

Re: F8 Microphone Mute Key of HP Envy Doesn't Work

What I can get out of xev, on the command line (the little window it opens does nothing at all under any circumstances), is:

KeyPress event, serial 44, synthetic NO, window 0x8c00001,
    root 0x952, subw 0x0, time 12441209, (-1097,161), root:(2002,297),
    state 0x0, keycode 248 (keysym 0x0, NoSymbol), same_screen YES,
    XLookupString gives 0 bytes: 
    XmbLookupString gives 0 bytes: 
    XFilterEvent returns: False

KeyRelease event, serial 44, synthetic NO, window 0x8c00001,
    root 0x952, subw 0x0, time 12441209, (-1097,161), root:(2002,297),
    state 0x0, keycode 248 (keysym 0x0, NoSymbol), same_screen YES,
    XLookupString gives 0 bytes: 
    XFilterEvent returns: False

presuming  that I've run the setkeycode command already.

Vis a vis that last link: using the KDE custom shortcuts -- my initial attempt at solution -- doesn't fix the problem because a button press on its own doesn't seem to surface as an input of any kind, so I can't seem to bind it to a script.

Aggravatingly, showkey --scancodes does nothing when the button is pressed even after the setkeycode, though pressing, say, fn +f8 will return something.

Offline

#12 2022-01-25 09:00:39

seth
Member
From: Don't DM me only for attention
Registered: 2012-09-03
Posts: 74,313

Re: F8 Microphone Mute Key of HP Envy Doesn't Work

The proper code shows up w/ an event in xev, but it's NoSymbol because the inet layout (the only reference) binds it to 256.

xmodmap -e 'keycode 248 = XF86AudioMicMute'

should™ forward the map and allow you to bind the key (if it's not already)

Offline

#13 2022-01-25 15:43:50

logothete
Member
Registered: 2022-01-06
Posts: 44

Re: F8 Microphone Mute Key of HP Envy Doesn't Work

Problem A solved! I'm guessing this needs to be run in a startup script to stay persistent, since it didn't even need sudo to run.
As ever seth, you are a blessing on this forum.
May I beg your ideas for problem B?

Offline

#14 2022-01-25 15:59:32

seth
Member
From: Don't DM me only for attention
Registered: 2012-09-03
Posts: 74,313

Re: F8 Microphone Mute Key of HP Envy Doesn't Work

Can you control it w/ any of "xset led [1-32]"?

Edit: you probably want to set the keycode to 256 (instead of 248 to match the XF86 key in the inet layout) and inform https://github.com/systemd/systemd/issues about the hwdb requirements.

Last edited by seth (2022-01-25 16:18:50)

Offline

#15 2022-01-25 17:14:31

logothete
Member
Registered: 2022-01-06
Posts: 44

Re: F8 Microphone Mute Key of HP Envy Doesn't Work

Sadly, none of those have any identifiable effects.

Offline

#16 2022-01-25 21:41:15

seth
Member
From: Don't DM me only for attention
Registered: 2012-09-03
Posts: 74,313

Re: F8 Microphone Mute Key of HP Envy Doesn't Work

Did you try whether switching the mic on and off (w/ eg. alsamixer) has any impact on the LED?
We'll probably need to have a look at the sound chip,

lspci -k

Offline

#17 2022-01-25 22:12:04

logothete
Member
Registered: 2022-01-06
Posts: 44

Re: F8 Microphone Mute Key of HP Envy Doesn't Work

There's two, one of which is attached to the GPU, itself attached to HDMI.

0000:00:1f.3 Multimedia audio controller: Intel Corporation Tiger Lake-H HD Audio Controller (rev 11)
        Subsystem: Hewlett-Packard Company Device 88cc
        Kernel driver in use: sof-audio-pci-intel-tgl
        Kernel modules: snd_hda_intel, snd_sof_pci_intel_tgl

...

0000:01:00.1 Audio device: NVIDIA Corporation Device 228e (rev a1)
        Subsystem: Hewlett-Packard Company Device 88cc
        Kernel driver in use: snd_hda_intel
        Kernel modules: snd_hda_intel

presuming that the mic device is named "Capture", in alsamixer, turning it to zero has no LED effect.

Offline

#18 2022-01-25 22:23:15

seth
Member
From: Don't DM me only for attention
Registered: 2012-09-03
Posts: 74,313

Re: F8 Microphone Mute Key of HP Envy Doesn't Work

ls -R /sys/class/sound/ctl-led
lsmod | grep led

Edit:

amixer

Last edited by seth (2022-01-25 22:24:41)

Offline

#19 2022-01-25 22:26:10

logothete
Member
Registered: 2022-01-06
Posts: 44

Re: F8 Microphone Mute Key of HP Envy Doesn't Work

 ls -R /sys/class/sound/ctl-led 

fails because that file/directory doesn't exist. However,

lsmod | grep led
ledtrig_audio          16384  2 snd_hda_codec_generic,snd_sof 

seems to work fine.

Offline

#20 2022-01-25 22:56:39

seth
Member
From: Don't DM me only for attention
Registered: 2012-09-03
Posts: 74,313

Re: F8 Microphone Mute Key of HP Envy Doesn't Work

ledtrig_audio is supposed to activate the led if the proper audio switch is made

cat /proc/asound/card*/codec* | grep Codec # https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/plain/Documentation/sound/hd-audio/models.rst
amixer # for the microphone device

Offline

#21 2022-01-26 00:21:20

logothete
Member
Registered: 2022-01-06
Posts: 44

Re: F8 Microphone Mute Key of HP Envy Doesn't Work

cat /proc/asound/card*/codec* | grep Codec 
Codec: Nvidia GPU 9f HDMI/DP
Codec: Realtek ALC245
Codec: Intel Tigerlake HDMI

and:

amixer
...
Simple mixer control 'Capture',0
  Capabilities: cvolume cswitch cswitch-joined
  Capture channels: Front Left - Front Right
  Limits: Capture 0 - 65536
  Front Left: Capture 65536 [100%] [off]
  Front Right: Capture 65536 [100%] [off]

Offline

#22 2022-01-26 08:53:03

seth
Member
From: Don't DM me only for attention
Registered: 2012-09-03
Posts: 74,313

Re: F8 Microphone Mute Key of HP Envy Doesn't Work

That's not (necessarily) the microphone, please post the entire output of "amixer".

ALC245 is unfortunately not listed in the hd-audio/models.rst

Offline

#23 2022-01-26 15:07:48

logothete
Member
Registered: 2022-01-06
Posts: 44

Re: F8 Microphone Mute Key of HP Envy Doesn't Work

Other output from amixer is -- by inspection and testing, the speakers -- but for completeness:

Simple mixer control 'Master',0
  Capabilities: pvolume pswitch pswitch-joined
  Playback channels: Front Left - Front Right
  Limits: Playback 0 - 65536
  Mono:
  Front Left: Playback 55670 [85%] [on]
  Front Right: Playback 55706 [85%] [on]
Simple mixer control 'Capture',0
  Capabilities: cvolume cswitch cswitch-joined
  Capture channels: Front Left - Front Right
  Limits: Capture 0 - 65536
  Front Left: Capture 65536 [100%] [off]
  Front Right: Capture 65536 [100%] [off]

Offline

#24 2022-01-26 15:12:50

seth
Member
From: Don't DM me only for attention
Registered: 2012-09-03
Posts: 74,313

Re: F8 Microphone Mute Key of HP Envy Doesn't Work

PA or Pipewire default?

aplay -l

"amixer -c <n>" allows you to select the card.

Offline

#25 2022-01-26 15:30:03

logothete
Member
Registered: 2022-01-06
Posts: 44

Re: F8 Microphone Mute Key of HP Envy Doesn't Work

Both PA and pipewire are present on the system but to my knowledge PA is default, since:

pactl info | grep -i 'server name'
Server Name: pulseaudio

which would, I think, have mentioned the pipewire plugin to pulse if it were present.

aplay shows that these cards are up to something, when it comes to device numbering.

aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: NVidia [HDA NVidia], device 3: HDMI 0 [HDMI 0]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 0: NVidia [HDA NVidia], device 7: HDMI 1 [HDMI 1]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 0: NVidia [HDA NVidia], device 8: HDMI 2 [HDMI 2]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 0: NVidia [HDA NVidia], device 9: HDMI 3 [HDMI 3]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: sofhdadsp [sof-hda-dsp], device 0: HDA Analog (*) []
  Subdevices: 0/1
  Subdevice #0: subdevice #0
card 1: sofhdadsp [sof-hda-dsp], device 1: HDA Digital (*) []
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: sofhdadsp [sof-hda-dsp], device 3: HDMI1 (*) []
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: sofhdadsp [sof-hda-dsp], device 4: HDMI2 (*) []
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: sofhdadsp [sof-hda-dsp], device 5: HDMI3 (*) []
  Subdevices: 1/1
  Subdevice #0: subdevice #0

I

Card 1 is active; card 0 won't play sound on the internal speakers.

Offline

Board footer

Powered by FluxBB