USB LTEモデム「Brevi E3372-325」が動作しない

USB LTEモデム「Brevi E3372-325」が動作しない

新しいUSB LTEモデムに問題がありますブロビーE3372-325

Linuxでは動作しません。 USB ポートに接続すると、モデムは次のように識別されます。

# dmesg
...
[ 6731.401923] usb 1-3.4.4: new high-speed USB device number 22 using xhci_hcd
[ 6731.503252] usb 1-3.4.4: New USB device found, idVendor=3566, idProduct=2001, bcdDevice=ff.ff
[ 6731.503261] usb 1-3.4.4: New USB device strings: Mfr=2, Product=3, SerialNumber=4
[ 6731.503265] usb 1-3.4.4: Product: Mobile
[ 6731.503268] usb 1-3.4.4: Manufacturer: Mobile
[ 6731.503271] usb 1-3.4.4: SerialNumber: 123456789ABCD
[ 6731.505527] usb-storage 1-3.4.4:1.0: USB Mass Storage device detected
[ 6731.505830] scsi host1: usb-storage 1-3.4.4:1.0
[ 6732.534864] scsi 1:0:0:0: CD-ROM            Linux    File-Stor Gadget 0310 PQ: 0 ANSI: 2
[ 6732.535947] sr 1:0:0:0: Power-on or device reset occurred
[ 6732.536717] sr 1:0:0:0: [sr0] scsi3-mmc drive: 0x/0x caddy
[ 6732.540429] sr 1:0:0:0: Attached scsi CD-ROM sr0
[ 6732.540983] sr 1:0:0:0: Attached scsi generic sg1 type 5
[ 6732.803382] ISO 9660 Extensions: RRIP_1991A

# lsusb -vvv
...
Bus 001 Device 028: ID 3566:2001 Mobile Mobile
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               2.10
  bDeviceClass            0 
  bDeviceSubClass         0 
  bDeviceProtocol         0 
  bMaxPacketSize0        64
  idVendor           0x3566 
  idProduct          0x2001 
  bcdDevice           ff.ff
  iManufacturer           2 Mobile
  iProduct                3 Mobile
  iSerial                 4 123456789ABCD
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength       0x0020
    bNumInterfaces          1
    bConfigurationValue     1
    iConfiguration          0 
    bmAttributes         0xe0
      Self 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              1 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
Binary Object Store Descriptor:
  bLength                 5
  bDescriptorType        15
  wTotalLength       0x0016
  bNumDeviceCaps          2
  USB 2.0 Extension Device Capability:
    bLength                 7
    bDescriptorType        16
    bDevCapabilityType      2
    bmAttributes   0x00000000
      (Missing must-be-set LPM bit!)
  SuperSpeed USB Device Capability:
    bLength                10
    bDescriptorType        16
    bDevCapabilityType      3
    bmAttributes         0x00
    wSpeedsSupported   0x0004
      Device can operate at High Speed (480Mbps)
    bFunctionalitySupport   4
      Lowest fully-functional device speed is at an unknown speed!
    bU1DevExitLat           1 micro seconds
    bU2DevExitLat         500 micro seconds
Device Status:     0x0000
  (Bus Powered)

これで「モデム」に切り替えますusb_modeswitch -v 3566 -p 2001 -X。 ::

# dmesg
...
[ 6971.308148] usb 1-3.4.4: USB disconnect, device number 22
[ 6971.544052] usb 1-3.4.4: new high-speed USB device number 23 using xhci_hcd
[ 6971.645772] usb 1-3.4.4: New USB device found, idVendor=3566, idProduct=2001, bcdDevice=ff.ff
[ 6971.645787] usb 1-3.4.4: New USB device strings: Mfr=2, Product=3, SerialNumber=4
[ 6971.645794] usb 1-3.4.4: Product: Mobile
[ 6971.645799] usb 1-3.4.4: Manufacturer: Mobile
[ 6971.645804] usb 1-3.4.4: SerialNumber: 123456789ABCD
[ 6971.647121] usb 1-3.4.4: Interface #0 referenced by multiple IADs
[ 6971.647643] usb 1-3.4.4: Interface #1 referenced by multiple IADs
[ 6971.678702] cdc_ncm 1-3.4.4:1.5: MAC-Address: c2:ab:11:ee:2f:15
[ 6971.679449] cdc_ncm 1-3.4.4:1.5 usb0: register 'cdc_ncm' at usb-0000:00:14.0-3.4.4, CDC NCM, c2:ab:11:ee:2f:15
[ 6971.743416] cdc_ncm 1-3.4.4:1.5 enxc2ab11ee2f15: renamed from usb0

