Instalacja i uruchomienie modemów GSM USB
Ostatnia zmiana: 2016-07-12 17:40

Opisane wskazówki po ich zastosowaniu umożliwiają pracę danego modemu w systemie OpenWrt.

Interfejs określony jako "diagnostyczny" może być wykorzystany do projektu 3ginfo.

Większość modemów powinna działać poprawnie po instalacji sterowników kmod-usb-serial-option. Interfejsem komunikacyjnym jest wtedy /dev/ttyUSB0, interfejsem diagnostycznym - ostatni z dostępnych. np: /dev/ttyUSB2 lub /dev/ttyUSB4. Dotyczy to większości popularnych modemów Huawei - E159, E169, E170, E220, a także telefonów komórkowych.

Jeżeli modem zawiera w sobie wbudowane sterowniki dla systemu Windows, należy także zainstalować pakiety odpowiedzialne za przełączenie urządzenia w tryb modemu.


    # opkg install usb-modeswitch

Poniżej przedstawiono listę modemów specyficznych, wymagających specjalnych ustawień i instalacji dodatkowych pakietów. Opcje pincode, apn, username oraz password należy oczywiście podać specyficzne dla danej karty SIM i operatora. Szczegóły dostępne są w dokumencie Router 3g. Inne modemy powinny działać od razu (lub nie zostały jeszcze zgłoszone jako niedziałające...).
Spis modemów działających pod OpenWrt tworzony przez użytkowników zawarty jest w tym wątku. Jeżeli masz działający modem - dopisz się do danych!

NDIS

To inny tryb pracy modemu (w odróżnieniu do "normalnego" - RAS, obsługiwanego przez połączenie ppp). Używanie trybu RAS na ppp nie pozwala na uzyskanie więcej niż 20-30Mbps transferu, dopiero zastosowanie NDIS (w postaci zależnej od typu modemu) pozwala na osiągnięcie większych prędkości.
Wymagana jest instalacja odpowiednich sterowników:

  • Huawei E173 - kmod-usb-net-cdc-ether
  • Huawei E398, Huawei E372, ZTE MF821D - kmod-usb-net-qmi-wwan
  • Huawei E3272, E3276 - kmod-usb-net-ncm
  • Huawei E372, Huawei K4505(E182E) - kmod-huawei-hw-cdc
Obsługa modemów w trybie NDIS lub QMI - patrz ten wątek na forum. W Gargoyle wszystko ustawia się z gui: http://eko.one.pl/forum/viewtopic.php?id=7236
Patrz też: http://eko.one.pl/?p=openwrt-ndis

Modemy LTE

Osobna strona. Generalnie są obsługiwane jak zwykłe modemy (E398, MF821D), przez QMI (E398, MF821D) lub NCM (E3276).

ZTE MF823

Działa w trybie karty sieciowej, wymagane są następujące ustawienia w /etc/config/network:


    config 'interface' 'wan'
        option proto 'dhcp'
        option ifname usb0

Źródło informacji: http://eko.one.pl/forum/viewtopic.php?pid=92753#p92753

Huawei HiLink (E3131s-2, E3273, E3372, E353 i inne)

Jest to inna wersja modemu. Nie ma żadnych dodatkowych oznaczeń na obudowie. Po podłączeniu modem przedstawia się identyfikatorem np 12d1:14db (dla E3131s-2) oraz nazwą Huawei HiLink. W przeciwieństwie do zwykłego modemu ten przedstawia się jako karta sieciowa - cała obsługa APN, SMS, połączeń odbywa się w samym modemie i jest konfigurowane przez przeglądarkę internetową. Modem najczęściej ma adres domyślny 192.168.1.1 (choć może być inny), więc należy zmienić adres routera.
Dla "czystego" OpenWrt":
1. Zmieniamy adres routera:


    # uci set network.lan.ipaddr=192.168.2.1 
    # uci commit network

2. Instalujemy sterowniki CDC:


    # opkg update
    # opkg install kmod-usb-net-cdc-ether

3. wykonujemy polecenie


    # logread | grep CDC

powinna wyświetlić się informacja typu:


