Re: cdc_mbim with Huawei E3372, nothing works

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, Feb 17, 2015 at 4:32 PM, Sami Farin <hvtaifwkbgefbaei@xxxxxxxxx> wrote:
> I have this USB ID 12d1:157d, Sonera Opengate LTE.
> It says all is okay but no packets are moving.
> With the SIM card in Lumia I get 50/25 Mbit/s.
>
> linux 3.19, Fedora 21, usb-modeswitch-2.2.1, usb_modeswitch-data 20150115, Asus P8Z68-V PRO GEN3,
> NetworkManager-1.0.0-4.fc22, libmbim-1.12.0-1.fc22, ModemManager-1.4.4-1
> (tried USB 2 and USB 3 ports).
>
> In NetworkManager, setting "Use only 4G" does not work, it switches back to "Any".
>

That setting doesn't do anything any more with ModemManager 1.x. Plus,
MBIM modems won't allow to lock e.g. to 4G-only, so that's why it
always goes back to "Any".

> usb_modeswitch log
>
> USB_ModeSwitch log from Thu Feb 12 21:58:45 EET 2015
>
> Use global config file: /etc/usb_modeswitch.conf
> Raw args from udev: /3-1:1.0
>
> Use top device dir /sys/bus/usb/devices/3-1
>
> ----------------
> USB values from sysfs:
> manufacturer    HUAWEI_MOBILE
> product HUAWEI_MOBILE
> serial  0123456789ABCDEF
> ----------------
> ConfigList: /etc/usb_modeswitch.d/12d1:157d
> SCSI attributes not needed, move on
> Check config: /etc/usb_modeswitch.d/12d1:157d
> ! matched. Read config data
> Use config file from override folder /etc/usb_modeswitch.d
> Logger is /usr/bin/logger
> config: TargetVendor set to 12d1
> config: TargetProduct set to 14db
> Driver module is "option", ID path is /sys/bus/usb-serial/drivers/option1
>
> Device may have an MBIM configuration, check driver ...
> driver for MBIM devices is available
> Find MBIM configuration number ...
> Command to be run:
> usb_modeswitch -W -D -s 20 -b 3 -g 31 -v 12d1 -p 157d -f $configBuffer
>
> Verbose debug output of usb_modeswitch and libusb follows
> (Note that some USB errors are to be expected in the process)
> --------------------------------
>
> Read long config from command line
>
> * usb_modeswitch: handle USB devices with multiple modes
> * Version 2.2.0 (C) Josua Dietze 2014
> * Based on libusb1/libusbx
>
> ! PLEASE REPORT NEW CONFIGURATIONS !
>
> DefaultVendor= 0x12d1
> DefaultProduct= 0x157d
> NeedResponse=0
> Configuration=0x02
> Success check enabled, max. wait time 20 seconds
> System integration mode enabled
>
> Use given bus/device number: 003/031 ...
> Note: No target parameter given; success check limited
> Look for default devices ...
> bus/device number matched
> found USB ID 12d1:157d
> vendor ID matched
> product ID matched
> Get the current device configuration ...
> device configuration 1 not matching target
> count device
> Found devices in default mode (1)
> Current configuration number is 1
> Use interface number 0
>
> USB description data (for identification)
> -------------------------
> Manufacturer: HUAWEI_MOBILE
> Product: HUAWEI_MOBILE
> Serial No.: 0123456789ABCDEF
> -------------------------
> Change configuration to 2 ...
> Device is busy, try to detach kernel driver
> Looking for active driver ...
> OK, driver detached
> OK, configuration set
> Get the current device configuration ...
> The configuration was set successfully
> Bus/dev search active, refer success check to wrapper. Bye!
>
> ok:busdev
> --------------------------------
> (end of usb_modeswitch output)
>
> Check success of mode switch for max. 20 seconds ...
> Read attributes ...
> All attributes matched
> Mode switching was successful, found 12d1:157d (HUAWEI_MOBILE: HUAWEI_MOBILE)
> Check for AVOID_RESET_QUIRK kernel attribute
> AVOID_RESET_QUIRK activated
>
> All done, exit
>
>
>
> ifconfig
> wwp3s0u1c2: flags=4291<UP,BROADCAST,RUNNING,NOARP,MULTICAST>  mtu 1500
>         inet 46.132.188.224  netmask 255.255.255.192  broadcast 46.132.188.255
>         inet6 fe80::  prefixlen 64  scopeid 0x20<link>
>         ether 32:35:3a:64:2e:25  txqueuelen 1000  (Ethernet)
>         RX packets 0  bytes 0 (0.0 B)
>         RX errors 17764  dropped 0  overruns 0  frame 0
>         TX packets 6714  bytes 18446744073709268911 (1638.3 PiB)
>         TX errors 1427  dropped 0 overruns 0  carrier 0  collisions 0
>

That's a ton of RX errors in there, and an... unusual number of TX
bytes as well.

Bjørn, any idea?


