lunes, 14 de junio de 2010

Configuracion D-Link DWA-125 en Ubuntu 10.04

Bueno, tras más de tres meses de no escribir en el blog, vuelvo al ataque. Y no para escribir huevadas, sino para dejar constancia de algo que técnicamente merece ser posteado.


Se me hincharon las bolas de tantos cables en la compu. Y para eliminar al menos el cable de red entre la PC y el router wireless, acabo de comprarme el Adaptador Wireless D-Link DWA-125 USB.

Inicialmente quise comprar el modelo DWA-110 que según esta pagina está soportado perfectamente. Miro en la página del proveedor y había stock. Pero al llegar me dice que en la página está desactualizado y solo quedaba el modelo 125. Así que compré otro que no estaba seguro si estaba soportado o no. Y al llegar y mirar el listado de la página de compatibilidades, ni siquiera figuraba ese modelo :(

Entonces empecé a navegar por todos lados en búsqueda de info técnica respecto al bichito y casos de otras personas que le hubiera pasado lo mismo. Estuve en este link, en este otro, y unos cuantos más. Instalé los drivers oficiales y todo. Pero nada sirvió, incluso tuve que desinstalar los drivers oficiales ubicandome en la carpeta donde están los drivers:

sudo make uninstall; sudo make clean

Hasta que finalmente y después de muchas vueltas fui a parar a esta dirección:


Me pareció un poco largo el procedimiento, pero ya no tenía nada que perder. Así que empecé. Y funciono!!! Paso a explicar lo que hice. Pasando en limpio los pasos, fueron estos:

1. Buscar el id del adaptador. Esto se hace usando el comando 'lsusb'. En ni caso dice así:

Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 001 Device 002: ID 07d1:3c0d D-Link System
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

2. Lo que me interesa es el número '07d1:3c0d', el cual uso en el siguiente script (sin poner el ':'):

echo 'install rt2870sta modprobe --ignore-install rt2870sta ; /bin/echo "07d1 3c0d" > /sys/bus/usb/drivers/rt2870/new_id' | sudo tee /etc/modprobe.d/rt2870sta.conf

La indicación de 'rt2870' es para especificar el driver del aparatito. Por todos lados dice que es 'rt3070'. Pero en el fondo el 'rt3070' termina usando el 'rt2870', así que lo configuro con el primero y listo.

3. Posiblemente haya otros drivers jodiendo las bolas (de hecho, generaban conflicto con los nuevos), así que me puse a eliminar algunos:

sudo modprobe -rf rt2800sta
sudo modprobe -rf rt2x00sta
sudo modprobe -rf rt2800usb
sudo modprobe -rf rt2870sta

4. Tras la limpieza, apliqué los siguientes comandos:

sudo modprobe -rf rt2870sta
sudo modprobe rt2870sta
dmesg | egrep 'rt28|usb|Phy'

Y finalmente verificar si se cargó 'ra0' haciendo 'iwconfig', devolviendo algo similar:

lo no wireless extensions.

eth0 no wireless extensions.

ra0 RT3070 Wireless ESSID:"11n-AP" Nickname:"RT3070STA"
Mode:Auto Frequency=2.412 GHz Access Point: Not-Associated
Bit Rate:1 Mb/s
RTS thr:off Fragment thr:off
Link Quality=10/100 Signal level:0 dBm Noise level:-115 dBm
Rx invalid nwid:0 Rx invalid crypt:0 Rx invalid frag:0
Tx excessive retries:0 Invalid misc:0 Missed beacon:0

Listo!!! Habemus conexión inalámbrica!!!

Solo me faltaba poner el comando que carga los drivers cada vez que arranque la máquina. Editando el 'rc.local':

sudo vim /etc/rc.local

Agrego lo siguiente:

sudo modprobe rt2870sta


UPDATE 29/03/2011: Volví a hacerlo, ya que tuve que reinstalar la PC y nuevamente puse Ubuntu 10.04, y funcionó

18 comentarios:

Ambiente Regional dijo...

Estimado Fernando

Muy bueno tu post. Pero aunque he seguido tus instrucciones no he podido obtener los mismos resultados.

Es el único con que he logrado que al menos se encienda una luz roja en el dwa-125.

Según veo, se trata de un problema con los drivers que ya tiene el equipo. Creo que existen conflictos. Pero no sé cómo saber cuál(es) ya tengo y cómo debo eliminar(los).

Sigo al pie de la letra lo que indicas y cuando escribo iwconfig, luego Enter, el sistema se queda pegado y debo apagar el equipo...?

Si me puedes dar una mano con esto, te estaré muy agradecido.

Saludos cordiales,

ppellet

Fernando Bombo dijo...

Hola. Por lo que comentás que debés reiniciar el equipo, huelo que hay un problema de incompatibilidad del hardware, pero no estoy seguro.

Como primer medida, sería bueno probar el pen en otra compu y chequear que funcione. Probalo, por ejemplo, instalandola en una compu con Win$ para asegurarte que no sea un problema del pen. Instalale el driver que trae y fijate si funciona.

Si bien tuve que luchar un poco entre buscar la página correcta y sacar los drivers que molestaban, estuve un buen rato jugando con este tema.

Lamentablemente no puedo darte más ayuda de la brindada en el posteo y lo sugerido recien. Espero tengas suerte y lo hagas funcionar.

Saludos. Fernando

Fernando Bombo dijo...

Si tenés Win$ instalado en esa misma máquina, mejor. Así probás si sigue fallando con ese hardware en otro sistema operativo.

Saludos. Fernando

Patricio Pellet dijo...

Fernando

Muchas gracias por tu ayuda.

Ahora esta funcionando el dwa-125. Sólo lo cambié de posición. Lo había probado en dos USBs que tengo al frente del equipo, pero ahora lo puse en otra donde conectaba el mouse y comenzó a trabajar de inmediato.

Eso sí, no he probado reiniciando, pero al menos ya está en funciones este aparato.

Saludos y mucho éxito.

ppellet

Ruben dijo...

Excelente!!
Me funcionó de primera. Tengo instalado
Intrepid_8-10 2.6.28-19-generic #64-Ubuntu SMP
Mi identificacion de producto es distinta (3c16), seguramente otra revisión. lsusb me dá:

Bus 001 Device 003: ID 07d1:3c16 D-Link System

La página que te inspiró tenía un fabricante distinto al 07d1=D-Link, sin embargo funciona. Esto me hace pensar que no es un problema de driver, sino de como asocia el dispositivo con el driver,que se logra con:
echo 'install rt2870sta modprobe --ignore-install rt2870sta ; /bin/echo "07d1 3c16" > /sys/bus/usb/drivers/rt2870/new_id' | sudo tee /etc/modprobe.d/rt2870sta.conf

Lo que no enciende es la luz roja... :-(
Pero anda muy bien.
Saludos
Rubén

neodevelop dijo...

Muchas gracias, me funciono y hasta me corrigio un error con otra tarjeta que no agarraba nada...
Saludos

Unknown dijo...

Una Duda... antes ejecutar el script es preciso instalar algun driver antes???

Nemo dijo...

ra0 Ralink STA
Link Quality:0 Signal level:0 Noise level:0
Rx invalid nwid:0 invalid crypt:0 invalid misc:0

el problema es q tengoi esto, y hya me qde, uso fedora 14, no se si haya alguna diferencia...

mataweas dijo...

puedes explicarme bien el comando "sudo vim /etc/rc.local" debido a que no entiendo a que te refieres con modificar el "rc.local"

Nemo dijo...

respecto al vim pued remplazarlo por el gedit asi, sudo gedit /etc/rc.local creo q se agrega la linea antes del exit 0, aun no lo e probado reiniciando

Unknown dijo...

Mil gracias, me sirvió y ahora me está funcionando perfecto... esperemos que cuando reinicie el equipo siga igual.

Moshé Pérez dijo...

Muy bueno tu post... muchas gracias. me funcionó a la segunda..

Anónimo dijo...

Muchas Gracias!! Me Funciono a la perfección :) en un lubuntu 10.04... :)

