3G modem suuport
#1
I want to use Huawei modem K3765 HSPA.

Upon insertion to USB I have it recognized but no /dev/ttyUSB* is created

Code:
root@pine64:~# lsusb
Bus 004 Device 002: ID 17ef:602b Lenovo
Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 001 Device 008: ID 12d1:1465 Huawei Technologies Co., Ltd. K3765 HSPA
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub


[20325.358512] ehci_irq: highspeed device connect
[20325.585536] usb 1-1: new high-speed USB device number 8 using sunxi-ehci
[20325.746100] cdc_ether 1-1:1.1 wwan0: register 'cdc_ether' at usb-sunxi-ehci-1, Mobile Broadband Network Device, 02:50:f3:00:00:00
[20325.761987] usb-storage 1-1:1.5: USB Mass Storage device detected
[20325.769177] scsi7 : usb-storage 1-1:1.5
[20325.776990] usb-storage 1-1:1.6: USB Mass Storage device detected
[20325.784143] scsi8 : usb-storage 1-1:1.6
[20326.757984] scsi 7:0:0:0: CD-ROM            Vodafone CD ROM (Huawei)  2.31 PQ: 0 ANSI: 2
[20326.787387] scsi 8:0:0:0: Direct-Access     Vodafone Storage (Huawei) 2.31 PQ: 0 ANSI: 2
[20326.800755] sr0: scsi-1 drive
[20326.806276] sr 7:0:0:0: Attached scsi CD-ROM sr0
[20326.810732] sd 8:0:0:0: [sda] Attached SCSI removable disk


root@pine64:~# lsmod
Module                  Size  Used by                                                                                                     
cdc_ether              12652  0                                                                                                           
usbnet                 22648  1 cdc_ether                                                                                                 
bnep                   17511  2
bluetooth             195943  5 bnep
vfe_v4l2              747618  0
ir_lirc_codec          12756  0
lirc_dev               17032  1 ir_lirc_codec
ir_sanyo_decoder       12491  0
ir_sony_decoder        12489  0
ir_rc6_decoder         12520  0
ir_rc5_decoder         12487  0
ir_nec_decoder         12487  0
ir_mce_kbd_decoder     12628  0
ir_jvc_decoder         12487  0
vfe_io                 34085  1 vfe_v4l2
sunxi_ir_rx            12902  0
videobuf2_dma_contig    17668  1 vfe_v4l2
videobuf2_memops       12546  1 videobuf2_dma_contig
videobuf2_core         30952  1 vfe_v4l2
cedar_ve               17368  0
ss                     33083  0
mali                  199851  0
8723bs               1365012  0
cfg80211              374207  1 8723bs


root@pine64:~# lsusb -vd 12d1:1465

Bus 001 Device 008: ID 12d1:1465 Huawei Technologies Co., Ltd. K3765 HSPA
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               2.00
  bDeviceClass          239 Miscellaneous Device
  bDeviceSubClass         2 ?
  bDeviceProtocol         1 Interface Association
  bMaxPacketSize0        64
  idVendor           0x12d1 Huawei Technologies Co., Ltd.
  idProduct          0x1465 K3765 HSPA
  bcdDevice            0.00
  iManufacturer           4 HUAWEI Technology
  iProduct                3 HUAWEI Mobile
  iSerial                 0
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength          201
    bNumInterfaces          7
    bConfigurationValue     1
    iConfiguration          2 Huawei   Configuration
    bmAttributes         0xe0
      Self Powered
      Remote Wakeup
    MaxPower              500mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           3
      bInterfaceClass       255 Vendor Specific Class
      bInterfaceSubClass    255 Vendor Specific Subclass
      bInterfaceProtocol    255 Vendor Specific Protocol
      iInterface              0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0040  1x 64 bytes
        bInterval               5
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x82  EP 2 IN
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0200  1x 512 bytes
        bInterval              32
      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              32
    Interface Association:
      bLength                 8
      bDescriptorType        11
      bFirstInterface         1
      bInterfaceCount         2
      bFunctionClass          2 Communications
      bFunctionSubClass       0
      bFunctionProtocol       0
      iFunction               0
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        1
      bAlternateSetting       0
      bNumEndpoints           1
      bInterfaceClass         2 Communications
      bInterfaceSubClass      6 Ethernet Networking
      bInterfaceProtocol    255
      iInterface              0
      CDC Header:
        bcdCDC               1.10
      CDC Ethernet:
        iMacAddress                      1 0250f3000000
        bmEthernetStatistics    0x00000000
        wMaxSegmentSize               1536
        wNumberMCFilters            0x0001
        bNumberPowerFilters              0
      CDC Union:
        bMasterInterface        1
        bSlaveInterface         2
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x83  EP 3 IN
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0040  1x 64 bytes
        bInterval               5
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        2
      bAlternateSetting       0
      bNumEndpoints           2
      bInterfaceClass        10 CDC Data
      bInterfaceSubClass      0 Unused
      bInterfaceProtocol      0
      iInterface              0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x84  EP 4 IN
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0200  1x 512 bytes
        bInterval              32
      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              32
    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              32
      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              32
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        4
      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     0x86  EP 6 IN
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0200  1x 512 bytes
        bInterval              32
      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              32
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        5
      bAlternateSetting       0
      bNumEndpoints           2
      bInterfaceClass         8 Mass Storage
      bInterfaceSubClass      6 SCSI
      bInterfaceProtocol     80 Bulk-Only
      iInterface              0
      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        6
      bAlternateSetting       0
      bNumEndpoints           2
      bInterfaceClass         8 Mass Storage
      bInterfaceSubClass      6 SCSI
      bInterfaceProtocol     80 Bulk-Only
      iInterface              0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x06  EP 6 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     0x88  EP 8 IN
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0200  1x 512 bytes
        bInterval               0
