Open inducer opened 7 years ago
I don't think this issue is specific to Linux, I get it on my SP3 while running Windows too.
I've noticed this more on Linux than Windows, seems to be related to the angle of the keyboard. If it's not "flat" it'll disable the keys (as intended) but then is sluggish to come back online.
Disconnecting, reconnecting always fixes my issue though.
I use the device to teach a class, where most of the time I just draw stuff with the pen, but every now and then I run a live demonstration using a Jupyter notebook. And, more frequently than I'd like, upon switching from drawing to typing, the keyboard is not there. (which leads to an awkward pause, which I'd like to avoid) Aggravatingly, sometimes the keyboard is there for a little while but then turns itself off.
So I think I can confirm that this issue is often connect to the "disable-when-folded-back" bit of the TypeCover. How exactly does the cover do that? I'm assuming it's actually on a USB connection--does it just disappear from the bus? Does it just inhibit keys internally? Anyone know?
Just captured a dmesg
from when it drops:
[ 897.998184] usb 1-3: USB disconnect, device number 2
[ 901.598004] usb 1-3: new full-speed USB device number 6 using xhci_hcd
[ 901.727376] usb 1-3: New USB device found, idVendor=045e, idProduct=07e8
[ 901.727384] usb 1-3: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[ 901.727388] usb 1-3: Product: Surface Type Cover
[ 901.727392] usb 1-3: Manufacturer: Microsoft
[ 901.732248] input: Microsoft Surface Type Cover Keyboard as /devices/pci0000:00/0000:00:14.0/usb1/1-3/1-3:1.0/0003:045E:07E8.0004/input/input35
[ 901.786199] input: Microsoft Surface Type Cover Mouse as /devices/pci0000:00/0000:00:14.0/usb1/1-3/1-3:1.0/0003:045E:07E8.0004/input/input36
[ 901.786498] input: Microsoft Surface Type Cover Consumer Control as /devices/pci0000:00/0000:00:14.0/usb1/1-3/1-3:1.0/0003:045E:07E8.0004/input/input37
[ 901.786654] input: Microsoft Surface Type Cover UNKNOWN as /devices/pci0000:00/0000:00:14.0/usb1/1-3/1-3:1.0/0003:045E:07E8.0004/input/input38
[ 901.786778] input: Microsoft Surface Type Cover Touchpad as /devices/pci0000:00/0000:00:14.0/usb1/1-3/1-3:1.0/0003:045E:07E8.0004/input/input39
[ 901.786947] input: Microsoft Surface Type Cover UNKNOWN as /devices/pci0000:00/0000:00:14.0/usb1/1-3/1-3:1.0/0003:045E:07E8.0004/input/input40
[ 901.787037] input: Microsoft Surface Type Cover UNKNOWN as /devices/pci0000:00/0000:00:14.0/usb1/1-3/1-3:1.0/0003:045E:07E8.0004/input/input41
[ 901.787130] input: Microsoft Surface Type Cover UNKNOWN as /devices/pci0000:00/0000:00:14.0/usb1/1-3/1-3:1.0/0003:045E:07E8.0004/input/input42
[ 901.787218] input: Microsoft Surface Type Cover UNKNOWN as /devices/pci0000:00/0000:00:14.0/usb1/1-3/1-3:1.0/0003:045E:07E8.0004/input/input43
[ 901.787308] input: Microsoft Surface Type Cover UNKNOWN as /devices/pci0000:00/0000:00:14.0/usb1/1-3/1-3:1.0/0003:045E:07E8.0004/input/input44
[ 901.787388] input: Microsoft Surface Type Cover UNKNOWN as /devices/pci0000:00/0000:00:14.0/usb1/1-3/1-3:1.0/0003:045E:07E8.0004/input/input45
[ 901.787467] input: Microsoft Surface Type Cover UNKNOWN as /devices/pci0000:00/0000:00:14.0/usb1/1-3/1-3:1.0/0003:045E:07E8.0004/input/input46
[ 901.787547] input: Microsoft Surface Type Cover UNKNOWN as /devices/pci0000:00/0000:00:14.0/usb1/1-3/1-3:1.0/0003:045E:07E8.0004/input/input47
[ 901.787625] input: Microsoft Surface Type Cover UNKNOWN as /devices/pci0000:00/0000:00:14.0/usb1/1-3/1-3:1.0/0003:045E:07E8.0004/input/input48
[ 901.787703] input: Microsoft Surface Type Cover UNKNOWN as /devices/pci0000:00/0000:00:14.0/usb1/1-3/1-3:1.0/0003:045E:07E8.0004/input/input49
[ 901.787784] input: Microsoft Surface Type Cover UNKNOWN as /devices/pci0000:00/0000:00:14.0/usb1/1-3/1-3:1.0/0003:045E:07E8.0004/input/input50
[ 901.787863] input: Microsoft Surface Type Cover UNKNOWN as /devices/pci0000:00/0000:00:14.0/usb1/1-3/1-3:1.0/0003:045E:07E8.0004/input/input51
[ 901.787941] input: Microsoft Surface Type Cover UNKNOWN as /devices/pci0000:00/0000:00:14.0/usb1/1-3/1-3:1.0/0003:045E:07E8.0004/input/input52
[ 901.788022] input: Microsoft Surface Type Cover Keyboard as /devices/pci0000:00/0000:00:14.0/usb1/1-3/1-3:1.0/0003:045E:07E8.0004/input/input53
[ 901.788269] hid-multitouch 0003:045E:07E8.0004: input,hiddev0,hidraw0: USB HID v1.11 Keyboard [Microsoft Surface Type Cover] on usb-0000:00:14.0-3/input0
It seems to genuinely disappear from the bus. Folding back however doesn't seem to make it drop off the bus, so that must be an internal thing.
Yes I have the same problem with you,sometimes I nock the desktop,surface have no connect with the cover,reconnect,it's ok
Every now and then, my TypeCovers (actually both v3 and v4) stop working. Yanking them off and plugging them back in restores them to working order. Both the trackpad and the keyboard bit stop working at that point.
This happens across two different surfaces (i3 with 64 and 128 GiB) with a pile of different TypeCovers, so I'm fairly sure it's not a hardware fluke.
I'm using a Debian distro kernel version 4.6.4-1, patched with
wifi.patch
multitouch.patch
touchscreen_multitouch_fixes1.patch
touchscreen_multitouch_fixes2.patch
Has anyone seen this issue? Any clue what to do about it?