Difference between revisions of "Huawey E220 E1550 3G modem (Русский)"

From ArchWiki
Jump to: navigation, search
(Redirected page to USB 3G Modem (Русский))
m (codeline -> ic)
Line 28: Line 28:
 
или же дописать необходимые настройки в {{Filename|/etc/modprobe.d/modprobe.conf}}:
 
или же дописать необходимые настройки в {{Filename|/etc/modprobe.d/modprobe.conf}}:
 
  options usbserial vendor=0x12d1 product=0x1003
 
  options usbserial vendor=0x12d1 product=0x1003
(не забудьте выполнить {{Codeline|rmmod usbserial}}, если он уже был загружен)
+
(не забудьте выполнить {{Ic|rmmod usbserial}}, если он уже был загружен)
  
 
=== Необязательно: именование модема ===
 
=== Необязательно: именование модема ===

Revision as of 17:52, 11 December 2011

This template has only maintenance purposes. For linking to local translations please use interlanguage links, see Help:i18n#Interlanguage links.


Local languages: Català – Dansk – English – Español – Esperanto – Hrvatski – Indonesia – Italiano – Lietuviškai – Magyar – Nederlands – Norsk Bokmål – Polski – Português – Slovenský – Česky – Ελληνικά – Български – Русский – Српски – Українська – עברית – العربية – ไทย – 日本語 – 正體中文 – 简体中文 – 한국어


External languages (all articles in these languages should be moved to the external wiki): Deutsch – Français – Română – Suomi – Svenska – Tiếng Việt – Türkçe – فارسی

Введение

В этой статье описывается, как настроить 3G модем Huawey E1550. Этот модем - стандартный, но есть две особености:

  • вам нужно переключить его в режим модема
  • вам нужно использовать правильный драйвер (usbserial)

Подготовка устройства

Переключение в режим модема

По-умолчанию ядро распознаёт модем как usb-устройство хранения данных (SCSI CD-ROM). Это правильно, потому что в модеме есть карт-ридер и встроенная flash-память.

Чтобы включить модем, вам нужно запустить команду:

/lib/udev/modem-modeswitch --vendor 0x12d1 --product 0x1446 --type option-zerocd

Кстати, обратите внимание на пакет Template:Package Official, который может понадобиться вам в будущем, в связи с изменениями modem-modeswitch и его переименованием в (см. [1]). Этот пакет не требует никаких изменений, просто установите его.

Кроме этого, вы может создать файл конфигурации udev: Template:Filename

SUBSYSTEM=="usb", SYSFS{idProduct}=="1446", SYSFS{idVendor}=="12d1", RUN+="/lib/udev/modem-modeswitch --vendor 0x12d1 --product 0x1446 --type option-zerocd"

После этого, USB ID модема изменятся на 12d1:1003, а в Template:Filename будут отображены новые endpoints (точки?) USB.

Загрузка драйвера

usbserial будет подходящим драйвером для этого модема, но может получиться так, что драйвер не сможет правильно распознать модем, и вам придётся вручную передать USB ID. Это можно сделать так:

modprobe usbserial vendor=0x12d1 product=0x1003

или же дописать необходимые настройки в Template:Filename:

options usbserial vendor=0x12d1 product=0x1003

(не забудьте выполнить rmmod usbserial, если он уже был загружен)

Необязательно: именование модема

Вы можете переименовать порт ttyUSB, использовав следующие правила udev:

SUBSYSTEMS=="usb", ATTRS{modalias}=="usb:v12D1p1001*", KERNEL=="ttyUSB*", ATTRS{bInterfaceNumber}=="00", ATTRS{bInterfaceProtocol}=="ff", NAME="ttyUSB_utps_modem"
SUBSYSTEMS=="usb", ATTRS{modalias}=="usb:v12D1p1001*", KERNEL=="ttyUSB*", ATTRS{bInterfaceNumber}=="01", ATTRS{bInterfaceProtocol}=="ff", NAME="ttyUSB_utps_diag"
SUBSYSTEMS=="usb", ATTRS{modalias}=="usb:v12D1p1001*", KERNEL=="ttyUSB*", ATTRS{bInterfaceNumber}=="02", ATTRS{bInterfaceProtocol}=="ff", NAME="ttyUSB_utps_pcui"

SUBSYSTEMS=="usb", ATTRS{modalias}=="usb:v12D1p1003*", KERNEL=="ttyUSB*", ATTRS{bInterfaceNumber}=="00", ATTRS{bInterfaceProtocol}=="ff", NAME="ttyUSB_utps_modem"
SUBSYSTEMS=="usb", ATTRS{modalias}=="usb:v12D1p1003*", KERNEL=="ttyUSB*", ATTRS{bInterfaceNumber}=="01", ATTRS{bInterfaceProtocol}=="ff", NAME="ttyUSB_utps_pcui"

Подключение к Интернету

Теперь у вас есть 2 или 3 устройства Template:Filename. Скорее всего, первое из них (Template:Filename, если у вас не было подобных нашему модему устройств) и есть PPP-совместимый модем. Вы можете использовать его как обычно, с pppd, kppp, gnome-ppp, network-manager и т.д.

Команды AT

Вот несколько полезных команд:

  • AT^U2DIAG=0 - установить режим "модем"
  • AT^U2DIAG=1 - установить режим "модем + CD-ROM"
  • AT^U2DIAG=255 - установить режим "модем + CD-ROM + Card Reader"
  • AT^U2DIAG=256 - установить режим "модем + Card Reader"
  • AT+CPIN=<PIN-код> - отправить PIN-код
  • AT+CUSD=1,<закодированный-в-PDU-код-USSD>,15 - отправить запрос USSD, результат (наверное) можно получить в /dev/ttyUSB2.

Кодирование "*100#" в формат PDU:

 perl -e '@a=split(//,unpack("b*","*100#")); for ($i=7; $i < $#a; $i+=8) { $a[$i]="" } print uc(unpack("H*", pack("b*", join("", @a))))."\n"'

Декодирование "AA180C3602" из формата PDU:

 perl -e '@a=split(//,unpack("b*", pack("H*","AA180C3602"))); for ($i=6; $i < $#a; $i+=7) {$a[$i].="0" } print pack("b*", join("", @a)).""'

Декодирование ответа (в этом примере - ответ о состоянии баланса: 151.25):

 perl -e 'print pack("H*", "003100350031002C003200350020044004430431002E0020");'

Некоторые операторы возвращают результаты USSD-запросов в формате PDU, поэтому вам нужно подбирать правильный метод декодирования ответа.

  • AT+CSQ - получить качество сигнала (AT+CSQ=?)
  • AT+GMI - получить производителя устройства
  • AT+GMM - получить модель устройства
  • AT+GMR - получить версию программного обеспечения
  • AT+GMN - получить IMEI
  • AT+COPS? - получить информацию об операторе
  • AT^CARDLOCK="NCK-код" - разблокировать модем. NCK-код можно вычислить по IMEI. После этого модем может работать с любым GSM-провайдером (оператором).

Отправка SMS

Для этого вы можете использовать Template:Package Official.

Подредактируйте Template:Filename:

[gammu]
port=/dev/ttyUSB0
connection=at
name=huawei e1550
model=

Команда:

gammu sendsms TEXT <номер телефона: +7..........> -text <текст сообщения>

Запросы USSD

Используйте пакет Template:Package AUR.

Ссылки