La comunicación a través de redes móviles es una forma de transmitir datos sin la necesidad de tener un módem ADSL. Los módem ADSL tienden a ser mucho más rápidos y más confiables que las redes móviles, debido a que sus datos no sufren de tantos tipos de interferencia. Las comunicaciones móviles se hacen mas eficientes entre más cerca nos encontremos a la torre de transmisión.
El caso de uso es simple. Se suele utilizar las redes móviles en lugares donde no se tenga acceso a un módem ADSL o red WiFi que este conectada a un módem ADSL. En el caso de que se tenga ambos, es mucho mejor utilizar la red WiFi debido a que la comunicación a través de redes móviles trae cargos mensuales por el uso del plan de datos.
El Linkit Smart Duo 7688 (o Arduino Yún / Linino ONE) ofrece una interfaz WiFi poder conectar a Internet nuestros proyectos. Esta interfaz es de fácil configuración, debido a que presenta una interfaz gráfica fácil de manejar para conectarse una red WiFi existente. Sin embargo, no ofrece una interfaz para poder conectarse a un módem 3G/4G/GSM fácilmente. Para esto se tiene que recurrir a la capa inferior, osea a la linea de comandos de OpenWRT.
Requisitos
- Modem GSM/3G/4G. Para esta publicación se usara el Huawei E303, el cual es un modem 3G y 2G. Este modelo fue utilizado por Claro en Panamá por muchos años.
- LinkIt Smart Duo 7688
- Conocimientos básicos sobre como conectarse a través de SSH o utilizando el puerto UART2 del Linkit. Es recomendable utilizar el puerto serie (ver «Utilizacion del puerto UART2»), debido a que podemos seguir conectados al dispositivo cuando se conecte a Internet través del módem.
- Tarjeta microSD para poder instalar todos los paquetes necesarios. Para la instalación de OpenWRT en la microSD fácilmente, referirse a Expandir la memoria del Linkit Smart Duo .
Instalación de paquetes necesarios
Se necesita entrar a la terminal de Linux de OpenWRT. Como se dijo anteriormente, se puede realizar a traves de SSH o del puerto UART2. En esta publicación se usara el puerto UART2 ya que permite cambiar de redes sin desconectarse de la terminal.
Luego se procede a instalar los paquetes necesarios y reiniciar el dispositivo.
1 2 3 |
opkg update opkg install nano usbutils comgt kmod-usb-serial kmod-usb-serial-option kmod-usb-serial-wwan usb-modeswitch reboot |
Con esto tenemos lo necesario instalado. Ahora solo falta configurar.
Configuración general del modem GSM
La configuracion se basa en:
- Crear una interfaz (WAN) que pueda acceder a Internet a través del módem.
- Configurar esa interfaz con el APN, usuario y contraseña de la compañía móvil.
- Configurar el chatscript
Esto es teniendo en cuenta de que el módem se encuentra en modo de convertidor de puerto serie a 3G/GSM. El problema con algunos dispositivos (en especial el Huawei E303) es que se configuran por defecto para ser configurados a través de una pagina web que levanta el propio dispositivo. El problema viene cuando no se puede ingresar a esta pagina web fácilmente, como es el caso del LinkIt debido a que no tiene un ambiente de escritorio (DE).
Para saber si se esta conectado, se debe tener algo parecido en los registros de conexión de dispositivos:
1 |
dmesg |
En el caso del Huawei E303, el modo de fallback (serie a GSM/3G) tambien se puede verificar con la herramienta usbutils.
1 |
lsusb |
En donde el identificador en hexadecimal de VENDOR:ProductID debería ser
1 |
12d1:1001 |
Si no se tiene esto, entonces el módem no esta en el modo correcto. Desde versiones recientes de OpenWRT el modo debería cambiarse automáticamente. Sin embargo, para algunos dispositivos esto no funciona correctamente. En el caso del Huawei E303 que se utilizó para esta publicación se necesito reconfigurar el archivo que gobierna el cambio de modos. Este archivo se encuentra en:
1 |
/etc/usb-mode.json |
Si se desea utilizar el archivo de configuración utilizado en esta publicación se debe reemplazar el archivo anterior por el siguiente.
1 2 3 4 5 6 |
cd / opkg update && opkg install wget && wget -O usb-mode.json https://raw.githubusercontent.com/PanamaHitek/ArduinoYun/master/huaweiE303/usb-mode.json --no-check-certificate chmod 755 usb-mode.json mv /etc/usb-mode.json /etc/usb-mode.json.backup mv usb-mode.json /etc/ reboot |
Ahora esperamos que se reinicie el dispositivo y tendremos los resultados de dmesg mostrados anteriormente.
Configuración de la interfaz WAN
Para esto debemos abrir el archivo network
1 |
nano /etc/config/network |
Y reemplazamos la configuración de la interfaz WAN por la siguiente:
1 2 3 4 5 6 7 8 |
config interface 'wan' #option ifname 'ppp0' option device '/dev/ttyUSB0' option apn 'web.claro.com.pa' option service 'umts' option proto '3g' option username 'CLAROWEB' option password 'CLAROWEB' |
Esta configuración es para Claro Panamá. Si deseas utilizar otro proveedor, asegúrate que el módem este liberado y que pueda aceptar las frecuencias de esa red. Ademas, debes cambiar los parametros apn, username, y password de la configuración anterior.
Para Panamá:
Proveedor | APN | Username (usuario) | Password (Contraseña) |
Claro | web.claro.com.pa | CLAROWEB | CLAROWEB |
Movistar | internet.movistar.pa | movistarpa | movistarpa |
Digicel | web.digicelpanama.com | ||
Mas Móvil | apn01.cwpanama.com.pa |
Cabe destacar que las redes de Digicel y de Mas Móvil no requieren de un usuario o contraseña.
Configurar el chatscript
Este archivo es el que se encarga de conectarse con el servicio de autenticación del proveedor. Para esto abrimos el archivo siguiente:
1 |
/etc/chatscripts/3g.chat |
Y reemplazamos su contenido por:
1 2 3 4 5 6 7 8 9 10 11 12 |
ABORT BUSY ABORT 'NO CARRIER' ABORT ERROR REPORT CONNECT TIMEOUT 10 "" "AT&F" OK "ATE1" OK 'AT+CGDCONT=1,"IP","$USE_APN"' SAY "Calling UMTS/GPRS" TIMEOUT 30 OK "ATD*99#" CONNECT ' ' |
O podemos utilizar el siguiente script que reemplaza el archivo anterior:
1 2 3 4 5 |
cd / opkg update && opkg install wget && wget -O 3g.chat https://raw.githubusercontent.com/PanamaHitek/ArduinoYun/master/huaweiE303/3g.chat --no-check-certificate chmod 755 3g.chat mv /etc/chatscripts/3g.chat /etc/chatscripts/3g.chat.backup mv 3g.chat /etc/chatscripts/ |
Con esto ya tenemos todo listo. Ahora intentaremos levantar esa red
1 |
ifup wan |
Esperamos unos segundos y ya deberíamos tener acceso a internet. Para verificar esto podemos introducir el siguiente comando que nos devolverá nuestra IP:
1 |
curl http://canhazip.com |
Consumo de corriente
Se realizaron las siguientes pruebas, basados en la siguiente publicación.
Prueba | Consumo de corriente (A) |
WiFi + 3G | 0.19 |
WiFi + 3G + descarga de un archivo | 0.19 |
WiFi + 3G + descarga de un archivo + 1 cliente (WiFi) | 0.19 |
Conclusiones
Se probo la velocidad del módem 3G y alcanzaba velocidades bastante aceptables (~700 KB/s). Esto quiere decir que el módem es altamente recomendado en casos de usos donde se requiera de una conexión periódica a Internet, y en donde el flujo de datos sea moderado.
El consumo de corriente del dispositivo es consistente y no tiende a variar con el tiempo ni con la carga del mismo. Esto puede ser por el tipo de regulador utilizado en la placa del LinkIt.
Esperamos que esta información sea de utilidad para ustedes. Saludos.