Lo primero que tenemos que hacer, es ganar acceso consola, para ello, utilizo un viejo cable modificado, un Nokia CA-42 compatible, (ArkMicro ARK3116), sobre entorno Windows XP.
Tras estudiar un poco la placa, he encontrado en JP13, acceso RS-232, ganando acceso a la consola al router, a través de 115.200 baudios.
Al arrancar nos encontramos que arranca U-Boot 1.1.6 (Mar 4 2011 - 10:29:05) Teldat 1.0.3, y tras cargar completamente !!SORPRESA!!:
U-Boot 1.1.6 (Mar 4 2011 - 10:29:05) Teldat 1.0.3
DRAM: 256 MB
Comcerto Flash Subsystem Initialization
Flash: 4 MB
NAND: board_nand_init nand->IO_ADDR_R =30000000
256 MiB
In: serial
Out: serial
Err: serial
Reserve MSP memory
Net: comcerto_gemac0, comcerto_gemac1
ethaddr=00:A0:26:XX:XX:XX
sernum1=745/xxxxxx
sernum2=745/xxxxxx
Enter password - autoboot in 3 sec...
NAND read: device 0 offset 0x0, size 0x200000
Reading data from 0x1ff800 -- 100% complete.
2097152 bytes read: OK
## Booting image at 81000000 ...
Image Name: Linux-2.6.21.1-iR4-1.0.3
Image Type: ARM Linux Kernel Image (uncompressed)
Data Size: 1313876 Bytes = 1.3 MB
Load Address: 81408000
Entry Point: 81408000
Verifying Checksum ... OK
OK
Starting kernel ...
Uncompressing Linux................................................................................... done, booting the kernel.
Linux version 2.6.21.1-iR4-1.0.3 (cgarcia@orion) (gcc version 4.1.2) #11 Fri Mar 11 16:11:54 CET 2011
CPU: ARMv6-compatible processor [4117b361] revision 1 (ARMv6TEJ), cr=00c5387f
Machine: Comcerto 100 (Teldat board)
Memory policy: ECC disabled, Data cache writeback
CPU0: D VIPT write-back cache
CPU0: I cache: 16384 bytes, associativity 4, 32 byte lines, 128 sets
CPU0: D cache: 16384 bytes, associativity 4, 32 byte lines, 128 sets
Built 1 zonelists. Total pages: 62992
Kernel command line: init=/etc/preinit root=/dev/mtdblock6 rootfstype=yaffs2 ro console=ttyS0,115200 mtdparts=comcertoflash.0:256k(boot)ro,128k(env),128k(tldt)ro,1280k(kr)ro,-(fs)
ro;comcertonand:2M(kr1),100M(fs1),2M(kr2),100M(fs2),-(cfg) hwaddress=eth2,00:A0:26:7C:F8:78
PID hash table entries: 1024 (order: 10, 4096 bytes)
Dentry cache hash table entries: 32768 (order: 5, 131072 bytes)
Inode-cache hash table entries: 16384 (order: 4, 65536 bytes)
Memory: 248MB = 248MB total
Memory: 248960KB available (2368K code, 274K data, 88K init)
Mount-cache hash table entries: 512
CPU: Testing write buffer coherency: ok
NET: Registered protocol family 16
L2X0 cache controller enabled
SPI core: loaded version 0.2
Comcerto PCI: init
PCI: bus0: Fast back to back transfers enabled
Generic PHY: Registered new driver
NET: Registered protocol family 2
IP route cache hash table entries: 2048 (order: 1, 8192 bytes)
TCP established hash table entries: 8192 (order: 4, 65536 bytes)
TCP bind hash table entries: 8192 (order: 3, 32768 bytes)
TCP: Hash tables configured (established 8192 bind 8192)
TCP reno registered
SPI core: add adapter comcerto-spi
arm1: Module loaded.
squashfs: version 3.0 (2006/03/15) Phillip Lougher
JFFS2 version 2.2. (NAND) (C) 2001-2006 Red Hat, Inc.
yaffs Mar 4 2011 11:40:32 Installing.
io scheduler noop registered
io scheduler deadline registered (default)
Serial: 8250/16550 driver $Revision: 1.90 $ 2 ports, IRQ sharing disabled
serial8250.0: ttyS0 at MMIO 0x10090000 (irq = 41) is a 16550A
serial8250.0: ttyS1 at MMIO 0x10094000 (irq = 58) is a 16550A
loop: loaded (max 8 devices)
nbd: registered device at major 43
eth0: Comcerto Ethernet Controller 00:ed:cd:ef:aa:cc
eth2: Comcerto Ethernet Controller 00:a0:26:7c:f8:78
Comcerto MDIO Bus: probed
Comcerto MDIO Bus: probed
comcertoflash.0: Found 1 x16 devices at 0x0 in 16-bit bank
Amd/Fujitsu Extended Query Table at 0x0040
number of CFI chips: 1
cfi_cmdset_0002: Disabling erase-suspend-program due to code brokenness.
5 cmdlinepart partitions found on MTD device comcertoflash.0
Creating 5 MTD partitions on "comcertoflash.0":
0x00000000-0x00040000 : "boot"
0x00040000-0x00060000 : "env"
0x00060000-0x00080000 : "tldt"
0x00080000-0x001c0000 : "kr"
0x001c0000-0x00400000 : "fs"
NAND device: Manufacturer ID: 0xad, Chip ID: 0xda (Hynix NAND 256MiB 3,3V 8-bit)
Scanning device for bad blocks
Bad eraseblock 248 at 0x01f00000
Bad eraseblock 595 at 0x04a60000
5 cmdlinepart partitions found on MTD device comcertonand
Creating 5 MTD partitions on "comcertonand":
0x00000000-0x00200000 : "kr1"
0x00200000-0x06600000 : "fs1"
0x06600000-0x06800000 : "kr2"
0x06800000-0x0cc00000 : "fs2"
0x0cc00000-0x10000000 : "cfg"
TCP westwood registered
NET: Registered protocol family 1
NET: Registered protocol family 10
lo: Disabled Privacy Extensions
IPv6 over IPv4 tunneling driver
sit0: Disabled Privacy Extensions
NET: Registered protocol family 17
NET: Registered protocol family 15
Initializing NETLINK_KEY socket
802.1Q VLAN Support v1.8 Ben Greear <greearb@candelatech.com>
All bugs added by David S. Miller <davem@redhat.com>
yaffs: dev is 32505862 name is "mtdblock6"
yaffs: Attempting MTD mount on 31.6, "mtdblock6"
block 233 is bad
block 580 is bad
VFS: Mounted root (yaffs2 filesystem) readonly.
Freeing init memory: 88K
- preinit -
yaffs: dev is 32505865 name is "mtdblock9"
yaffs: Attempting MTD mount on 31.9, "mtdblock9"
- init -
Please press Enter to activate this console.
BusyBox v1.14.4 (2011-03-04 10:47:59 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 MM I N D S P E E D Technologies - Build v5.2 for Comcerto
----------------------
El equipo, está basado en el software GPL de OPENWRT, una versión ARM-6 compatible, la parte GPL controla uno de los cores de CPU, siendo el segundo controlado por firmware binario registrado por Mindspeed, las fuentes correspondiente a la CPU, no han sido liberadas ni por Mindspeed en su momento, ni por su actual propietario, FREESCALE. Las unicas versiones encontradas para poder compilar un firmware personalizado, incluido el Linux Openwrt for M821XX, en el mercado son de pago.
Como en mi caso, tengo el PC con Windows XP en una habitación y trabajo con mi portatil en el comedor, y quiero trabajar con mi querido Putty sobre SSH, una vez configurada la red wifi del router tenemos que acceder desde consola:
Crear password para root:
# passwd rootDeshabilitar firewall:
# /etc/init.d/firewall stopHabilitar Dropbear para acceso SSH
# /etc/init.d/dropbear start
Como por el momento, no podemos modificar nada substancial, cada vez que arranquemos el router, hay que hacer esto, para ganar acceso SSH al mismo.
En la próxima entrada, miraremos por encima la configuración de OpenWRT.login as: root
root@192.168.3.1's password:
BusyBox v1.14.4 (2012-07-06 10:57:00 CEST) 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 MM I N D S P E E D Technologies - Build v7.0 for Comcerto---------------------------------------------------root@irouter:~#
3 comentarios:
Hola, gracias por este estupendo tutorial.
Tengo uno de estos routers y me gustaría convertirlo en un bridge WiFi para llevar red a un lugar distante donde quiero conectar algunos dispositivos por cable. Como el router ya viene con openwrt, no creo que sea difícil una vez que le logre entrar.
Desafortunadamente, me he quedado en el primer paso: entrarle por consola para activar SSH. He encontrado el conector J13 pero no logro conectar desde el PC. Tienes el pinout de este conector de 4 pines? Estoy usando un conversor de RS232 a USB que quizás me está dando problemas también. Tampoco soy muy bueno soldando :( Por qué no pusieron unos pines en este conector???
Gracias de antemano por tu ayuda y de nuevo por el tutorial.
Saludos,
Juan Carlos
Hola Juan Carlos:
Me alegra que te guste el mini-tuto.
Yo no utilizo un conversor RS-232 a USB, utilizo un cable FBUS, compatible con Nokia CA-42 o DKU-5.
Se pueden conseguir en locutorios o tiendas de móviles que lleven tiempo en el mercado.
Una vez con el cable, remueve la parte del conector FBUS, y deja los cuatro hilos que lleva.
En mi caso, (pero puede variar):
RX - VERDE
3,3V - AMARILLO
GND - BLANCO
TX - AZUL
Como verás, tiene un pin de que da tensión, en el caso del teldat no hace falta, para otros muchos routers, si se utiliza.
La señal FBUS, varía de las TTLS de RS-232, localiza con un polímetro GND y 3,3V.
Mira la entrada, http://ipv6labs.blogspot.com.es/2015/01/teldat-i-router-1104-w-ingenieria.html
Si quieres comprobar RX y TX, abre un consola con putty, abriendo el puerto COM que te haya creado el driver, cualquier velocidad, y si puenteas RX y TX, lo que escribas en el teclado como entrada debe mostrartelo como salida en la consola.
Una vez localizado los pines y comprobado que el cable funciona, conecta comenzando por la derecha, (los conectores RJ-45 quedan abajo de tu perspectiva), y creo que era RX, GND y TX. (No dispongo ahora de los pines, ya que ese router pasó a mejor vida, y la doc que elaboré se perdió en un HD aterrizado.
Enciende la consola putty, el COM que sea, 115.200 baudios, y enciende el router, deberás tener mensajes en la consola.
Si no sale nada, permuta los pines, no le pasa nada al router por soldar pines equivocados.
Espero te sea de utilidad, y quedo aguardando tus noticias.
Didac
Se deben conectar comenzando por la derecha.
Hola de nuevo, después de largo tiempo. estuve buscando el cable fbus pero no me fue posible encontrarlo en el pueblecito de Dinamarca donde vivo. De manera que abandoné... por un tiempo.
Trasteando con la Raspberry, caí en cuenta de que las señales RX y TX de la Raspi tienen niveles de 3.3v, como fbus. De manera que manos a la obra... soldé, hice unas pruebas y al final le logré entrar por consola al iRouter a través de la Raspberry. He podido seguir todos los pasos que das.
Mi idea es configurar el router como repetidor WiFi para instalarlo en la casita del jardín. Entiendo por tus posts que no voy a poder instalar un nuevo OpenWRT porque no existe una compilación para este hardware. Lo que he pensado es trabajar sobre la instalación actual y añadir los módulos para convertirlo en repetidor.
He seguido tus pasos para convertir en RW los filesystems pero no me funciona. Cuando reinicio el router se me vuelve todo al estado inicial. El comando mtdparts en el U-boot me da el mismo resultado que a tí después de cambiar la variable mtdparts. Un mount en Linux me da este resultado:
root@irouter:~# mount
rootfs on / type rootfs (rw)
/dev/root on / type yaffs2 (ro)
none on /proc type proc (rw)
none on /sys type sysfs (rw)
none on /tmp type tmpfs (rw,nosuid,nodev)
tmpfs on /dev type tmpfs (rw)
none on /dev/pts type devpts (rw)
none on /etc type tmpfs (rw,nosuid,nodev)
none on /mnt type tmpfs (rw,nosuid,nodev)
/dev/mtdblock9 on /tmp/persist type yaffs2 (rw)
none on /proc/bus/usb type usbfs (rw)
Me parece un poco extraño que casi todos los fs sean de tipo tmpfs. La cosa es que si hago cualquier cambio en /etc/rc.d, no me guarda los cambios. Tienes alguna idea?
Gracias por adelantado,
Juan Carlos
Publicar un comentario