maanantaina, kesäkuuta 10, 2019

Zyxel ADSL modeemin lukituksen avaaminen, osa 1


Minulla on Elisalta hankittu Zyxel VMG3925-B10B ADSL-modeemi, jossa on Elisan iäkäs firmware eli laiteohjelmisto vuodelta 2017. Halusin saada käyttöön geneerisen laiteohjelmiston, jonka Zyxel on tehnyt ja joka ei ole Elisan asetuksilla rajoitettu. Koska en enää käytä ADSL-linjaa, käytän laittetta WLAN-tukiasemana.
Laitteen etähallinnasta on estetty muiden kuin Elisan varusohjelmien päivitys laitteeseen.
Muropaketin keskustelupalstalla on tarinaa, miten lukituksen voi avata ja varusohjelmiston päivittää haluamakseen.

Laite pitää ensin avata. Se on kiinni neljällä ruuvilla, joiden jälkeen sen kuoret aukeavat, kun niiden saumasta vipuaa puoliskoja kiinnipitävät kynnet irti toisistaan.Kaksi ruuvia on takapaneelin alaosassa olavan tarran takana piilossa.


Ruuvien sijoitus

Kun laite on auki, täytyy löytää laitteen säätämiseen ja vikakorjaukseen tarkoitettu liitin (J407). Se sijaitsee laittteen prosessorin lähellä, joka on peitetty suurikokoisella jäähdytyssiilellä. Se on periaatteessa sarjaportti, jossa on VCC, RX, TX ja maa-kytkennät. Haasteen tuo se, että siinä käytetään normaalin sarjaportin sijaan 3,3 voltin jännitettä (eikä normaalia 5,0 V jännitettä).

Asensin läppärilleni Tera Term-ohjelmiston, mutta se ei nähnyt laitteessani lainkaan käyttökelpoista sarjaporttia.

Hankin operaatiota varten Rasberry Pie käyttöön tehdyn USB-to-TTL -kaapelin verkkokauppa.comista. Se näkyy Prolific Serial to USB -porttina Windowsin laitehallinnassa, mutta laite ei aktivoidu ja laitehallinnassa on virheilmoitus ”Laitetta ei voi käynnistää”. Kun kaapelin kytki USB-porttiin, Windows latasi sille ajurin verkosta automaattisesti, mutta se ei suostunut käynnistymään, virhekoodi oli 10.

Laite avattuna ja kaapeli paikoillaan
Löysin lopulta Totalcardiagnostics.com sivulta keskustelusäikeen, jossa kerrotaan, että useimmat Prolific-kaapelit käyttävät Kiinassa kopioitua piiriä, jonka vuoksi Windows on päättänyt estää sen laitetunnuksen käynnistymisen. Oikea tapa ratkaista ongelma on käyttää heidän linkittämäänsä asennusohjelmaa, joka poistaa vanhat ajuriversiot ja asentaa niiden tilalle toimivan ajuriversion.
Tuo paketti tekikin tehtävänsä ja sen jälkeen koneessa näkyi COM3-sarjaportti, jota saattoi säätää Tera Termin asetuksista. Oikea asetus on 115200, 8, N, 1. Sen jälkeen Tera Termin näytöllä alkoi vilistä laitteen toiminnasta kertovia viestejä.

Base: 4.16_02A
CFE version 1.0.38-116.140 for BCM963268 (32bit,SP,BE)
Build Date: 09/01/2017 (howard@ubuntu)
Copyright (C) 2000-2013 Broadcom Corporation.

Chip ID: BCM63168D0, MIPS: 400MHz, DDR: 400MHz, Bus: 200MHz
Main Thread: TP0
Memory Test Passed
Total Memory: 134217728 bytes (128MB)
Boot Address: 0xb8000000

NAND ECC Hamming, page size 0x800 bytes, spare size used 64 bytes
NAND flash device: , id 0xeff1 block 128KB size 131072KB
Board IP address                  : 192.168.1.1:ffffff00
Host IP address                   : 192.168.1.33
Gateway IP address                :
Run from flash/host/tftp (f/h/c)  : f
Default host run file name        : vmlinux
Default host flash file name      : bcm963xx_fs_kernel
Boot delay (0-9 seconds)          : 1
Default host ramdisk file name    :
Default ramdisk store address     :
Board Id (0-38)                   : 963168_VMG3925B
Number of MAC Addresses (1-32)    : 12
Base MAC Address                  : 8c:59:73:5d:93:18
PSI Size (1-64) KBytes            : 64
Enable Backup PSI [0|1]           : 0
System Log Size (0-256) KBytes    : 0
Auxillary File System Size Percent: 0
Main Thread Number [0|1]          : 0
WLan Feature                      : 0x00

ethsw_spi_select: SPIF set, not ready
ethsw_spi_select: SPIF set, not ready
ethsw_spi_select: SPIF set, not ready
ethsw_spi_select: SPIF set, not ready
ethsw_spi_select: SPIF set, not ready
ethsw_spi_select: SPIF set, not ready
ethsw_spi_select: SPIF set, not ready
ethsw_spi_select: SPIF set, not ready
ethsw_spi_select: SPIF set, not ready
ethsw_spi_select: SPIF set, not ready
ethsw_spi_select: SPIF set, not ready - suppressing prints
External switch id = ffffffff
*** Press any key to stop auto run (1 seconds) ***
Auto run second count down: 1
Sarjaporttikaapelin kytkeminen

Huom. Verkkokaupan kaapelissa ei saa kytkeä kuin vihreän, valkoisen ja mustan johdon. Punainen jossa virta kulkee, estää osan laitteen toiminnasta. Ylemmässä kuvassa myös punainen johto oli turhaan kytkettynä.

Kiinnostuneille: Youtubesta löytyy nimimerkki ElectroManin tekemä video aiheesta (josta itsekin katsoin mallia).