OpenWRT y RouterStation de Ubiquity Networks

ALERTA: Si usted está aquí, este artículo podría aburrirlo
ALERTA DE NO LECTURA EN LA PLAYA!

Alerta de Sobredosis de GEEKity: Este artículo es en extremo super geek y fundamentalmente extralimitado en tecnicismos. No es lectura de playa, repito: NO ES LECTURA DE PLAYA…

La RouterStation de Ubiquity Networks es una placa pensada para organizar sistemas embebidos. No es un producto pensado para el cliente final, porque tienen muchos otros productos que ya están integrados con su propia caja y en algunos casos, con la antena.

Estas placas vinieron con una versión muy vieja de Openwrt, y como en la Argentina los distribuidores de hardware traen muy pocas cosas, no pude hacerme con unas placas SR71. La cosa es que tuve que utilizar una placa R2N de Routerboard que no andaba con estas placas.

BusyBox v1.11.3 (2008-12-17 13:03:27 EET) built-in shell (ash)
Enter 'help' for a list of built-in commands.
  _______                     ________        __
 |       |.-----.-----.-----.|  |  |  |.----.|  |
 |   -   ||  _  |  -__|     ||  |  |  ||   _||   _|
 |_______||   __|_____|__|__||________||__|  |____|
          |__| W I R E L E S S   F R E E D O M
KAMIKAZE (bleeding edge, r13658) -------------------
* 10 oz Vodka       Shake well with ice and strain
* 10 oz Triple sec  mixture into 10 shot glasses.
* 10 oz lime juice  Salute!
---------------------------------------------------

Lo que hice para actualizar el software de las placas fue un opkg upgrade que me dejó el sistema inusable.

NO UTILIZAR EL COMANDO OPKG UPGRADE CON ESTAS PLACAS PORQUE LAS BLOQUEA

Si no fuera gracias a la conexión por serie, hubiera pensado que brickié la placa, pero por suerte podía ver exactamente qué estaba sucediendo. No podía levantar ninguna placa de red. Copié los archivos en un pen-drive usb y traté de grabarlos en la partición rootfs con el comando mtd.

Entonces la embarré aun más, porque las RouterStations tienen DOS particiones, rootfs y kernel, y usé una imagen que viene con las dos particiones juntas para escribirlas con el comando mtd. Todo mal, ahora tenía un kernel panic y no podía levantar nada.

Desde la RB puse Ctrl+C cuando apareció el cartelito, apenas arranca –en la terminal serie, claro– y puse este comando:

urescue

Enseguida, eth0 se configura como 192.168.1.20 y se ejecuta un servidor TFTP y se queda esperando. Si el archivo que le pasamos es demasiado grande el programa se cuelga, pero si tiene espacio, va a verificar si la imagen que le pasamos es correcta antes de tratar de grabarla.

tftp 192.168.1.20 -m binary -c put openwrt-ar71xx-generic-ubnt-rs-squashfs-factory.bin

lo bajé de esta carpeta y elegí este archivo que está aquí. Después el uruescue se sumerge en una rutina larga en la que va a copiar y limpiar todo. Después de haber pensado que me iba a quedar con un sistema inservible, verlo trabajar es un verdadero placer.

Un detalle escencial es el -m binary que olvidé poner y hacía que me rebotara todas las imagenes que le pasaba con un desagradable

Invalid Firmware File

Por suerte, puse ese cartelito en Google y apareció alguien haciendo la misma pregunta. El experto que le contesta le pregunta si está poniendo el modo binario y yo pensé: yo no! El problema de esta pobre persona no se arregló porque no era eso –y se ofendió cuando le preguntaron si estaba usando el modo binario, obvio!– pero a mi me vino de perlas.

Miren qué lindo ahora, la versión que tengo!!

BusyBox v1.17.3 (2010-12-23 05:55:33 CET) built-in shell (ash)
Enter 'help' for a list of built-in commands.
  _______                     ________        __
 |       |.-----.-----.-----.|  |  |  |.----.|  |_
 |   -   ||  _  |  -__|     ||  |  |  ||   _||   _|
 |_______||   __|_____|__|__||________||__|  |____|
          |__| W I R E L E S S   F R E E D O M
 KAMIKAZE (bleeding edge, r24810) ------------------
  * 10 oz Vodka       Shake well with ice and strain
  * 10 oz Triple sec  mixture into 10 shot glasses.
  * 10 oz lime juice  Salute!
 ---------------------------------------------------

Espectacular, y lo mejor es que la placa R2N de Mikrotik anda de perlas, bueno, por lo menos me conecto impecable con mi teléfono y se puede navegar perfecto.

Un detalle IMPORTANTÍSIMO que ahora extraño en todos los routers que no tengo conectados por serie es ver en una consola TODO lo que está pasando mientras pasa. Para todos los conectores serie de 3.3 voltios les recomiendo el cable CA-42 de Nokia para conectar por USB el puerto serie de 3.3 voltios (no es de 5 voltios como los que hay en las compus.

Les pego una foto que saqué para mostrarles cómo busqué el pinout, y les paso el cuadrito que me bajé de routerstation en el que NO ponen cómo se conecta el serie. Las instrucciones están aquí, pero como no tienen cuadrito al principio no las ví: http://www.ubnt.com/wiki/RouterStation_OpenWRT_SW_Setup_Guide

UART J3 6 pin Header
Terminal Settings 115200 baud, 8 bits, nor parity, 1 stop bit.

Pin Out
Pin1 3.3VDC  —> NO CONECTAR!!!!!
Pin2 S_in –> RX
Pin3 NC
Pin4 NC
Pin5 S_out –> TX
Pin6 GND –> GROUND

Les paso una foto de cómo conecté yo, la placa tiene un poco de tierra:

Esta es la conexión que me salvó la vida. Me tengo que dar una vuelta por el centro para comprarle una cajita linda. Tengo dos placas de estas y las tengo bastante mal acomodadas.