Automatic Activation, Hotplug and UDEV, Configuration
Post Reply
henningh
Posts: 1
Joined: 22 Jan 2018, 02:50

Novatel 730L error

Post by henningh » 22 Jan 2018, 02:56

According to the guide here https://www.verizonwireless.com/dam/sup ... -guide.pdf
this is the command to change the mode but it is not working. Anything I can do?

henning@egads:/etc/udev/rules.d$ sudo usb_modeswitch -v 0x1410 -p 0x9030 -u 2
Look for default devices ...
product ID matched
Get the current device configuration ...
Found devices in default mode (1)
Access device 030 on bus 001
Current configuration number is 1
Use interface number 0

USB description data (for identification)
-------------------------
Manufacturer: Novatel Wireless
Product: MiFi USB730L
Serial No.: 0123456789ABCDEF
-------------------------
Change configuration to 2 ...
Device is busy, try to detach kernel driver
Looking for active driver ...
OK, driver detached
Device is busy, try to detach kernel driver
Looking for active driver ...
No active driver found. Detached before or never attached
Device is busy, try to detach kernel driver
Looking for active driver ...
No active driver found. Detached before or never attached
Device is busy, try to detach kernel driver
Looking for active driver ...
No active driver found. Detached before or never attached
Changing the configuration failed (error -6). Try to continue
-> Run lsusb to note any changes. Bye!

LOM
Posts: 1343
Joined: 11 Jul 2012, 15:14
Location: Koh Samui, TH

Re: Novatel 730L error

Post by LOM » 24 Jan 2018, 12:03

Do you use the latest version of usb_modeswitch?

http://www.draisberghof.de/usb_modeswit ... f=5&t=2759

vahid-dan
Posts: 4
Joined: 13 Sep 2019, 22:18

Re: Novatel 730L error

Post by vahid-dan » 13 Sep 2019, 22:27

Hi. I have a similar problem with the same modem on Ubuntu 18.04, usb_modeswitch 2.5.2:

Code: Select all

$ lsusb
...
Bus 001 Device 007: ID 1410:9031 Novatel Wireless
...

$ sudo usb_modeswitch -v 0x1410 -p 0x9031 -u 2
Look for default devices ...
 Found devices in default mode (1)
Access device 007 on bus 001
Get the current device configuration ...
Current configuration number is 1
Use interface number 0
 with class 239
Change configuration to 2 ...
Looking for active drivers ...
 Resetting the configuration failed (error -6). Try to continue
 Changing the configuration failed (error -6). Try to continue
-> Run lsusb to note any changes. Bye!
The modem keeps disconnecting with rndis_host module. But cdc_ether works fine. I want to switch the mode to use cdc_ether.

Any idea?

Thanks,
Vahid

LOM
Posts: 1343
Joined: 11 Jul 2012, 15:14
Location: Koh Samui, TH

Re: Novatel 730L error

Post by LOM » 14 Sep 2019, 01:53

vahid-dan wrote:Hi. I have a similar problem with the same modem on Ubuntu 18.04, usb_modeswitch 2.5.2:

Code: Select all

$ lsusb
...
Bus 001 Device 007: ID 1410:9031 Novatel Wireless

...
Show me the verbose lsusb listing for 1410:9031, this is an usb id which I haven't seen before, do also show a complete usb_modeswitch log which you get by including the -W switch on the cmdline.

vahid-dan
Posts: 4
Joined: 13 Sep 2019, 22:18

Re: Novatel 730L error

Post by vahid-dan » 14 Sep 2019, 05:43

Hi LOM!

Code: Select all

$ lsusb -v -d 0x1410:0x9031