>
> lsusb
>
> Bus 003 Device 017: ID 12d1:157d Huawei Technologies Co., Ltd.
> Device Descriptor:
>   bLength                18
>   bDescriptorType         1
>   bcdUSB               2.10
>   bDeviceClass            0 (Defined at Interface level)
>   bDeviceSubClass         0
>   bDeviceProtocol       255
>   bMaxPacketSize0        64
>   idVendor           0x12d1 Huawei Technologies Co., Ltd.
>   idProduct          0x157d
>   bcdDevice            1.02
>   iManufacturer           1 HUAWEI_MOBILE
>   iProduct                2 HUAWEI_MOBILE
>   iSerial                 3 0123456789ABCDEF
>   bNumConfigurations      2
>   Configuration Descriptor:
>     bLength                 9
>     bDescriptorType         2
>     wTotalLength           32
>     bNumInterfaces          1
>     bConfigurationValue     1
>     iConfiguration          0
>     bmAttributes         0xa0
>       (Bus Powered)
>       Remote Wakeup
>     MaxPower                2mA
>     Interface Descriptor:
>       bLength                 9
>       bDescriptorType         4
>       bInterfaceNumber        0
>       bAlternateSetting       0
>       bNumEndpoints           2
>       bInterfaceClass         8 Mass Storage
>       bInterfaceSubClass      6 SCSI
>       bInterfaceProtocol     80 Bulk-Only
>       iInterface              4 Mass Storage
>       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               1
>   Configuration Descriptor:
>     bLength                 9
>     bDescriptorType         2
>     wTotalLength          118
>     bNumInterfaces          3
>     bConfigurationValue     2
>     iConfiguration          0
>     bmAttributes         0xa0
>       (Bus Powered)
>       Remote Wakeup
>     MaxPower                2mA
>     Interface Association:
>       bLength                 8
>       bDescriptorType        11
>       bFirstInterface         0
>       bInterfaceCount         2
>       bFunctionClass          2 Communications
>       bFunctionSubClass      14
>       bFunctionProtocol       0
>       iFunction               8 Huawei Mobile
>     Interface Descriptor:
>       bLength                 9
>       bDescriptorType         4
>       bInterfaceNumber        0
>       bAlternateSetting       0
>       bNumEndpoints           1
>       bInterfaceClass         2 Communications
>       bInterfaceSubClass     14
>       bInterfaceProtocol      0
>       iInterface              5 NCM Network Control Model
>       CDC Header:
>         bcdCDC               1.10
>       CDC MBIM:
>         bcdMBIMVersion       1.00
>         wMaxControlMessage   1024
>         bNumberFilters       32
>         bMaxFilterSize       128
>         wMaxSegmentSize      1500
>         bmNetworkCapabilities 0x20
>           8-byte ntb input size
>       UNRECOGNIZED CDC:  08 24 1c 00 01 10 dc 05
>       CDC Union:
>         bMasterInterface        0
>         bSlaveInterface         1
>       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               5
>     Interface Descriptor:
>       bLength                 9
>       bDescriptorType         4
>       bInterfaceNumber        1
>       bAlternateSetting       0
>       bNumEndpoints           0
>       bInterfaceClass        10 CDC Data
>       bInterfaceSubClass      0 Unused
>       bInterfaceProtocol      2
>       iInterface              6 CDC Network Data
>     Interface Descriptor:
>       bLength                 9
>       bDescriptorType         4
>       bInterfaceNumber        1
>       bAlternateSetting       1
>       bNumEndpoints           2
>       bInterfaceClass        10 CDC Data
>       bInterfaceSubClass      0 Unused
>       bInterfaceProtocol      2
>       iInterface              6 CDC Network Data
>       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           2
>       bInterfaceClass         8 Mass Storage
>       bInterfaceSubClass      6 SCSI
>       bInterfaceProtocol     80 Bulk-Only
>       iInterface              4 Mass Storage
>       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               1
> Binary Object Store Descriptor:
>   bLength                 5
>   bDescriptorType        15
>   wTotalLength           22
>   bNumDeviceCaps          2
>   USB 2.0 Extension Device Capability:
>     bLength                 7
>     bDescriptorType        16
>     bDevCapabilityType      2
>     bmAttributes   0x00000002
>       Link Power Management (LPM) Supported
>   SuperSpeed USB Device Capability:
>     bLength                10
>     bDescriptorType        16
>     bDevCapabilityType      3
>     bmAttributes         0x00
>     wSpeedsSupported   0x000f
>       Device can operate at Low Speed (1Mbps)
>       Device can operate at Full Speed (12Mbps)
>       Device can operate at High Speed (480Mbps)
>       Device can operate at SuperSpeed (5Gbps)
>     bFunctionalitySupport   1
>       Lowest fully-functional device speed is Full Speed (12Mbps)
>     bU1DevExitLat           1 micro seconds
>     bU2DevExitLat         500 micro seconds
> Device Status:     0x0001
>   Self Powered
>
>
>
> mbmcli
>
> [/dev/cdc-wdm0] Connection status:
>          Session ID: '0'
>    Activation state: 'deactivated'
>    Voice call state: 'none'
>             IP type: 'default'
>        Context type: 'none'
>       Network error: 'unknown'
>
> [/dev/cdc-wdm0] Registration status:
>             Network error: 'unknown'
>            Register state: 'home'
>             Register mode: 'automatic'
>    Available data classes: 'lte'
>    Current cellular class: 'gsm'
>               Provider ID: '24491'
>             Provider name: 'FI SONERA'
>              Roaming text: 'unknown'
>        Registration flags: 'packet-service-automatic-attach'
>
> # mbimcli -d /dev/cdc-wdm0 --query-subscriber-ready-status
> [/dev/cdc-wdm0] Subscriber ready status retrieved:
>          Ready state: 'initialized'
>        Subscriber ID: '24xxx'
>            SIM ICCID: '89xxx'
>           Ready info: 'unknown'
>    Telephone numbers: (0) 'unknown'
>
> [/dev/cdc-wdm0] Device capabilities retrieved:
>          Device type: 'removable'
>       Cellular class: 'gsm'
>          Voice class: 'no-voice'
>            Sim class: 'removable'
>           Data class: 'gprs, edge, umts, hsdpa, hsupa, lte, custom'
>             SMS caps: 'pdu-receive, pdu-send'
>            Ctrl caps: 'reg-manual'
>         Max sessions: '3'
>    Custom data class: 'HSPA+'
>            Device ID: '866133027347154'
>        Firmware info: '22.298.03.00.07'
>        Hardware info: 'CL1E3372SM'
>
> [/dev/cdc-wdm0] Packet statistics:
>       Octets (in): '0'
>      Packets (in): '0'
>     Discards (in): '0'
>       Errors (in): '0'
>      Octets (out): '0'
>     Packets (out): '0'
>    Discards (out): '0'
>      Errors (out): '0'
>
> [/dev/cdc-wdm0] Radio state retrieved:
>         Hardware Radio State: 'on'
>         Software Radio State: 'on'
>
> [/dev/cdc-wdm0] Successfully attached to packet service
>
> [/dev/cdc-wdm0] Packet service status:
>             Network error: 'unknown'
>      Packet service state: 'attached'
>    Available data classes: 'lte'
>              Uplink speed: '0 bps'
>            Downlink speed: '0 bps'
>
>
>
> # mbim-network /dev/cdc-wdm0 start
> Querying subscriber ready status 'mbimcli -d /dev/cdc-wdm0 --query-subscriber-ready-status --no-close'...
> [/dev/cdc-wdm0] Subscriber ready status retrieved: Ready state: 'initialized' Subscriber ID: '24491xxxxxxxxxx' SIM ICCID: '893xxxxxxxxxxxxxxxxx' Ready info: 'unknown' Telephone numbers: (0) 'unknown' [/dev/cdc-wdm0] Session not closed: TRID: '5'
> Saving state... (TRID: 5)
> Querying registration state 'mbimcli -d /dev/cdc-wdm0 --query-registration-state --no-open=5 --no-close'...
> [/dev/cdc-wdm0] Registration status: Network error: 'unknown' Register state: 'home' Register mode: 'automatic' Available data classes: 'lte' Current cellular class: 'gsm' Provider ID: '24491' Provider name: 'FI SONERA' Roaming text: 'unknown' Registration flags: 'packet-service-automatic-attach' [/dev/cdc-wdm0] Session not closed: TRID: '6'
> Saving state... (TRID: 6)
> Attaching to packet service with 'mbimcli -d /dev/cdc-wdm0 --attach-packet-service --no-open=6 --no-close'...
> Saving state... (TRID: 7)
> Starting network with 'mbimcli -d /dev/cdc-wdm0 --connect= --no-open=7 --no-close'...
> error: couldn't parse input string, missing arguments

You didn't configure APN to use in mbim-network. You need to setup a
/etc/mbim-network.conf file with the APN to use.

> Network start failed
> [/dev/cdc-wdm0] Session not closed: TRID: '7'
> Saving state... (TRID: 7)
>
> # mbim-network /dev/cdc-wdm0 status
> Loading previous state...
>     Previous Transaction ID: 7
> Getting status with 'mbimcli -d /dev/cdc-wdm0 --query-connection-state --no-close --no-open=7'...
> error: operation failed: Transaction timed out
> Saving state... (TRID: 8)
> error: couldn't get connection status
>

This is likely an error due to the leftover logic in mbim-network.

>
> # mmcli -m 1 --simple-status
>
> /org/freedesktop/ModemManager1/Modem/1
>   -------------------------
>   Status |          state: 'connected'
>          | signal quality: '80' (recent)
>          |          bands: 'unknown'
>          |    access tech: 'lte'
>   -------------------------
>   3GPP   |   registration: 'home'
>          |  operator code: '24491'
>          |  operator name: 'FI SONERA'
>          |   subscription: 'unknown'
>
>

That status looks ok in ModemManager.


-- 
Aleksander
https://aleksander.es
--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux