Update: Upgrading to Ubuntu 20.04.1 has now permanently resolved this issue for me.
Edit: This is more complicated than I first noted. I don't only lose the scrolling capability on suspend, it is also lost on when the system starts power-saving. I fiddled with power-save options to no avail. I have found a solution which I will post in the answers below.
I just installed Ubuntu 19.04 on my Dell Laptop (Latitude 1790) and I'm using a Microsoft Arc Mouse. When the laptop suspends and then resumes the Arc Mouse continues to work but scrolling stops functioning with the touch surface.
Restarting the laptop re-enables scrolling. However, stop and restarting bluetooth and re-pairing the mouse do not re-enable scrolling.
I suspect something related to this question may solve the problem:
Scrolling not working after suspend, looking for permanent solution
Unfortunately, I don't know how to determine the mouse device to put in the script to re-probe the device and restart scrolling. Can anyone tell me how to determine the device? Alternatively, is there another approach to solving this issue?
I've looked in lsmod but there isn't anything obvious. Here are the two lines that mention bluetooth.
bluetooth 557056 43 btrtl,btintel,btbcm,bnep,btusb,rfcomm
ecdh_generic 28672 2 bluetooth
Here are all the lsmod devices listed above or that contain bt.
dell_rbtn 20480 0
btusb 49152 0
btrtl 20480 1 btusb
btbcm 16384 1 btusb
btintel 24576 1 btusb
bluetooth 557056 43 btrtl,btintel,btbcm,bnep,btusb,rfcomm
The laptop also has a touchpad and scrolling continues to work on the touchpad after suspend. I think this means the issue is isolated to the Arc Mouse.
Digging a little deeper, I found that /etc/init.d/ contains the scripts for the services and /etc/init.d/bluetooth is the script that brings up and shuts down the bluetooth service. This appears to be the relevant portion.
start)
log_daemon_msg "Starting $DESC"
if test "$BLUETOOTH_ENABLED" = 0; then
log_progress_msg "disabled. see /etc/default/bluetooth"
log_end_msg 0
exit 0
fi
start-stop-daemon --start --background $SSD_OPTIONS
log_progress_msg "${DAEMON##*/}"
run_sdptool || :
if test "$HID2HCI_ENABLED" = 1; then
enable_hci_input
fi
log_end_msg 0
;;
stop)
log_daemon_msg "Stopping $DESC"
if test "$BLUETOOTH_ENABLED" = 0; then
log_progress_msg "disabled."
log_end_msg 0
exit 0
fi
if test "$HID2HCI_UNDO" = 1; then
disable_hci_input
fi
start-stop-daemon --stop $SSD_OPTIONS
log_progress_msg "${DAEMON}"
log_end_msg 0
;;
Does there appear to be anything I can run from here that will allow me to reset just the mouse and not the entire subsystem?
psmouse
too? – WinEunuuchs2Unix Apr 23 '19 at 22:04sudo lsmod | grep psmouse
shows psmouse is not present. – RaidPinata Apr 23 '19 at 22:08sudo service bluetooth restart
, I get scroll functionality back. Based on one of the answers to [https://askubuntu.com/questions/1040497/bluetooth-problem-ubuntu-18-04-lts]. I'd hope I could do something a bit less extreme. – RaidPinata Apr 23 '19 at 22:11