Bus 001 Device 020: ID 1410:9031 Novatel Wireless 
Couldn't open device, some information will be missing
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               2.00
  bDeviceClass            0 (Defined at Interface level)
  bDeviceSubClass         0 
  bDeviceProtocol         0 
  bMaxPacketSize0        64
  idVendor           0x1410 Novatel Wireless
  idProduct          0x9031 
  bcdDevice            3.10
  iManufacturer           1 
  iProduct                2 
  iSerial                 3 
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength          261
    bNumInterfaces          8
    bConfigurationValue     1
    iConfiguration          0 
    bmAttributes         0x80
      (Bus Powered)
    MaxPower              500mA
    Interface Association:
      bLength                 8
      bDescriptorType        11
      bFirstInterface         0
      bInterfaceCount         2
      bFunctionClass        239 Miscellaneous Device
      bFunctionSubClass       4 
      bFunctionProtocol       1 
      iFunction               7 
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           1
      bInterfaceClass       239 Miscellaneous Device
      bInterfaceSubClass      4 
      bInterfaceProtocol      1 
      iInterface              5 
      ** UNRECOGNIZED:  05 24 00 10 01
      ** UNRECOGNIZED:  05 24 01 00 01
      ** UNRECOGNIZED:  04 24 02 00
      ** UNRECOGNIZED:  05 24 06 00 01
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x82  EP 2 IN
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0008  1x 8 bytes
        bInterval               9
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        1
      bAlternateSetting       0
      bNumEndpoints           2
      bInterfaceClass        10 CDC Data
      bInterfaceSubClass      0 Unused
      bInterfaceProtocol      0 
      iInterface              6 
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0200  1x 512 bytes
        bInterval               0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x01  EP 1 OUT
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0200  1x 512 bytes
        bInterval               0
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        2
      bAlternateSetting       0
      bNumEndpoints           3
      bInterfaceClass       255 Vendor Specific Class
      bInterfaceSubClass      0 
      bInterfaceProtocol      0 
      iInterface              0 
      ** UNRECOGNIZED:  05 24 00 10 01
      ** UNRECOGNIZED:  05 24 01 00 00
      ** UNRECOGNIZED:  04 24 02 02
      ** UNRECOGNIZED:  05 24 06 00 00
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x84  EP 4 IN
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x000a  1x 10 bytes
        bInterval               9
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x83  EP 3 IN
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0200  1x 512 bytes
        bInterval               0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x02  EP 2 OUT
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0200  1x 512 bytes
        bInterval               0
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        3
      bAlternateSetting       0
      bNumEndpoints           2
      bInterfaceClass       255 Vendor Specific Class
      bInterfaceSubClass    255 Vendor Specific Subclass
      bInterfaceProtocol    255 Vendor Specific Protocol
      iInterface              0 
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x85  EP 5 IN
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0200  1x 512 bytes
        bInterval               0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x03  EP 3 OUT
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0200  1x 512 bytes
        bInterval               0
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        4
      bAlternateSetting       0
      bNumEndpoints           2
      bInterfaceClass       255 Vendor Specific Class
      bInterfaceSubClass     66 
      bInterfaceProtocol      1 
      iInterface             85 
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x04  EP 4 OUT
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0200  1x 512 bytes
        bInterval               0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x86  EP 6 IN
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0200  1x 512 bytes
        bInterval               0
    Interface Association:
      bLength                 8
      bDescriptorType        11
      bFirstInterface        12
      bInterfaceCount         2
      bFunctionClass          2 Communications
      bFunctionSubClass       2 Abstract (modem)
      bFunctionProtocol       1 AT-commands (v.25ter)
      iFunction              88 
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber       12
      bAlternateSetting       0
      bNumEndpoints           1
      bInterfaceClass         2 Communications
      bInterfaceSubClass      2 Abstract (modem)
      bInterfaceProtocol      1 AT-commands (v.25ter)
      iInterface             86 
      CDC Header:
        bcdCDC               1.10
      CDC Call Management:
        bmCapabilities       0x00
        bDataInterface          13
      CDC ACM:
        bmCapabilities       0x02
          line coding and serial state
      CDC Union:
        bMasterInterface        12
        bSlaveInterface         13 
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x88  EP 8 IN
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x000a  1x 10 bytes
        bInterval               9
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber       13
      bAlternateSetting       0
      bNumEndpoints           2
      bInterfaceClass        10 CDC Data
      bInterfaceSubClass      0 Unused
      bInterfaceProtocol      0 
      iInterface             87 
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x87  EP 7 IN
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0200  1x 512 bytes
        bInterval               0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x05  EP 5 OUT
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0200  1x 512 bytes
        bInterval               0
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber       14
      bAlternateSetting       0
      bNumEndpoints           1
      bInterfaceClass         3 Human Interface Device
      bInterfaceSubClass      0 No Subclass
      bInterfaceProtocol      0 None
      iInterface             13 
        HID Device Descriptor:
          bLength                 9
          bDescriptorType        33
          bcdHID               1.01
          bCountryCode            0 Not supported
          bNumDescriptors         1
          bDescriptorType        34 Report
          wDescriptorLength      34
         Report Descriptors: 
           ** UNAVAILABLE **
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x89  EP 9 IN
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0008  1x 8 bytes
        bInterval               4

Code: Select all

