Page 1 of 4 123 ... LastLast
Results 1 to 15 of 58

Thread: LTE роутер Yota Quanta (Quanta 1QDLZZZ0ST2/1K3) + Asus WL-500gP

  1. #1

    Thumbs up LTE роутер Yota Quanta (Quanta 1QDLZZZ0ST2/1K3) + Asus WL-500gP

    Господа, а нет ли мыслей как подружить wl500gpV2 (прошивка 4051) с LTE-роутером от Yota?

    Есть такая необходимость (раздать интернет на большой дом), а покупать модем пока нет ясности,
    что эта штука не заработает не хочется. На lte-роутере стоит прошивка 20120301-QDL_4034-YOTA-1.

    При подсоединения модема к компьютеру отключается wi-fi и интернет идет по USB только на компьютер.
    При подсоединении к роутеру - ноль реакции. Подскажите, есть ли возможность заставить эту связку работать.

    http://forum.yotatester.ru/showthread.php?t=4636 http://www.besprovod.ru/topic/1270-v...outera-quanta/
    Last edited by Omega; 15-04-2013 at 21:25. Reason: fixed

  2. #2
    Прикладываю логи роутера при подключении модема.
    Code:
    Jan  1 04:00:02 syslogd started: BusyBox v1.19.3
    Jan  1 04:00:02 kernel: klogd started: BusyBox v1.19.3 (2012-04-02 21:13:42 MSK)
    Jan  1 04:00:02 kernel: Linux version 2.6.22.19 (root@localhost) (gcc version 4.5.3 (GCC) ) #2 Mon Apr 2 21:59:34 MSK 2012
    Jan  1 04:00:02 kernel: CPU revision is: 00029029
    Jan  1 04:00:02 kernel: Setting the PFC to its default value
    Jan  1 04:00:02 kernel: Determined physical RAM map:
    Jan  1 04:00:02 kernel:  memory: 02000000 @ 00000000 (usable)
    Jan  1 04:00:03 dnsmasq[200]: started, version  cachesize 512
    Jan  1 04:00:03 dnsmasq[200]: compile time options: IPv6 GNU-getopt no-RTC no-DBus no-i18n no-IDN DHCP no-DHCPv6 no-scripts no-TFTP no-conntrack
    Jan  1 04:00:03 dnsmasq-dhcp[200]: DHCP, IP range 192.168.1.101 -- 192.168.1.254, lease time 1d
    Jan  1 04:00:03 dnsmasq[200]: read /etc/hosts - 2 addresses
    Jan  1 04:00:03 miniupnpd[201]: version 1.6 started
    Jan  1 04:00:03 miniupnpd[201]: HTTP listening on port 50090
    Jan  1 04:00:03 miniupnpd[201]: Listening for NAT-PMP traffic on port 5351
    Jan  1 04:00:04 kernel: usbcore: registered new interface driver usbfs
    Jan  1 04:00:04 kernel: usbcore: registered new interface driver hub
    Jan  1 04:00:04 kernel: usbcore: registered new device driver usb
    Jan  1 04:00:04 kernel: ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
    Jan  1 04:00:04 kernel: ehci_hcd 0000:00:03.1: EHCI Host Controller
    Jan  1 04:00:04 kernel: ehci_hcd 0000:00:03.1: new USB bus registered, assigned bus number 1
    Jan  1 04:00:04 kernel: ehci_hcd 0000:00:03.1: irq 6, io mem 0x18003800
    Jan  1 04:00:04 kernel: ehci_hcd 0000:00:03.1: USB 0.0 started, EHCI 1.00
    Jan  1 04:00:04 kernel: usb usb1: configuration #1 chosen from 1 choice
    Jan  1 04:00:04 kernel: hub 1-0:1.0: USB hub found
    Jan  1 04:00:04 kernel: hub 1-0:1.0: 2 ports detected
    Jan  1 04:00:04 kernel: ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver
    Jan  1 04:00:05 kernel: ohci_hcd 0000:00:03.0: OHCI Host Controller
    Jan  1 04:00:05 kernel: ohci_hcd 0000:00:03.0: new USB bus registered, assigned bus number 2
    Jan  1 04:00:05 kernel: ohci_hcd 0000:00:03.0: irq 6, io mem 0x18003000
    Jan  1 04:00:05 kernel: usb 1-1: new high speed USB device using ehci_hcd and address 2
    Jan  1 04:00:05 kernel: usb usb2: configuration #1 chosen from 1 choice
    Jan  1 04:00:05 kernel: hub 2-0:1.0: USB hub found
    Jan  1 04:00:05 kernel: hub 2-0:1.0: 2 ports detected
    Jan  1 04:00:05 kernel: usb 1-1: configuration #1 chosen from 1 choice
    Jan  1 04:00:05 kernel: hub 1-1:1.0: USB hub found
    Jan  1 04:00:05 kernel: hub 1-1:1.0: 2 ports detected
    Jan  1 04:00:05 kernel: usbcore: registered new interface driver usblp
    Jan  1 04:00:06 kernel: SCSI subsystem initialized
    Jan  1 04:00:06 kernel: Initializing USB Mass Storage driver...
    Jan  1 04:00:06 kernel: usbcore: registered new interface driver usb-storage
    Jan  1 04:00:06 kernel: USB Mass Storage support registered.
    Jan  1 04:00:06 kernel: NTFS driver 2.1.30 [Flags: R/O MODULE].
    Jan  1 04:00:07 kernel: usbcore: registered new interface driver cdc_ether
    Jan  1 04:00:07 kernel: usbcore: registered new interface driver rndis_host
    Jan  1 04:00:08 WAN port: cable disconnected
    Jan  1 04:00:09 kernel: usb 1-1.1: new high speed USB device using ehci_hcd and address 3
    Jan  1 04:00:09 kernel: usb 1-1.1: configuration #1 chosen from 1 choice
    Jan  1 04:00:10 kernel: scsi0 : SCSI emulation for USB Mass Storage devices
    Jan  1 04:00:12 kernel: scsi 0:0:0:0: CD-ROM            QDL      Mass storage     2.31 PQ: 0 ANSI: 2
    Jan  1 04:00:18 dnsmasq-dhcp[200]: DHCPREQUEST(br0) 192.168.1.135 68:a8:6d:44:4e:6a 
    Jan  1 04:00:18 dnsmasq-dhcp[200]: DHCPACK(br0) 192.168.1.135 68:a8:6d:44:4e:6a 
    Jan  1 04:00:19 miniupnpd[201]: Failed to get IP for interface vlan1
    Jan  1 04:00:19 miniupnpd[201]: Failed to get ip address for interface vlan1
    Jan  1 04:00:19 miniupnpd[201]: chain UPNP not found
    Jan  1 04:00:19 miniupnpd[201]: addnatrule() : chain UPNP not found
    Jan  1 04:00:19 miniupnpd[201]: Failed to add NAT-PMP 4506 udp->192.168.1.135:4500 'NAT-PMP 4506 udp'
    Jan  1 04:00:19 miniupnpd[201]: chain UPNP not found
    Jan  1 04:00:19 miniupnpd[201]: addnatrule() : chain UPNP not found
    Jan  1 04:00:19 miniupnpd[201]: Failed to add NAT-PMP 5358 udp->192.168.1.135:5353 'NAT-PMP 5358 udp'
    Jan  1 04:00:19 miniupnpd[201]: Failed to get IP for interface vlan1
    Jan  1 04:00:20 dnsmasq-dhcp[200]: DHCPREQUEST(br0) 192.168.1.135 68:a8:6d:44:4e:6a 
    Jan  1 04:00:20 dnsmasq-dhcp[200]: DHCPACK(br0) 192.168.1.135 68:a8:6d:44:4e:6a 
    Jan  1 04:00:20 miniupnpd[201]: Failed to get IP for interface vlan1
    Jan  1 04:00:22 miniupnpd[201]: Failed to get IP for interface vlan1
    Jan  1 04:00:26 miniupnpd[201]: Failed to get IP for interface vlan1
    Last edited by Omega; 13-06-2012 at 14:34. Reason: fixed

  3. #3
    Quote Originally Posted by gleb_antonov View Post
    Господа, а нет ли мыслей как подружить wl500gpV2 (прошивка 4051) с LTE-роутером от Yota? Есть такая необходимость (раздать интернет на большой дом), а покупать модем пока нет ясности, что эта штука не заработает не хочется.

    На lte-роутере стоит прошивка 20120301-QDL_4034-YOTA-1. При подсоединения модема к компьютеру отключается wi-fi и интернет идет по USB только на компьютер. При подсоедининии к роутеру - ноль реакции.

    Подскажите, есть ли возможность заставить эту связку работать.

    Прикладываю логи роутера при подключении модема.
    Судя по http://blog.tracepoint.ru/yota-route...g-wifi-ap.html его надо пробовать подключать как обычный 3g-модем.

    Команду переключения из zerocd брать http://www.draisberghof.de/usb_modes...84635ca418735a
    Last edited by rss; 19-05-2012 at 20:28.
    * Wiki *

  4. #4
    Join Date
    Mar 2009
    Location
    Russia, Moscow
    Posts
    2,119
    Blog Entries
    33

    Yota Quanta LTE Router

    Quote Originally Posted by gleb_antonov View Post
    Господа, а нет ли мыслей как подружить wl500gpV2 (прошивка 4051) с LTE-роутером от Yota? Есть такая необходимость
    (раздать интернет на большой дом), а покупать модем пока нет ясности, что эта штука не заработает не хочется.

    На lte-роутере стоит прошивка 20120301-QDL_4034-YOTA-1. При подсоединения модема к компьютеру отключается
    wi-fi и интернет идет по USB только на компьютер. При подсоедининии к роутеру - ноль реакции.

    Подскажите, есть ли возможность заставить эту связку работать.
    И напоследок о Yota Router: помимо работы в качестве сетевого адаптера устройство может быть использовано как
    обычный модем (для этого необходимо перевести его в расширенный режим и, при необходимости, установить драйвер).
    Нам потребуются программы pppd и chat, которые есть во всех дистрибутивах. Конфигурационные файлы:

    /etc/ppp/peers/yota:
    Code:
    connect "/usr/sbin/chat -f /etc/chatscripts/yota-connect"
    disconnect "/usr/sbin/chat -f /etc/chatscripts/yota-disconnect"
    /dev/ttyUSB0
    defaultroute
    usepeerdns
    /etc/chatscripts/yota-connect:
    Code:
    ABORT "ERROR"
    '' ATZ
    OK at$QCISAMDisByWeb
    PASS "ATDT*99***1#"
    CONNECT \d\c
    /etc/chatscripts/yota-disconnect:
    Code:
    '' '\d\c'
    'NO CARRIER' at$QCISAMEnByWeb
    Запуск в режиме отладки (не забудьте про опцию -v для chat):
    Code:
    # pppd debug nodetach file /etc/ppp/peers/yota
    В нормальном режиме запуск и остановка происходит с помощью комманд pon и poff:
    Code:
    # pon yota
    # poff yota
    Заметим что на период работы PPP выключается WiFi.

    Использование Yota Router в Linux в режиме PPP
    Отключение WiFi точки доступа Yota Router (Quanta 1QDLZZZ0ST2)
    Использование Yota Router в Linux в качестве USB сетевого адаптера
    Изменение режимов работы USB порта Yota Router (Quanta 1QDLZZZ0ST2)
    http://blog.tracepoint.ru/category/Gadgets.html

  5. #5
    Quanta в руках не держал, но ИМХО эта штука на Qualkomm'e значит грабли те же что и с мегафоновским E392. Вариантов подключения - 2 как модем или как CDC/RNDIS девайс. Вот нашел патчик для option.c
    Code:
    --- a/drivers/usb/serial/option.c
    +++ b/drivers/usb/serial/option.c
    @@ -164,6 +164,8 @@ static void option_instat_callback(struct urb *urb);
     #define QUANTA_PRODUCT_GLX 0xEA04
     #define QUANTA_PRODUCT_GKE 0xEA05
     #define QUANTA_PRODUCT_GLE 0xEA06
    +#define QUANTA_PRODUCT_YOTA_ROUTER_OLD 0xD00A
    +#define QUANTA_PRODUCT_YOTA_ROUTER 0xD009
     
     #define NOVATELWIRELESS_VENDOR_ID 0x1410
     
    @@ -559,6 +561,15 @@ static const struct option_blacklist_info zte_mf626_blacklist = {
            .reserved = BIT(4),
     };
     
    +static const struct option_blacklist_info quanta_yota_router_old_blacklist = {
    + .reserved = ~(BIT(0) | BIT(1)),
    +};
    +
    +static const struct option_blacklist_info quanta_yota_router_blacklist = {
    + .reserved = ~(BIT(1) | BIT(2)),
    +};
    +
    +
     static const struct usb_device_id option_ids[] = {
            { USB_DEVICE(OPTION_VENDOR_ID, OPTION_PRODUCT_COLT) },
            { USB_DEVICE(OPTION_VENDOR_ID, OPTION_PRODUCT_RICOLA) },
    @@ -590,6 +601,10 @@ static const struct usb_device_id option_ids[] = {
            { USB_DEVICE(QUANTA_VENDOR_ID, QUANTA_PRODUCT_GLX) },
            { USB_DEVICE(QUANTA_VENDOR_ID, QUANTA_PRODUCT_GKE) },
            { USB_DEVICE(QUANTA_VENDOR_ID, QUANTA_PRODUCT_GLE) },
    + { USB_DEVICE_AND_INTERFACE_INFO(QUANTA_VENDOR_ID, QUANTA_PRODUCT_YOTA_ROUTER_OLD, 0xff, 0xff, 0xff),
    + .driver_info = (kernel_ulong_t)&quanta_yota_router_old_blacklist },
    + { USB_DEVICE_AND_INTERFACE_INFO(QUANTA_VENDOR_ID, QUANTA_PRODUCT_YOTA_ROUTER, 0xff, 0xff, 0xff),
    + .driver_info = (kernel_ulong_t)&quanta_yota_router_blacklist },
            { USB_DEVICE_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, HUAWEI_PRODUCT_E600, 0xff, 0xff, 0xff) },
            { USB_DEVICE_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, HUAWEI_PRODUCT_E220, 0xff, 0xff, 0xff) },
            { USB_DEVICE_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, HUAWEI_PRODUCT_E220BIS, 0xff, 0xff, 0xff) },

  6. #6
    А самое главное не процитировал - что нужно установить драйверы . И, поскольку Quanta на Qualcomm'e, также как и мегафоновский Huawei E392 -LTE, проблемы с их привязыванием, ИМХО, схожие, и обсуждать их, походу, надо в этой теме.
    Last edited by Omega; 13-06-2012 at 21:11. Reason: ну про драйвер написано во второй строчке :) не, там мегафон, а не ёта - сделаем потом отдельную тему ;)

  7. #7
    Join Date
    Mar 2009
    Location
    Russia, Moscow
    Posts
    2,119
    Blog Entries
    33

    Thumbs up LTE роутер Yota Quanta 1QDLZZZ0ST2

    Изменение режимов работы USB порта Yota Router (Quanta 1QDLZZZ0ST2)

    Mon 14 May 2012 * A Tracepoint Blog * Gadgets * Scripts In Gadgets * tags: yota

    В новой версии прошивки (ver_120412) для Yota Router изменился режим работы USB подключения. Изначально устройство идентифицировало себя как
    0x0408:0xd00a и имело 4 USB интерфейса (2 из них были последовательными портами и могли использоваться для управления модемом и установления
    PPP соединений, третий позволял работать с модемом как с сетевым адаптером (а также управлять устройством с помощью протокола QMI), что было
    очень удобно, а четвёртый представлял из себя виртуальный USB CD-ROM, содержащий драйверы для Windows и утилиту управления.

    После установки обновления (Portable_Router_Quanta_NoModem_120412.exe) идентификатор устройства меняется на 0x0408:0xf000, все эти интерфейсы
    пропадают и всё что остаётся от USB порта роутера это виртуальный CD-ROM с драйверами. Это достаточно популярный режим работы устройств на чипах
    Qualcomm и как правило существует возможность переключить модем в обычный режим с помощью SCSI команды Start/Stop Unit, т.е. по сути путём
    "извлечения" виртуального CD-ROM, но в данном случае этот способ не работал.

    Тем не менее, программе обновления при повторном запуске удавалось перевести модем в нужный режим,
    при этом он менял код устройства на 0xd009, а вместо одного интерфейса появлялось 5:

    • 0. Устройство диагностического монитора (именно через него происходит обновление прошивки)
    • 1. Последовательный порт
    • 2. Последовательный порт
    • 3. Сетевой адаптер/интерфейс QMI
    • 4. Виртуальный CD-ROM

    Но, после обновления прошивки, модем снова перезагружался в стандартный режим.

    Как выяснилось с помощью перехвата трафика на USB шине с помощью Wireshark при работающей в VirtualBox под Windows программе обновления,
    переключение действительно осуществляется с помощью команды Start/Stop Unit, но срабатывает она только в случае, когда в третьем байте CDB
    находится значение 0x46. Это поле помечено в стандарте как "Reserved" и не используется, так что cредствами ОС дать такую команду устройству
    было весьма проблематично (на что видимо и рассчитывали разработчики):



    Остаётся только найти способ проделать это без использования утилиты обновления: в Linux можно использовать
    входящую во все дистрибутивы программу usb-modeswitch со следующим конфигурационным файлом:

    Code:
    #############################################################################
    # Yota Router (Quanta 1QDLZZZ0ST2) using firmware NoModem_120412 and above
    #
    # Modem mode can be activated using special SCSI Start/Stop Unit command
    # with 0x46 in the 3rd CDB byte (marked as reserved in SCSI standard)
    #############################################################################
    DefaultVendor=0x0408
    DefaultProduct=0xf000
    TargetVendor=0x0408
    TargetProduct=0xd009
    #                     +---------------------------------------- CBW Signature
    #                     |                       +--------- SCSI Start/Stop UNIT
    #                     |                       |
    #              -------+                      -+
    MessageContent=5553424300000000000000000000061b004600000000000000000000000000
    #                                          -+    -+
    #                                           |     |
    #                                           |     +------------- Special Flag
    #                                           +--------------------- CDB Length
    Можно добавить старт usb_modeswitch в правила udev или запускать вручную:

    Code:
    # usb_modeswitch -c yotarouter.conf
    Для Windows понадобится скачать sg3-utils и использовать утилиты sg_scan и sg_raw:

    Code:
    C:\sg3_utils>sg_scan
    PD0     [C]     VBOX HARDDISK  1.0  42563030666161353234342d3938623831332030
    CDROM0  [D]     VBOX CD-ROM  1.0  42562d3231303037333036372020202020202020
    CDROM2  [F]     QDL       Mass storage      2.31
    C:\sg3_utils>sg_raw F: 1b 00 46 00 00 00
    SCSI Status: Good
    
    Sense Information:
    sense buffer empty
    После выполнения этих команд модем перезагружается в расширенный режим и его снова можно использовать как USB сетевой адаптер.

    httр://blog.tracepoint.ru/yota-router-quanta-1QDLZZZ0ST2-usb-modeswitch.html
    Last edited by Omega; 31-03-2013 at 04:55. Reason: fixed

  8. #8
    Join Date
    Mar 2009
    Location
    Russia, Moscow
    Posts
    2,119
    Blog Entries
    33

    Thumbs up LTE роутер Yota Quanta 1QDLZZZ0ST2

    Использование Yota Router в Linux в качестве USB сетевого адаптера

    Mon 21 May 2012 * A Tracepoint Blog * Gadgets * Scripts * In Gadgets * tags: yotalinuxpatch

    К сожалению, Yota Router не работает в Linux в качестве USB сетевого адаптера "из коробки" (см. Изменение режимов работы USB порта
    Yota Router (Quanta 1QDLZZZ0ST2)
    ) и для решения этой проблемы удобнее всего воспользоваться открытыми драйверами от Qualcomm:
    https://www.codeaurora.org/patches/quic/gobi/Gobi3000/.

    Если вы пользуетесь Ubuntu 12.04 - есть готовый PPA с доработанными для Yota Router драйверами в формате DKMS:

    Code:
    $ sudo add-apt-repository ppa:ivoronin/gobi
    $ sudo apt-get update
    $ sudo apt-get install gobinet-dkms gobiserial-dkms
    $ sudo modprobe gobinet
    $ sudo modprobe gobiserial
    Если нет - придётся поправить их исходные файлы вручную:

    GobiNet (драйвер, отвечающий за работу сетевого интерфейса):
    gobinet.patch https://gist.github.com/ivoronin/2703457

    Code:
    Index: gobinet-dkms-20110729~1026/GobiUSBNet.c
    ===================================================================
    --- gobinet-dkms-20110729~1026.orig/GobiUSBNet.c 2012-05-09 23:11:33.000000000 +0400
    +++ gobinet-dkms-20110729~1026/GobiUSBNet.c 2012-05-13 03:22:02.748985833 +0400
    @@ -66,11 +66,15 @@
    #define DRIVER_AUTHOR "Qualcomm Innovation Center"
    #define DRIVER_DESC "GobiNet"
    
    + // Quanta 1QDLZZZ0ST2 (Yota Router), Old firmware
    + {
    + USB_DEVICE( 0x0408, 0xd00a ),
    + .driver_info = (unsigned long)&GobiNetInfo_intf2
    + },
    + // Quanta 1QDLZZZ0ST2 (Yota Router)
    + {
    + USB_DEVICE( 0x0408, 0xd009 ),
    + .driver_info = (unsigned long)&GobiNetInfo_intf3
    + },
    //Terminating entry
    После его загрузки должен появиться интерфейс usb0.

    GobiSerial (драйвер последовательного порта, необходимый для управления состоянием Wi-Fi точки доступа):
    gobiserial.patch https://gist.github.com/ivoronin/2480119

    Code:
    Index: gobiserial-dkms_20110729~1026/GobiSerial.c
    ===================================================================
    --- gobiserial-dkms_20110729~1026.orig/GobiSerial.c 2012-05-09 23:11:02.000000000 +0400
    +++ gobiserial-dkms_20110729~1026/GobiSerial.c 2012-05-13 04:08:50.930148737 +0400
    
    { USB_DEVICE( 0x05c6, 0x920c ) }, // Gobi 3000 QDL device
    { USB_DEVICE( 0x05c6, 0x920d ) }, // Gobi 3000 Composite Device
    + { USB_DEVICE( 0x0408, 0xd00a ) }, // Quanta 1QDLZZZ0ST2 (Yota Router), Old firmware
    + { USB_DEVICE( 0x0408, 0xd009 ) }, // Quanta 1QDLZZZ0ST2 (Yota Router)
    
    //---------------------------------------------------------------------------
    // USB serial core overridding Methods
    //---------------------------------------------------------------------------
    nInterfaceNum = pSerial->interface->cur_altsetting->desc.bInterfaceNumber;
    DBG( "This Interface = %d\n", nInterfaceNum );
    - if (nNumInterfaces == 1)
    + // Dirty hack for Quanta 1QDLZZZ0ST2
    + if (nNumInterfaces == 1 || ( pID->idVendor == 0x0408 && pID->idProduct == 0xd00a ))
    
    // QDL mode?
    if (nInterfaceNum == 1 || nInterfaceNum == 0)
    
    // Calling kernel module to init our driver
    После его загрузки должен появиться последовательный порт /dev/ttyUSB0.

    QMI В качестве альтернативы в ядрах версии 3.4 (и выше) можно использовать драйвер qmi_wwan (drivers/net/usb/qmi_wwan.c),
    для поддержки Yota Router придётся изменить его исходный код: qmi_wwan.patch https://gist.github.com/ivoronin/2761926

    Code:
    --- a/drivers/net/usb/qmi_wwan.c
    +++ b/drivers/net/usb/qmi_wwan.c
    @@ -365,6 +365,24 @@ static const struct driver_info qmi_wwan_force_int4 = {
    .data = BIT(4), /* interface whitelist bitmap */
    
    /* Sierra Wireless provide equally useless interface descriptors
    * Devices in QMI mode can be switched between two different
    * configurations:
    @@ -475,6 +493,26 @@ static const struct usb_device_id products[] = {
    .bInterfaceProtocol = 0xff,
    .driver_info = (unsigned long)&qmi_wwan_sierra,
    
    + /* Yota Router (Quanta 1QDLZZZ0ST2) Old firmware */
    + .match_flags = USB_DEVICE_ID_MATCH_DEVICE | USB_DEVICE_ID_MATCH_INT_INFO,
    + .idVendor = 0x0408,
    + .idProduct = 0xd00a,
    + .bInterfaceClass = 0xff,
    + .bInterfaceSubClass = 0xff,
    + .bInterfaceProtocol = 0xff,
    + .driver_info = (unsigned long)&qmi_wwan_force_int2,
    
    + /* Yota Router (Quanta 1QDLZZZ0ST2) */
    + .match_flags = USB_DEVICE_ID_MATCH_DEVICE | USB_DEVICE_ID_MATCH_INT_INFO,
    + .idVendor = 0x0408,
    + .idProduct = 0xd009,
    + .bInterfaceClass = 0xff,
    + .bInterfaceSubClass = 0xff,
    + .bInterfaceProtocol = 0xff,
    + .driver_info = (unsigned long)&qmi_wwan_force_int3,
    После его загрузки должен появиться интерфейс wwan0.

    Serial Для подключения к модему через последовательный порт можно воспользоваться драйвером option (drivers/usb/serial/option.c),
    который для поддержки Yota Router также придётся модифицировать: option.patch https://gist.github.com/ivoronin/2761974

    Code:
    --- a/drivers/usb/serial/option.c
    +++ b/drivers/usb/serial/option.c
    @@ -164,6 +164,8 @@ static void option_instat_callback(struct urb *urb);
    #define QUANTA_PRODUCT_GLX 0xEA04
    #define QUANTA_PRODUCT_GKE 0xEA05
    #define QUANTA_PRODUCT_GLE 0xEA06
    +#define QUANTA_PRODUCT_YOTA_ROUTER_OLD 0xD00A
    +#define QUANTA_PRODUCT_YOTA_ROUTER 0xD009
    #define NOVATELWIRELESS_VENDOR_ID 0x1410
    @@ -559,6 +561,15 @@ static const struct option_blacklist_info zte_mf626_blacklist = {
    .reserved = BIT(4),
    +static const struct option_blacklist_info quanta_yota_router_old_blacklist = {
    + .reserved = ~(BIT(0) | BIT(1)),
    +static const struct option_blacklist_info quanta_yota_router_blacklist = {
    + .reserved = ~(BIT(1) | BIT(2)),
    static const struct usb_device_id option_ids[] = {
    { USB_DEVICE(OPTION_VENDOR_ID, OPTION_PRODUCT_COLT) },
    { USB_DEVICE(OPTION_VENDOR_ID, OPTION_PRODUCT_RICOLA) },
    @@ -590,6 +601,10 @@ static const struct usb_device_id option_ids[] = {
    { USB_DEVICE(QUANTA_VENDOR_ID, QUANTA_PRODUCT_GLX) },
    { USB_DEVICE(QUANTA_VENDOR_ID, QUANTA_PRODUCT_GKE) },
    { USB_DEVICE(QUANTA_VENDOR_ID, QUANTA_PRODUCT_GLE) },
    + { USB_DEVICE_AND_INTERFACE_INFO(QUANTA_VENDOR_ID, QUANTA_PRODUCT_YOTA_ROUTER_OLD, 0xff, 0xff, 0xff),
    + .driver_info = (kernel_ulong_t)&quanta_yota_router_old_blacklist },
    + { USB_DEVICE_AND_INTERFACE_INFO(QUANTA_VENDOR_ID, QUANTA_PRODUCT_YOTA_ROUTER, 0xff, 0xff, 0xff),
    + .driver_info = (kernel_ulong_t)&quanta_yota_router_blacklist },
    После его загрузки должен появиться последовательный порт /dev/ttyUSB0.

    httр://blog.tracepoint.ru/using-yota-router-in-linux.html

    Code:
    lsusb -d0408:d00a -v
    
    Bus 001 Device 096: ID 0408:d00a Quanta Computer, Inc.
    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           0x0408 Quanta Computer, Inc.
      idProduct          0xd00a
      bcdDevice            0.00
      iManufacturer           3
      iProduct                2
      iSerial                 4
      bNumConfigurations      1
      Configuration Descriptor:
        bLength                 9
        bDescriptorType         2
        wTotalLength          115
        bNumInterfaces          4
        bConfigurationValue     1
        iConfiguration          1
        bmAttributes         0xe0
          Self Powered
          Remote Wakeup
        MaxPower              500mA
    Last edited by Omega; 13-04-2013 at 00:14. Reason: fixed

  9. #9
    Join Date
    Mar 2009
    Location
    Russia, Moscow
    Posts
    2,119
    Blog Entries
    33

    Thumbs up LTE роутер Yota Quanta 1QDLZZZ0ST2

    Wireshark Dissector for QMI protocol

    Sun 20 May 2012 * A Tracepoint Blog * Gadgets * Scripts * In Scripts * tags: wireshark

    Here is the Wireshark dissecctor for QMI (Qualcomm MSM Interface) USB protocol.

    It allows to monitor QMI requests, indications and responses regardless of communication method

    (cdc-wdm, gobi driver (qcqmi) or VM passthrough):

    Code:
    $ wireshark -X lua_script:qmi_dissector.lua
    This script can serve as a good example of using the Wireshark's ...

    read more http://lists.freedesktop.org/archive...ay/000054.html

    Wireshark Dissector for Qualcomm MSM Interface (QMI) Protocol

    qmi_dissector.lua

    Code:
    --[[
    Wireshark Dissector for Qualcomm MSM Interface (QMI) Protocol v0.1
     
    Copyright (c) 2012 Ilya Voronin <ivoronin@gmail.com>
     
    Based on Code Aurora Forum's BSD/GPL licensed code:
    http://www.codeaurora.org/contribute/projects/gobi/
     
    Short howto for using this script:
     
    1. Find device in the lsusb output:
     
    $ lusb
    ...
    Bus 003 Device 002: ID 0408:d00a Quanta Computer, Inc.
    ...
     
    2. Allow non-root access to your device's bus usbmon node:
     
    $ sudo chmod 644 /dev/usbmon3
     
    3. Run tshark or wireshark:
     
    $ tshark -i usbmon3 -X lua_script:qmi_dissector.lua -R "qmi.tf"
    ...
    115.067880 host -> 3.0 USB/QMI 77 DMS Request: Get Device Manfacturer
    115.073657 3.0 -> host USB/QMI 108 DMS Response: Get Device Manfacturer
    ...
     
    $ wireshark -X lua_script:qmi_dissector.lua
     
    --]]
     
    ---
    --- Tables
    ---
    services = { [0] = "Control", [1] = "WDS", [2] = "DMS", [3] = "NAS",
    [4] = "QOS", [5] = "WMS", [6] = "PDS", [7] = "AUTH", [8] = "AT",
    [9] = "VOICE", [10] = "CAT2", [11] = "UIM", [12] = "PBM",
    [14] = "RMTFS", [16] = "LOC", [17] = "SAR", [20] = "CSD", [21] = "EFS",
    [23] = "TS", [24] = "TMD", [224] = "CAT", [225] = "RMS", [226] = "OMA" }
    ctl_messages = { [0x21] = "Get Version Info", [0x22] = "Get Client ID",
    [0x23] = "Release Client ID" }
    wds_messages = { [0x01] = "Set Event Report", [0x20] = "Start Network Interface",
    [0x22] = "Get Packet Service Status", [0x23] = "Get Channel Rates",
    [0x4d] = "Set IP Family Preference" }
    dms_messages = { [0x1] = "Set Event Report", [0x20] = "Get Device Capabilities",
    [0x21] = "Get Device Manfacturer", [0x22] = "Get Device Model",
    [0x23] = "Get Device Revision", [0x24] = "Get Device Voice Number",
    [0x25] = "Get Device Serial Numbers", [0x26] = "Get Power State" }
    nas_messages = { [0x2] = "Set Event Report", [0x20] = "Get Signal Strength",
    [0x24] = "Get Serving System", [0x25] = "Get Home Network" }
     
    ---
    --- Proto declaration
    ---
    qmi_proto = Proto("qmi", "Quallcomm MSM Interface")
     
    --
    -- Fields
    --
    local f = qmi_proto.fields
    -- QMUX Header
    f.tf = ProtoField.uint8("qmi.tf", "T/F", base.DEC)
    f.len = ProtoField.uint16("qmi.len", "Length", base.DEC)
    f.flag = ProtoField.uint8("qmi.flag", "Flag", base.HEX)
    f.svcid = ProtoField.uint8("qmi.service_id", "Service ID", base.HEX, services)
    f.cid = ProtoField.uint8("qmi.cliend_id", "Client ID", base.HEX)
    -- Transaction Header
    f.resp_ctl = ProtoField.uint8("qmi.trans_response", "Transaction Response Bit",
    base.DEC, nil, 1)
    f.ind_ctl = ProtoField.uint8("qmi.trans_indication", "Transaction Indication Bit",
    base.DEC, nil, 2)
    f.comp_svc = ProtoField.uint8("qmi.trans_compound", "Transaction Compound Bit",
    base.DEC, nil, 1)
    f.resp_svc = ProtoField.uint8("qmi.trans_response", "Transaction Response Bit",
    base.DEC, nil, 2)
    f.ind_svc = ProtoField.uint8("qmi.trans_indication", "Transaction Indication Bit",
    base.DEC, nil, 4)
    f.tid_ctl = ProtoField.uint8("qmi.trans_id", "Transaction ID", base.HEX)
    f.tid_svc = ProtoField.uint16("qmi.trans_id", "Transaction ID", base.HEX)
    -- Message Header
    f.msgid = ProtoField.uint16("qmi.message_id", "Message ID", base.HEX)
    f.msgid_ctl = ProtoField.uint16("qmi.message_id", "Message ID", base.HEX, ctl_messages)
    f.msgid_wds = ProtoField.uint16("qmi.message_id", "Message ID", base.HEX, wds_messages)
    f.msgid_dms = ProtoField.uint16("qmi.message_id", "Message ID", base.HEX, dms_messages)
    f.msgid_nas = ProtoField.uint16("qmi.message_id", "Message ID", base.HEX, nas_messages)
    f.msglen = ProtoField.uint16("qmi.message_len", "Message Length", base.DEC)
    -- TLVs
    f.tlvt = ProtoField.uint8("qmi.tlv_type", "TLV Type", base.HEX)
    f.tlvl = ProtoField.uint16("qmi.tlv_len", "TLV Length", base.DEC)
    f.tlvv = ProtoField.bytes("qmi.tlv_value", "TLV Value")
     
    --
    -- Dissector Function
    --
    function qmi_proto.dissector(buffer, pinfo, tree)
    local off = 64 -- URB header size
     
    if buffer:len() - off < 12 then
    -- No payload or too short (12 is a min size)
    return
    end
     
    -- QMUX Header (6 bytes), see GobiNet/QMI.h
    local tf = buffer(off,1) -- Always 0x01
    if tf:uint() ~= 1 then
    -- Not a QMI packet
    return
    end
    local len = buffer(off+1,2) -- Length
    if len:le_uint() ~= buffer:len() - off - 1 then
    -- Length does not match
    return
    end
    local flag = buffer(off+3,1) -- Always 0x00 (out) or 0x80 (in)
    if flag:uint() ~= 0x00 and flag:uint() ~= 0x80 then
    -- Not a QMI packet
    return
    end
    local svcid = buffer(off+4,1) -- Service ID
    local cid = buffer(off+5,1) -- Client ID
     
    -- Setup protocol subtree
    local qmitree = tree:add(qmi_proto, buffer(off, buffer:len() - off), "QMI")
    local hdrtree = qmitree:add(qmi_proto, buffer(off, 6), "QMUX Header")
    hdrtree:add(f.tf, tf)
    hdrtree:add_le(f.len, len)
    hdrtree:add(f.flag, flag)
    hdrtree:add(f.svcid, svcid)
    hdrtree:add(f.cid, cid)
    off = off + 6
     
    -- Transaction Header (2 or 3 bytes), see GobiAPI/Core/QMIBuffers.h
    local responsebit
    local indicationbit
    if svcid:uint() == 0 then
    responsebit = buffer(off, 1):bitfield(7)
    indicationbit = buffer(off, 1):bitfield(6)
    local thdrtree = qmitree:add(qmi_proto, buffer(off, 2), "Transaction Header")
    tid = buffer(off+1,1)
    thdrtree:add(f.resp_ctl, buffer(off, 1))
    thdrtree:add(f.ind_ctl, buffer(off, 1))
    thdrtree:add(f.tid_ctl, tid)
    off = off + 2
    else
    responsebit = buffer(off, 1):bitfield(6)
    indicationbit = buffer(off, 1):bitfield(5)
    local thdrtree = qmitree:add(qmi_proto, buffer(off, 3), "Transaction Header")
    tid = buffer(off+1,2)
    thdrtree:add(f.comp_svc, buffer(off, 1))
    thdrtree:add(f.resp_svc, buffer(off, 1))
    thdrtree:add(f.ind_svc, buffer(off, 1))
    thdrtree:add_le(f.tid_svc, tid)
    off = off + 3
    end
     
    -- Message Header (4 bytes), see GobiAPI/Core/QMIBuffers.h
    local msgstr
    msgid = buffer(off, 2)
    msglen = buffer(off+2, 2)
    local mhdrtree = qmitree:add(qmi_proto, buffer(off, 4), "Message Header")
    if svcid:uint() == 0x00 then -- CTL
    mhdrtree:add_le(f.msgid_ctl, msgid)
    msgstr = ctl_messages[msgid:le_uint()]
    elseif svcid:uint() == 0x01 then -- WDS
    mhdrtree:add_le(f.msgid_wds, msgid)
    msgstr = wds_messages[msgid:le_uint()]
    elseif svcid:uint() == 0x2 then -- DMS
    mhdrtree:add_le(f.msgid_dms, msgid)
    msgstr = dms_messages[msgid:le_uint()]
    elseif svcid:uint() == 0x3 then -- NAS
    mhdrtree:add_le(f.msgid_nas, msgid)
    msgstr = nas_messages[msgid:le_uint()]
    else
    mhdrtree:add_le(f.msgid, msgid)
    end
    mhdrtree:add_le(f.msglen, msglen)
    off = off + 4
     
    -- TLVs, see GobiAPI/Core/QMIBuffers.h
    local msgend = off + msglen:le_uint()
    while off < msgend do
    local tlvt = buffer(off, 1)
    local tlvl = buffer(off+1, 2)
    local tlvv = buffer(off+3, tlvl:le_uint())
    local treesize = tlvl:le_uint() + 3
    local treename = string.format("TLV 0x%.2x", tlvt:uint())
    local tlvtree = qmitree:add(qmi_proto, buffer(off, treesize), treename)
    tlvtree:add(f.tlvt, tlvt)
    tlvtree:add_le(f.tlvl, tlvl)
    tlvtree:add(f.tlvv, tlvv)
    off = off + treesize
    end
     
    -- Setup columns
    local svcstr = services[svcid:uint()] and
    services[svcid:uint()] or string.format("0x%x", svcid:uint())
    local typestr = indicationbit == 1 and
    "Indication" or responsebit == 1 and "Response" or "Request"
    msgstr = msgstr ~= nil and msgstr or string.format("0x%x", msgid:le_uint())
    pinfo.cols.protocol:append("/QMI")
    pinfo.cols.info:append(string.format(", %s %s: %s", svcstr, typestr, msgstr))
    end
     
    register_postdissector(qmi_proto)
    https://gist.github.com/ivoronin/2641557
    Last edited by Omega; 31-03-2013 at 04:15. Reason: fixed

  10. #10
    Join Date
    Mar 2009
    Location
    Russia, Moscow
    Posts
    2,119
    Blog Entries
    33

    Thumbs up LTE роутер Yota Quanta 1QDLZZZ0ST2

    Отключение Wi-Fi точки доступа Yota Router (Quanta 1QDLZZZ0ST2)

    Tue 15 May 2012 * A Tracepoint Blog * Gadgets * Scripts * In Gadgets * tags: yota

    С помощью нескольких команд, данных через последовательный порт, можно легко отключить Wi-Fi точку доступа на Yota Router и перевести
    устройство в режим USB модема (если вы уже обновили прошивку до 120412 понадобится предварительно переключить модем в расширенный
    режим, чтобы получить доступ к COM портам). В Linux можно использовать утилиту cu, в Windows - PuTTY:

    1. Подключение:

    Code:
        # cu -l /dev/ttyUSB0
        ATZ
        OK
        ATI
        Manufacturer: QUALCOMM INCORPORATED
        Model: 0
        Revision: 20120412-QDL_4034-YOTA-1
        IMEI: XXXXXXXXXXXXXXX
        +GCAP: +CGSM
    
        OK
    2. Просмотр текущего состояния:

    Code:
        at$QCISAMQueState
        SoftAPON
    
        OK
    SoftAPON - Wi-Fi точка доступа включена, SoftAPOFF - выключена.

    3. Отключение точки доступа:

    Code:
        at$QCISAMDisByWeb
        PASS
    
        OK
    Индикатор беспроводной сети на корпусе модема при этом гаснет.

    4. Включение точки доступа

    Code:
        at$QCISAMEnByWeb
        PASS
    
        OK
    httр://blog.tracepoint.ru/yota-router-quanta-1QDLZZZ0ST2-disabling-wifi-ap.html
    Last edited by Omega; 31-03-2013 at 05:08. Reason: fixed

  11. #11

    Yota Quanta LTE Router

    Omega, Rusink and ALL! HELP!

    Так как http://blog.tracepoint.ru/ видимо безвозвратно потеряно прошу помощи по уже поднимавшемуся,
    но так и не решенному - наверное - вопросу:работа Yota Quanta LTE Router в качестве модема на wl500gPv2.

    Есть успешный опыт запуска разлоченного Megafon (Huawei) E392 с йотовской симкой на wl500gPv2.
    Работает третий месяц видимо без проблем - так как пока не обращались за помощью .

    Yota Quanta LTE Router (как и его клон http://www.mobile-review.com/article...a-router.shtml)
    видимо без драйверов работать не будут - см. сообщения выше. Вопрос: что за драйвера и где их брать?

    И еще один вопрос: насколько последняя прошивка "подхватывает" этот роутер? Достаточно ли будет конфига
    /usr/local/etc/usb_modeswitch.conf
    с данными, взятыми из wl500g - Revision 4720: /trunk/usb_modeswitch или нужны дополнительные "ручные" настройки?

    У меня на руках роутер с прошивкой от 12.04.2012 - без функции модема. У сестры (кот.нужен такой гибрид)
    - роутер с прошивкой от 01.03.2012 - с функцией модема. С прошивкой от 01.03.2012 wl500gPv2 видел только usb-диск.
    С прошивкой от 12.04.2012 - вообще не видит. Выдает:

    Code:
    kernel: hub 1-1:1.0: unable to enumerate USB device on port 1 
    
    http://10.0.0.1/status
    
    ==========Welcome to engineering page(auto refresh 1 times/GMT: 1980 Jan 06 00:06:58)==========
    
    Usage: To enable N seconds page auto refresh by append the number N on page name,e.g.: /dynpage/eng_page5.htm.
    [ LTE_sig]:RSSI[41]-SINR[23.8]-RSRP[-68]-RSRQ[-6]-CELLID[99d6801]-PLMN[250|11-]
    [ LTE_stat]:Cur. state =(CONNECTED)
    [ PWR_man]:ConfigSwitch=(0x00002fdd),AutoTri[1/6]--ConnReq[1/7]--WanDataC[1/8]--ModemM[0/12]
    [ PWR_man]: PktShutDSec[99999999]--PktNum[0]--ActProto[0]
    P.S. sorry, если сумбур - гуманитарное образование.

    P.P.S. После добавления файла /usr/local/etc/usb_modeswitch.conf (начинка отсюда ) роутер распознался

    zerocd: 408/f000/0 : /proc/bus/usb/001/003

    Code:
    Jan  1 00:00:06 kernel: usbcore: registered new interface driver usblp
    Jan  1 00:00:07 usb_modeswitch: switching device 0408:f000 on 001/003
    Jan  1 00:00:07 kernel: SCSI subsystem initialized
    Jan  1 00:00:08 kernel: Initializing USB Mass Storage driver...
    Jan  1 00:00:08 kernel: scsi0 : SCSI emulation for USB Mass Storage devices
    Jan  1 00:00:08 kernel: usbcore: registered new interface driver usb-storage
    Jan  1 00:00:08 kernel: USB Mass Storage support registered.
    Jan  1 00:00:08 kernel: NTFS driver 2.1.30 [Flags: R/O MODULE].
    Jan  1 00:00:09 kernel: usbcore: registered new interface driver cdc_acm
    Jan  1 00:00:09 kernel: drivers/usb/class/cdc-acm.c: v0.26:USB Abstract Control Model driver for USB modems and ISDN adapters
    Jan  1 00:00:10 kernel: usbcore: registered new interface driver usbserial
    Jan  1 00:00:10 kernel: drivers/usb/serial/usb-serial.c: USB Serial support registered for generic
    Jan  1 00:00:10 kernel: usbcore: registered new interface driver usbserial_generic
    Jan  1 00:00:10 kernel: drivers/usb/serial/usb-serial.c: USB Serial Driver core
    Jan  1 00:00:10 kernel: scsi 0:0:0:0: CD-ROM            QDL      Mass storage     2.31 PQ: 0 ANSI: 2
    Jan  1 00:00:10 kernel: drivers/usb/serial/usb-serial.c: USB Serial support registered for GSM modem (1-port)
    Jan  1 00:00:10 kernel: usbcore: registered new interface driver option
    Jan  1 00:00:10 kernel: drivers/usb/serial/option.c: USB Driver for GSM modems: v0.7.2
    Jan  1 00:02:30 nimda: modem with dataport: . not found
    Jan  1 00:02:34 pppd[925]: pppd 2.4.5 started by nimda, uid 0
    Jan  1 00:02:34 pppd[925]: tcgetattr: Inappropriate ioctl for device (line 940)
    Jan  1 00:02:35 pppd[925]: Exit.
    Code:
    T:  Bus=01 Lev=02 Prnt=02 Port=00 Cnt=01 Dev#=  3 Spd=480 MxCh= 0
    D:  Ver= 2.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS=64 #Cfgs=  1
    P:  Vendor=0408 ProdID=f000 Rev= 0.00
    S:  Manufacturer=Yota Router
    S:  Product=Yota Router LTE Technologies
    S:  SerialNumber=1234567890ABCDEF
    C:* #Ifs= 1 Cfg#= 1 Atr=c0 MxPwr=500mA
    I:* If#= 0 Alt= 0 #EPs= 2 Cls=08(stor.) Sub=06 Prot=50 Driver=(none)
    E:  Ad=01(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms
    E:  Ad=81(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
    Пробовала прикрутить запуск отсюда. Ошибка: tcgetattr: Inappropriate ioctl for device (line 940)
    Что дальше - ума не приложу...
    Last edited by Omega; 31-03-2013 at 05:54. Reason: добавление

  12. #12
    Quote Originally Posted by nata View Post
    Omega, Rusink and ALL! HELP!

    Так как http://blog.tracepoint.ru/ видимо безвозвратно потеряно прошу помощи по уже поднимавшемуся, но так и не решенному - наверное - вопросу:
    Да, похоже ссылка накрылась. Роутер этот в глаза не видел, так что вся инфа - чисто теоретическая
    1. Насколько я помню не все прошивки для QUANTA поддерживали режим модема - новые - точно нет, проверьте какая у вас прошивка. Прошивку с поддержкой режима модема можно найти здесь - http://4pda.ru/forum/index.php?showtopic=337720&st=80 - точнее - вот http://www.yota.ru/upload/iblock/c78...ult_120301.zip
    2. Посмотрел Ченджлог к прошивкам wl500 - http://wl500g.googlecode.com/svn/tru...data/ChangeLog
    Поддержка YOTA QUANTA вроде бы была добавлена:

    20120529:
    Added devices: Telenet 3G dongle (T&W WU160), Nokia CS-21M-02,
    Telewell TW-3G HSPA+, ZTE MF637, TW-3G HSPA+, Samsung GT-B1110,
    ZTE MF192 (yet annother variant), MediaTek MT6276M, Tata Photon+,
    Option Globetrotter (Variant), Option iCon 711, Celot K-300,
    Hisense E910 EVDO Phone, Yota Router (Quanta 1QDLZZZ0ST2),
    K5005 Vodafone/Huawei, D-Link DWM-156 (Variant), Huawei E173
    (Moviestar), Onda MSA 14.4 (TIM Brasil); some target product ID
    additions; skip driver loading for some devices now supported by
    dedicated drivers; minor fine tuning and corrections

    3.В убитом блоге кажется и шла речь о запуске Кванты как модема.
    4. Нашел у себя в архиве патч к option.c для поддержки Yota Quanta LTE Router

    Code:
    --- a/drivers/usb/serial/option.c
    +++ b/drivers/usb/serial/option.c
    @@ -164,6 +164,8 @@ static void option_instat_callback(struct urb *urb);
     #define QUANTA_PRODUCT_GLX                     0xEA04
     #define QUANTA_PRODUCT_GKE                     0xEA05
     #define QUANTA_PRODUCT_GLE                     0xEA06
    +#define QUANTA_PRODUCT_YOTA_ROUTER_OLD         0xD00A
    +#define QUANTA_PRODUCT_YOTA_ROUTER             0xD009
     
     #define NOVATELWIRELESS_VENDOR_ID              0x1410
     
    @@ -559,6 +561,15 @@ static const struct option_blacklist_info zte_mf626_blacklist = {
            .reserved = BIT(4),
     };
     
    +static const struct option_blacklist_info quanta_yota_router_old_blacklist = {
    +       .reserved = ~(BIT(0) | BIT(1)),
    +};
    +
    +static const struct option_blacklist_info quanta_yota_router_blacklist = {
    +       .reserved = ~(BIT(1) | BIT(2)),
    +};
    +
    +
     static const struct usb_device_id option_ids[] = {
            { USB_DEVICE(OPTION_VENDOR_ID, OPTION_PRODUCT_COLT) },
            { USB_DEVICE(OPTION_VENDOR_ID, OPTION_PRODUCT_RICOLA) },
    @@ -590,6 +601,10 @@ static const struct usb_device_id option_ids[] = {
            { USB_DEVICE(QUANTA_VENDOR_ID, QUANTA_PRODUCT_GLX) },
            { USB_DEVICE(QUANTA_VENDOR_ID, QUANTA_PRODUCT_GKE) },
            { USB_DEVICE(QUANTA_VENDOR_ID, QUANTA_PRODUCT_GLE) },
    +       { USB_DEVICE_AND_INTERFACE_INFO(QUANTA_VENDOR_ID, QUANTA_PRODUCT_YOTA_ROUTER_OLD, 0xff, 0xff, 0xff),
    +               .driver_info = (kernel_ulong_t)&quanta_yota_router_old_blacklist },
    +       { USB_DEVICE_AND_INTERFACE_INFO(QUANTA_VENDOR_ID, QUANTA_PRODUCT_YOTA_ROUTER, 0xff, 0xff, 0xff),
    +               .driver_info = (kernel_ulong_t)&quanta_yota_router_blacklist },
            { USB_DEVICE_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, HUAWEI_PRODUCT_E600, 0xff, 0xff, 0xff) },
            { USB_DEVICE_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, HUAWEI_PRODUCT_E220, 0xff, 0xff, 0xff) },
            { USB_DEVICE_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, HUAWEI_PRODUCT_E220BIS, 0xff, 0xff, 0xff) },

    P.S. И в связке с роутером он должен работать как обычный 3G модем, а не как Ethernet-over-USB устройство.
    Last edited by Rusink; 14-11-2012 at 12:31.

  13. #13
    Rusink, спасибо за инфу, но патчить ядро у меня образования не хватит.

    Пробую переключить в режим 3.75G модема. В телнете решила посмотреть, что выдаст usb_modeswitch:
    Code:
    [root@cactus /dev]$ usb_modeswitch -c /usr/local/etc/usb_modeswitch.conf
    
    Looking for target devices ...
     No devices in target mode or class found
    Looking for default devices ...
       found matching product ID
       adding device
     Found device in default mode, class or configuration (1)
    Accessing device 087 on bus 001 ...
    Getting the current device configuration ...
     OK, got current device configuration (1)
    Using interface number 0
    Using endpoints 0x01 (out) and 0x81 (in)
    Inquiring device details; driver will be detached ...
    Looking for active driver ...
     OK, driver found ("☺")
     Driver "☺" detach failed with error -5. Trying to continue
    
    SCSI inquiry data (for identification)
    -------------------------
      Vendor String: QDL
       Model String: Mass storage
    Revision String: 2.31
    -------------------------
    
    USB description data (for identification)
    -------------------------
    Manufacturer: Yota Router
         Product: Yota Router LTE Technologies
      Serial No.: 1234567890ABCDEF
    -------------------------
    Setting up communication with interface 0
    Using endpoint 0x01 for message sending ...
    Trying to send message 1 to endpoint 0x01 ...
     OK, message successfully sent
    Resetting response endpoint 0x81
    Resetting message endpoint 0x01
     Device is gone, skipping any further commands
    -> Run lsusb to note any changes. Bye.
    Попробую разобраться и запустить сначала "вручную". Думаю, загвоздка все-таки в usb_modeswitch.
    Last edited by Omega; 31-03-2013 at 05:59. Reason: fixed

  14. #14
    Quote Originally Posted by nata View Post
    Rusink, спасибо за инфу, но патчить ядро у меня образования не хватит. Пробую переключить в режим 3.75G модема.
    Проверьте для начала, поддерживает ли ваша версия прошивки работу в режиме модема. Дайте скрины настроек если сомнения есть.

    P.S. Посмотрел исходники сборки которая стоит у меня - там поддержка QUANTA YOTA ROUTER не прописана. Можно добавить.

  15. #15

    Smile Фсё...

    Сдаюсь. Осилила переключение Yota Quanta с usb-storage на... третью часть - видимо модем. Но драйвера он нужные не подхватывает - нужно устанавливать. В принципе, ничего сложного - на второй странице от начала этой ветки уже есть почти готовый рецепт. Но... Лимит моего терпения на эту проблему исчерпан, да и usb_modeswitch не очень стабильно работает - благо вышла на днях новая версия. Буду пробовать, когда ее включат в прошивку.
    Что было интересно:
    - с настройками по умолчанию роутера Yota Quanta переключается с usb-storage на модем(?) - третье устройство, в-общем. Правда не всегда.
    - заметила, что если wl500gPv2 отправить на перезагрузку - подключенная Yota Quanta переходит (визуально - горят с/диоды питания и 4G) в режим usb-модема.
    - ИМХО: usb_modeswitch может переключить Yota Quanta из режима роутера в режим модема посылкой одного бита (см. status - [ PWR_man]:ConfigSwitch=(0x00002fdd),AutoTri[1/6]--ConnReq[1/7]--WanDataC[1/8]--ModemM[0/12] - 0 и 1 показывают состояние опции). Пока не разобралась как...
    Эксперименты проводились на прошивке wl500gPv2 1.9.2.7-rtn-r4716 (хотя - когда ставила была - 1.9.2.7-rtn-r4717 )

    Rusink, спасибо за помощь!
    Last edited by nata; 15-11-2012 at 20:15.

Page 1 of 4 123 ... LastLast

Similar Threads

  1. Replies: 400
    Last Post: 24-09-2019, 08:29
  2. Роутер Asus WL-500gP и прокси
    By ViGa in forum Russian Discussion - РУССКИЙ (RU)
    Replies: 104
    Last Post: 29-09-2015, 12:44
  3. ICQ и роутер Asus WL-500gP
    By ZeusEX in forum Russian Discussion - РУССКИЙ (RU)
    Replies: 111
    Last Post: 14-07-2012, 23:49
  4. Роутер Asus + SWC-U200 = Yota Wimax
    By NotecA in forum Russian Discussion - РУССКИЙ (RU)
    Replies: 227
    Last Post: 10-03-2012, 22:26
  5. ADSL модем + роутер Asus WL-500gP
    By ilan in forum Russian Discussion - РУССКИЙ (RU)
    Replies: 284
    Last Post: 15-11-2010, 21:04

Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •