Guía para la instalación y configuración de los drivers del SmartLink Módem Motorola SM56

Esta es una actualización de la guía para instalar y configurar los drivers del SmartLink Módem Motorola SM56 en Debian, que en un principio fue para Lenny y ahora es para Squeeze (también es válida para la instalación en Ubuntu).

Lo primero que hay que destacar es que los paquetes de dichos drivers se encuentran en la sección non-free de los repositorios de Debian, así que les recomendamos editar primeramente el archivo que se encuentra en /etc/apt/sources.list con su editor preferido para incluirla:

# gedit /etc/apt/sources.list

donde debe quedar algo como esto:

deb http://.../debian/ squeeze main contrib non-free
deb-src http://.../debian/ squeeze main contrib non-free
...

1. Preparar el sistema

Ya que es necesario compilar los drivers, es necesario el paquete de headers para nuestro kernel, además de algunos otros paquetes.

# aptitude install linux-headers-$(uname -r) make gcc dkms

además

# aptitude install gnome-ppp(o kppp) ppp pppconfig wvdial

Paquetes que aportan los drivers del módem y con los que se trabajará fundamentalmente
sl-modem-source (de acuerdo a la distro que se tenga instalada)
sl-modem-daemon (de acuerdo a la distro que se tenga instalada)

2.Procedimiento

Orden de instalación de los paquetes y compilación de los drivers:

Una vez que hayamos instalados los paquetes antes mencionados, debemos instalar el paquete sl-modem-source:

# aptitude install sl-modem-source

Este por defecto debe crear en el directorio /usr/src/ la carpeta sl-modem-*, donde se encuentra los drivers "slamr" y "ungrab-winmodem".

Acto seguido, instalamos el sl-modem-daemon, que por defecto se instala en /usr/sbin/ como slmodemd:

# aptitude install sl-modem-daemon

Posteriormente, entramos en la carpeta sl-modem-* ubicada en /usr/src/:

# cd /usr/src/sl-modem-*

Dentro de esta encontramos las carpetas «ungrab-winmodem» y «drivers», y otras, pero estas dos son las que nos interesan. Primero entramos en la carpeta «ungrab-winmoden» para dar paso a la compilación del primer driver:

# cd /usr/src/sl-modem-*/ungrab-winmodem
# make
# make install
# modprobe ungrab-winmodem

Luego, entramos en la carpeta «drivers»:

# cd /usr/src/sl-modem-*/drivers
# make
# make install
# modprobe slamr

Con el ungrab-winmodem y el slamr ya instalados, ejecutamos:

# /etc/modprobe.d/sl-modem-daemon.conf

Para ver los cambios:

# dmesg | grep slamr

Entonces, ejecutamos:

# slmodemd -c YOUR_COUNTRY  /dev/slamr0 (en el caso de Cuba, en YOUR COUNTRY se puede usar "USA")

Con esto se deben crear los puertos y enlaces simbólicos slamr0 y ttySL0 en /dev/

Es probable que en Debian tengamos que trabajar un poquito más, pues después de este paso no siempre se crean los puertos y links simbólicos.
Así que si después de ejecutar slmodemd no se crean los puertos y enlaces simbólicos:
/dev/ttySL0 --> /dev/pts/N , N algún número

procedemos a ejecutar:

# lsmod | grep ungrab
# /etc/init.d/sl-modem-daemon stop
# ls -l /dev/pts/*
# /etc/init.d/sl-modem-daemon start
# lsmod | grep ungrab
# lsmod | grep slamr
# ls -l /dev/pts/* /dev/slamr0 /dev/ttyS*

3.Configuración

Configurando wvdial:
WVdial nos va a indicar en qué puerto se encuentra nuestro módem, a qué velocidad máxima se puede conectar, entre otros detalles importantes para la conexión, así que:

# wvdialconf  /etc/wvdial.conf

Si no se incluyen automáticamente todos los detalles en el archivo wvdial.conf, entonces habrá que agregárselos a mano utilizando nuestro editor favorito:

# gedit /etc/wvdial.conf

Donde debemos agregar lo siguiente, además de nombre de usuario, contraseña y teléfono por el cual se establece la conexión:

Configurando una cuenta con pppconfig donde:
Dejamos “provider” como nuestro proveedor de servicio. No se aconseja darle otro nombre porque cuando el programa se ejecuta buscará “provider”.
Damos nuestro nombre de usuario, contraseña y número por el cual nos conectamos.
Que sea una conexión por Chap.

Luego de configurar una cuenta con pppconfig, se debe editar el archivo «provider» en /etc/ppp/peers/ por si es necesario agregar algo. También se verifica el archivo «options» en /etc/ppp/ para comprobar si en la línea «auth» le antecede el signo #, si no lo tiene, hay que agregárselo. En la carpeta /etc/chatscripts/provider, editar la línea OK-AT-OK "AT3XDT8314040” añadiendo “3X”.

Ya lo único que nos queda es establecer conexión mediante el comando en consola:

# wvdial

Ahora, si preferimos automatizar el proceso de conexión se puede utilizar gnome-ppp o kppp, en dependencia del escritorio que estemos utilizando, donde si no se han agregado por defecto los datos anteriores, se pueden poner manualmente, es decir:

Si queremos que nuestro usuario o un usuario determinado efectúe la conexión sin loggearnos como root, pues hay que darle permiso de ejecución al demonio ppp:

$ ls -l /usr/sbin/pppd
-rwsr-xr--  1 root dip 257720 2006-07-05 08:58 /usr/sbin/pppd
$ su - root
# chmod a+x /usr/sbin/pppd
$ ls -l /usr/sbin/pppd
-rwsr-xr-x  1 root dip 257720 2006-07-05 08:58 /usr/sbin/pppd

Y darle los privilegios a nuestro usuario o usuario determinado empleando la vía:

Es bueno aclarar que para las pc con arquitectura amd64 no existe aún el paquete binario de sl-modem-source, por lo cual hay que usar el paquete fuente directamente.

¿Cómo saber si su módem es soportado por SmartLink? Para ello existe un programa llamado scanModem (http://linmodems.technion.ac.il), que al ejecutarse:

$ gunzip scanModem.gz scanModem
$ chmod +x  scanModem
./scanModem

crea una carpeta de nombre «Modem» en el /home/usuario. En esta encontramos varios archivos, entre ellos «ModemData.txt» donde nos dirá qué drivers necesitamos. Si no logramos interpretar éste, se puede enviar un mensaje de correo a los expertos de Linmodem.org (Discuss@Linmodems.org) con el archivo ModemData.txt en «Adjunto», y en el «Asunto» su nombre, país y no. de kernel. Estos les indicarán con gusto cómo proceder, aunque la comunicación debe ser en inglés.

4.Referencias

- Archivos generados en la carpeta "Módem" tras ejecutar la aplicación scanModem.
- Sugerencias e indicaciones de los desarrolladores principales de Linmodems, Marvin Stodolsky y Antonio Olivares.

Nota: Está claro que si no se tiene otro tipo de conexión, entonces estos paquetes se deben descargar previamente y luego instalarlos con el comando:

# dpkg -i (nombre del paquete)