$ sudo usb_modeswitch -v 0x1410 -p 0x9031 -u 2 -W
[sudo] password for scc: debug3: receive packet: type 2
debug3: Received SSH2_MSG_IGNORE
debug3: receive packet: type 2
debug3: Received SSH2_MSG_IGNORE
debug3: receive packet: type 2
debug3: Received SSH2_MSG_IGNORE
debug3: receive packet: type 2
debug3: Received SSH2_MSG_IGNORE
debug3: receive packet: type 2
debug3: Received SSH2_MSG_IGNORE
debug3: receive packet: type 2
debug3: Received SSH2_MSG_IGNORE
debug3: receive packet: type 2
debug3: Received SSH2_MSG_IGNORE
debug3: receive packet: type 2
debug3: Received SSH2_MSG_IGNORE

Take all parameters from the command line


 * usb_modeswitch: handle USB devices with multiple modes
 * Version 2.5.2 (C) Josua Dietze 2017
 * Based on libusb1/libusbx

 ! PLEASE REPORT NEW CONFIGURATIONS !

DefaultVendor=  0x1410
DefaultProduct= 0x9031
Configuration=0x02

Look for default devices ...
  found USB ID 1d6b:0003
  found USB ID 8087:0a2b
  found USB ID 04b4:6570
  found USB ID 1410:9031
   vendor ID matched
   product ID matched
  found USB ID 1d6b:0002
 Found devices in default mode (1)
Access device 020 on bus 001
Get the current device configuration ...
Current configuration number is 1
Use interface number 0
 with class 239

USB description data (for identification)
-------------------------
Manufacturer: Novatel Wireless
     Product: MiFi USB730L
  Serial No.: 0123456789ABCDEF
-------------------------
Change configuration to 2 ...
Looking for active drivers ...
 Resetting the configuration failed (error -6). Try to continue
 Changing the configuration failed (error -6). Try to continue
-> Run lsusb to note any changes. Bye!
And this is the error message in dmesg after running the above comand:

Code: Select all

$ dmesg
...
[29909.997085] usb 1-4: usbfs: interface 12 claimed by cdc_acm while 'usb_modeswitch' sets config #-1
[29910.097373] usb 1-4: usbfs: interface 12 claimed by cdc_acm while 'usb_modeswitch' sets config #2

LOM
Posts: 1343
Joined: 11 Jul 2012, 15:14
Location: Koh Samui, TH

Re: Novatel 730L error

Post by LOM » 14 Sep 2019, 06:26

vahid-dan wrote:Hi LOM!

$ lsusb -v -d 0x1410:0x9031

.....

bNumConfigurations 1

......
Your USB730L has a different firmware from the one we previously knew about, there aren't any multiple configuration to select from in this one.
You mentioned that you have problems when using rndis but that it works with cdc_ether something I don't understand since this firmware does not create any interfaces that cdc_ether can bind to directly.
It is also so that the linux rndis_host driver is a helper driver", it takes care of just a few rndis specific things but it depends on the cdc_ether driver which does almost all of the heavy job.

vahid-dan
Posts: 4
Joined: 13 Sep 2019, 22:18

Re: Novatel 730L error

Post by vahid-dan » 14 Sep 2019, 16:34

LOM wrote:Your USB730L has a different firmware from the one we previously knew about, there aren't any multiple configuration to select from in this one.
You mentioned that you have problems when using rndis but that it works with cdc_ether something I don't understand since this firmware does not create any interfaces that cdc_ether can bind to directly.
It is also so that the linux rndis_host driver is a helper driver", it takes care of just a few rndis specific things but it depends on the cdc_ether driver which does almost all of the heavy job.
Thanks for your response. I have 3 identical computers with 3 identical USB 730L modems with the same operating system and modem firmware. One of them is using cdc_ether and the other two are using rndis. cdc_ether is quite stable but rndis keeps unregistering/registering the device and after a while just gives up. Here is the info for the other modem working with cdc_ether:

Code: Select all

$ lsusb -v -d 0x1410:0x9031

