Autor Tema: [Desarrollo] OpenWrt en Comtrend VR-3032u  (Leído 13982 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Noltari

  • Visitante
[Desarrollo] OpenWrt en Comtrend VR-3032u
« en: 12-01-2015, 13:22 (Lunes) »
Firmwares Originales de Jazztel (sin bootloader CFE)
VR-3032u-VA31-412JAZ-C03_R01

Wiki
http://wiki.openwrt.org/toh/comtrend/vr3032u

Código Fuente
https://github.com/openwrt-es/openwrt/commits/brcm63xx-vr3032u
https://github.com/openwrt-es/openwrt/commits/bmips-4.1

Estado
Router muy parecido al Comtrend VG-8050, pero de este sí hay código fuente: http://download.comtrend.com/VR-3032u-VA31-412JAZ-C03_R01_consumer_release_1.tar.gz
Backup de la flash.
Soporte inicial de OpenWrt.

Saludos!


« Última modificación: 05-10-2015, 08:33 (Lunes) por Noltari »

vk496

  • Visitante
Re: [Desarrollo] OpenWrt en Comtrend VR-3032u
« Respuesta #1 en: 12-01-2015, 13:31 (Lunes) »
Este es el que ponían pegas los de Timofonica para darte el source? :O

Salu2

Noltari

  • Visitante
Re: [Desarrollo] OpenWrt en Comtrend VR-3032u
« Respuesta #2 en: 12-01-2015, 13:43 (Lunes) »
Este es el que ponían pegas los de Timofonica para darte el source? :O

Salu2
Nope éste es de Jazztel, te refieres al VG-8050 de Movistar.
« Última modificación: 12-01-2015, 13:44 (Lunes) por Noltari »

Desconectado jar229

  • Moderador
  • *
  • Mensajes: 4573
Re: [Desarrollo] OpenWrt en Comtrend VR-3032u
« Respuesta #3 en: 13-01-2015, 09:08 (Martes) »
No tiene mala pinta el cacharo  ;D

Felicidades, Noltari, por tu continuo trabajo  >:(

Lo añado al [Índice] Hilos relevantes de OpenWrt
« Última modificación: 13-01-2015, 09:09 (Martes) por jar229 »
Valoraciones positivas en compra/venta:
110 en Htcmania
92 en Har2mano
16 en elchapuzasinformatico
7 en gsmspain
4 en foro2mano
 .... :)
 
Mis portátiles en venta: https://drive.google.com/open?id=1DjTt6LiqDWzlRayB4KFhFSKc9ZQ-1mjf

Noltari

  • Visitante
Re: [Desarrollo] OpenWrt en Comtrend VR-3032u
« Respuesta #4 en: 25-01-2015, 23:34 (Domingo) »
Añadido al primer post el branch de github con el código fuente.

Me he dado cuenta de que a los LEDs de usb:red y power:red les falta la resistencia pull down, así que es imposible que funcionen...
A parte de eso, me ha sido imposible localizar el GPIO del LED de power:green, aunque sospecho por el código fuente que es el 20, pero por algún motivo no cambia de estado...

Saludos!

Noltari

  • Visitante
Re: [Desarrollo] OpenWrt en Comtrend VR-3032u
« Respuesta #5 en: 06-04-2015, 20:35 (Lunes) »
Añadido al primer post el firmware extraído de la NAND del router.

Para extraer el firmware he realizado un backup de la NAND desde la web que proporciona el firmware original backupflash.html.
Sin embargo, este backup contiene los datos OOB de la NAND, por lo que dichos datos han de ser eliminados para que el backup pueda ser correctamente flasheado.
Para ello he desarrollado una herramienta que elimina dichos datos: https://github.com/openwrt-es/nandtools

He comparado dicho backup con el obtenido mediante el driver de la NAND para OpenWrt que Brian Norris y Kevin Cernekee han desarrollado, y al cual yo he añadido ciertas modificaciones para que fuera compatible con los BCM63268.
Más info: https://github.com/openwrt-es/openwrt/commit/ec7552edcdedebd92f4fee4bf0d8aded272b7426

Ahora que ya tenemos lectura/escritura/borrado en la NAND desde OpenWrt el problema es el sistema de carga del firmware que utiliza Broadcom:
Una única partición JFFS2 en la NAND que contiene el kernel como un fichero más, así como un secondstage bootloader (cferam) que es ejecutado por el bootloader principal (cferom), y que se encarga de ejecutar el kernel: cferom -> cferam -> kernel.
Como os podéis imaginar el código fuente de cferam es propietario, por lo que no está disponible.
Así que existen varias alternativas para poder ejecutar OpenWrt:
1) Incluir el binario original del cferam en una partición con sistema de ficheros JFFS2 que contenga además el kernel, y ubicar el sistema de ficheros por separado en otra partición (el sistema de ficheros podría ser ubifs).
2) Añadir soporte en uboot para el 63268 y hacer una partición que contenga el cferam y el uboot, de forma que dicha partición sólo será creada una única vez y será uboot quien se encargue de flashear OpenWrt en la NAND.

