Unplug and plug in again a USB device in the terminal
up vote
3
down vote
favorite
For years, I have been dealing with this Ubuntu bug where my mouse freezes soon after booting and then periodically freezes after that. To fix it, I have to physically unplug the usb transceiver for the mouse and plug it back in. From my research, this bug happens with USB wireless Windows mice when dual booting Linux and Windows.
Is there a way I can programmatically (from the terminal) unplug the USB transceiver instead of doing it physically? I want to achieve this in my startup bash script.
I'm using Ubuntu 16.04
Edit: I solved my problem but it doesn't really relate to my question.
In the file..
/etc/laptop-mode/conf.d/runtime-pm.conf
I had to make
CONTROL_RUNTIME_AUTOSUSPEND=0
This fixes the mouse bug I was experiencing for years.
command-line wireless usb mouse
add a comment |
up vote
3
down vote
favorite
For years, I have been dealing with this Ubuntu bug where my mouse freezes soon after booting and then periodically freezes after that. To fix it, I have to physically unplug the usb transceiver for the mouse and plug it back in. From my research, this bug happens with USB wireless Windows mice when dual booting Linux and Windows.
Is there a way I can programmatically (from the terminal) unplug the USB transceiver instead of doing it physically? I want to achieve this in my startup bash script.
I'm using Ubuntu 16.04
Edit: I solved my problem but it doesn't really relate to my question.
In the file..
/etc/laptop-mode/conf.d/runtime-pm.conf
I had to make
CONTROL_RUNTIME_AUTOSUSPEND=0
This fixes the mouse bug I was experiencing for years.
command-line wireless usb mouse
2
does uhubctl or an alternative work on your machine?
– sbergeron
May 15 at 1:58
If this driver is a kernel module, you should be able to unload it withrmmod
and reload it withmodprobe
. You only have to find out which module loads when you plugin the mouse. Trylsmod
after you rebooted without mouse plugged in. Then plug it in and see, which module loaded.
– nobody
May 15 at 6:57
1
@sbergeron Could you please post your idea aboutuhubctl
as answer. It is very promising.
– N0rbert
May 15 at 7:19
add a comment |
up vote
3
down vote
favorite
up vote
3
down vote
favorite
For years, I have been dealing with this Ubuntu bug where my mouse freezes soon after booting and then periodically freezes after that. To fix it, I have to physically unplug the usb transceiver for the mouse and plug it back in. From my research, this bug happens with USB wireless Windows mice when dual booting Linux and Windows.
Is there a way I can programmatically (from the terminal) unplug the USB transceiver instead of doing it physically? I want to achieve this in my startup bash script.
I'm using Ubuntu 16.04
Edit: I solved my problem but it doesn't really relate to my question.
In the file..
/etc/laptop-mode/conf.d/runtime-pm.conf
I had to make
CONTROL_RUNTIME_AUTOSUSPEND=0
This fixes the mouse bug I was experiencing for years.
command-line wireless usb mouse
For years, I have been dealing with this Ubuntu bug where my mouse freezes soon after booting and then periodically freezes after that. To fix it, I have to physically unplug the usb transceiver for the mouse and plug it back in. From my research, this bug happens with USB wireless Windows mice when dual booting Linux and Windows.
Is there a way I can programmatically (from the terminal) unplug the USB transceiver instead of doing it physically? I want to achieve this in my startup bash script.
I'm using Ubuntu 16.04
Edit: I solved my problem but it doesn't really relate to my question.
In the file..
/etc/laptop-mode/conf.d/runtime-pm.conf
I had to make
CONTROL_RUNTIME_AUTOSUSPEND=0
This fixes the mouse bug I was experiencing for years.
command-line wireless usb mouse
command-line wireless usb mouse
edited Dec 11 at 4:13
asked May 15 at 1:46
deanresin
234314
234314
2
does uhubctl or an alternative work on your machine?
– sbergeron
May 15 at 1:58
If this driver is a kernel module, you should be able to unload it withrmmod
and reload it withmodprobe
. You only have to find out which module loads when you plugin the mouse. Trylsmod
after you rebooted without mouse plugged in. Then plug it in and see, which module loaded.
– nobody
May 15 at 6:57
1
@sbergeron Could you please post your idea aboutuhubctl
as answer. It is very promising.
– N0rbert
May 15 at 7:19
add a comment |
2
does uhubctl or an alternative work on your machine?
– sbergeron
May 15 at 1:58
If this driver is a kernel module, you should be able to unload it withrmmod
and reload it withmodprobe
. You only have to find out which module loads when you plugin the mouse. Trylsmod
after you rebooted without mouse plugged in. Then plug it in and see, which module loaded.
– nobody
May 15 at 6:57
1
@sbergeron Could you please post your idea aboutuhubctl
as answer. It is very promising.
– N0rbert
May 15 at 7:19
2
2
does uhubctl or an alternative work on your machine?
– sbergeron
May 15 at 1:58
does uhubctl or an alternative work on your machine?
– sbergeron
May 15 at 1:58
If this driver is a kernel module, you should be able to unload it with
rmmod
and reload it with modprobe
. You only have to find out which module loads when you plugin the mouse. Try lsmod
after you rebooted without mouse plugged in. Then plug it in and see, which module loaded.– nobody
May 15 at 6:57
If this driver is a kernel module, you should be able to unload it with
rmmod
and reload it with modprobe
. You only have to find out which module loads when you plugin the mouse. Try lsmod
after you rebooted without mouse plugged in. Then plug it in and see, which module loaded.– nobody
May 15 at 6:57
1
1
@sbergeron Could you please post your idea about
uhubctl
as answer. It is very promising.– N0rbert
May 15 at 7:19
@sbergeron Could you please post your idea about
uhubctl
as answer. It is very promising.– N0rbert
May 15 at 7:19
add a comment |
1 Answer
1
active
oldest
votes
up vote
2
down vote
I wrote a script to show how I’d do that:
#!/bin/bash
port="1-1.1" # as shown by lsusb -t: {bus}-{port}(.{subport})
bind_usb() {
echo "$1" >/sys/bus/usb/drivers/usb/bind
}
unbind_usb() {
echo "$1" >/sys/bus/usb/drivers/usb/unbind
}
unbind_usb "$port"
# sleep 1 # enable delay here
bind_usb "$port"
First you need to get the bus and port number of the usb port in question. You can do that with lsusb
and any device you recognize in lsusb
’s output, I use a Sandisk pendrive here:
$ lsusb
Bus 001 Device 005: ID 04f2:b39a Chicony Electronics Co., Ltd
Bus 001 Device 112: ID 8087:07dc Intel Corp.
Bus 001 Device 019: ID 04d9:1603 Holtek Semiconductor, Inc. Keyboard
Bus 001 Device 018: ID 0424:2504 Standard Microsystems Corp. USB 2.0 Hub
Bus 001 Device 022: ID 0781:5567 SanDisk Corp. Cruzer Blade
Bus 001 Device 002: ID 8087:8000 Intel Corp.
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
$ lsusb -t
/: Bus 01.Port 1: Dev 1, Class=root_hub, Driver=ehci-pci/3p, 480M
|__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/8p, 480M
|__ Port 1: Dev 22, If 0, Class=Mass Storage, Driver=usb-storage, 480M
|__ Port 2: Dev 18, If 0, Class=Hub, Driver=hub/4p, 480M
|__ Port 1: Dev 19, If 1, Class=Human Interface Device, Driver=usbhid, 1.5M
|__ Port 1: Dev 19, If 0, Class=Human Interface Device, Driver=usbhid, 1.5M
|__ Port 7: Dev 112, If 0, Class=Wireless, Driver=btusb, 12M
|__ Port 7: Dev 112, If 1, Class=Wireless, Driver=btusb, 12M
|__ Port 8: Dev 5, If 1, Class=Video, Driver=uvcvideo, 480M
|__ Port 8: Dev 5, If 0, Class=Video, Driver=uvcvideo, 480M
From the output of lsusb
you get the bus and device number of the device, then search this device in the output of lsusb -t
to get the bus and port number (sometimes with subports). The syntax is:
1-2.3 # for Bus 1 Port 2 Subport 3 – strip leading zeroes!
Use this as port
in the script. Now you just need to make it executable with chmod +x /path/to/script
and run it with root permissions:
sudo /path/to/script
I didn’t need one for my pendrive, but it may be necessary for you to add a delay between unbinding and binding again, that’s what the commented out sleep 1
line is for – you can experiment with the values, e.g. sleep 0.5
for half a second.
Note that this approach shows how to disable and enable again a certain USB port, if you want a specific device to be unbound and rebound again you’ll have to use the same USB port for this to work. One could think of a way to parse lsusb
’s output to dynamically get the bus and port number of a specific device every time the script is called, this would allow you to use any USB port, but I feel that would be an overkill here.
Suggestions taken from this linux.com blog article.
Unfortunately it doesn't work. I still have to physically remove the USB transceiver and plug it back in. Also, @reboot doesn't work on my machine (Ubuntu 16.04)
– deanresin
May 19 at 3:53
add a comment |
Your Answer
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "89"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2faskubuntu.com%2fquestions%2f1036341%2funplug-and-plug-in-again-a-usb-device-in-the-terminal%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
up vote
2
down vote
I wrote a script to show how I’d do that:
#!/bin/bash
port="1-1.1" # as shown by lsusb -t: {bus}-{port}(.{subport})
bind_usb() {
echo "$1" >/sys/bus/usb/drivers/usb/bind
}
unbind_usb() {
echo "$1" >/sys/bus/usb/drivers/usb/unbind
}
unbind_usb "$port"
# sleep 1 # enable delay here
bind_usb "$port"
First you need to get the bus and port number of the usb port in question. You can do that with lsusb
and any device you recognize in lsusb
’s output, I use a Sandisk pendrive here:
$ lsusb
Bus 001 Device 005: ID 04f2:b39a Chicony Electronics Co., Ltd
Bus 001 Device 112: ID 8087:07dc Intel Corp.
Bus 001 Device 019: ID 04d9:1603 Holtek Semiconductor, Inc. Keyboard
Bus 001 Device 018: ID 0424:2504 Standard Microsystems Corp. USB 2.0 Hub
Bus 001 Device 022: ID 0781:5567 SanDisk Corp. Cruzer Blade
Bus 001 Device 002: ID 8087:8000 Intel Corp.
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
$ lsusb -t
/: Bus 01.Port 1: Dev 1, Class=root_hub, Driver=ehci-pci/3p, 480M
|__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/8p, 480M
|__ Port 1: Dev 22, If 0, Class=Mass Storage, Driver=usb-storage, 480M
|__ Port 2: Dev 18, If 0, Class=Hub, Driver=hub/4p, 480M
|__ Port 1: Dev 19, If 1, Class=Human Interface Device, Driver=usbhid, 1.5M
|__ Port 1: Dev 19, If 0, Class=Human Interface Device, Driver=usbhid, 1.5M
|__ Port 7: Dev 112, If 0, Class=Wireless, Driver=btusb, 12M
|__ Port 7: Dev 112, If 1, Class=Wireless, Driver=btusb, 12M
|__ Port 8: Dev 5, If 1, Class=Video, Driver=uvcvideo, 480M
|__ Port 8: Dev 5, If 0, Class=Video, Driver=uvcvideo, 480M
From the output of lsusb
you get the bus and device number of the device, then search this device in the output of lsusb -t
to get the bus and port number (sometimes with subports). The syntax is:
1-2.3 # for Bus 1 Port 2 Subport 3 – strip leading zeroes!
Use this as port
in the script. Now you just need to make it executable with chmod +x /path/to/script
and run it with root permissions:
sudo /path/to/script
I didn’t need one for my pendrive, but it may be necessary for you to add a delay between unbinding and binding again, that’s what the commented out sleep 1
line is for – you can experiment with the values, e.g. sleep 0.5
for half a second.
Note that this approach shows how to disable and enable again a certain USB port, if you want a specific device to be unbound and rebound again you’ll have to use the same USB port for this to work. One could think of a way to parse lsusb
’s output to dynamically get the bus and port number of a specific device every time the script is called, this would allow you to use any USB port, but I feel that would be an overkill here.
Suggestions taken from this linux.com blog article.
Unfortunately it doesn't work. I still have to physically remove the USB transceiver and plug it back in. Also, @reboot doesn't work on my machine (Ubuntu 16.04)
– deanresin
May 19 at 3:53
add a comment |
up vote
2
down vote
I wrote a script to show how I’d do that:
#!/bin/bash
port="1-1.1" # as shown by lsusb -t: {bus}-{port}(.{subport})
bind_usb() {
echo "$1" >/sys/bus/usb/drivers/usb/bind
}
unbind_usb() {
echo "$1" >/sys/bus/usb/drivers/usb/unbind
}
unbind_usb "$port"
# sleep 1 # enable delay here
bind_usb "$port"
First you need to get the bus and port number of the usb port in question. You can do that with lsusb
and any device you recognize in lsusb
’s output, I use a Sandisk pendrive here:
$ lsusb
Bus 001 Device 005: ID 04f2:b39a Chicony Electronics Co., Ltd
Bus 001 Device 112: ID 8087:07dc Intel Corp.
Bus 001 Device 019: ID 04d9:1603 Holtek Semiconductor, Inc. Keyboard
Bus 001 Device 018: ID 0424:2504 Standard Microsystems Corp. USB 2.0 Hub
Bus 001 Device 022: ID 0781:5567 SanDisk Corp. Cruzer Blade
Bus 001 Device 002: ID 8087:8000 Intel Corp.
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
$ lsusb -t
/: Bus 01.Port 1: Dev 1, Class=root_hub, Driver=ehci-pci/3p, 480M
|__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/8p, 480M
|__ Port 1: Dev 22, If 0, Class=Mass Storage, Driver=usb-storage, 480M
|__ Port 2: Dev 18, If 0, Class=Hub, Driver=hub/4p, 480M
|__ Port 1: Dev 19, If 1, Class=Human Interface Device, Driver=usbhid, 1.5M
|__ Port 1: Dev 19, If 0, Class=Human Interface Device, Driver=usbhid, 1.5M
|__ Port 7: Dev 112, If 0, Class=Wireless, Driver=btusb, 12M
|__ Port 7: Dev 112, If 1, Class=Wireless, Driver=btusb, 12M
|__ Port 8: Dev 5, If 1, Class=Video, Driver=uvcvideo, 480M
|__ Port 8: Dev 5, If 0, Class=Video, Driver=uvcvideo, 480M
From the output of lsusb
you get the bus and device number of the device, then search this device in the output of lsusb -t
to get the bus and port number (sometimes with subports). The syntax is:
1-2.3 # for Bus 1 Port 2 Subport 3 – strip leading zeroes!
Use this as port
in the script. Now you just need to make it executable with chmod +x /path/to/script
and run it with root permissions:
sudo /path/to/script
I didn’t need one for my pendrive, but it may be necessary for you to add a delay between unbinding and binding again, that’s what the commented out sleep 1
line is for – you can experiment with the values, e.g. sleep 0.5
for half a second.
Note that this approach shows how to disable and enable again a certain USB port, if you want a specific device to be unbound and rebound again you’ll have to use the same USB port for this to work. One could think of a way to parse lsusb
’s output to dynamically get the bus and port number of a specific device every time the script is called, this would allow you to use any USB port, but I feel that would be an overkill here.
Suggestions taken from this linux.com blog article.
Unfortunately it doesn't work. I still have to physically remove the USB transceiver and plug it back in. Also, @reboot doesn't work on my machine (Ubuntu 16.04)
– deanresin
May 19 at 3:53
add a comment |
up vote
2
down vote
up vote
2
down vote
I wrote a script to show how I’d do that:
#!/bin/bash
port="1-1.1" # as shown by lsusb -t: {bus}-{port}(.{subport})
bind_usb() {
echo "$1" >/sys/bus/usb/drivers/usb/bind
}
unbind_usb() {
echo "$1" >/sys/bus/usb/drivers/usb/unbind
}
unbind_usb "$port"
# sleep 1 # enable delay here
bind_usb "$port"
First you need to get the bus and port number of the usb port in question. You can do that with lsusb
and any device you recognize in lsusb
’s output, I use a Sandisk pendrive here:
$ lsusb
Bus 001 Device 005: ID 04f2:b39a Chicony Electronics Co., Ltd
Bus 001 Device 112: ID 8087:07dc Intel Corp.
Bus 001 Device 019: ID 04d9:1603 Holtek Semiconductor, Inc. Keyboard
Bus 001 Device 018: ID 0424:2504 Standard Microsystems Corp. USB 2.0 Hub
Bus 001 Device 022: ID 0781:5567 SanDisk Corp. Cruzer Blade
Bus 001 Device 002: ID 8087:8000 Intel Corp.
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
$ lsusb -t
/: Bus 01.Port 1: Dev 1, Class=root_hub, Driver=ehci-pci/3p, 480M
|__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/8p, 480M
|__ Port 1: Dev 22, If 0, Class=Mass Storage, Driver=usb-storage, 480M
|__ Port 2: Dev 18, If 0, Class=Hub, Driver=hub/4p, 480M
|__ Port 1: Dev 19, If 1, Class=Human Interface Device, Driver=usbhid, 1.5M
|__ Port 1: Dev 19, If 0, Class=Human Interface Device, Driver=usbhid, 1.5M
|__ Port 7: Dev 112, If 0, Class=Wireless, Driver=btusb, 12M
|__ Port 7: Dev 112, If 1, Class=Wireless, Driver=btusb, 12M
|__ Port 8: Dev 5, If 1, Class=Video, Driver=uvcvideo, 480M
|__ Port 8: Dev 5, If 0, Class=Video, Driver=uvcvideo, 480M
From the output of lsusb
you get the bus and device number of the device, then search this device in the output of lsusb -t
to get the bus and port number (sometimes with subports). The syntax is:
1-2.3 # for Bus 1 Port 2 Subport 3 – strip leading zeroes!
Use this as port
in the script. Now you just need to make it executable with chmod +x /path/to/script
and run it with root permissions:
sudo /path/to/script
I didn’t need one for my pendrive, but it may be necessary for you to add a delay between unbinding and binding again, that’s what the commented out sleep 1
line is for – you can experiment with the values, e.g. sleep 0.5
for half a second.
Note that this approach shows how to disable and enable again a certain USB port, if you want a specific device to be unbound and rebound again you’ll have to use the same USB port for this to work. One could think of a way to parse lsusb
’s output to dynamically get the bus and port number of a specific device every time the script is called, this would allow you to use any USB port, but I feel that would be an overkill here.
Suggestions taken from this linux.com blog article.
I wrote a script to show how I’d do that:
#!/bin/bash
port="1-1.1" # as shown by lsusb -t: {bus}-{port}(.{subport})
bind_usb() {
echo "$1" >/sys/bus/usb/drivers/usb/bind
}
unbind_usb() {
echo "$1" >/sys/bus/usb/drivers/usb/unbind
}
unbind_usb "$port"
# sleep 1 # enable delay here
bind_usb "$port"
First you need to get the bus and port number of the usb port in question. You can do that with lsusb
and any device you recognize in lsusb
’s output, I use a Sandisk pendrive here:
$ lsusb
Bus 001 Device 005: ID 04f2:b39a Chicony Electronics Co., Ltd
Bus 001 Device 112: ID 8087:07dc Intel Corp.
Bus 001 Device 019: ID 04d9:1603 Holtek Semiconductor, Inc. Keyboard
Bus 001 Device 018: ID 0424:2504 Standard Microsystems Corp. USB 2.0 Hub
Bus 001 Device 022: ID 0781:5567 SanDisk Corp. Cruzer Blade
Bus 001 Device 002: ID 8087:8000 Intel Corp.
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
$ lsusb -t
/: Bus 01.Port 1: Dev 1, Class=root_hub, Driver=ehci-pci/3p, 480M
|__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/8p, 480M
|__ Port 1: Dev 22, If 0, Class=Mass Storage, Driver=usb-storage, 480M
|__ Port 2: Dev 18, If 0, Class=Hub, Driver=hub/4p, 480M
|__ Port 1: Dev 19, If 1, Class=Human Interface Device, Driver=usbhid, 1.5M
|__ Port 1: Dev 19, If 0, Class=Human Interface Device, Driver=usbhid, 1.5M
|__ Port 7: Dev 112, If 0, Class=Wireless, Driver=btusb, 12M
|__ Port 7: Dev 112, If 1, Class=Wireless, Driver=btusb, 12M
|__ Port 8: Dev 5, If 1, Class=Video, Driver=uvcvideo, 480M
|__ Port 8: Dev 5, If 0, Class=Video, Driver=uvcvideo, 480M
From the output of lsusb
you get the bus and device number of the device, then search this device in the output of lsusb -t
to get the bus and port number (sometimes with subports). The syntax is:
1-2.3 # for Bus 1 Port 2 Subport 3 – strip leading zeroes!
Use this as port
in the script. Now you just need to make it executable with chmod +x /path/to/script
and run it with root permissions:
sudo /path/to/script
I didn’t need one for my pendrive, but it may be necessary for you to add a delay between unbinding and binding again, that’s what the commented out sleep 1
line is for – you can experiment with the values, e.g. sleep 0.5
for half a second.
Note that this approach shows how to disable and enable again a certain USB port, if you want a specific device to be unbound and rebound again you’ll have to use the same USB port for this to work. One could think of a way to parse lsusb
’s output to dynamically get the bus and port number of a specific device every time the script is called, this would allow you to use any USB port, but I feel that would be an overkill here.
Suggestions taken from this linux.com blog article.
edited Dec 11 at 7:16
answered May 15 at 7:28
dessert
21.7k55896
21.7k55896
Unfortunately it doesn't work. I still have to physically remove the USB transceiver and plug it back in. Also, @reboot doesn't work on my machine (Ubuntu 16.04)
– deanresin
May 19 at 3:53
add a comment |
Unfortunately it doesn't work. I still have to physically remove the USB transceiver and plug it back in. Also, @reboot doesn't work on my machine (Ubuntu 16.04)
– deanresin
May 19 at 3:53
Unfortunately it doesn't work. I still have to physically remove the USB transceiver and plug it back in. Also, @reboot doesn't work on my machine (Ubuntu 16.04)
– deanresin
May 19 at 3:53
Unfortunately it doesn't work. I still have to physically remove the USB transceiver and plug it back in. Also, @reboot doesn't work on my machine (Ubuntu 16.04)
– deanresin
May 19 at 3:53
add a comment |
Thanks for contributing an answer to Ask Ubuntu!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Some of your past answers have not been well-received, and you're in danger of being blocked from answering.
Please pay close attention to the following guidance:
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2faskubuntu.com%2fquestions%2f1036341%2funplug-and-plug-in-again-a-usb-device-in-the-terminal%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
2
does uhubctl or an alternative work on your machine?
– sbergeron
May 15 at 1:58
If this driver is a kernel module, you should be able to unload it with
rmmod
and reload it withmodprobe
. You only have to find out which module loads when you plugin the mouse. Trylsmod
after you rebooted without mouse plugged in. Then plug it in and see, which module loaded.– nobody
May 15 at 6:57
1
@sbergeron Could you please post your idea about
uhubctl
as answer. It is very promising.– N0rbert
May 15 at 7:19