Não confunda o W300S com o W300. Este último em alguns mercados parece idêntico mas tem 4 portas LAN em vez de uma. O W300 brasileiro é bem diferente.
Escrito na placa: AZR82 V1.0
Componentes principais
- Winbond W9864G6JH – SDRAM 4M x 16bits (8MB)
- Trendchip TC3162UE – CPU
- Trendchip TC3086 – ADSL2/2+ analogue front-end
- Ralink RT3390L – WiFi 802.11n
- Winbond 25Q16VBS – Memória flash SPI de 2MB
- AX6613 – Regulador Linear de 1A, low dropout
- UTC MC34063 – 1.5 A, Step-Up/Down/Inverting Switching Regulators
- MP1482DS – Conversor DC-DC
Detalhe da antena
No fundo da placa ficam apenas os LEDs
A porta serial
Parâmetros: 115200, 8N1
Bootlog:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 |
Bootbase Version: VTC_SPI1.12 | 2010/09/09 13:41:30 RAM: Size = 8192 Kbytes DRAM POST: Testing: 8192K OK Found SPI Flash 2MiB Winbond W25Q16 at 0xbfc00000 SPI Flash Quad Enable Turn off Quad Mode RAS Version: W300SV2.0.0a_ZR8_BR1 System ID: $2.12.44.0(SREZ.E3)3.12.8.201 20110714_v001 | 2011/07/14 Press any key to enter debug mode within 3 seconds. ............................................................ Flash data is the same!! [2J[H[HCopyright (c) 2001 - 2006 ZTE CORPORATION. initialize ch = 0, TC2101ME, ethernet address: b4:b3:62:52:02:04 initialize ch = 1, PhyMode=9, DesiredPhyMode=9 ethernet address: b4:b3:62:52:02:04 Wan Channel init ........ done Initializing ADSL F/W ........ done ==>natTableMemoryInit <==natTableMemoryInitANNEXAL SAR TX priority switch Off! new administrator name is: TMAR#ZTV5.5.0a. Testlab 8 largeD flag=2 (0:maxD=64, 1:maxD=128, 2:maxD=511) set try multimode number to 3 (dropmode try num 3) SRAOFF Valid Loss of power OFF! Dyingasp OFF! debug vendorclass input line: ipCurrent Stdio Timeout = 30 minutes Syncookie switch On! Press ENTER to continue... |
O bootlog desse modem é o menor que já vi.
Note que lá no início você tem a oportunidade de pressionar qualquer tecla para entrar no “debug mode”. Mas chutando eu não consegui descobrir nenhum comando. Mais sobre isso adiante.
Mais adiante veja que o firmware diz qual o nome de administrador:
TMAR#ZTV5.5.0a
No fim ele pede para pressionar ENTER quando então é pedida uma senha, que é a senha do administrador configurada no modem. Após digitar a senha os seguintes comandos ficam disponíveis:
1 2 3 4 |
sys exit ether wan etherdbg tcephydbg ip bridge dot1q pktqos show set lan |
Pelas mensagens do boot pude apurar que o TP-Link TD-W8961NB e o TP-Link TD-8901N usam firmwares parecidos. E graças a isso pude descobrir que o comando para obter o help do debug mode é “ATHE”. Aqui está a lista completa fornecida pelo modem:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
======= Debug Command Listing ======= AT just answer OK ATHE print help ATBAx change baudrate. 1:38.4k, 2:19.2k, 3:9.6k 4:57.6k 5:115.2k ATENx,(y) set BootExtension Debug Flag (y=password) ATSE show the seed of password generator ATTI(h,m,s) change system time to hour:min:sec or show current time ATDA(y,m,d) change system date to year/month/day or show current date ATDS dump RAS stack ATDT dump Boot Module Common Area ATDUx,y dump memory contents from address x for length y ATRBx display the 8-bit value of address x ATRWx display the 16-bit value of address x ATRLx display the 32-bit value of address x ATGO(x) run program at addr x or boot router ATGR boot router ATGT run Hardware Test Program ATRTw,x,y(,z) RAM test level w, from address x to y (z iterations) ATSH dump manufacturer related data in ROM ATDOx,y download from address x for length y to PC via XMODEM ATTD download router configuration to PC via XMODEM ATUR upload router firmware to flash ROM ATLC upload router configuration file to flash ROM ATXSx xmodem select: x=0: CRC mode(default); x=1: checksum mode ATLD Upload Configuration File and Default ROM File to Flash ATCD Convert Running ROM File to Default ROM File into Flash |
Quando você tem a senha do “GOD Mode” tem acesso a mais comandos. A senha, que é baseada no endereço MAC do seu modem, pode ser obtida usando o ATEN Password Generation Script do hacker PiotrBania. A lista de comandos estendida é esta:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 |
======= Debug Command Listing ======= AT just answer OK ATHE print help ATBAx change baudrate. 1:38.4k, 2:19.2k, 3:9.6k 4:57.6k 5:115.2k ATENx,(y) set BootExtension Debug Flag (y=password) ATSE show the seed of password generator ATTI(h,m,s) change system time to hour:min:sec or show current time ATDA(y,m,d) change system date to year/month/day or show current date ATDS dump RAS stack ATDT dump Boot Module Common Area ATDUx,y dump memory contents from address x for length y ATWBx,y write address x with 8-bit value y ATWWx,y write address x with 16-bit value y ATWLx,y write address x with 32-bit value y ATRBx display the 8-bit value of address x ATRWx display the 16-bit value of address x ATRLx display the 32-bit value of address x ATGO(x) run program at addr x or boot router ATGR boot router ATGT run Hardware Test Program AT%Tx Enable Hardware Test Program at boot up ATBTx block0 write enable (1=enable, other=disable) ATRTw,x,y(,z) RAM test level w, from address x to y (z iterations) ATWEa(,b,c,d) write MAC addr, Country code, EngDbgFlag, FeatureBit to flash ROM ATCUx write Country code to flash ROM ATCB copy from FLASH ROM to working buffer ATCL clear working buffer ATSB save working buffer to FLASH ROM ATBU dump manufacturer related data in working buffer ATSH dump manufacturer related data in ROM ATWMx set low 6 digits MAC address in working buffer ATMHx set hight 6 digits MAC address in working buffer ATBS show the bootbase seed of password generator ATLBx xmodem upload bootbase,x is password ATSMx set 6 digits MAC address in working buffer ATCOx set country code in working buffer ATFLx set EngDebugFlag in working buffer ATSTx set ROMRAS address in working buffer ATSYx set system type in working buffer ATVDx set vendor name in working buffer ATPNx set product name in working buffer ATFEx,y,... set feature bits in working buffer ATMP check & dump memMapTab ATDOx,y download from address x for length y to PC via XMODEM ATTD download router configuration to PC via XMODEM ATUPx,y upload to RAM address x for length y from PC via XMODEM ATUR upload router firmware to flash ROM ATDC hardware version check disable during uploading firmware ATLC upload router configuration file to flash ROM ATUXx(,y) xmodem upload from flash block x to y ATERx,y erase flash rom from block x to y ATWFx,y,z copy data from addr x to flash addr y, length z ATXSx xmodem select: x=0: CRC mode(default); x=1: checksum mode ATLD Upload Configuration File and Default ROM File to Flash ATBR Reset to default Romfile ATCD Convert Running ROM File to Default ROM File into Flash |
Mesmo sem estar no “GOD Mode” é possível usar o protocolo XMODEM (uma gambiarra útil que existe desde 1977), disponível em programas como o Teraterm, para transferir arquivos entre a memória do modem e o PC usando apenas a porta serial.
Para fazer o dump do conteúdo inteiro da flash use o comando: ATDO bfc00000, 200000
1 2 |
ATDO bfc00000, 20000 Starting XMODEM download... |
Note que os dois números acima são hexadecimais. ‘200000’ (200KB em decimal) corresponde a 2MB em hexa.
O endereço inicial bfc00000 depende do modem e é obtido lá no bootlog, na linha que diz:
1 |
Found SPI Flash 2MiB Winbond W25Q16 at 0xbfc00000 |
Leva cerca de 3min30s para fazer o download de 2MB por esse processo. Se você não está familiarizado com XMODEM, tenha em mente que após iniciar o download no modem você tem que dizer ao programa que você está usando que quer receber um arquivo. No Teraterm isso fica em File -> Transfer ->XMODEM -> Receive.
Tenha em mente que um dump de flash inteira contém também o bootloader e arquivos de firmware para update “normal” não contém bootloader. Então esse dump não pode ser usado para instalação normal sem ser editado antes.
Dump disponível para download aqui.
Infelizmente alcancei uma barreira. Eu preciso pelo menos de uma amostra do firmware para poder aprender como instalar o firmware via porta serial. E para deduzir como transformar um dump em arquivo de firmware usável eu também preciso de uma amostra. Mas o único link para esse firmware que consigo encontrar na web é o endereço http://www.zte-xdsl.com/300s/Firmware.rar que não funciona mais. Se alguém tiver esse firmware, por favor contribua.
W300 serve?
http://www.ztemodem.net/zte-modem-firmware/
São muito diferentes.
Se você dumpar o firmware pela interface do roteador não servirá?
Não sei de qual “interface” (são duas) você está falando mas parece que você não entendeu. Eu tenho o dump do firmware. O que eu quero é ao menos uma amostra do firmware “instalável” pela GUI. São duas coisas diferentes.
Gostaria de saber se tem como desmontá-lo sem danificar a carcaça deste aparelho.
Eu não lembro exatamente como fiz e não tenho um destes na minha mesa agora, mas se me recordo bem basta soltar os parafusos e, com muita paciência, forçar a abertura com um cartão de crédito.