viernes, 8 de junio de 2012

Versión ASL-26555_CL

Existe una versión de este router distribuida en Chile y otros países de América que difiere del ASL-26555_ES distribuido en España y que emplea un chip flash SPI 25FL064P de 8 MB (0x0800000) en vez del 25FL128P de 16 MB (0x1000000):

El particionado es diferente de modo que el firmware es específico:

[ 4.620000] Creating 8 MTD partitions on "spi0.0":
[ 4.630000] 0x000000000000-0x000000030000 : "uboot"
[ 4.640000] 0x000000030000-0x000000040000 : "devdata"
[ 4.660000] 0x000000040000-0x000000050000 : "rgbd"
[ 4.670000] 0x000000050000-0x000000130000 : "kernel"
[ 4.680000] 0x000000130000-0x0000007e0000 : "rootfs"
[ 4.700000] mtd: partition "rootfs" set to be root filesystem
[ 4.710000] split_squashfs: no squashfs found in "spi0.0"
[ 4.720000] 0x0000007e0000-0x0000007f0000 : "cert"
[ 4.730000] 0x0000007f0000-0x000000800000 : "langpack"
[ 4.750000] 0x000000050000-0x0000007e0000 : "linux"



 Pongo aquí los enlaces del firmware de ramdisk y flasheo adaptados:

Firmware ramdisk ASL 26556_C

Sysupgrade squashfs ASL 26556_C para flashear

(actualizados con extracción de eeprom y MAC de Wifi correcta)

El firmware se escribirá en la partición linux (tamaño 0x790000) una vez que hayamos arrancando con el firmware ramdisk mediante TFTP como explico para el ASL26555_ES con:


mtd -r write <nombre fichero> linux

Sacaremos copia antes de la partición linux desde el firmware RAM a un pendrive formateado en VFAT o EXT3/4 (montado en /mnt/sda1) mirando en /proc/mtd la partición asociada según:

dd if=/dev/mtdX of=/mnt/sda1/copia_linux.bin


lunes, 4 de junio de 2012

Arrancando OpenWrt en ADB D.BG A4001N

Por fin arranca pero por ahora no fucionan el WIFI ni el puerto USB...