La 2 es la más lógica y cómoda a largo plazo, pero la 1 es la más sencilla.

Y hasta aquí los avances en los BCM63268, perdón por el testamento.

Un saludo,
Noltari.

danitool

  • Visitante
Re: [Desarrollo] OpenWrt en Comtrend VR-3032u
« Respuesta #6 en: 23-04-2015, 13:16 (Jueves) »
Buenas. Una pena haberlo brickeado. Creo que es recuperable, como ya se habló en otros sitios, usando una flash SPI.

Estuve viendo unos cuantos routers basados en BCM63168, y casi siempre hay pads para una flash SPI.

En concreto tenemos el HG630, del cual pude conseguir unas imágenes de la placa. Anque no con toda la resolución que me gustaría.

http://wiki.openwrt.org/toh/huawei/hg630#hg630-52

Idénticas placas, una usa flash SPI y la otra una flash NAND. Así que podeis sacar vuestras propias conclusiones. Yo personalmente opino que es totalmente posible la recuperación. De si una vez conseguido un bootloader BCM63168 para flash SPI funcionará "out of the box" ni idea, pero ahí está lo divertido de buscar nuevas formas de solucionar un problema  ;)

Noltari

  • Visitante
Re: [Desarrollo] OpenWrt en Comtrend VR-3032u
« Respuesta #7 en: 23-04-2015, 14:12 (Jueves) »
Buenas. Una pena haberlo brickeado. Creo que es recuperable, como ya se habló en otros sitios, usando una flash SPI.

Estuve viendo unos cuantos routers basados en BCM63168, y casi siempre hay pads para una flash SPI.

En concreto tenemos el HG630, del cual pude conseguir unas imágenes de la placa. Anque no con toda la resolución que me gustaría.

http://wiki.openwrt.org/toh/huawei/hg630#hg630-52

Idénticas placas, una usa flash SPI y la otra una flash NAND. Así que podeis sacar vuestras propias conclusiones. Yo personalmente opino que es totalmente posible la recuperación. De si una vez conseguido un bootloader BCM63168 para flash SPI funcionará "out of the box" ni idea, pero ahí está lo divertido de buscar nuevas formas de solucionar un problema  ;)
Estoy de acuerdo contigo danitool, pero el problema es encontrar las resistencias que activan el boot por medio de la flash SPI en lugar de la NAND.
Buscando a ver si las encontraba hice un corto y me cargué el router del todo >.<

De todas formas Tki2000 me ha donado uno que ha comprado por eBay, así que intentaré no volver a cagarla, pero no estaría nada mal encontrar la resistencia que activa/desactiva el boot a través de la flash SPI para cuando se hagan pruebas más adelante sobre cómo grabar el firmware en la NAND y arrancarlo desde ahí en vez de usar ramdisks.

Saludos.

CazandoBits91

  • Visitante
Re: [Desarrollo] OpenWrt en Comtrend VR-3032u
« Respuesta #8 en: 18-06-2015, 00:01 (Jueves) »
Se sabe ya algo sobre la funcionalidad de este router con openwrt?
Saludos!

Noltari

  • Visitante
Re: [Desarrollo] OpenWrt en Comtrend VR-3032u
« Respuesta #9 en: 18-06-2015, 09:38 (Jueves) »
Se sabe ya algo sobre la funcionalidad de este router con openwrt?
Saludos!
Buenas,

Pues estábamos a la espera de que hicieran el branch de Chaos Calmer antes de poder enviar parches para brcm63xx.
Ahora estamos a la espera de que tenga tiempo para ponerme al día y mandar mis parches xD.
Además, como soy package maintainer estoy algo liado, puesto que han decidido cambiar de uclibc a musl y eso ha fastidiado la compilación de diversos paquetes, algunos de ellos míos y otros de los que dependen los míos.

