I’m trying to connect to internet via USB tethering with a Samsung Galaxy phone but it doesn’t work. I checked on Windows and it works with the same devices. Is there anything I can do or perhaps any drivers to fix this issue?
lsusb shows that the device is connected and has network tethering on
But nmcli m shows that the connection is stuck “getting IP configuration” and then failing
I tried to change to manual IP, which makes it connected but the network is unusable
Running ip link show gets UNKNOWN for the network’s state
Interesting. I normally use the Hot Spot feature on my Galaxy devices to connect to my laptop with it. I haven’t done it through USB in a while, but I might try it later on today.
It works for me on Fedora 37 with Samsung Galaxy M22 running Android 13.
Android Phone
Settings > Connections > Mobile Hotspot and Tethering > USB tethering > Enable
Fedora Linux
> lsusb -v -v -t
...
/: Bus 01.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/16p, 480M
ID 1d6b:0002 Linux Foundation 2.0 root hub
/sys/bus/usb/devices/usb1 /dev/bus/usb/001/001
|__ Port 1: Dev 18, If 0, Class=Wireless, Driver=rndis_host, 480M
ID 04e8:6864 Samsung Electronics Co., Ltd GT-I9070 (network tethering, USB debugging enabled)
/sys/bus/usb/devices/1-1 /dev/bus/usb/001/018
|__ Port 1: Dev 18, If 1, Class=CDC Data, Driver=rndis_host, 480M
ID 04e8:6864 Samsung Electronics Co., Ltd GT-I9070 (network tethering, USB debugging enabled)
/sys/bus/usb/devices/1-1 /dev/bus/usb/001/018
|__ Port 1: Dev 18, If 2, Class=Vendor Specific Class, Driver=usbfs, 480M
ID 04e8:6864 Samsung Electronics Co., Ltd GT-I9070 (network tethering, USB debugging enabled)
/sys/bus/usb/devices/1-1 /dev/bus/usb/001/018
...
It should work OOTB unless you use USBGuard, which requires extra rules.
I ran lsusb and the output is roughly the same as yours, but it still can’t connect. I also don’t use USBGuard. Here is the output of lsusb:
$ lsusb -vvt
...
/: Bus 02.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/11p, 480M
ID 1d6b:0002 Linux Foundation 2.0 root hub
/sys/bus/usb/devices/usb2 /dev/bus/usb/002/001
|__ Port 2: Dev 2, If 0, Class=Human Interface Device, Driver=usbhid, 12M
ID 1a81:101c Holtek Semiconductor, Inc.
/sys/bus/usb/devices/2-2 /dev/bus/usb/002/002
|__ Port 2: Dev 2, If 1, Class=Human Interface Device, Driver=usbhid, 12M
ID 1a81:101c Holtek Semiconductor, Inc.
/sys/bus/usb/devices/2-2 /dev/bus/usb/002/002
|__ Port 4: Dev 7, If 0, Class=Wireless, Driver=rndis_host, 480M
ID 04e8:6864 Samsung Electronics Co., Ltd GT-I9070 (network tethering, USB debugging enabled)
/sys/bus/usb/devices/2-4 /dev/bus/usb/002/007
|__ Port 4: Dev 7, If 1, Class=CDC Data, Driver=rndis_host, 480M
ID 04e8:6864 Samsung Electronics Co., Ltd GT-I9070 (network tethering, USB debugging enabled)
/sys/bus/usb/devices/2-4 /dev/bus/usb/002/007
|__ Port 4: Dev 7, If 2, Class=Vendor Specific Class, Driver=, 480M
ID 04e8:6864 Samsung Electronics Co., Ltd GT-I9070 (network tethering, USB debugging enabled)
/sys/bus/usb/devices/2-4 /dev/bus/usb/002/007
...