Para conectar con el puerto serie es necesario un adaptador de RS232 a TTL, en mi caso tenia una placa de un transmisor RF a RS232. Sin el modulo RF ya tenemos nuestro conversor RS232 a TTL.
|
|
F@ST1201S con adaptador RS232-TTL |
La conexión entre el router y el ordenador se tiene que hacer mediante un cable null modem DB9H-DB9H, de no hacerlo así no se comunicaran.
|
Null modem DB9H-DB9H |
Si el ordenador tiene puerto serie, conectamos el cable directamente, en caso contrario se puede utilizar un adaptador USB a RS232.
|
USB a RS232 |
La configuración para poder comunicar el router y el ordenador debe quedar así:
Velocidad: 115200
Bits de datos: 8
Paridad: ninguna
Bits de parada: 1
Control de flujo: no
COM: en mi caso USB a RS232 /dev/ttyUSB0
La aplicación utilizada para las comunicaciones entre router y ordenador es
minicom se puede utilizar cualquier otra.
Desde un terminal lanzamos minicom.
minicom
nos aparece la pantalla de bienvenida.
Welcome to minicom 2.4
OPCIONES: I18n
Compilado en Jan 25 2010, 06:49:09.
Port /dev/ttyUSB0
Presione CTRL-A Z para obtener ayuda sobre teclas especiales
Sagem CFE version: 3.9Sla
Broadcom version 1.0.37-6.4 for BCM96338 (32bit,SP,BE)
Build Date: Mon Sep 25 18:39:15 CST 2006 (yangj@svr1.sagemharbournetworks.com)
Copyright (C) 2005-2006 Sagem communication.
Boot Address 0xbfc00000
Initializing Arena.
Initializing Devices.
Parallel flash device: name AM29LV160B, id 0x2249, size 2048KB
totalBlks=35
totalSize=2048K
Enter readNvramData(CFE)
Enter kerSysNvRamGet(CFE)
getShareBlks: i=0, sect_size=16384, end_blk=1
kerSysNvRamGet(CFE) Mac address:00:19:4b:20:00:55, BoardId=F@ST1201S
Enter readNvramData(CFE)
Enter kerSysNvRamGet(CFE)
getShareBlks: i=0, sect_size=16384, end_blk=1
kerSysNvRamGet(CFE) Mac address:00:19:4b:20:00:55, BoardId=F@ST1201S
fInfo.flash_nvram_start_blk = 0
fInfo.flash_nvram_blk_offset = 0x580
fInfo.flash_nvram_number_blk = 1
fInfo.flash_nvram_length = 1024
fInfo.flash_backup_start_blk = 34
fInfo.flash_backup_blk_offset = 0x2000
fInfo.flash_backup_number_blk = 1
fInfo.flash_backup_length = 24576
fInfo.flash_scratch_pad_start_blk = 34
fInfo.flash_scratch_pad_number_blk = 1
fInfo.flash_scratch_pad_blk_offset = 0x8000
fInfo.flash_scratch_pad_length = 8192
fInfo.flash_persistent_start_blk = 34
fInfo.flash_persistent_blk_offset = 0xa000
fInfo.flash_persistent_number_blk = 1
fInfo.flash_persistent_length = 24576
psi startAddr = bfdfa000
sp startAddr = bfdf8000
backup startAddr = bfdf2000
fInfo.flash_nvram_start_blk = 0
fInfo.flash_nvram_blk_offset = 0x580
fInfo.flash_nvram_number_blk = 1
psi startAddr = bfdfa000
fInfo.flash_persistent_start_blk = 34
fInfo.flash_persistent_blk_offset = 0xa000
fInfo.flash_persistent_number_blk = 1
getShareBlks: i=34, sect_size=65536, end_blk=35
Backup content:[]
getShareBlks: i=34, sect_size=65536, end_blk=35
PSI content:[]
Auto-negotiation timed-out
10 MB Half-Duplex (assumed)
Enter readNvramData(CFE)
Enter kerSysNvRamGet(CFE)
getShareBlks: i=0, sect_size=16384, end_blk=1
kerSysNvRamGet(CFE) Mac address:00:19:4b:20:00:55, BoardId=F@ST1201S
CPU type 0x29010: 240MHz
Total memory: 8388608 bytes (8MB)
Total memory used by CFE: 0x80401000 - 0x8052AE60 (1220192)
Initialized Data: 0x8041F660 - 0x804224A0 (11840)
BSS Area: 0x804224A0 - 0x80428E60 (27072)
Local Heap: 0x80428E60 - 0x80528E60 (1048576)
Stack Area: 0x80528E60 - 0x8052AE60 (8192)
Text (code) segment: 0x80401000 - 0x8041F654 (124500)
Boot area (physical): 0x0052B000 - 0x0056B000
Relocation Factor: I:00000000 - D:00000000
Enter readNvramData(CFE)
Enter kerSysNvRamGet(CFE)
getShareBlks: i=0, sect_size=16384, end_blk=1
kerSysNvRamGet(CFE) Mac address:00:19:4b:20:00:55, BoardId=F@ST1201S
Enter readNvramData(CFE)
Enter kerSysNvRamGet(CFE)
getShareBlks: i=0, sect_size=16384, end_blk=1
kerSysNvRamGet(CFE) Mac address:00:19:4b:20:00:55, BoardId=F@ST1201S
Board IP address : 192.168.1.1
Host IP address : 192.168.1.100
Gateway IP address :
Run from flash/host (f/h) : f
Default host run file name : vmlinux
Default host flash file name : bcm963xx_fs_kernel
Boot delay (0-9 seconds) : 1
Board Id Name : F@ST1201S
Psi size in KB : 24
Number of MAC Addresses (1-32) : 6
Base MAC Address : 00:19:4b:20:00:55
Ethernet PHY Type : Internal
Memory size in MB : 8
CMT Thread Number : 0
*** Press any key to stop auto run (1 seconds) ***
web info: Waiting for connection on socket 0.
0
Code Address: 0x80010000, Entry Address: 0x8017d018
Decompression OK!
Entry at 0x8017d018
Closing network.
Starting program at 0x8017d018
Linux version 2.6.8.1 (yangj@svr1.sagemharbournetworks.com) (gcc version 3.4.2) #1 Wed Nov 29 09:56:41 CST 2006
Parallel flash device: name AM29LV160B, id 0x2249, size 2048KB
Total Flash size: 2048K with 35 sectors
fInfo.flash_nvram_start_blk = 0
fInfo.flash_nvram_blk_offset = 0x580
fInfo.flash_nvram_number_blk = 1
fInfo.flash_nvram_length = 1024
fInfo.flash_backup_start_blk = 34
fInfo.flash_backup_blk_offset = 0x2000
fInfo.flash_backup_number_blk = 1
fInfo.flash_backup_length = 24576
fInfo.flash_scratch_pad_start_blk = 34
fInfo.flash_scratch_pad_number_blk = 1
fInfo.flash_scratch_pad_blk_offset = 0x8000
fInfo.flash_scratch_pad_length = 8192
fInfo.flash_persistent_start_blk = 34
fInfo.flash_persistent_blk_offset = 0xa000
fInfo.flash_persistent_number_blk = 1
fInfo.flash_persistent_length = 24576
psi startAddr = bfdfa000
sp startAddr = bfdf8000
backup startAddr = bfdf2000
F@ST1201S prom init
CPU revision is: 00029010
Determined physical RAM map:
memory: 007a0000 @ 00000000 (usable)
On node 0 totalpages: 1952
DMA zone: 1952 pages, LIFO batch:1
Normal zone: 0 pages, LIFO batch:1
HighMem zone: 0 pages, LIFO batch:1
Built 1 zonelists
Kernel command line: root=31:0 ro noinitrd
brcm mips: enabling icache and dcache...
Primary instruction cache 16kB, physically tagged, 2-way, linesize 16 bytes.
Primary data cache 8kB 2-way, linesize 16 bytes.
PID hash table entries: 32 (order 5: 256 bytes)
Using 120.000 MHz high precision timer.
Dentry cache hash table entries: 2048 (order: 1, 8192 bytes)
Inode-cache hash table entries: 1024 (order: 0, 4096 bytes)
Memory: 6040k/7808k available (1270k kernel code, 1748k reserved, 185k data, 64k init, 0k highmem)
Calibrating delay loop... 239.20 BogoMIPS
Mount-cache hash table entries: 512 (order: 0, 4096 bytes)
Checking for 'wait' instruction... unavailable.
NET: Registered protocol family 16
PPP generic driver version 2.4.2
NET: Registered protocol family 24
Using noop io scheduler
bcm963xx_mtd driver v1.0
brcmboard: brcm_board_init entry
bcm963xx_serial driver v2.0
NET: Registered protocol family 2
IP: routing cache hash table of 512 buckets, 4Kbytes
********* ip_rt_init ************
sizeof(struct rtable)=244
ip_rt_max_size=2048, rt_hash_mask=511, ipv4_dst_ops.gc_thresh=512,
ip_rt_gc_interval=12000, rt_secret_rebuild=120000
TCP: Hash tables configured (established 512 bind 1024)
NET: Registered protocol family 1
NET: Registered protocol family 17
Ebtables v2.0 registered
NET: Registered protocol family 8
NET: Registered protocol family 20
VFS: Mounted root (squashfs filesystem) readonly.
Freeing unused kernel memory: 64k freed
init started: BusyBox v1.00 (2006.11.29-01:58+0000) multi-call binary
Algorithmics/MIPS FPU Emulator v1.5
BusyBox v1.00 (2006.11.29-01:58+0000) Built-in shell (msh)
Enter 'help' for a list of built-in commands.
Loading drivers and kernel modules...
atmapi: module license 'Proprietary' taints kernel.
blaadd: blaa_detect entry
adsl: adsl_init entry
Broadcom BCMPROCFS v1.0 initialized
Broadcom BCM6338A2 Ethernet Network Device v0.3 Nov 29 2006 09:55:27
Config Internal PHY Through MDIO
BCM63xx_ENET: Auto-negotiation timed-out
BCM63xx_ENET: 10 MB Half-Duplex (assumed)
eth0: MAC Address: 00:19:4b:20:00:55
Cfm wathcer has been setup!
Broadcom BCM6338A2 USB Network Device v0.4 Nov 29 2006 09:55:29
usb0: MAC Address: 00 19 4B 20 00 55
usb0: Host MAC Address: 00 19 4B 20 00 56
Cfm has been started to initiate!
Enter kerSysPersistentGet: strLen[24576],offset[0],fInfo.flash_persistent_blk_offset=[40960]
usedBlkSize = 65536
getSharedBlks: i = 34, sect_size = 65536, end_blk = 35
psi[1-10]=[]
Enter kerSysPersistentGet: strLen[24576],offset[0],fInfo.flash_persistent_blk_offset=[40960]
usedBlkSize = 65536
getSharedBlks: i = 34, sect_size = 65536, end_blk = 35
psi[1-10]=[]
PSI has been initiated successfully!
BcmAdsl_Initialize=0xC0063228, g_pFnNotifyCallback=0xC0079654
pSdramPHY=0xA07FFFF8, 0xE5FDBFCE 0xFDFEF7EF
AdslCoreHwReset: AdslOemDataAddr = 0xA07F8A54
dgasp: kerSysRegisterDyingGaspHandler: dsl0 registered
ATM Config Management initiated successfully!
ip_tables: (C) 2000-2002 Netfilter core team
ip_conntrack version 2.1 (61 buckets, 600 max) - 368 bytes per conntrack
ip_conntrack_pptp version 2.1 loaded
ip_nat_pptp version 2.0 loaded
ip_conntrack_h323: init
ip_nat_h323: initialize the module!
ip_conntrack_rtsp v0.01 loading
ip_nat_rtsp v0.01 loading
Security configuration management initiated successfully!
==> Software Version: 3.13Sla_en. <==
device usb0 entered promiscuous mode
br0: port 1(usb0) entering learning state
br0: topology change detected, propagating
br0: port 1(usb0) entering forwarding state
device eth0 entered promiscuous mode
br0: port 2(eth0) entering learning state
br0: topology change detected, propagating
br0: port 2(eth0) entering forwarding state
pvc2684d: Interface "nas_8_35" created sucessfully
pvc2684d: Communicating over ATM 0.8.35, encapsulation: LLC
device nas_8_35 entered promiscuous mode
br0: port 3(nas_8_35) entering learning state
br0: topology change detected, propagating
br0: port 3(nas_8_35) entering forwarding state
Enter kerSysScratchPadGet
usedBlkSize = 65536
getSharedBlks: i = 34, sect_size = 65536, end_blk = 35
Enter kerSysScratchPadSet
usedBlkSize = 65536
getSharedBlks: i = 34, sect_size = 65536, end_blk = 35
setSharedBlks: i = 34, sect_size = 65536, end_blk = 35
Network initiated successfully!
Web Server initiated successfully!
Enter kerSysScratchPadGet
usedBlkSize = 65536
getSharedBlks: i = 34, sect_size = 65536, end_blk = 35
br0: port 2(eth0) entering disabled state
br0: port 1(usb0) entering disabled state
Cfm initiated successfully!
login:
Podemos observar que el firmware esta basado en Linux. Pero no he podido encontrar el código fuente del kernel ni tampoco herramienta alguna para su compilación. Todo y que Sagem tiene una portal opensource Sagemcom pero ni rastro del código fuente del F@ST1201S.
Puede tratarse de una violación de la licencia GPL el firmware incluye:
- Linux version 2.6.8.1
- BusyBox v1.00