Acer Switch Alpha 12, Keyboard not functioning after waking from suspend

Asked by Teh Yu Xiang on 2016-09-14

Im using Acer Switch Alpha 12, problem is after I flip my type cover and my ubuntu go into suspend mode, I wake it up, the keyboard is not functioning and I have to reattached the keyboard, please assist, thanks!

Question information

Language:
English Edit question
Status:
Answered
For:
Ubuntu xinput Edit question
Assignee:
No assignee Edit question
Last query:
2016-09-14
Last reply:
2016-09-14

Do you have the latest BIOS?
Which release of Ubuntu please?

Teh Yu Xiang (cute-bear92) said : #2

Hi, yes i do have the lastest bios (1.02) from acer and Im running the latest LTS 16.04 Ubuntu

What is the output of:

lsb_release -a; uname -a; lsmod

Thanks

Teh Yu Xiang (cute-bear92) said : #4

No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 16.04.1 LTS
Release: 16.04
Codename: xenial
Linux YX-SWITCH-ALPHA-LINUX 4.4.0-36-generic #55-Ubuntu SMP Thu Aug 11 18:01:55 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux
Module Size Used by
drbg 32768 1
ansi_cprng 16384 0
ctr 16384 1
ccm 20480 1
arc4 16384 2
mmc_block 36864 0
rfcomm 69632 2
rtsx_usb_ms 20480 0
rtsx_usb_sdmmc 28672 0
memstick 20480 1 rtsx_usb_ms
rtsx_usb 24576 2 rtsx_usb_sdmmc,rtsx_usb_ms
snd_hda_codec_hdmi 53248 1
uhid 20480 1
bnep 20480 2
uvcvideo 90112 0
videobuf2_vmalloc 16384 1 uvcvideo
videobuf2_memops 16384 1 videobuf2_vmalloc
videobuf2_v4l2 28672 1 uvcvideo
videobuf2_core 36864 2 uvcvideo,videobuf2_v4l2
v4l2_common 16384 1 videobuf2_v4l2
videodev 176128 4 uvcvideo,v4l2_common,videobuf2_core,videobuf2_v4l2
hid_generic 16384 0
media 24576 2 uvcvideo,videodev
hid_multitouch 20480 0
btusb 45056 0
btrtl 16384 1 btusb
joydev 20480 0
i2c_designware_platform 16384 0
i2c_designware_core 20480 1 i2c_designware_platform
toshiba_wmi 16384 0
acer_wmi 20480 0
snd_hda_codec_realtek 86016 1
snd_hda_codec_generic 77824 1 snd_hda_codec_realtek
nls_iso8859_1 16384 1
ath10k_pci 45056 0
snd_soc_skl 49152 0
snd_soc_skl_ipc 32768 1 snd_soc_skl
snd_hda_ext_core 28672 1 snd_soc_skl
ath10k_core 311296 1 ath10k_pci
snd_soc_sst_ipc 16384 1 snd_soc_skl_ipc
snd_soc_sst_dsp 53248 1 snd_soc_skl_ipc
snd_soc_core 212992 1 snd_soc_skl
ath 32768 1 ath10k_core
snd_compress 20480 1 snd_soc_core
ac97_bus 16384 1 snd_soc_core
snd_pcm_dmaengine 16384 1 snd_soc_core
intel_rapl 20480 0
x86_pkg_temp_thermal 16384 0
dw_dmac_core 24576 1 snd_soc_sst_dsp
intel_powerclamp 16384 0
coretemp 16384 0
snd_hda_intel 36864 3
kvm_intel 172032 0
snd_hda_codec 135168 4 snd_hda_codec_realtek,snd_hda_codec_hdmi,snd_hda_codec_generic,snd_hda_intel
mac80211 737280 1 ath10k_core
kvm 540672 1 kvm_intel
snd_hda_core 73728 7 snd_hda_codec_realtek,snd_hda_ext_core,snd_hda_codec_hdmi,snd_hda_codec_generic,snd_hda_codec,snd_hda_intel,snd_soc_skl
snd_hwdep 16384 1 snd_hda_codec
irqbypass 16384 1 kvm
crct10dif_pclmul 16384 0
crc32_pclmul 16384 0
aesni_intel 167936 2
cfg80211 565248 3 ath,mac80211,ath10k_core
aes_x86_64 20480 1 aesni_intel
snd_pcm 106496 8 snd_hda_ext_core,snd_soc_core,snd_hda_codec_hdmi,snd_hda_codec,snd_hda_intel,snd_soc_skl,snd_pcm_dmaengine,snd_hda_core
lrw 16384 1 aesni_intel
gf128mul 16384 1 lrw
glue_helper 16384 1 aesni_intel
ablk_helper 16384 1 aesni_intel
cryptd 20480 2 aesni_intel,ablk_helper
snd_seq_midi 16384 0
snd_seq_midi_event 16384 1 snd_seq_midi
snd_rawmidi 32768 1 snd_seq_midi
snd_seq 69632 2 snd_seq_midi_event,snd_seq_midi
input_leds 16384 0
snd_seq_device 16384 3 snd_seq,snd_rawmidi,snd_seq_midi
snd_timer 32768 2 snd_pcm,snd_seq
serio_raw 16384 0
snd 81920 19 snd_hda_codec_realtek,snd_soc_core,snd_hwdep,snd_timer,snd_hda_codec_hdmi,snd_pcm,snd_seq,snd_rawmidi,snd_hda_codec_generic,snd_hda_codec,snd_hda_intel,snd_seq_device,snd_compress
idma64 20480 0
virt_dma 16384 1 idma64
soundcore 16384 1 snd
mei_me 36864 0
shpchp 36864 0
mei 98304 1 mei_me
intel_lpss_pci 16384 0
processor_thermal_device 16384 0
intel_soc_dts_iosf 16384 1 processor_thermal_device
int3403_thermal 16384 0
int340x_thermal_zone 16384 2 processor_thermal_device,int3403_thermal
hci_uart 77824 0
btbcm 16384 2 btusb,hci_uart
btqca 16384 1 hci_uart
btintel 16384 2 btusb,hci_uart
bluetooth 520192 31 bnep,btbcm,btqca,btrtl,btusb,hci_uart,rfcomm,btintel
intel_lpss_acpi 16384 0
intel_lpss 16384 2 intel_lpss_pci,intel_lpss_acpi
tpm_crb 16384 0
acpi_pad 20480 0
mac_hid 16384 0
intel_vbtn 16384 0
int3400_thermal 16384 0
sparse_keymap 16384 3 toshiba_wmi,acer_wmi,intel_vbtn
acpi_thermal_rel 16384 1 int3400_thermal
parport_pc 32768 0
ppdev 20480 0
lp 20480 0
parport 49152 3 lp,ppdev,parport_pc
autofs4 40960 2
usbhid 49152 0
i915_bpo 1302528 4
intel_ips 20480 1 i915_bpo
i2c_algo_bit 16384 1 i915_bpo
drm_kms_helper 147456 1 i915_bpo
syscopyarea 16384 1 drm_kms_helper
sysfillrect 16384 1 drm_kms_helper
sysimgblt 16384 1 drm_kms_helper
ahci 36864 3
fb_sys_fops 16384 1 drm_kms_helper
libahci 32768 1 ahci
drm 364544 5 i915_bpo,drm_kms_helper
i2c_hid 20480 0
hid 118784 5 uhid,i2c_hid,hid_multitouch,hid_generic,usbhid
wmi 20480 2 toshiba_wmi,acer_wmi
video 40960 2 i915_bpo,acer_wmi
pinctrl_sunrisepoint 28672 0
pinctrl_intel 20480 1 pinctrl_sunrisepoint
fjes 28672 0

