Router WiFi GSM utilizând LinkIt Smart 7688

Asigurarea conexiunii la Internet în cazul absenței unei conexiuni terestre (prin cablu sau fibră optică) se poate face, bineînțeles, apelând la serviciile oferite de companiile de telefonie mobilă prin intermediul unei cartele SIM ce oferă transfer de pachete de date. Există multe opțiuni comerciale pentru implementarea acestei facilități de routare între o rețea de date WiFi și o rețea GSM: routere WiFi GSM, telefoane mobile ce funcționează ca AP (tethering) ș.a.m.d. dar majoritatea acestor soluții nu oferă o flexibilitate sau un control al conexiunilor foarte bune. Din acest motiv realizarea unui router „personalizat” se poate dovedi și o soluție mult mai ieftină și o metodă de a implementa mecanisme de filtrare, autentificare, control al conexiunilor mult mai sofisticate.

Pentru implementare vom utiliza o placă de dezvoltare LinkIt Smart 7688 bazată pe circuitul SoC MediaTek MT7688AN și care rulează distribuția Linux OpenWRT. Această placă de dezvoltare oferă, la un preț redus, toate facilitățile de routare, filtrare și control al traficului TCP/IP oferite de sistemele de operare Linux. Pentru mai multe detalii legate de funcționarea și utilizarea plăcii de dezvoltare LinkIt Smart 7688 puteți consulta wiki-ul oficial. Pentru conexiunea de date GSM vom utiliza un modem USB GSM – testele au fost realizate utilizând un modem Huawei E220 dar se poate utiliza orice alt modem USB GSM compatibil. Conectarea modemului USB la placa de dezvoltare necesită un adaptor microUSB – USB. Alimentarea sistemului se va face la 5V, minim 500mA – preferabil 1A (orice încărcător de mobil de 1A și mufă microUSB e bun).

2

La punere în funcțiune a plăcii de dezvoltare aceasta funcționează în mod AP. Ne vom conecta la AP-ul LinkIt_Smart_7688_XXXXXX și apoi la interfața de administrare web (IP 192.168.100.1).

3

La prima conectare se va stabili parola utilizatorului root (contul de administrare a sistemului de operare).

4

Pentru a putea instala pachetele software necesare funcționării modemului USB GSM vom configura placa de dezvoltare ca și client WiFi – Station Mode (pentru a avea conexiune Internet).

ATENȚIE!!! Placa de dezvoltare are definită implicit o interfață de rețea cu IP-ul 192.168.100.1 . Orice încercare de a introduce placa de dezvoltare într-o rețea ce oferă prin DHCP adrese IP în clasa 192.168.100.0/24 va eșua.

După configurarea și repornirea plăcii ne putem conecta la aceasta prin SSH (utilizând PUTTY de exemplu). IP-ul de conectare depinde de rețeaua locală. Vom rula următoarele comenzi pentru instalarea pachetelor software necesare configurării conexiunii de date GSM:

# opkg update

# opkg install comgt kmod-usb-serial kmod-usb-serial-option kmod-usb-serial-wwan usb-modeswitch

Eventual putem instala și un editor de text suplimentar dacă nu ne place vi :

# opkg install nano

Având conectat modemul USB GSM vom reporni placa de dezvoltare. Ne vom reconecta prin SSH și vom verifica dacă modemul este recunoscut de sistemul de operare în mod corect (vom rula comanda dmesg).

6

În cazul în care modemul este recunoscut corect de sistemul de operare vom regăsi în jurnalul de pornire a sistemului de operare (consultat anterior cu ajutorul comenzii dmesg) linii care indică instalarea modemului GSM ca dispozitiv specific USB (ttyUSB0 de exemplu). În cazul în care modemul este văzut ca alt tip de dispozitiv (de stocare în masă – memorie usb de exemplu) înseamnă că pachetul usb-modeswitch care se ocupă de autoconfigurarea modemului nu are în baza de date proprie modelul de modem utilizat. Este recomandat să căutăm un modem care să fie deja în baza de date a pachetului software. Configurarea manuală a modemului este destul de dificilă. Pentru mai multe informații se poate parcurge materialul „Use 3g/UMTS USB Dongle for WAN connection”.

Pentru a putea accesa Internetul prin intermediul modemului USB GSM este nevoie să avem o cartelă SIM funcțională (se poate testa prealabil modemul pe un sistem de calcul obișnuit) și să realizăm următoarele configurări în fișierele sistemului de operare. În fișierul /etc/config/network vom adăuga la final (pinul și APN-ul sunt specifice cartelei SIM utilizate):

config interface ‘gsm’

        option proto ‘3g’

        option service ‘umts’

        option device ‘/dev/ttyUSB0’

        option apn ‘net’

        option pincode ‘0000’

În fișierul /etc/config/firewall vom adăuga noua interfață de rețea în categoria wan :

config zone

        option name ‘wan’

        list network ‘gsm’

        …

Pentru ca intefața GSM să fie pornită automat după repornirea sistemului vom adăuga în fișierul /etc/rc.local linia ifup gsm (comanda de pornire a conexiunii GSM) înainte de linia exit 0 .

ifup gsm

exit 0

După finalizarea configurării conexiunii GSM (se poate reporni sistemul și verifica prin intermediul comenzii route dacă există conexiune Internet GSM) se va trece sistemul în configurație AP din interfața web de administrare (se va stabili numele și parola de acces pentru rețeaua WiFi).

7

După o ultimă repornire a sistemului routerul WiFi GSM este gata de utilizare. Acesta va oferi adrese în clasa 192.168.100.0/24 și vom putea accesa interfața de administrare prin intermediul adresei IP 192.168.100.1 . Pentru configurări avansate (firewall, port-forwarding) se poate accesa consola Luci specifică sistemului de operare OpenWRT (link în interfața de administrare, încercuit cu roșu în imaginea precedentă).

În cazul în care se efectuează modificări ale sistemului de operare care conduc la stări nefericite din care nu știm cum să ieșim, există întotdeauna posibilitatea de a reseta placa la setările inițiale și de a relua procesul de configurare de la început. Pentru resetarea plăcii la setările inițiale se va ține apăsat minim 20 de secunde butonul WiFi Reset.

9

O posibilă îmbunătățire a sistemului nostru este adăugarea unei antene WiFi externe pentru creșterea puterii semnalului. Placa are un conector special I-PEX pentru acest lucru dar utilizarea acestuia necesită dezlipirea de pe placă a unei rezistențe (imagine de mai jos).

10