Bus 001 Device 002: ID 1410:9031 Novatel Wireless 
Couldn't open device, some information will be missing
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               2.00
  bDeviceClass            0 (Defined at Interface level)
  bDeviceSubClass         0 
  bDeviceProtocol         0 
  bMaxPacketSize0        64
  idVendor           0x1410 Novatel Wireless
  idProduct          0x9031 
  bcdDevice            3.10
  iManufacturer           1 
  iProduct                2 
  iSerial                 3 
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength          266
    bNumInterfaces          8
    bConfigurationValue     1
    iConfiguration          0 
    bmAttributes         0x80
      (Bus Powered)
    MaxPower              500mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           1
      bInterfaceClass         2 Communications
      bInterfaceSubClass      6 Ethernet Networking
      bInterfaceProtocol      0 
      iInterface              5 
      CDC Header:
        bcdCDC               1.10
      CDC Union:
        bMasterInterface        0
        bSlaveInterface         1 
      CDC Ethernet:
        iMacAddress                      7 (??)
        bmEthernetStatistics    0x00000000
        wMaxSegmentSize               1514
        wNumberMCFilters            0x0000
        bNumberPowerFilters              0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x82  EP 2 IN
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0010  1x 16 bytes
        bInterval               9
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        1
      bAlternateSetting       0
      bNumEndpoints           0
      bInterfaceClass        10 CDC Data
      bInterfaceSubClass      0 Unused
      bInterfaceProtocol      0 
      iInterface              0 
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        1
      bAlternateSetting       1
      bNumEndpoints           2
      bInterfaceClass        10 CDC Data
      bInterfaceSubClass      0 Unused
      bInterfaceProtocol      0 
      iInterface              6 
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0200  1x 512 bytes
        bInterval               0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x01  EP 1 OUT
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0200  1x 512 bytes
        bInterval               0
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        2
      bAlternateSetting       0
      bNumEndpoints           3
      bInterfaceClass       255 Vendor Specific Class
      bInterfaceSubClass      0 
      bInterfaceProtocol      0 
      iInterface              0 
      ** UNRECOGNIZED:  05 24 00 10 01
      ** UNRECOGNIZED:  05 24 01 00 00
      ** UNRECOGNIZED:  04 24 02 02
      ** UNRECOGNIZED:  05 24 06 00 00
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x84  EP 4 IN
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x000a  1x 10 bytes
        bInterval               9
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x83  EP 3 IN
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0200  1x 512 bytes
        bInterval               0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x02  EP 2 OUT
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0200  1x 512 bytes
        bInterval               0
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        3
      bAlternateSetting       0
      bNumEndpoints           2
      bInterfaceClass       255 Vendor Specific Class
      bInterfaceSubClass    255 Vendor Specific Subclass
      bInterfaceProtocol    255 Vendor Specific Protocol
      iInterface              0 
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x85  EP 5 IN
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0200  1x 512 bytes
        bInterval               0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x03  EP 3 OUT
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0200  1x 512 bytes
        bInterval               0
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        4
      bAlternateSetting       0
      bNumEndpoints           2
      bInterfaceClass       255 Vendor Specific Class
      bInterfaceSubClass     66 
      bInterfaceProtocol      1 
      iInterface              4 
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x04  EP 4 OUT
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0200  1x 512 bytes
        bInterval               0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x86  EP 6 IN
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0200  1x 512 bytes
        bInterval               0
    Interface Association:
      bLength                 8
      bDescriptorType        11
      bFirstInterface        12
      bInterfaceCount         2
      bFunctionClass          2 Communications
      bFunctionSubClass       2 Abstract (modem)
      bFunctionProtocol       1 AT-commands (v.25ter)
      iFunction              11 
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber       12
      bAlternateSetting       0
      bNumEndpoints           1
      bInterfaceClass         2 Communications
      bInterfaceSubClass      2 Abstract (modem)
      bInterfaceProtocol      1 AT-commands (v.25ter)
      iInterface              9 
      CDC Header:
        bcdCDC               1.10
      CDC Call Management:
        bmCapabilities       0x00
        bDataInterface          13
      CDC ACM:
        bmCapabilities       0x02
          line coding and serial state
      CDC Union:
        bMasterInterface        12
        bSlaveInterface         13 
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x88  EP 8 IN
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x000a  1x 10 bytes
        bInterval               9
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber       13
      bAlternateSetting       0
      bNumEndpoints           2
      bInterfaceClass        10 CDC Data
      bInterfaceSubClass      0 Unused
      bInterfaceProtocol      0 
      iInterface             10 
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x87  EP 7 IN
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0200  1x 512 bytes
        bInterval               0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x05  EP 5 OUT
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0200  1x 512 bytes
        bInterval               0
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber       14
      bAlternateSetting       0
      bNumEndpoints           1
      bInterfaceClass         3 Human Interface Device
      bInterfaceSubClass      0 No Subclass
      bInterfaceProtocol      0 None
      iInterface             13 
        HID Device Descriptor:
          bLength                 9
          bDescriptorType        33
          bcdHID               1.01
          bCountryCode            0 Not supported
          bNumDescriptors         1
          bDescriptorType        34 Report
          wDescriptorLength      34
         Report Descriptors: 
           ** UNAVAILABLE **
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x89  EP 9 IN
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0008  1x 8 bytes
        bInterval               4