# ip a s enxc2ab11ee2f15
14: enxc2ab11ee2f15: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc fq_codel state DOWN group default qlen 1000
    link/ether c2:ab:11:ee:2f:15 brd ff:ff:ff:ff:ff:ff

# mmcli -L
No modems were found

# lsusb -vvv
Bus 001 Device 029: ID 3566:2001 Mobile Mobile
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               2.10
  bDeviceClass            0 
  bDeviceSubClass         0 
  bDeviceProtocol         0 
  bMaxPacketSize0        64
  idVendor           0x3566 
  idProduct          0x2001 
  bcdDevice           ff.ff
  iManufacturer           2 Mobile
  iProduct                3 Mobile
  iSerial                 4 123456789ABCD
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength       0x00f9
    bNumInterfaces          7
    bConfigurationValue     1
    iConfiguration          0 
    bmAttributes         0xe0
      Self Powered
      Remote Wakeup
    MaxPower                2mA
    Interface Association:
      bLength                 8
      bDescriptorType        11
      bFirstInterface         0
      bInterfaceCount         2
      bFunctionClass          2 Communications
      bFunctionSubClass       2 Abstract (modem)
      bFunctionProtocol       1 AT-commands (v.25ter)
      iFunction              10 CDC Serial
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           1
      bInterfaceClass       255 Vendor Specific Class
      bInterfaceSubClass    255 Vendor Specific Subclass
      bInterfaceProtocol    255 Vendor Specific Protocol
      iInterface              8 CDC Abstract Control Model (ACM)
      ** UNRECOGNIZED:  05 24 00 10 01
      ** UNRECOGNIZED:  05 24 01 00 01
      ** UNRECOGNIZED:  04 24 02 02
      ** UNRECOGNIZED:  05 24 06 00 01
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x83  EP 3 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        1
      bAlternateSetting       0
      bNumEndpoints           2
      bInterfaceClass       255 Vendor Specific Class
      bInterfaceSubClass    255 Vendor Specific Subclass
      bInterfaceProtocol    255 Vendor Specific Protocol
      iInterface              9 CDC ACM Data
      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               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        2
      bAlternateSetting       0
      bNumEndpoints           2
      bInterfaceClass       255 Vendor Specific Class
      bInterfaceSubClass    255 Vendor Specific Subclass
      bInterfaceProtocol    255 Vendor Specific Protocol
      iInterface             11 Marvell DIAG
      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               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 Association:
      bLength                 8
      bDescriptorType        11
      bFirstInterface         3
      bInterfaceCount         2
      bFunctionClass          2 Communications
      bFunctionSubClass       2 Abstract (modem)
      bFunctionProtocol       1 AT-commands (v.25ter)
      iFunction              14 CDC Serial
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        3
      bAlternateSetting       0
      bNumEndpoints           1
      bInterfaceClass       255 Vendor Specific Class
      bInterfaceSubClass    255 Vendor Specific Subclass
      bInterfaceProtocol    255 Vendor Specific Protocol
      iInterface             12 CDC Abstract Control Model (ACM)
      ** UNRECOGNIZED:  05 24 00 10 01
      ** UNRECOGNIZED:  05 24 01 00 04
      ** UNRECOGNIZED:  04 24 02 02
      ** UNRECOGNIZED:  05 24 06 03 04
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x86  EP 6 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        4
      bAlternateSetting       0
      bNumEndpoints           2
      bInterfaceClass       255 Vendor Specific Class
      bInterfaceSubClass    255 Vendor Specific Subclass
      bInterfaceProtocol    255 Vendor Specific Protocol
      iInterface             13 CDC ACM Data
      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     0x04  EP 4 OUT
        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         0
      bInterfaceCount         2
      bFunctionClass          2 Communications
      bFunctionSubClass      13 
      bFunctionProtocol       0 
      iFunction               0 
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        5
      bAlternateSetting       0
      bNumEndpoints           1
      bInterfaceClass         2 Communications
      bInterfaceSubClass     13 
      bInterfaceProtocol      0 
      iInterface              0 
      CDC Header:
        bcdCDC               1.10
      CDC Union:
        bMasterInterface        5
        bSlaveInterface         6 
      CDC Ethernet:
        iMacAddress                     17 FE1EA1E4D9D7

        bmEthernetStatistics    0x00000000
        wMaxSegmentSize               1514
        wNumberMCFilters            0x0000
        bNumberPowerFilters              0
      CDC NCM:
        bcdNcmVersion        1.00
        bmNetworkCapabilities 0x01
          packet filter
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x88  EP 8 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        6
      bAlternateSetting       0
      bNumEndpoints           0
      bInterfaceClass        10 CDC Data
      bInterfaceSubClass      0 
      bInterfaceProtocol      1 
      iInterface              0 
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        6
      bAlternateSetting       1
      bNumEndpoints           2
      bInterfaceClass        10 CDC Data
      bInterfaceSubClass      0 
      bInterfaceProtocol      1 
      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