Saludos.

CazandoBits91

  • Visitante
Re: [Desarrollo] OpenWrt en Comtrend VR-3032u
« Respuesta #10 en: 18-06-2015, 10:11 (Jueves) »
ojú, si que tiene curro portar el firm a un router. Bravo por el curro que llevais! estare atento para proximos acontecimientos de este router. solo una duda, ¿Sabeis si cuando consigais hacerlo funcionar funcionara correctamente el wifi?
Saludos!!

Noltari

  • Visitante
Re: [Desarrollo] OpenWrt en Comtrend VR-3032u
« Respuesta #11 en: 18-06-2015, 10:50 (Jueves) »
ojú, si que tiene curro portar el firm a un router. Bravo por el curro que llevais! estare atento para proximos acontecimientos de este router. solo una duda, ¿Sabeis si cuando consigais hacerlo funcionar funcionara correctamente el wifi?
Saludos!!
De momento he conseguido hacer que funcionen los LEDs de manera correcta, para lo cual tuve que implementar un driver que será integrado en linux en la próxima versión (4.2), por lo que habrá que hacer un backport del parche para la versión que utiliza openwrt (3.18).
También conseguí que funcionara el ethernet y lectura y escritura de la NAND, usando unos parches que también serán integrados en la próxima versión de linux. Sin embargo, aún hay que idear la manera de elaborar imágenes compatibles con routers brcm63xx que tengan NAND, puesto que el formato cambia mucho con respecto a los que llevan serial/parallel flash.
El WiFi es bastante más complicado por dos motivos:
1) Broadcom.
2) Al igual que los BCM6362, los BCM63268 llevan el WiFi integrado en el SoC, no por PCI/PCIe como el resto de los BCM63xx, y no hay ningún driver que lo haga funcionar. Es más, cuesta encontrar a alguien que tenga conocimientos/documentación/tiempo para tal "cruzada".

Saludos.

mega-samu

  • Visitante