Based on my log, it was using rndis before changing the operating system from Ubuntu 16.04 to 18.04. After setting up the modem again, it starts using cdc_ether:

Before the upgrade:

Code: Select all

[64529.222469] usb 1-4: New USB device found, idVendor=1410, idProduct=9031, bcdDevice= 3.10
[64529.222476] usb 1-4: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[64529.222481] usb 1-4: Product: MiFi USB730L
[64529.222485] usb 1-4: Manufacturer: Novatel Wireless
[64529.222489] usb 1-4: SerialNumber: 0123456789ABCDEF
[64529.249715] rndis_host 1-4:1.0 eth0: register 'rndis_host' at usb-0000:00:15.0-4, RNDIS device, 00:15:ff:08:07:33
[64529.260471] cdc_acm 1-4:1.12: ttyACM0: USB ACM device
[64529.262899] hid-generic 0003:1410:9031.000F: hiddev0,hidraw0: USB HID v1.01 Device [Novatel Wireless MiFi USB730L] on usb-0000:00:15.0-4/input14
[64529.302415] rndis_host 1-4:1.0 enx0015ff080733: renamed from eth0
After the upgrade:

Code: Select all

[  422.325159] usb 1-4: New USB device found, idVendor=1410, idProduct=9031, bcdDevice= 3.10
[  422.325166] usb 1-4: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[  422.325171] usb 1-4: Product: MiFi USB730L
[  422.325175] usb 1-4: Manufacturer: Novatel Wireless
[  422.325179] usb 1-4: SerialNumber: 0123456789ABCDEF
[  422.353346] cdc_ether 1-4:1.0 eth0: register 'cdc_ether' at usb-0000:00:15.0-4, CDC Ethernet Device, 00:15:ff:08:07:33
[  422.354882] cdc_acm 1-4:1.12: ttyACM0: USB ACM device
[  422.373868] hid-generic 0003:1410:9031.0002: hiddev0,hidraw0: USB HID v1.01 Device [Novatel Wireless MiFi USB730L] on usb-0000:00:15.0-4/input14
[  422.397213] cdc_ether 1-4:1.0 enx0015ff080733: renamed from eth0
[  422.853965] IPv6: ADDRCONF(NETDEV_CHANGE): enx0015ff080733: link becomes ready
So my question is that how I can make my other two machines stop using rndis?

Thanks,
Vahid

LOM
Posts: 1343
Joined: 11 Jul 2012, 15:14
Location: Koh Samui, TH

Re: Novatel 730L error

Post by LOM » 14 Sep 2019, 17:38

vahid-dan wrote: So my question is that how I can make my other two machines stop using rndis?

Thanks,
Vahid
I have no idea how you can do that but I don't think it involves usb_modeswitch.
There has never been an entry for 1410:9031 in usb_modeswitch, your modems starts up in working mode without the need for any switching.

Your first lsusb listing shows interface 0 to be rndis with class/subclass/protocol attributes of 239/04/01 and with an Interface Association descriptor before interface 0 which your second listing doesn't have.
The interface attributes for interface 0 in the second listing is 02/06/00 ie cdc_ether.

If you are 100% sure that all 3 modems has the same firmware then I can only guess that the modem itself decides if it should show up as an rndis device or a cdc_ether device. What criteria it uses for the decision is unknown to me.
A guess is that Ubuntu 16.04 and 18.04 differ somewhere in the probing of the modem when it gets detected on the usb bus, could for instance be a difference in timing. I don't know and can't do much to help you, sorry!

The reason why many manufacturers have two configuration, usually selectable, is because they want to support two different architectures.
Apple can not speak any other net protocol than ether so needs an ether type interface , MS Windows could only speak rndis until Win8 when they also added the mbim protocol so it needs an rndis interface in order to cover both old and new Windows.

vahid-dan
Posts: 4
Joined: 13 Sep 2019, 22:18

Re: Novatel 730L error

Post by vahid-dan » 15 Sep 2019, 06:39

LOM,

Thanks a lot for your time. I appreciate your effort to help me. :-)

Bests,
Vahid

Post Reply