Busindre » Blog Archive » How-To D-Link DWL-G122 WiFi Dongle (USB)

How-To D-Link DWL-G122 WiFi Dongle (USB)

May 31st, 2006 by Busindre

 

Hace tiempo que puse a funcionar mi dongle USB en GNU/Linux, lo hice emulando los controladores -drivers- originales de Windows con ndiswrapper porque creo que por la época en la que me lo compré no había controlador nativo. Gracias a Daniel Estevez en un comentario en Barrapunto me enteré de que ya estaban disponibles en la propia web de Ralink. Ya que ha habido un par de meneos sobre WiFi y ndiswrapper en menéame pero ninguna explicando un controlador nativo, y ya que yo he tenido la posibilidad de levantar éste dispositivo con él, me dispongo a explicarlo: Lo primero es ver qué revisión del hardware tenemos, para ello o bien miramos el dispositivo (en la etiqueta) o bien utilizamos el comando lsusb:

[root@localhost ~]# lsusb
Bus 002 Device 004: ID 07d1:3c03 D-Link System

En mi caso llegamos a la conclusión de que es la revisión C1, y gracias al wiki de ndiswrapper vemos el chipset que trae, Ralink RT73 (RT2571W). Acabo de añadir en el wiki que con el driver nativo funciona perfectamente, pero si no, podríamos haber ido a la página oficial de Ralink a ver si ya había salido el controlador. Nos bajamos el controlador de la página de Ralink y lo extraemos en el directorio oportuno:

[root@localhost RT73]# tar -xzf RT73_Linux_STA_Drv1.0.3.0.tar.gz

En el directorio Module de los directorios descomprimidos leemos el archivo README (es muy importante leer este tipo de archivos, así como los INSTALL) y en él se nos dice cómo instalar el controlador, así que lo seguimos.

Pasos:
1. Copia el archivo ‘Makefile.6′ a ‘Makefile’ (para núcleos 2.6.X, para 2.4.X lo mismo pero con Makefile.4).

2. Cambio de permisos para Configure: chmod 755 Configure

3. Ejecutamos el Configure: ./Configure

4. La ruta para (mi) Fedora Core es: /usr/src/kernels/2.6.11-1.1369_FC4-i686* (puede variar)

5. [#1] Editar el archivo ‘rtmp_def.h’ y añadir en la sección VENDORS -línea 800-:

#define DLVID1 0×07d1
#define DLPID1 0×3c03
en el define RT73_USB_DEVICES añadir:
{USB_DEVICE(DLVID1,DLPID1)}, \

6. Ejecutar: make all

7. Cambiar el formato del archivo ‘rt73sta.dat’: dos2unix rt73sta.dat

8. Crear los directorios: /etc/Wireless/ y /etc/Wireless/RT73STA/

9. Copiar los archivos ‘rt73sta.dat’ ‘rt73.bin’ a /etc/Wireless/RT73STA/

10. Editar el archivo ‘rt73sta.dat’ de acuerco con nuestras preferencias, como el canal, la MAC del
punto de acceso, el modo, el
ESSID y demás -la configuración se podrá cambiar con el comando iwconfig posteriormente-.

11. En Fedora Core se puede editar un archivo: ‘ifcfg-rausb0′ que está en el directorio ‘/etc/sysconfig/network-scripts/’ donde se pueden añadir un par de líneas para que se cargue automáticamente la configuración del controlador al arrancar, por ejemplo:

DEVICE=’rausb0′
ONBOOT=’yes’

y para arrancar con DHCP:

BOOTPROTO=’dhcp’

En debian con editar correctamente el archivo ‘interfaces’ que está en ‘/etc/networking/’ nos vale.

12. En el archivo ‘/etc/modules.conf’ o ‘/etc/modprobe.conf’ -dependiendo de tu distro-, debemos añadir la línea:

alias rausb0 rt73

13. Insertar el módulo en el núcleo: insmod rt73.ko

14. Configurar la tarjeta con ‘iwconfig’ e ‘ifconfig’

Un ‘iwconfig’ a secas nos dará una salida similar a esta:

[root@localhost Module]# iwconfig lo no wireless extensions.
eth0 no wireless extensions.
eth1 no wireless extensions.
sit0 no wireless extensions.
rausb0 RT73 WLAN ESSID:"netlab"
Mode:Managed Frequency=11 MHz Access Point: 00:03:47:15:BC:CC
Bit Rate=11 Mb/s
RTS thr:off Fragment thr:off
Encryption key:off
Link Quality=87/100 Signal level:-42 dBm Noise level:-79 dBm
Rx invalid nwid:0 Rx invalid crypt:0 Rx invalid frag:0
Tx excessive retries:0 Invalid misc:0 Missed beacon:0

Con iwconfig se pueden cambiar los parámetros de configuración del dispositivo inalámbrico, valga como ejemplo:

[root@localhost ~]# iwconfig rausb0 mode managed essid [tal] key [cual] ap any

Como la idea no es enseñar a configurar una red wireless sino hacer que funcione el dispositivo, ésto se queda aquí, en breve la versión más documentada, el por qué no funciona con ndiswrapper bajo Fedora Core y, además, en inglés.

Se ve que la única dificultad fue editar el archivo de cabeceras porque en el controlador nativo faltaba nuestro fabricante, curioso por otra parte, porque el resto del manual se resume en seguir los pasos del archivo README.

Nota: Aloriel tiene una versión del manual en inglés accesible desde este enlace.

Posted in Hardware |

4 Responses

  1. Atreliz Says:

    Si que es pequeño el mundo no sabia qeu conocias a Aloriel…

  2. Sergio Says:

    Le leía en Barrapunto, y ahora leo su blog con regularidad. ¿Tú le conoces, Atreliz?

  3. Atreliz Says:

    Claro, va conmigo a la universidad, aunq ahora esta de erasmus..

  4. Jefferson Says:

    Muchas gracias, tú á me salvado.
    Tengo 13 de éstas USB comigo y ahora ellas están listas.
    [ ] ’s

Leave a Comment

Please note: Comment moderation is enabled and may delay your comment. There is no need to resubmit your comment.