Molina dijo...

Hola, he seguido todos los pasos y no me funciona, al hacer iwcofig, ra0 no aparece. saludos

buuusita dijo...

hola una pregunta tengo el modem pero ni siqiera lo lee mi compu tengo windows 7 y no se q hacer ya q en ningun puerto de mi compu conecta pero en la laptop si lo reconoce... ?? ayudame xfa

buuusita dijo...

hola una pregunta tengo el modem pero ni siqiera lo lee mi compu tengo windows 7 y no se q hacer ya q en ningun puerto de mi compu conecta pero en la laptop si lo reconoce... ?? ayudame xfa

Anónimo dijo...

Me pasa lo mismo :-(

Cachunflas dijo...

Te faltó lo más importante que es:
De dónde bajaste el/los archivo/s de los drivers, y qué hiciste con ellos. No me digas que de la nada t salió todo. Creo que por omitirlo sin decir nada la gente se ha confundido.

2.No hace falta "limpiar" después de "limpiar". (Mala meáfora esa de "limpiar").

3.Te falta explicar para qué se ha de ejecutar:
dmesg | egrep 'rt28|usb|Phy'
y qué ha de hacer el personal con el output de ese comando que no hace nada más que mostrar información de mensajes al usuario.

4. En lugar de cargar el módulo del driver con el script en rc.local, creo que es mejor añadir el nombre del módulo a la lista de módulos a cargar pero quizás no funcione porque ha de funcionar con modprobe.. no sé.. hay ago no muy elegante ahí porque parece que no queda, que no se usa, como cualquier otro módulo. Por eso preferiré bucar más info antes de seguir este método para Lucid Lynx. Han pasado años y Ubuntu (Pangolin, 12.04) lo detecta automáticamente desde el inicio.

5. Una nota sobre lo q se ha dicho en algunos comentarios:
El comando lsusb puede mostrar
07d1:3c16 ó 07d1:3c06
con el exactamente mismo aparatito, según qué versión de Ubuntu se utilice.