Keyboard input freezes, then sending multiple inputs

Which Linux distro are you using? Debian Testing

Which release version?
(if rolling release without a release version, skip this question)

(If rolling release, last date updated?) all packages on latest version, some from sid.

Which kernel are you using? 6.10.3

Which BIOS version are you using? 3.03

Which Framework Laptop 16 model are you using? DIY

I have a similar issue to this: [SOLVED] Keys stick and repeat after being released

But for me, out of the blue, sometimes the keyboard input seems to not be sent for a second or two, afterwards the letters pressed meanwhile are sent, but one letter will be sent multiple times (probably the letter that’s tried to be sent when whatever causes this is “peaking”). I don’t have powertop installed, so that can’t be a reason either. Now I would like to be able to tell if for whatever reason autosuspend is enabled for the keyboard, but I have no idea how. According to dmesg the keyboard should be device 1-4.3:1.0:

sudo dmesg | grep usb | grep framework
[    1.843276] usb 1-1: Manufacturer: Framework
[    3.501911] hid-generic 0003:32AC:0003.0003: hiddev0,hidraw2: USB HID v1.11 Device [Framework DisplayPort Expansion Card] on usb-0000:c1:00.3-1/input1
[    3.858926] usb 1-4.3: Manufacturer: Framework
[    4.068285] input: Framework Laptop 16 Keyboard Module - ISO as /devices/pci0000:00/0000:00:08.1/0000:c1:00.3/usb1/1-4/1-4.3/1-4.3:1.0/0003:32AC:0018.0004/input/input5
[    4.125364] hid-generic 0003:32AC:0018.0004: input,hidraw3: USB HID v1.11 Keyboard [Framework Laptop 16 Keyboard Module - ISO] on usb-0000:c1:00.3-4.3/input0
[    4.133670] hid-generic 0003:32AC:0018.0005: hiddev1,hidraw4: USB HID v1.11 Device [Framework Laptop 16 Keyboard Module - ISO] on usb-0000:c1:00.3-4.3/input1
[    4.141542] input: Framework Laptop 16 Keyboard Module - ISO System Control as /devices/pci0000:00/0000:00:08.1/0000:c1:00.3/usb1/1-4/1-4.3/1-4.3:1.2/0003:32AC:0018.0006/input/input6
[    4.201051] input: Framework Laptop 16 Keyboard Module - ISO Consumer Control as /devices/pci0000:00/0000:00:08.1/0000:c1:00.3/usb1/1-4/1-4.3/1-4.3:1.2/0003:32AC:0018.0006/input/input7
[    4.201130] input: Framework Laptop 16 Keyboard Module - ISO Wireless Radio Control as /devices/pci0000:00/0000:00:08.1/0000:c1:00.3/usb1/1-4/1-4.3/1-4.3:1.2/0003:32AC:0018.0006/input/input8
[    4.201213] input: Framework Laptop 16 Keyboard Module - ISO Keyboard as /devices/pci0000:00/0000:00:08.1/0000:c1:00.3/usb1/1-4/1-4.3/1-4.3:1.2/0003:32AC:0018.0006/input/input9
[    4.201648] hid-generic 0003:32AC:0018.0006: input,hidraw5: USB HID v1.11 Keyboard [Framework Laptop 16 Keyboard Module - ISO] on usb-0000:c1:00.3-4.3/input2
[    4.210475] hid-generic 0003:32AC:0018.0007: hiddev2,hidraw6: USB HID v1.11 Device [Framework Laptop 16 Keyboard Module - ISO] on usb-0000:c1:00.3-4.3/input3

But If I look under /sys/bus/usb/devices/1-4.3:1.0/power/ there is no file “control” that could have the content auto. same for 1.1, 1.2 and 1.3. These directories only contain tghe files async, runtime_active_kids, runtime_enabled, runtime_status and runtime_usage.

So how can I find out is autosuspend is the issue? And if it’s not the cause, what else could be? I also already looked at journalctl -e --system --priority 7 just after it happened the last time, but I can’t see anything that could be of interest. Also, there doesn’t seem to be any reproducibility. This happens not even once per day and to a time the laptop isn’t really doing anything. Reseating the keyboard also doesn’t help.

Isn’t it under /sys/bus/usb/devices/1-4.3/power/control ?

I’ve a similar issue but I guess it isn’t linked to power control since it returns on. On my side, it can freeze for a second or two, or (when the laptop is on heavy load or hot) keeps freezing. In that case, the solution I found is to unplug the keyboard power by removing the touchpad and replacing it, to reconnect everything. But it’s a bit cumbersome…

Ah, there it is. Yes, it’s on.

Thankfully I never have longer outages. It’s literally just once every couple of days.