Jan  1 01:00:55 OpenWrt user.info kernel: eth2: register 'cdc_ether' at usb-ar71xx-ehci-1, CDC Ethernet Device, 58:2c:80:13:92:63

Interfejs nazywa się w tym przypadku eth2 - może być też np. usb0, więc należy taki ustawić na wan i wznowić połączenie:


    # uci set network.wan.ifname=eth2
    # uci set network.wan.proto=dhcp
    # uci commit network
    # reboot

Dla Gargoyle 1.6.x:
1. Konfiguracja/Podstawowa, sekcja "Internet / WAN", wybieramy połączenie "Kablowe (DHCP)", interfejs wan: usb0, eth2 czy jakiś inny (nie może być "Domyślny")
2. Sekcja "Sieć lokalna /LAN", adres IP urządzenia zmieniamy na 192.168.2.1
3. Zapisujemy zmiany

Dla Gargoyle 1.9.x:
1. Konfiguracja/Podstawowa, sekcja "Internet / WAN", wybieramy połączenie "Modem HiLink/RNDIS"
2. Sekcja "Sieć lokalna /LAN", adres IP urządzenia zmieniamy na 192.168.2.1 (nie jest to konieczne dla niektórych modemów np. E3372)
3. Zapisujemy zmiany

Router będzie dostępny pod adresem 192.168.2.1. Interfejs wan powinien dostać np. adres 192.168.1.100 lub 192.168.8.100. Do konfiguracji modemu można się dostać wpisując w przeglądarkę www adres http://192.168.1.1 lub http://192.168.8.1.

Źródło informacji: informacja własna.

Modemy CDMA

AnyDATA ADU635WA

Jest to modem HSDPA/CDMA. Praca w jednym lub w drugim trybie wymaga odpowiedniej inicjacji modemu i innej konfiguracji połączenia. Wymaga instalacji sterowników kmod-usb-serial-option.


    # opkg install kmod-usb-serial-option

Interfejsy

  • /dev/ttyUSB0 - praca w trybie CDMA
  • /dev/ttyUSB2 - interfejs diagnostyczny
  • /dev/ttyUSB3 - praca w trybie HSDPA
Praca w trybie HSDPA


    config 'interface' 'wan'
        option 'proto' '3g'
        option 'device' '/dev/ttyUSB3'
        option 'pincode' '0000'
        option 'apn' 'internet'
        option 'username' ''
        option 'password' ''

Praca w trybie CDMA
Do poprawnej pracy wymagane jest przełączenie modemu w tryb CDMA. Aby to wykonać należy w pliku /etc/rc.local umieścić następującą sekwencję poleceń:


    echo -ne "\xD7\x03\x00\xAE\xEF\x7E" > /dev/ttyUSB2
    sleep 4
    echo -ne "\xCF\x0D\x00\x00\x81\x8A\x7E" > /dev/ttyUSB2
    sleep 5

Sekcja konfiguracyjna wygląda następująco:


    config 'interface' 'wan'
        option 'proto' '3g'
        option 'service' 'cdma'
        option 'device' '/dev/ttyUSB0'
        option 'pincode' '0000'
        option 'username' 'cdma@orange'
        option 'password' 'orange'

(przykładowa konfiguracja dla CDMA Orange)

Źródło informacji: http://eko.one.pl/forum/viewtopic.php?id=889

AnyDATA ADU890-W

Moje wersje Gargoyle od wersji 1.9.5.3 zawiera pełne wsparcie dla tego modemu, ale pin na karcie musi być jednym z wymienionych: 0000,1111,2222,3333,4444,5555,6666,7777,8888,9999,1234,00000,11111
praca w trybie HSPA+

  • /dev/ttyACM0 - praca w trybie HSPA+
praca w trybie CDMA
Wymagany jest odpowiedni skrypt do podania pinu (patrz link na forum)

  • /dev/ttyACM0 - praca w trybie CDMA
Źródło informacji: http://eko.one.pl/forum/viewtopic.php?pid=50545#p50545 oraz http://eko.one.pl/forum/viewtopic.php?pid=62754#p62754

DGT CT-680

Modem CDMA m.in z usługi iPlus CDMA: http://eko.one.pl/forum/viewtopic.php?pid=42895#p42895