you could try unloading and reloading the usbhid module. If you make a script to do this then you can test as you can use your mouse to launch the script. It will need your password to run (if you have an external keyboard, it will make this easier by far)

Something like:

sudo modprobe -r usbhid
sudo modprobe usbhid

Teh Yu Xiang (cute-bear92) said : #6

I try to run the commands when the keyboard is not awake (after waking up from sleep mode), it doesnt reactivate the keyboard, have to still detach and reattach to power up the keyboard

Teh Yu Xiang (cute-bear92) said : #7

Ive also try when the keyboard is working.

When i ran the command with the -r flag, my keyboard stop working but the backlit LED is still on. Which is on the other hand when my laptop goes to sleep, the LED went off and when i wake the laptop up, my keyboard's backlit LED is still off and not working

Manfred Hampl (m-hampl) said : #8

I see that you have special hotkey drivers for Toshiba and Acer loaded (toshiba_wmi, acer_wmi).
If this is an Acer machine, you could try backlisting the Toshiba one.
Such action has helped in other cases where two conflicting drivers prevented the wlan network from working.

Teh Yu Xiang (cute-bear92) said : #9

Hi Manfred,

I did this

sudo -i
echo "blacklist toshiba_wmi" >> /etc/modprobe.d/blacklist.conf
exit

But the keyboard still not working after waking up. And Ive found a pattern on my problem.

I realised that when i use the power button on my tablet (p.s i mention laptop by accident before) or from ubuntu itself to go into suspend mode, I could wake up using my keyboard just fine.

The problem lies whenever i flip close my type cover (keyboard) to let it go into suspend mode, and when i open up my type cover, my tablet wakes up but my keyboard doesnt.

BUT,

when i put it in suspend mode using either power button or GUI, THEN close my type cover. I could just open up my type cover and my tablet and keyboard wakes up just fine.

Manfred Hampl (m-hampl) said : #10

If you could identify a kernel module whose unloading and reloading brings the keyboard back into work, then you could use techniques like https://ubuntuforums.org/showthread.php?t=2004690 to automate this, but based on your answer to actionparsnip's advice with usbhid, I doubt whether this is going to work.

Can you help with this problem?

Provide an answer of your own, or ask Teh Yu Xiang for more information if necessary.

To post a message you must log in.