Binary Object Store Descriptor:
  bLength                 5
  bDescriptorType        15
  wTotalLength       0x0016
  bNumDeviceCaps          2
  USB 2.0 Extension Device Capability:
    bLength                 7
    bDescriptorType        16
    bDevCapabilityType      2
    bmAttributes   0x00000000
      (Missing must-be-set LPM bit!)
  SuperSpeed USB Device Capability:
    bLength                10
    bDescriptorType        16
    bDevCapabilityType      3
    bmAttributes         0x00
    wSpeedsSupported   0x0004
      Device can operate at High Speed (480Mbps)
    bFunctionalitySupport   4
      Lowest fully-functional device speed is at an unknown speed!
    bU1DevExitLat           1 micro seconds
    bU2DevExitLat         500 micro seconds
Device Status:     0x0000
  (Bus Powered)

しかし、/devインターフェイスはありません(/dev/cdc*/に似ています/dev/ttyUSB*)。

カーネル5.15を含むUbuntu 22.04およびカーネル5.19を含むUbuntu 23.04(毎日のビルド)でテストされました。成功しませんでした。

私は試しましたがdhclient enxc2ab11ee2f15成功ip link enxc2ab11ee2f15 upしませんでした。インターフェイスへのqmicli/mbimcli欠落している/dev/cdc*インターフェイス。

Windows 10 PCでは、自動的にDHCPに接続してIPを取得します。 RNDISドライバを使用してください。

助けてください?モデムを正しいモードに切り替えるには?

答え1

動作するソリューションを見つけました。https://www.draisberghof.de/usb_modeswitch/bb/viewtopic.php?f=3&t=3043&p=20026#p20054

/etc/udev/rules.d/40-huawei.rules:

# This is part of USB_ModeSwitch version 1.x.x
#
ACTION!="add", GOTO="modeswitch_rules_end"
SUBSYSTEM!="usb", GOTO="modeswitch_rules_end"

# All known install partitions are on interface 0
ATTRS{bInterfaceNumber}!="00", GOTO="modeswitch_rules_end"

# only storage class devices are handled; negative
# filtering here would exclude some quirky devices
ATTRS{bDeviceClass}=="e0", GOTO="modeswitch_rules_begin"
ATTRS{bInterfaceClass}=="e0", GOTO="modeswitch_rules_begin"
GOTO="modeswitch_rules_end"

LABEL="modeswitch_rules_begin"
# Huawei E3372-325
ATTRS{idVendor}=="3566", ATTRS{idProduct}=="2001", RUN+="/sbin/usb_modeswitch -v 3566 -p 2001 -W -R -w 400"
ATTRS{idVendor}=="3566", ATTRS{idProduct}=="2001", RUN+="/sbin/usb_modeswitch -v 3566 -p 2001 -W -R"

LABEL="modeswitch_rules_end"

答え2

同じデバイス、同じ設定、同じ問題。

ところで今日もう少し試してみましたが本当に効果がありました。デフォルトでは、ステップは次のとおりです。

  • Ubuntu 22.04には最新のアップデートがあります
  • 起動してデスクトップモードで実行した後
  • スティックを挿入してください。
  • 起動を大容量保存モードに設定
  • USBシリアルポートの取り付けmodprobe usbserial vendor=0x3566 product=0x2001
  • それからsudo usb_modeswitch -v 3566 -p 2001 -X
  • 下部を見ると、dmesgcdc_ncmドライバが登録されていることがわかります。また、モデム管理者がデバイスを表示できるようになりました。これで、設定ウィンドウにモバイルネットワークオプションが表示されます。正しい値を入力して接続してください(下記参照)

モバイルネットワーク3372-325

必要に応じて、システムからより多くの情報を取得しようとすることができます。このステップでは、モバイルネットワークオプションを使用する手動ステップを避けるために自動化します。

この過程で ppp0 リンクが生成されるようです。だからこれで人生を生きますが、最高の設定ではありません。 IMHO

答え3

