Tras conseguir dos routers de telefónica «comtrend CT53XX» donados por mis padres, me encuentro con que no existe una versión de OPENWRT creada para dichos equipos, y la verdad que me he desilusionado, pero investigando un poco parece que, esta opción esta incluida dentro de los últimos códigos fuentes y eso me ha hecho muy feliz, ya que hoy puedo disfrutar en su totalidad de ambos routers.
No son muy «guachiguau» pero poseen un switch de 4 puertos 10/100 y una antena wifi, por lo que a mi respecta, es el perfecto repetidor wireless y con posibilidades de tener USB, en el caso del 5361… el segundo es nu 5365 que por defecto no trae esta posibilidad…
El 5361 posee soporte nativo de USB aunque no está instalado, ¿que quiero decir con esto???, que no le han puesto la electrónica que se necesita para conectar cualquier artilugio USB, pero el chip lo soporta… así que investigando un poco he encontrado el circuito que necesito y las conexiones para tal fin.
Lo primero fue compilar el código fuente del OPENWRT, esto es facil y practivo, mas que el mecanismo de un chupete… y con los siguientes pasos lo podras hacer vos tambien.
lo primero es conseguir todo lo necesario:
1º un equipo con linux, en mi caso UBUNTU
2º las herramientas de software necesarias para compilar:
3º los archivos fuentes de OPENWRT: en este punto podriamos elegir la distribucion, o solamente dedicarnos a modificar el codigo para desarrolladores o bien llamado «trunk»
creamos un directorio para tal efecto
mkdir openwrt-source
entramos en el directorio
cd openwrt-source
Solicitamos los archivos fuentes, utilizando la herramienta SVN
svn checkout svn://svn.openwrt.org/openwrt/trunk/
4º A continuación necesitamos verificar que la version y los paquetes llamados «feeds» estan actualizados e instalados, para esto hacemos:
cd trunk
./scripts/feeds update -a
./scripts/feeds install -a
Con esto tendremos los ultimos paquetes y opciones en nuestra fuente.
5ºEn este paso verificaremos que no nos faltan dependencias, ejecutando:
make defconfig
si nos aparece algun error solo debemos instalar el programa que necesite y listo, ¿como hacemos esto?
./scripts/feeds update packages luci
./scripts/feeds install -a -p luci
./scripts/feeds install
con esto por ejemplo instalaremos luci (si fuese necesario)
6ºPodremos ejecutar nuevamente «make defconfig» para verificar que todo esta correcto y pasar al momento de la configuración de nuestro fuente. Esto con el comando:
make menuconfig
en donde veremos una interfaz grafica para seleccionar el tipo de dispositivo y los paquetes que se necesitan.
en donde veremos dos diferentes opciones aplicadas con la tecla ENTER o con el ESPACIADOR:
<> esto significa que el paquete o modulo no se encuentra instalado
esto significa que el paquete será compilado como modulo y se alojará en la carpeta PACKAGES para ser instalado mas adelante (no se instala en nuestro firmware)
< *> esto significa que el paquete se instalará en nuestro firmware y ocupará espacio en el archivo base, esto tenemos que utilizarlo con mucho cuidado porque sino la imagen de firmware será muy grande y no cabra dentro de la memoria de nuestros routers. En este caso 4MB.
7º una vez que terminamos de agregar paquetes a nuestro frimware, debemos compilarlo y verificar que no aparezcan errores, esto lo hacemos con los siguientes comandos:
para compilar puro y duro, se hace con el comando «MAKE», con el cual tenemos varias posibilidades a detallar.
$make world (compila sin opciones y se toma su tiempo)
$make -j 3 (en donde 3 es el numero de nucleos +1 de nuestro procesador «donde compilaremos, NO donde utilizaremos el firmware»)
$make -j 3 V=99 (con la opcion V activamos el «vervose» para ver cualquier mensaje de error de nuestra compilación, 99 es el valor máximo de información)
si queremos compilar solo un paquete la opción es:
$make package/feeds/packages/mc/compile
y por ultimo la opción mas utilizada por mi:
$make -j3 V=99 2>&1 | tee build.log | grep -i error
Esta opción permite compilar en segundo plano, guardando toda la info en un archivo de nombre build.log y solo informandonos en pantalla de los errores que puedan ocurrir.
también existe una opcion para que nos avise cuando termine, con un sonido, pero en mi caso que compilo en una maquina remota, no me es útil.
$make V=99 ; echo -e ‘\a’
8º Cuando termine de compilar «tras 1 o 2 horas, depende de nuestro ordenador», encontraremos los archivos binarios dentro del directorio con el mismo nombre /trunk/bin
en donde encontraremos los paquetes convertidos a modulos y el firmware para ser aplicado, deberemos buscar el correspondiente a nuestra plataforma, en mi caso openwrt-ct-53xx
Si queremos compilar una version distinta y queremos limpiar todo para empezar de cero, tenemos la opción de:
$make clean (pero deberemos tener cuidado ya que si queremos conservar la version compilada deberemos moverla a otro directorio sino la perderemos.)
Bueno esto es todo, ya tenemos nuestro firmware para el comtrend, ahora para instalarlo lo único que debemos hacer es ingresar en modo rescate y seleccionarla, esto se realiza de la siguiente forma.
En la parte trasera tenemos un boton muy pequeño que es solo accesible utilizando un lapiz o destornillador, necesitamos encender el router con este boton de reset presionado, y mantenerlo durante unos 15 segundos, hasta que veamos que se apaga la luz de power.
tras esto podremos acceder al webserver de rescate en la dirección 192.168.1.1, seleccionaremos el firmware y listo, en 2 minutos tendremos nuestro comtrend con OPENWRT.
Para descargar el firmware aqui tienes el link
http://www.megaupload.com/?d=19MY4YC0
Gran trabajo! Muy buen articulo.
He intentado instalar el firmware que has colgado en un CT-5365 de telefonica pero el router se me queda colgado y tengo que restaurar el firmware original.
El firmware que has colgado es compatible con el CT-5365 solo con el CT-5361?
Saludos y gracias.
Supuestamente debería funcionar, el nivel de compatibilidad lo incorpora el OPENWRT, cuando eliges una opción, esta es de CT53XX, por lo que he considerado que era compatible… pero no puedo asegurarte nada… no lo he probado… intenta acceder por puerto serie, ya que podrías decirme en que momento del inicio se queda…
Saludos.
Hola, ¿sabes si la función de ADSL puede ser utilizada en estos routers con OpenWRT, o quedarían como routers neutros al meterle OpenWRT?
Gracias
Funcion ADSL??? claro se puede … tienes que instalarle los controladores y programas adicionales… y creo que alguna versión del OPENWRT los traía… pero yo lo tengo instalado en un LINKSYS ADSL y la opción aparece…
Saludos.
Como tendria hacer para compila los drivers para atheros? supongo que usando los drivers madwifi.
El tema es que voy a usar una minipci atheros AR con tecnologia N, y añadirle otra antena ya que esta minipci athero lo permite. Asi que quitaré la minipci wifi que trae el comntrend y le pondré esta. Pero claro. No se como compilarlo en este caso.
Un saludo
Y gracias por el tuto
Dentro de las opciones de drivers tienes que seleccionar atheros… nada mas… es una opcion diferente… al final termina igual… puedes compilar varias… para tener la opción de cambiar.
GRACIASSS !!
Muchas gracias por tu post, me ha aclarado unas cuantas cosas en cuanto a lo que es hacer un make.
Gracias de nuevo. 😉