Hola chicos, os pongo en situación, por adelantado gracias por su interes.
Tengo 2 router HG556a con las siguientes características: Atheros MX29GL128EH, Mac: 64:16:f0 y Atheros 29LV128DBT2I, MAC: 64:16.f0, por cierto un poco especiales y que ahora funcionan gracias a la ayuda de Noltari y jar229.El router lo tengo trabajando como servidor samba y transmission.
El problema: he tenido problemas con los discos usb, por inestabilidad después de algún tiempo de trabajo, el disco se desmontaba (mas bien se cae) y tenia que reiniciar el router para recuperarlo, cada ves el tiempo de caída era menor llegando a ser de minutos. Otra cosa curiosa era que al desconectar el disco y volverlo a conectar aparecía, con otro nombre de dispositivo (sdb1 despuéssdc1, sdd1…) lo que podría ser el problema.
Me concentre en la posibilidad de que se tratase, de problemas del disco o de la caja del disco asi que cambie sistematicamente cada uno sin ningún cambio. Por ultimo me concentre, en el tipo de sistema de archivo, alternando entre ext3 y ext4. Lo único que saque en claro fue lo importante que es hacer el formateo del disco desde un linux, porque desde windows siempre daba algún tipo de error. Además el sistema ext3, para mi modo de ver, es mas estable que el ext4, pero gastaba mas carga del sistema, esto lo probé en diferentes compilaciones.
Buscando en el foro de openwrt, encontré que esto pasaba a menudo también con otros routers y que los chicos de openwrt, resolvieron el problema de los nombres de dispositivos consecutivos, fijando el problema en la compilacion r33357, pero no pudieron arreglar a lo de la caída del disco.
https://forum.openwrt.org/viewtopic.php?id=39256https://dev.openwrt.org/ticket/12056https://dev.openwrt.org/ticket/12043Por tanto la ultima compilacion r33275 de noltari aun tenia este problema, analizando cada versión en mis dos router me di cuenta que el firmware colocaba todos los usb 1.1 o 2.0 al mismo tiempo sin diferenciarlos. Solo debe existir uno 1.1 y 2 de 2.0. No encontré en ningún sitio donde supieran cual de los 3 era el usb 1.1.
Luego Noltari publico la compilacion r33382_test pero solo era como prueba porque no tenia los botones en el código fuente.
https://foro.seguridadwireless.net/openwrt/openwrt-en-huaweig-hg556a/msg252561/#msg252561 al probar esta compilacion se cargaron los usb como deberían, el lateral es el usb 1.1, además el problema de nombre de dispositivo consecutivo cada ves que se desconectaba el usb, ya estaba resuelto. Después de muchas pruebas de estrés, el disco funciono muy bien, prendido durante mucho tiempo, sin ningún error, por otro lado la la velocidad de transmision aumento ligeramente y la velocidad de transferencia de archivos a través de samba aumento de 2.6 a 3.5Mb/s.
Usb 1-1.1 lateral USB 1.1 (OHCI)
Usb 1-1.2 posterior USB 2.0 (EHCI)
Usb 1-2 superior USB 2.0 (EHCI)
Con la última compilacion de Jar229, (r33456) que trae preinstalado transmission, samba, ftp, etc… Pero me sorprendí al ver que otra vez, se caía el disco después de un tiempo funcionando, los dmesg mostraban que todos los usb eran 1.1, cuando conectaba un disco en cualquier conector usb el drive que cargaba era el OHCI (USB 1.1)
Mi gran pregunta: están relacionado los botones con los usb?, se podria hacer algo para que funcionen los 2 sin interferencias. O la relación que describo es pura casualidad?. A alguien mas le a pasa lo de los usb?.
Boy a empezar a compilar gracias a los manuales de Jar229 (muchas gracias por tu gran trabajo) Analizando el parche “hw556_svn.patch” encontré como se referían a los botones pero estos no coinciden de todo, con respecto a los que se pueden llamar a través de este método que encontré en:
http://wiki.openwrt.org/doc/howto/hardware.buttonCree el archivo /etc/hotplug.d/botón/botones con su editor de texto favorito, pegue el siguiente:
#!/bin/sh
logger $BUTTON
logger $ACTION
Al presionar encuentro esto:
gpio8 adsl? BTN_0
gpio9 wifi
gpio10 restart BTN_1
gpio11 reset reset
Pero en el hw556_svn.patch encuentro que reset no se llama reset sino KEY_RESTART y wifi se llama KEY_WLAN pero este no responde. Es posible cambiar estos nombres por BTN_02 Y BTN_03 o estos nombres tienen alguna otra relación en la compilacion?
[spoiler].buttons = {
++ {
++ .desc = "diagnostic",
++ .gpio = 8,
++ .active_low = 1,
++ .type = EV_KEY,
++ .code = BTN_0,
++ .debounce_interval = BCM963XX_KEYS_DEBOUNCE_INTERVAL,
++ },
++ {
++ .desc = "wlan",
++ .gpio = 9,
++ .active_low = 1,
++ .type = EV_KEY,
++ .code = KEY_WLAN,
++ .debounce_interval = BCM963XX_KEYS_DEBOUNCE_INTERVAL,
++ },
++ {
++ .desc = "restart",
++ .gpio = 10,
++ .active_low = 1,
++ .type = EV_KEY,
++ .code = BTN_1,
++ .debounce_interval = BCM963XX_KEYS_DEBOUNCE_INTERVAL,
++ },
++ {
++ .desc = "reset",
++ .gpio = 11,
++ .active_low = 1,
++ .type = EV_KEY,
++ .code = KEY_RESTART,
++ .debounce_interval = BCM963XX_KEYS_DEBOUNCE_INTERVAL,
++ },
[/spoiler]hw556_svn.patch
Muchas gracias.

Perdonen la novela