私の場合、これを機能させるには3つのことを行う必要がありました。

  1. SIMカードからPINを削除する
  2. メッセージのいずれかで説明されているように使用しmodprobe optionて作成します。/sys/bus/usb-serial/drivers/option1/new_idhttps://www.draisberghof.de/usb_modeswitch/bb/viewtopic.php?f=3&t=3043&p=20026#p20054
  3. 使用wvdial(からhttps://blog.tanatos.org/posts/huawei_e3372h-325_brovi_with_linux_stickmode/)

udev私のラズベリーパイには常にドングルが接続されているので、ドングルはありません。数分前に動作し、スクリプトは改善されますが、これまでは動作します。wvdial動作が停止すると再起動します。

#!/bin/bash

set -e
set -u
set -o pipefail

modprobe option

sleep 2

echo  3566 2001 ff > /sys/bus/usb-serial/drivers/option1/new_id

usb_modeswitch -v 3566 -p 2001 -W -R || true

sleep 2

usb_modeswitch -v 3566 -p 2001 -W -X || true

sleep 2

wvdial &

while /bin/true ; do
    sleep 10
    jobs %1 || { echo "wvdial is not running. exiting now." ; exit 1 ; }
    echo "still running :)"
done

これが本当に必要かどうかはわかりませんsleep

答え4

動作させるには少し時間がかかりましたが、結局成功しました。私の設定は次のとおりです。

Linux Mint 20.3、Brovi USBスティックモデルE3372-325

  1. 編集するmodules.conf
    sudo nano /etc/modules-load.d/modules.conf
    
    次に、ファイルの末尾に以下を追加します。
    usbserial
    
  2. インストールするusb-modeswitch
    sudo apt install usb-modeswitch
    
  3. 構成usb-modeswitch
    sudo nano /etc/usb_modeswitch.conf
    
    そして、次のコメントを解除してください。
    DisableSwitching=0
    
    それから
    sudo nano /etc/usb_modeswitch.d/3566:2001
    
    そして、以下を挿入してください:
    TargetVendor=0x3566
    TargetProduct=0x2001
    WaitBefore=4
    TargetClass=0xff
    HuaweiAltMode=1
    
  4. 編集するusbserial.conf
    sudo nano /etc/modprobe.d/usbserial.conf
    
    そして、以下を挿入してください:
    options usbserial vendor=0x3566 product=0x2001
    
  5. UDevルールの編集
    sudo nano /etc/udev/rules.d/40-brovi_usb_lte.rules
    
    そして、以下を挿入してください:
    ACTION!="add|remove", GOTO="modeswitch_rules_end"
    SUBSYSTEM!="usb", GOTO="modeswitch_rules_end"
    GOTO="modeswitch_rules_begin"
    LABEL="modeswitch_rules_begin"
    ACTION=="add", ATTRS{idVendor}=="3566", ATTRS{idProduct}=="2001", ATTR{bInterfaceNumber}=="00", ATTR{bInterfaceClass}=="08", RUN+="usb_modeswitch '%k'"
    ACTION=="remove", ATTRS{idVendor}=="3566", ATTRS{idProduct}=="2001", RUN+="/usr/sbin/modprobe -r option"
    LABEL="modeswitch_rules_end"
    

最後に、通常どおり再起動することをお勧めします。

いくつかの説明:

  1. 必須の「シリアル」モジュールは、起動時にロードされるように構成する必要があります。これはオプションであるため、カーネルでコンパイルされないためです。走る

    sudo modprobe serial
    

    次に、ロードされたことを確認します。

    lsmod | grep serial
    
  2. 最後に実行:

    sudo udevadm control --reload-rules && udevadm trigger
    

    最新の構成をロードします。

  3. スティックを挿入すると、モジュール「オプション」が自動的にロードされるはずです。問題は、杖を抜いてもまだロード中で、再接続するともう機能しないということです。だから私はディレクティブを使います。

    ACTION=="remove", ATTRS{idVendor}=="3566", ATTRS{idProduct}=="2001", RUN+="/usr/sbin/modprobe -r option"
    

    udevルールからスティックを引くたびに、モジュールがカーネルから削除されるようにします。

  4. lsusb -tを使用して、各インターフェイスにロードされたモジュール/ドライバ(シリアル、オプションなど)があることを確認する必要があります。

  5. また、携帯電話会社に合ったモバイルブロードバンドネットワーク接続を提供する必要があります。 ModemManagerをインストールし、モデムZOWEE Technologyなどがリストされていることを確認してください。

  6. 最後に、私が所有しているHuawei E8372h-320は、いかなる構成もなく完全にプラグアンドプレイでき、ファームウェア7.11を使用するMikrotikルーター用のUSBバックアップルーターとしても使用できます。

関連情報