Nokia 8 USB tethering does not work

Hi,

I got a nokia 8 with Oreo 8.1. I tried to use it to USB-tether with my RPi@openwrt8.6. But it didn't work.
Below is the log when this phone was connected and then USB-tethering was activated:


Mon Sep 17 09:34:12 2018 kern.info kernel: [ 57.187813] usb 1-1.2: USB disconnect, device number 6
Mon Sep 17 09:34:13 2018 kern.info kernel: [ 57.990986] usb 1-1.2: new high-speed USB device number 7 using dwc_otg
Mon Sep 17 09:34:13 2018 kern.info kernel: [ 58.133680] usb 1-1.2: New USB device found, idVendor=0489, idProduct=c022
Mon Sep 17 09:34:13 2018 kern.info kernel: [ 58.144322] usb 1-1.2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
Mon Sep 17 09:34:13 2018 kern.info kernel: [ 58.155169] usb 1-1.2: Product: Nokia 8
Mon Sep 17 09:34:13 2018 kern.info kernel: [ 58.162306] usb 1-1.2: Manufacturer: HMD Global
Mon Sep 17 09:34:13 2018 kern.info kernel: [ 58.169943] usb 1-1.2: SerialNumber: XXXXXXXXXXX


While the other phone@android version 5.1 is working fine on the same RPi.


Mon Sep 17 09:51:03 2018 kern.info kernel: [ 1213.862093] usb 1-1.2: new high-speed USB device number 9 using dwc_otg
Mon Sep 17 09:51:03 2018 kern.info kernel: [ 1214.003437] usb 1-1.2: New USB device found, idVendor=22b8, idProduct=2e24
Mon Sep 17 09:51:03 2018 kern.info kernel: [ 1214.013505] usb 1-1.2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
Mon Sep 17 09:51:03 2018 kern.info kernel: [ 1214.023910] usb 1-1.2: Product: XT1033
Mon Sep 17 09:51:03 2018 kern.info kernel: [ 1214.030741] usb 1-1.2: Manufacturer: motorola
Mon Sep 17 09:51:03 2018 kern.info kernel: [ 1214.038104] usb 1-1.2: SerialNumber: XXXXXXXXXX
Mon Sep 17 09:51:03 2018 kern.info kernel: [ 1214.055160] rndis_host 1-1.2:1.0 usb0: register 'rndis_host' at usb-20980000.usb-1.2, RNDIS device, e1:21:dc:ac:bd:1a


Sorry if this isn't the right forum and this topic has already been discussed and a solution has been provided.
(Maybe someone can point me to the link.)

TIA

You probably have to use a different driver than rndis. Search for kmod-usb-net in the package list.

Thanks for the reply but kmod-usb-net is already installed as part of the requirement for the USB tethering. Exactly how do we make it load instead of the rndis driver?

There are lots of drivers in the kmod-usb-net-* family, if you search for kmod-usb-net you will see them. You need to test the ones that might work.

FYI. It works on OpenWrt 18.06.1 with Kernel 4.14 but not on kernel ver. 4.9. Thanks.

While you might want to open a bug report, the next release will move to 4.14 either way. If you don't lose any functionality with 4.14, better stick with that?

I've got two devices for this purpose. An old RPi A+ and a NEXX wt3020f, both were at LEDE 17.01.6 and did not work. Tried OpenWrt 18.06.1 on RPi but still it didn't work. Then decided to upgrade the nexx to 18.06.1 and it works. The only difference I noticed between these two was the kernel version, RPi @ 4.9 and nexx @ 4.14. Now I'm using my nexx with my Nokia 8 to share my internet connection using USB tethering. I would not know if this is a bug or something...not really into this kind of stuff. Thanks.

Linux 4.14 indeed broadened the list of recognized devices:

You can check if Nokia 8 is included by checking if its RNDIS interface descriptor (see with lsusb -v) matches the class/subclass/protocol mentioned in that change.

I tested the change on top of OpenWrt 18.06.2 and got Sony Xperia XZs finally to show up as usb0. Affected module packages are kmod-usb-net-cdc-ether and kmod-usb-net-rndis.