Modemy GSM

Huawei E3372 (nie Hilink!)

Interfejsy

  • /dev/ttyUSB1 - interfejs komunikacyjny
Wymaga włączenia odpowiednich interfejsów:


    AT^SETPORT="A1, A2; 12, 1, 16, A1, A2"

Źródło informacji: http://eko.one.pl/forum/viewtopic.php?pid=119791#p119791

iPlus Commander 2

Identyfikator modemu: 10c4:822b, obsługiwany przez sterownik cp210x


    # opkg install kmod-usb-serial-cp210x

Interfejsy

  • /dev/ttyUSB0
Do poprawnego działania skrypty muszą porozumiewać się z modemem z prędkością 460800, należy więc w pliku /lib/network/3g.sh odszukać linię zawierającą napis 115200 i zamienić go na 460800


    # sed -i -e 's/115200/460800/' /lib/network/3g.sh


Źródło informacji: użytkownicy forum eko.one.pl

Nokia 21M-02

1. Wymaga instalacji sterowników CDC ACM


    # opkg install kmod-usb-acm

2. Wymaga także usunięcia 2 opcji z 2 plików
- /etc/ppp/options (linie 4 i 5)


    noaccomp
    nopcomp

- /lib/netifd/proto/3g.sh (linie 104 i 105)


    noaccomp \
    nopcomp \

Wyżej wymienione linie należy odszukać we wskazanych plikach i je usunąć.

Interfejsy

  • /dev/ttyACM0 - interfejs do połączenia
  • /dev/ttyACM1 lub /dev/ttyACM2 - interfejs diagnostyczny
Źródło informacji: https://forum.openwrt.org/viewtopic.php?id=34813 i informacja własna (http://eko.one.pl/forum/viewtopic.php?pid=36851#p36851)

Novatel Ovation MC990D

Modem wymaga przełączenia przed uruchomieniem. Wykonuje się to "wysuwając" wirtualny modem. Najpierw należy zainstalować niezbędny program sdparm


    # opkg install sdparm kmod-scsi-generic

a następnie "wysunąć" modem poleceniem


    # sdparm --command=eject /dev/sg0

Od tego momentu modem powinien normalnie działać.
Interfejsy

  • /dev/ttyUSB0 - praca w trybie HSDPA
  • /dev/ttyUSB3 - interfejs diagnostyczny
Praca w trybie HSDPA


    config 'interface' 'wan'
        option 'proto' '3g'
        option 'device' '/dev/ttyUSB0'
        option 'pincode' '0000'
        option 'apn' 'internet'
        option 'username' ''
        option 'password' ''


Źródło informacji: informacja własna

Vodafone K3805-Z

http://eko.one.pl/forum/viewtopic.php?pid=32963#p32963

ZTE MF195

Identyfikator USB przed przełączeniem: 19d2:1514, po przełączeniu: 19d2:1515, Modem przedstawia się (ATI) jako


MF195-2.0.0

Prawdopodobnie jest na chipsie Icera.
Wymaga instalacji sterowników kmod-usb-acm.


    # opkg install kmod-usb-acm

Interfejsy

  • /dev/ttyACM0 - interfejs komunikacyjny/diagnostyczny
  • /dev/ttyACM1 - interfejs komunikacyjny/diagnostyczny
Modem można przełączyć na stałe (odłączyć wbudowany wirtualny CDROM) poleceniem AT%USBMODEM=0 (to polecenie modemu, nie systemu OpenWrt!)

W niektórych przypadkach może okazać się koniecznie usunięcie kilku opcji z ppp:
- w pliku /etc/ppp/options usunąć linie z


    noaccomp
    nopcomp

- w pliku /lib/netifd/proto/3g.sh (dla Attitude Adjustment lub trunka) usunąć linie


    noaccomp \
    nopcomp \


Można to wykonać poleceniami


    # sed -i '/noaccomp/d' /etc/ppp/options
    # sed -i '/nopcomp/d' /etc/ppp/options
    # sed -i '/noaccomp/d' /lib/netifd/proto/3g.sh
    # sed -i '/nopcomp/d' /lib/netifd/proto/3g.sh


Źródło informacji: informacja własna