Re: [Desarrollo] OpenWrt en Comtrend VR-3032u
« Respuesta #12 en: 04-10-2015, 21:19 (Domingo) »
¿Algún avance que no hayáis dicho? No se pierde nada por preguntar jaja Como siempre muchas gracias por su gran trabajo hacia los router abandonados que nos regalan las compañías.   >:(

Noltari

  • Visitante
Re: [Desarrollo] OpenWrt en Comtrend VR-3032u
« Respuesta #13 en: 05-10-2015, 08:36 (Lunes) »
¿Algún avance que no hayáis dicho? No se pierde nada por preguntar jaja Como siempre muchas gracias por su gran trabajo hacia los router abandonados que nos regalan las compañías.   >:(
Lo último que sé es que hay que esperar a que Jonas integre los parches de los drivers de pinmux que tiene pendientes, pero para eso primero quiere hacer limpieza en ciertas cosillas en upstream, y para eso también hay que esperar así que...

A modo de prueba, hace poco actualicé el branch bmips-4.1: https://github.com/openwrt-es/openwrt/commits/bmips-4.1
En esta última actualización he añadido los últimos parches que hay upstream para la NAND, pero de momento sólo recomiendo probar ramdisks y leer la flash, nada de escribir o flashear nada.

Además sigue pendiente el tema de generar imágenes compatibles con los routers que tienen NAND en vez de flash SPI/Paralela.

Saludos.

juniorhw

  • Visitante
Re: [Desarrollo] OpenWrt en Comtrend VR-3032u
« Respuesta #14 en: 30-10-2015, 11:55 (Viernes) »
buenas queria saber que hacer despues de descargar elVR-3032u-VA31-412JAZ-C03_R01_consumer_release_1.tar.gz lo descomprimi pero no vi ningun binario para hacer el upload en la puerta de enlace si me podeis ayudar paso a paso como se crea el binario con eso o lo tengo que bajar de algun lado. perdonad si es muy obvia la pregunta pero soy novato en el tema

ableto288

  • Visitante
Re: [Desarrollo] OpenWrt en Comtrend VR-3032u
« Respuesta #15 en: 18-12-2016, 12:08 (Domingo) »
¿Algún avance?

danitool

  • Visitante
Re: [Desarrollo] OpenWrt en Comtrend VR-3032u
« Respuesta #16 en: 04-08-2017, 19:08 (Viernes) »
Buenas, he encontrado un dato que puede resultar útil para el desarrollo en esta placa.

Resulta que por casualidad me encontré con el bootstrap que activa el arranque de la placa por SPI o NAND en el BCM63168. El pin del SoC que activa este arranque es

SoC pin J3 = GPIO21

Colocando una resistencia pulldown de 4,7 kohm forzaríamos a la placa a iniciarse por la flash SPI.

Se ve claramente que la placa tiene los pads listos para una memoria SPI, así que el GPIO21 debería estar expuesto. En teoría sería pan comido localizarlo p.ej usando este script
https://wiki.openwrt.org/doc/hardware/port.gpio#script_blink
Presupongo que esto se haría arrancando un firmware RAM de Openwrt, y desde ahí cambiar el estado de los gpios con el script.

La idea es
  • Buscar un bootloader para bcm63168 que funcione en flash SPI, en principio no debería tener los problemas que hay actualmente para el desarrollo en NAND
  • Soldar la flash SPI con el bootloader instalado
  • colocar una resistencia pulldown en el GPIO21 y un bridge para activarlo
  • ya podríamos desarrollar un firmware Openwrt funcional para flashear en memoria SPI
  • Hacer pruebas de desarrollo para firmwares NAND
  • Si ocurre un brick cuando realizamos las prubas de desarrollo en NAND colocar el puente para activar el bootstrap SPI y recuperar la memoria NAND mediante el firmware instalado en SPI

No dispongo de esta placa. Pero los que disponeis de ella os propongo localizar este pin para facilitar el futuro desarrollo de Openwrt o simplemente para hallar un método de recuperación del router.

Espero que la info os sea útil.

Saludos.
« Última modificación: 04-08-2017, 19:10 (Viernes) por danitool »

Desconectado Tki2000

  • Moderador
  • *
  • Mensajes: 1859
Re: [Desarrollo] OpenWrt en Comtrend VR-3032u
« Respuesta #17 en: 05-08-2017, 19:47 (Sábado) »
Buenas, he encontrado un dato que puede resultar útil para el desarrollo en esta placa.

Resulta que por casualidad me encontré con el bootstrap que activa el arranque de la placa por SPI o NAND en el BCM63168. El pin del SoC que activa este arranque es

SoC pin J3 = GPIO21

Colocando una resistencia pulldown de 4,7 kohm forzaríamos a la placa a iniciarse por la flash SPI.

Se ve claramente que la placa tiene los pads listos para una memoria SPI, así que el GPIO21 debería estar expuesto. En teoría sería pan comido localizarlo p.ej usando este script
https://wiki.openwrt.org/doc/hardware/port.gpio#script_blink
Presupongo que esto se haría arrancando un firmware RAM de Openwrt, y desde ahí cambiar el estado de los gpios con el script.

La idea es
  • Buscar un bootloader para bcm63168 que funcione en flash SPI, en principio no debería tener los problemas que hay actualmente para el desarrollo en NAND
  • Soldar la flash SPI con el bootloader instalado
  • colocar una resistencia pulldown en el GPIO21 y un bridge para activarlo
  • ya podríamos desarrollar un firmware Openwrt funcional para flashear en memoria SPI
  • Hacer pruebas de desarrollo para firmwares NAND
  • Si ocurre un brick cuando realizamos las prubas de desarrollo en NAND colocar el puente para activar el bootstrap SPI y recuperar la memoria NAND mediante el firmware instalado en SPI

No dispongo de esta placa. Pero los que disponeis de ella os propongo localizar este pin para facilitar el futuro desarrollo de Openwrt o simplemente para hallar un método de recuperación del router.

Espero que la info os sea útil.

Saludos.

Seguro que alguien, ya ha tomado nota del gran aporte que has hecho. Gracias danitool.
No habrás entendido algo, hasta que seas capaz de explicárselo a tu abuela...
Hacemos pantallas con píxeles casi invisibles, para luego ampliar la letra porque no la vemos... Bonita paradoja...
Creamos analfabetos tecnológicos con una velocidad pasmosa. Todo el mundo "maneja" tecnología, casi nadie sabe lo que tiene entre las manos, pero todo el mundo opina.
El analfabetismo, antes, pasaba desapercibido. Ahora, se transmite por Internet y las redes sociales.