[    0.000000] Linux version 3.3.7 (chisco@chisco-aluminio) (gcc version 4.6.3 20120201 (prerelease) (Li2
[    0.000000] Detected Broadcom 0x6328 CPU revision 10b0
[    0.000000] CPU frequency is 320 MHz
[    0.000000] 32MB of RAM installed
[    0.000000] registering 32 GPIOs
[    0.000000] gpiochip_add: registered GPIOs 0 to 31 on device: bcm63xx-gpio
[    0.000000] board_bcm963xx: Boot address 0xb8000000
[    0.000000] board_bcm963xx: CFE version: unknown
[    0.000000] bootconsole [early0] enabled
[    0.000000] CPU revision is: 0002a075 (Broadcom BMIPS4350)
[    0.000000] board_bcm963xx: board name: 963281T_TEF
[    0.000000] Determined physical RAM map:
[    0.000000]  memory: 02000000 @ 00000000 (usable)
[    0.000000] Initrd not found or empty - disabling initrd
[    0.000000] Zone PFN ranges:
[    0.000000]   Normal   0x00000000 -> 0x00002000
[    0.000000] Movable zone start PFN for each node
[    0.000000] Early memory PFN ranges
[    0.000000]     0: 0x00000000 -> 0x00002000
[    0.000000] On node 0 totalpages: 8192
[    0.000000] free_area_init_node: node 0, pgdat 8029d730, node_mem_map 81000000
[    0.000000]   Normal zone: 64 pages used for memmap
[    0.000000]   Normal zone: 0 pages reserved
[    0.000000]   Normal zone: 8128 pages, LIFO batch:0
[    0.000000] Reserving 0MB of memory at 0MB for crashkernel
[    0.000000] pcpu-alloc: s0 r0 d32768 u32768 alloc=1*32768
[    0.000000] pcpu-alloc: [0] 0
[    0.000000] Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 8128
[    0.000000] Kernel command line:  root=/dev/mtdblock2 rootfstype=squashfs,jffs2 noinitrd console=ttyS0
[    0.000000] PID hash table entries: 128 (order: -3, 512 bytes)
[    0.000000] Dentry cache hash table entries: 4096 (order: 2, 16384 bytes)
[    0.000000] Inode-cache hash table entries: 2048 (order: 1, 8192 bytes)
[    0.000000] Primary instruction cache 32kB, VIPT, 4-way, linesize 16 bytes.
[    0.000000] Primary data cache 32kB, 2-way, VIPT, cache aliases, linesize 16 bytes
[    0.000000] Memory: 29416k/32768k available (2219k kernel code, 3352k reserved, 396k data, 196k init,)
[    0.000000] NR_IRQS:128
[    0.000000] Calibrating delay loop... 318.46 BogoMIPS (lpj=636928)
[    0.036000] pid_max: default: 32768 minimum: 301
[    0.040000] Mount-cache hash table entries: 512
[    0.048000] NET: Registered protocol family 16
[    0.276000] registering PCI controller with io_map_base unset
[    0.284000] bio: create slab <bio-0> at 0
[    0.292000] PCI host bridge to bus 0000:00
[    0.296000] pci_bus 0000:00: root bus resource [mem 0x10f00000-0x11efffff]
[    0.300000] pci_bus 0000:00: root bus resource [??? 0x00000000 flags 0x0]
[    0.304000] pci 0000:00:00.0: [14e4:6328] type 1 class 0x000604
[    0.304000] pci 0000:00:00.0: PME# supported from D0 D3hot
[    0.304000] pci 0000:01:00.0: [14e4:a8d8] type 0 class 0x000280
[    0.304000] pci 0000:01:00.0: reg 10: [mem 0x00000000-0x00003fff 64bit]
[    0.304000] pci 0000:01:00.0: supports D1 D2
[    0.304000] pci 0000:00:00.0: BAR 8: assigned [mem 0x10f00000-0x10ffffff]
[    0.308000] pci 0000:01:00.0: BAR 0: assigned [mem 0x10f00000-0x10f03fff 64bit]
[    0.312000] pci 0000:00:00.0: PCI bridge to [bus 01-01]
[    0.316000] pci 0000:00:00.0:   bridge window [mem 0x10f00000-0x10ffffff]
[    0.320000] PCI: Enabling device 0000:00:00.0 (0000 -> 0002)
[    0.324000] Switching to clocksource MIPS
[    0.332000] NET: Registered protocol family 2
[    0.336000] IP route cache hash table entries: 1024 (order: 0, 4096 bytes)
[    0.344000] TCP established hash table entries: 1024 (order: 1, 8192 bytes)
[    0.352000] TCP bind hash table entries: 1024 (order: 0, 4096 bytes)
[    0.360000] TCP: Hash tables configured (established 1024 bind 1024)
[    0.364000] TCP reno registered
[    0.368000] UDP hash table entries: 256 (order: 0, 4096 bytes)
[    0.376000] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
[    0.384000] NET: Registered protocol family 1
[    0.388000] PCI: CLS 0 bytes, default 16
[    0.388000] audit: initializing netlink socket (disabled)
[    0.396000] type=2000 audit(0.396:1): initialized
[    0.400000] squashfs: version 4.0 (2009/01/31) Phillip Lougher
[    0.408000] JFFS2 version 2.2 (NAND) (SUMMARY) (LZMA) (RTIME) (CMODE_PRIORITY) (c) 2001-2006 Red Hat,.
[    0.420000] msgmni has been set to 57
[    0.420000] io scheduler noop registered
[    0.424000] io scheduler deadline registered (default)
[    0.432000] bcm63xx_uart.0: ttyS0 at MMIO 0xb0000100 (irq = 36) is a bcm63xx_uart
[    0.440000] console [ttyS0] enabled, bootconsole disabled
[    0.460000] bcm63xx-hsspi bcm63xx-hsspi.0: registered master spi0
[    0.460000] spi spi0.0: setup mode 0, 8 bits/w, 40000000 Hz max --> 0
[    0.460000] m25p80 spi0.0: found mx25l12805d, expected m25p80
[    0.468000] m25p80 spi0.0: mx25l12805d (16384 Kbytes)
[    0.472000] bcm63xxpart: CFE boot tag found with version 6 and board type 963281T_TEF
[    0.480000] bcm63xxpart: Partition 0 is CFE offset 0 and length 10000
[    0.488000] bcm63xxpart: Partition 1 is kernel offset 10100 and length eff00
[    0.492000] bcm63xxpart: Partition 2 is rootfs offset 100000 and length ef0000
[    0.500000] bcm63xxpart: Partition 3 is nvram offset ff0000 and length 10000
[    0.508000] bcm63xxpart: Partition 4 is linux offset 10000 and length fe0000
[    0.516000] bcm63xxpart: Spare partition is offset 2c0004 and length d2fffc
[    0.524000] 5 bcm63xxpart partitions found on MTD device spi0.0
[    0.528000] Creating 5 MTD partitions on "spi0.0":
[    0.532000] 0x000000000000-0x000000010000 : "CFE"
[    0.540000] 0x000000010100-0x000000100000 : "kernel"
[    0.548000] mtd: partition "kernel" must either start or end on erase block boundary or be smaller thy
[    0.564000] 0x000000100000-0x000000ff0000 : "rootfs"
[    0.572000] mtd: partition "rootfs" set to be root filesystem
[    0.576000] mtd: partition "rootfs_data" created automatically, ofs=2C0000, len=D30000
[    0.584000] 0x0000002c0000-0x000000ff0000 : "rootfs_data"
[    0.592000] 0x000000ff0000-0x000001000000 : "nvram"
[    0.600000] 0x000000010000-0x000000ff0000 : "linux"
[    0.608000] bcm63xx-hsspi bcm63xx-hsspi.0: registered child spi0.0
[    0.644000] bcm63xx-wdt bcm63xx-wdt:  started, timer margin: 30 sec
[    0.652000] Registered led device: 963281T_TEF::internet
[    0.652000] Registered led device: 963281T_TEF::power
[    0.652000] Registered led device: 963281T_TEF::internet-fail
[    0.656000] Registered led device: 963281T_TEF::power-fail
[    0.656000] Registered led device: 963281T_TEF::wps
[    0.656000] Registered led device: 963281T_TEF::dsl
[    0.656000] TCP westwood registered
[    0.660000] NET: Registered protocol family 17
[    0.664000] 8021q: 802.1Q VLAN Support v1.8
[    0.680000] VFS: Mounted root (squashfs filesystem) readonly on device 31:2.
[    0.688000] Freeing unused kernel memory: 196k freed
[    3.252000] bcm63xx_enetsw bcm63xx_enetsw.0: link UP on Port 4, 100Mbps, full-duplex
[    3.412000] roboswitch: Probing device eth0:
[    3.416000] bcm63xx_enet: could not find a used port with phy_id 0, assuming phy is external
[    3.424000] No Robo switch in managed mode found, phy_id = 0xffffffff
[    3.432000] roboswitch: Probing device eth1: No such device
[    3.440000] roboswitch: Probing device eth2: No such device
[    3.444000] roboswitch: Probing device eth3: No such device
[   10.880000] Compat-wireless backport release: compat-wireless-2012-05-16-3-gde86a47
[   10.888000] Backport based on wireless-testing.git master-2012-05-29
[   10.896000] compat.git: wireless-testing.git
[   10.952000] cfg80211: Calling CRDA to update world regulatory domain
[   10.956000] cfg80211: World regulatory domain updated:
[   10.964000] cfg80211:   (start_freq - end_freq @ bandwidth), (max_antenna_gain, max_eirp)
[   10.972000] cfg80211:   (2402000 KHz - 2472000 KHz @ 40000 KHz), (300 mBi, 2000 mBm)
[   10.980000] cfg80211:   (2457000 KHz - 2482000 KHz @ 20000 KHz), (300 mBi, 2000 mBm)
[   10.988000] cfg80211:   (2474000 KHz - 2494000 KHz @ 20000 KHz), (300 mBi, 2000 mBm)
[   10.996000] cfg80211:   (5170000 KHz - 5250000 KHz @ 40000 KHz), (300 mBi, 2000 mBm)
[   11.004000] cfg80211:   (5735000 KHz - 5835000 KHz @ 40000 KHz), (300 mBi, 2000 mBm)
[   11.468000] SCSI subsystem initialized
[   11.512000] There is already a switch registered on the device 'eth0'
[   11.520000] roboswitch: Probing device eth1: No such device
[   11.524000] roboswitch: Probing device eth2: No such device
[   11.532000] roboswitch: Probing device eth3: No such device
[   11.836000] usbcore: registered new interface driver usbfs
[   11.840000] usbcore: registered new interface driver hub
[   11.852000] usbcore: registered new device driver usb
[   12.544000] Broadcom 43xx driver loaded [ Features: PNL ]
[   12.572000] Button Hotplug driver version 0.4.1
[   13.376000] PPP generic driver version 2.4.2
[   14.392000] ip_tables: (C) 2000-2006 Netfilter Core Team
[   14.676000] NET: Registered protocol family 24
[   14.896000] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
[   14.940000] nf_conntrack version 0.5.0 (462 buckets, 1848 max)
[   15.636000] ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver
[   15.848000] usbcore: registered new interface driver snd-usb-audio
[   15.972000] Initializing USB Mass Storage driver...
[   15.976000] usbcore: registered new interface driver usb-storage
[   15.984000] USB Mass Storage support registered.
[   21.064000] bcm63xx_enetsw bcm63xx_enetsw.0: link UP on Port 4, 100Mbps, full-duplex
[   21.076000] device eth0 entered promiscuous mode
[   21.080000] br-lan: port 1(eth0) entered forwarding state
[   21.088000] br-lan: port 1(eth0) entered forwarding state
[   23.092000] br-lan: port 1(eth0) entered forwarding state
[   34.676000] jffs2_scan_eraseblock(): End of filesystem marker found at 0x0
[   34.692000] jffs2_build_filesystem(): unlocking the mtd device... done.
[   34.700000] jffs2_build_filesystem(): erasing all blocks after the end marker...

sábado, 2 de junio de 2012

Puerto serie en Homestation ADB D.BG A4001N


En la siguiente imagen vemos como conectar al puerto serie de la consola del router con un conversor TTL-USB y 115200 8N1 sin control de flujo.

Hay que hacer dos puentes marcados en rojo para las líneas TX y RX; podemos utilizar estaño o una resistencia smd de pequeño valor.

Podemos acceder al CFE pulsando una tecla al arrancar el router.

Luego con un navegador podemos apuntar a la dirección 192.168.1.1 para actualizar el firmware...


HELO
CPUI
L1CI
DRAM
----
PHYS
ZQDN
PHYE
DINT
LSYN
USYN
MSYN
LMBE
PASS
----
ZBSS
CODE
DATA
L12F
MAIN




CFE version 1.0.37-106.24 for A4001N TEF 0002 BCM96328 (32bit,SP,BE)
Build Date: Wed Jan 26 12:59:25 CET 2011 (zu1costast@thorold)
Copyright (C) 2000-2009 Broadcom Corporation.


HS Serial flash device: name MX25L128, id 0xc218 size 16384KB
Total Flash size: 16384K with 4096 sectors
Chip ID: BCM6328B0, MIPS: 320MHz, DDR: 320MHz, Bus: 160MHz
Main Thread: TP0
Memory Test Passed
Total Memory: 33554432 bytes (32MB)
Boot Address: 0xb8000000


Board IP address                  : 192.168.1.1:ffffff00  
Host IP address                   : 192.168.1.10  
Gateway IP address                :   
Run from flash/host (f/h)         : f  
Default host run file name        : vmlinuz  
Default host flash file name      : bcm963xx_fs_kernel  
Boot delay (0-9 seconds)          : 9  
Boot image (0=latest, 1=previous) : 0  
Board Id (0-4)                    : 963281T_TEF  
Number of MAC Addresses (1-32)    : 11  
Base MAC Address                  : 30:39:f2:87:8f:41  
PSI Size (1-64) KBytes            : 24  
Enable Backup PSI [0|1]           : 1  
System Log Size (0-256) KBytes    : 0  
Main Thread Number [0|1]          : 0  
Voice Board Configuration (0-11)  :   


*** Press any key to stop auto run (9 seconds) ***
Auto run second count down: 9
web info: Waiting for connection on socket 0.
CFE> 




OpenWrt en Homestation ADB P.DG A4001N

Por fin hay soporte para bcm6328 en OpenWrt... la cosa promete y ya el kernel inicialmente arranca y detecta el micro correctamente (aunque falta adaptar OpenWrt a este modelo)..



Booting from latest image (0xb8010000) ...
Code Address: 0x80010000, Entry Address: 0x80010000
LZMA: Prossible old LZMA format, trying to decompress..
Decompression OK!
Entry at 0x80010000
Closing network.
Disabling Switch ports.
Flushing Receive Buffers...
3 buffers found.
Closing DMA Channels.
Starting program at 0x80010000
[    0.000000] Linux version 3.3.7 (chisco@chisco-aluminio) (gcc version 4.6.3 20120201 (prer2
[    0.000000] Detected Broadcom 0x6328 CPU revision 10b0
[    0.000000] CPU frequency is 320 MHz
[    0.000000] 32MB of RAM installed
[    0.000000] registering 32 GPIOs
[    0.000000] gpiochip_add: registered GPIOs 0 to 31 on device: bcm63xx-gpio
[    0.000000] board_bcm963xx: Boot address 0xb8000000
[    0.000000] board_bcm963xx: CFE version: unknown
[    0.000000] board_bcm963xx: unknown bcm963xx board: 963281T_TEF
[    0.000000] bootconsole [early0] enabled
[    0.000000] CPU revision is: 0002a075 (Broadcom BMIPS4350)
[    0.000000] Kernel panic - not syncing: unable to detect bcm963xx board


gracias al comando led scan todos los leds han quedado identificados...

ADSL GREEN on gpio ..............  03 
ADSL RED  on gpio     ...........  05 
Wireless GREEN on gpio ..........  09 
Wireless RED led on gpio ........  10 
Remote Service GREEN on gpio ....  06 
Remote Service RED led on gpio ..  07 
ETH GREEN on gpio ...............  31 
ETH Fail RED on gpio ............  20 
Wan data GREEN on gpio ..........  11 
Wan data RED on gpio ............  02 
Power ON GREEN on gpio  .........  04 
STOP CFE RED on gpio  ...........  08 
VOIP1 led on gpio ................ 06 


mañana más...


PD: siempre podremos volver al fw orignal que viene con el software de telefónica 

miércoles, 30 de mayo de 2012

Configuración WIFI ASL26555 OpenWrt

Vamos a configurar la conexión WIFI como cliente de nuestra red inalámbrica, editando dos ficheros de configuración:


  • /etc/config/network
  • /etc/config/wireless


Empezamos:
  • /etc/config/network
Ajustaremos la parte relativa al interface asignado a la red WIFI; si queremos IP, dinámica creamos un interface WAN según lo siguiente:


config 'interface' 'wan'
        option 'proto' 'dhcp'


En caso de IP estática será como sigue:



config interface 'wan'
        option proto    static
        option ipaddr   10.0.0.2
        option netmask  255.255.255.0
        option gateway  10.0.0.1
        option dns      10.0.0.1

Donde ipaddr es la IP que queremos asignar con la máscara correspodiente. La dirección de gateway y DNS corresponderán con nuestro router ADSL.

  • /etc/config/wireless

En este fichero controlamos la configuración WIFI:



config wifi-device  radio0
        option type     mac80211
        option channel  11
        option macaddr  5c:33:8e:bc:ee:ff
        option hwmode   11ng
        option htmode   HT20
        list ht_capab   GF
        list ht_capab   SHORT-GI-20
        list ht_capab   SHORT-GI-40
        list ht_capab   TX-STBC
        list ht_capab   RX-STBC12
        # REMOVE THIS LINE TO ENABLE WIFI:
        option disabled 0


config wifi-iface
        option device   radio0
        option network  wan
        option mode     sta
        option ssid     NOMBRE_RED_WIFI
        option encryption psk2
        option key CONTRASEÑA

Ajustaremos lo siguiente:

  • option disable 0
  • option network wan ( o el nombre que se haya definido en el fichero network para esta red)
  • option mode sta (modo wifi cliente)
  • option ssid NOMBRE_RED_WIFI (el nombre de la red WIFI que queramos conectarnos)
  • option encryption psk2 ( o bien psk o web según la encriptación que tengamos)
  • option key contraseña (nuestra contraseña)

Podemos ver las diferentes opciones en la wiki de OpenWrt http://wiki.openwrt.org/doc/uci/network

Una vez guardados los cambios reiniciamos la red y tendremos conexión con la red definida haciendo un /etc/init.d/network restart o bien con el comando wifi.




domingo, 27 de mayo de 2012

Instalando OpenWrt en ASL26555

Una vez lograda la conexión a consola y probado el firmware en RAM podemos instalar definitivamente OpenWrt en nuestro router.

IMPORTANTE: al seguir estos pasos perderemos la funcionalidad ADSL. 


La flash es tipo SPI con 16 MB particionada de la siguiente forma en Openwrt:

mtd0: 00030000 00010000 "u-boot"
mtd1: 00010000 00010000 "u-boot-env"
mtd2: 00010000 00010000 "factory"
mtd3: 000e0000 00010000 "kernel"
mtd4: 00ea0000 00010000 "rootfs"
mtd5: 00c80000 00010000 "rootfs_data"
mtd6: 00f80000 00010000 "linux"
mtd7: 00010000 00010000 "devdata"
mtd8: 00010000 00010000 "cert"
mtd9: 00010000 00010000 "langpack"

Las 3 primeras particiones son para el bootloader y datos por defecto. El espacio ocupado por OpenWRT comprende las particiones kernel, roofs y rootfs_data, y todas se agrupan en la partición linux. Devdata contiene datos como las MAC de modo que nunca la debemos tocar.

Siempre utilizaremos pues para instalar el OpenWRT la partición linux.


Como tenemos OpenWrt operativo, es muy fácil flashear la versión definitiva:


  • Activamos el servidor SSH añadiendo una contraseña con el comando passwd
  • Subimos el firmware adecuado via SCP al router (WinSCP si lo haces en windows). En consola de ubuntu sería algo como:
scp openwrt-ramips-rt305x-asl26555-squashfs-sysupgrade.bin root@192.168.1.1:/tmp/

  • Escribimos el firmware desde el directorio /tmp con el comando mtd tal cual sigue:

root@OpenWrt:/tmp# mtd -r write openwrt-ramips-rt305x-asl26555-squashfs-sysupgrade.bin linux
Unlocking linux ...
Writing from openwrt-ramips-rt305x-asl26555-squashfs-sysupgrade.bin to linux ...


  • El router se reiniciará automáticamente y arrancará OpenWrt :-D
  • La dirección IP por defecto de la red por cable es 192.168.1.1 Inicialmente accederemos vía telnet y luego por SSH en cuanto pongamos una contraseña con el comando passwd como vimos antes.

Posteriormente añadiré como configurar el WIFI e instalar todo lo necesario para que nos funcione la radio WIFI.

DESCARGAS:

Compilación desde trunk r31855 de OpenWrt con soporte de WIFI, USB, sistema de ficheros EXT4, vfat y NFS:

Firmware ASL26555 Sysupgrade












Probando OpenWrt en ASL26555

Continuando la entrada anterior, una vez que tengamos conexión a la consola del router podemos acceder a las opciones del bootloader uboot.

Para acceder arrancamos el router ya conectados con nuestro programa terminal y justo cuando aparece el primer mensaje tenemos que pulsar el número  apropiado rápidamente.

La secuencia de arranque es:


1.0.0 U-Boot 1.1.3 (Mar 16 2011 - 18:01:52) - SVN revision : 15534


Model: ASL-26564/ES


Board: Ralink APSoC DRAM:  32 MB
config usb..
[...]


Please choose the operation: 
   1: Load system code to SDRAM via TFTP. 
   2: Load system code then write to Flash via TFTP. 
   3: Boot system code via Flash (default).
   4: Entr boot command line interface.
   9: Load Boot Loader code then write to Flash via TFTP. 


Vamos a utilizar la opción 1 para probar una imagen que no altera el firmware original en la flash del router y ver que todo va bien.

La imagen que va a coger el router se sirve desde el PC vía TFTP, un protocolo de transmisión de ficheros muy utilizado en la configuración de equipos de comunicaciones por ejemplo.

Podemos utilizar el TFTP-HPA de Ubuntu. Lo instalaremos con un sudo apt-get install tftp-hpa y pondremos el fichero imagen de OpenWrt firmware.bin como sigue:  /var/lib/tftpboot/firmware.bin


En el router, al elegir la opción 1 introducimos la IP del router, del PC y el nombre del fichero:



1: System Load Linux to SDRAM via TFTP. 
 Please Input new ones /or Ctrl-C to discard
        Input device IP (192.168.1.1) ==:192.168.1.1
        Input server IP (192.168.1.10) ==:192.168.1.10
        Input Linux Kernel filename (1.bin) ==:firmware.bin

Al darle a enter veremos como inicia el arranque 



netboot_common, argc= 3 
 KSEG1ADDR(NetTxPacket) = 0xA1FE7800 
 NetLoop,call eth_halt ! 
 NetLoop,call eth_init ! 
 Waitting for RX_DMA_BUSY status Start... done
 Header Payload scatter function is Disable !! 
 ETH_STATE_ACTIVE!! 
Using Eth0 (10/100-M) device
TFTP from server 192.168.1.10; our IP address is 192.168.1.1
Filename 'firmware.bin'.


 TIMEOUT_COUNT=10,Load address: 0x80500000
Loading: Got ARP REPLY, set server/gtwy eth addr (00:24:1d:df:a4:93)
Got it
#
 first block received  
################################################################
###########################################
done
Bytes transferred = 2879232 (2bef00 hex)
NetBootFileXferSize= 002bef00
Automatic boot of image at addr 0x80500000 ...
## Booting image at 80500000 ...
## Booting image from active region 1 at 80500000 ...
   Image Name:   MIPS OpenWrt Linux-3.3.7
   Created:      2012-05-27  19:18:35 UTC
   Image Type:   MIPS Linux Kernel Image (lzma compressed)
   Data Size:    2879168 Bytes =  2.7 MB
   Load Address: 80000000
   Entry Point:  80000000
   Verifying Checksum ... OK
   Uncompressing Kernel Image ... OK


Starting kernel ...


[    0.000000] Linux version 3.3.7 (chisco@chisco-aluminio) (gcc version 4.6.3 20120201 (prerelease) (Li2
[    0.000000] bootconsole [early0] enabled
[    0.000000] CPU revision is: 0001964c (MIPS 24KEc)
[    0.000000] Ralink RT3052 id:1 rev:3 running at 384.00 MHz
[    0.000000] Determined physical RAM map:
[    0.000000]  memory: 02000000 @ 00000000 (usable)
[    0.000000] Initrd not found or empty - disabling initrd
[    0.000000] Zone PFN ranges:
[    0.000000]   Normal   0x00000000 -> 0x00002000
[    0.000000] Movable zone start PFN for each node

[...]

Pulsaremos enter y ya tendremos acceso a la línea de comandos de la consola:

BusyBox v1.19.4 (2012-05-24 22:28:07 WEST) 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
 -----------------------------------------------------
 ATTITUDE ADJUSTMENT (Bleeding Edge, r31855)
 -----------------------------------------------------
  * 1/4 oz Vodka      Pour all ingredients into mixing
  * 1/4 oz Gin        tin with ice, strain into glass.
  * 1/4 oz Amaretto
  * 1/4 oz Triple sec
  * 1/4 oz Peach schnapps
  * 1/4 oz Sour mix
  * 1 splash Cranberry juice
 -----------------------------------------------------
root@OpenWrt:/#

La particularidad de esta versión de OpenWrt compilada para este router es que corre en RAM (utiliza 16 megas de los 32 disponibles) y nos permite echar un ojo sin alterar el firmware original de ninguna forma, bastando con reiniciar el router para que quede como al principio.


DESCARGAS:

Firmware tipo initRAM para probar OpenWrt sin alterar el firmware original con soporte USB, FAT, EXT4.

Posteriormente desde este firmware instalaremos permanentemente OpenWrt en la flash del router








viernes, 25 de mayo de 2012

Conexion serie con router ADSL Homestation ASL26555

Con los router Homestation ASL26555 de los nuevos que pone telefónica podemos disponer de una radio WIFI gracias a un hardware relativamente potente, que hará las delicias de los que nos gusta escuchar música, con calidad y estemos 'cansados' de las clásicas emisoras que podemos sintonizar con las radios convencionales.

Tras el cese además de las transmisiones de DAB, salvando las grandes ciudades, tenemos esta mágnífica opción que solo requiere de internet y un par de altavoces amplificados con lo que podemos acceder a cientos de emisoras temáticas de todo el mundo con poca o ninguna publicidad y excelente calidad de sonido.

Además puede controlarse vía el mismo WIFI con un teléfono android con aplicaciones como mpddroid.

Los pasos para tener conexión vía puerto serie con la consola son:
  1. Abrimos nuestro router con cuidado y accedemos a la placa base donde se encuentran 5 puntos donde soldar unos jumpers.
  2. Conectamos las lineas RX-GND-TX según la imagen a un adapator TTL-RS232. Vale cualquier PL2303 o CP2101 USB configurando la conexión a 57600 8N1 sin control de flujo.


En este punto con un programa de terminal veremos por pantalla la consola ttyS0 del router. 

En la siguiente entrada publicaré como cambiar el firmware a OpenWrt y lo necesario para disponer la radio en marcha.