Device Qualifier (for other device speed):
  bLength                10
  bDescriptorType         6
  bcdUSB               2.00
  bDeviceClass          239 Miscellaneous Device
  bDeviceSubClass         2 ?
  bDeviceProtocol         1 Interface Association
  bMaxPacketSize0        64
  bNumConfigurations      1
Device Status:     0x0001
  Self Powered



Any ideas?

Thank you
#2
That looks ok to me, now you need to use either normal Debian/Ubuntu config files to setup WAN access or user NetworkManager or some other GUI tool to do the same...

First thing seems to be to use usb-mode-switch to get it out of the Windows installation mode where it emulates mass storage / a CD-ROM drive ...

http://askubuntu.com/questions/77230/how...der-ubuntu

if you miss kernel modules after that post here again
Come have a chat in the Pine IRC channel >>
#3
(03-04-2017, 10:04 AM)xalius Wrote: if you miss kernel modules after that post here again

I miss the huawei_cdc_ncm module. Does not seem to be present in 3.10.
#4
After digging for  a while what I understand stick got switched to modem mode

I have installed usb_modeswitch usb_modeswitch-data and modemanager

initial lsusb gives

Code:
Bus 001 Device 006: ID 12d1:1520 Huawei Technologies Co., Ltd. K3765 HSPA
after usb_modeswitch
Bus 001 Device 007: ID 12d1:1465 Huawei Technologies Co., Ltd. K3765 HSPA


But system does not know what to do with the device. From the syslog...

Mar  6 05:56:00 localhost NetworkManager[674]: <info>  [1488779760.7139] devices added (path: /sys/devices/soc.0/1c1a000.ehci0-controller/usb1/1-1/1-1:1.1/net/wwan0, iface: wwan0)
Mar  6 05:56:00 localhost NetworkManager[674]: <info>  [1488779760.7140] device added (path: /sys/devices/soc.0/1c1a000.ehci0-controller/usb1/1-1/1-1:1.1/net/wwan0, iface: wwan0): no ifupdown configuration found.
Mar  6 05:56:03 localhost ModemManager[637]: <info>  Couldn't find support for device at '/sys/devices/soc.0/1c1a000.ehci0-controller/usb1/1-1': not supported by any plugin

After reading https://wiki.debian.org/Modem/3G
I tried to
modprobe usbserial vendor=0x12d1 product=0x1465

but no ttyUSB* are created.

How I can check whether USB-modems are supported by the kernel?




to MarkHaysHarris777
Thank you for pointing how to make proper posts!
#5
hi, I edited your posts to include code blocks ... so that you can see what they look like;  anytime you want to list code or long lists, or logs,  or feedbacks  it is helpful for reading to place code blocks around  the list.  

The code block can be manually coded, or you can use the code icon on the full editor.
marcushh777    Cool

please join us for a chat @  irc.pine64.xyz:6667   or ssl  irc.pine64.xyz:6697

( I regret that I am not able to respond to personal messages;  let's meet on irc! )
#6
Your output looks ok to me, it created the wwan0 network interface. But you need also the ttyUSBxxx or ttyACMxxx serial ports to configure/control the modem. I read a bit about your stick and it seems there is a way via the 'option' kernel module to force the serial driver to recognize the PID/VID.

Other people seem to have had luck with adding UDEV rules like 

Code:
SUBSYSTEMS=="usb", ATTRS{modalias}=="usb:v12D1p1465*", KERNEL=="ttyUSB*", ATTRS{bInterfaceNumber}=="00", ATTRS{bInterfaceProtocol}=="ff", NAME="ttyUSB_utps_modem"

SUBSYSTEMS=="usb", ATTRS{modalias}=="usb:v12D1p1465*", KERNEL=="ttyUSB*", ATTRS{bInterfaceNumber}=="03", ATTRS{bInterfaceProtocol}=="ff", NAME="ttyUSB_utps_diag"

SUBSYSTEMS=="usb", ATTRS{modalias}=="usb:v12D1p1465*", KERNEL=="ttyUSB*", ATTRS{bInterfaceNumber}=="04", ATTRS{bInterfaceProtocol}=="ff", NAME="ttyUSB_utps_pcui"
Come have a chat in the Pine IRC channel >>
#7
I added these lines into something like (/lib/udev/rules.d/40-usb_modem...) do not remmeber right now. But still ttyUSB does not pop up.

How can i check whether
CONFIG_PPP
CONFIG_PPP_FILTER
CONFIG_PPP_ASYNC
CONFIG_USB_SERIAL
CONFIG_USB_SERIAL_GENERIC
CONFIG_USB_SERIAL_OPTION

options were compiled into the kernel?
#8
Hi Dikov, you can check that in various ways, depending on how your system is configured, you can see if there is a current copy of you kernel config in /boot/ or if there is the special file /proc/config.gz . Also if you have the source for your kernel, you can just check with which options it was compiled in the repo:

https://github.com/longsleep/linux-pine6..._defconfig
Come have a chat in the Pine IRC channel >>


Forum Jump:


Users browsing this thread: 1 Guest(s)