如果突然发现您是该路由器的随机或非随机所有者,那么您可能已经对标准固件不佳和内部潜力极低的情况感到失望。如果您也像我这样不走运,则该路由器具有4 mb(W25Q32FV)大小的闪存和16 mb(EM639165TS-6G)的SDRAM。在本文中,我将告诉您如何更好地改变路由器的状况,并最终从Zyxel获得带有固件的路由器,并进行更新。
在本文的开头,我想指出使我们的计划成为现实的必要细节/设备:SDRAM 32 MB-EM63A165TS-6G;SPI Flash编程器(我使用CH341a);USB-UART转换器(在CH341a中可用);焊锡烘干机。我没必要但很可取,我没有他就设法做到了,但是随后您将看到导致的结果。烙铁;直臂,最好比我的直;从工作中的Keenetic转储闪存,在Internet上,我发现了Keenetic 4G II的转储。我也将flash更改为8mb(W25Q64FV),但这对于本文来说不是必需的。由于固件的大小不超过4mb。我在速卖通订购的所有商品。收到它们后,我们开始创造。首先,我们合并中文提供给我们的固件。以防万一。您可以通过焊接闪存驱动器,使用衣夹或像我一样来进行操作:仅将短线直接焊接到USB闪存驱动器。电线应尽可能短。最初,它们很长,闪存丢失了,我不得不缩短它。如果您的行为与我一样,则合并几次,然后检查二进制文件是否相同,例如,相同的md5hash。接下来,您需要拆焊sdram,对我而言,它几乎以悲剧告终。但是仍然设法恢复了破损的轨道,并且不问我如何撕裂它们。我只是断开了微电路的第二排触点。对于已经宠坏了。我们将新的sdram焊接到32 mb的位置(因为仍然很容易描述此操作,我确实碰到了几句话,但是在它们下面是数小时的艰苦工作(没有吹风机),还有多少神经!)。我希望没有像我这样的股票,您将能成功。我们继续前进。接下来,您可以使用编程器填写Keenetic 4G II的转储文件,然后启动路由器,但是残酷的等待着您:在所有测试通过之后,路由器将无法启动,因为仍然确定内存大小为16 MB。在这一点上,我不知不觉地花了很多时间,因为我遇到的大多数材料都指出了引导加载程序(u-boot)的不完善,他们说,我们需要一个特殊的程序来查看全部sdram内存。我尝试了很多。直到我看到其中一篇文章为止:事实证明,为了使路由器看到全部内存,必须转移几个电阻器。照片2
, .
当然,通过焊接毫米尺寸的零件,我完成了它们。在垃圾箱中搜索后,发现了一块旧的主板,用作捐赠者。但是,那里的电阻较大,因此可以做到这一点:照片3
( ) ( — 4,7 ).
接下来我们要做什么。接下来,取消焊接用于连接uart的触点。必要的触点位于胶粘箔下方板的背面。我们不需要积极的联系,我们在附近接GND。我们先清洁一下触点,再焊接,然后有人要:我立即焊接了导线,因为它对引脚不舒服。要连接到COM端口,我使用了Putty,将速度设置为56700。接下来,将电池连接到路由器(需要注意的是,断开电池并进行后续连接后,路由器无法打开,您需要将其短时连接到充电中)。我们启动路由器,启动阶段应显示在控制台中,近似形式为以下形式。U-Boot 1.1.3 (Apr 8 2014 - 19:03:10)
Board: Ralink APSoC DRAM: 32 MB
relocate_code Pointer at: 81fb4000
USB mode is Host.
spi_wait_nsec: 42
spi device id: ef 40 17 0 0 (40170000)
Warning: un-recognized chip ID, please update bootloader!
*** Warning - bad CRC, using default environment
============================================
Ralink UBoot Version: 3.5.2.5_ZyXEL
--------------------------------------------
ASIC 5350_MP (Port5<->None)
DRAM_CONF_FROM: Boot-Strapping
DRAM_TYPE: SDRAM
DRAM_SIZE: 256 Mbits
DRAM_WIDTH: 16 bits
DRAM_TOTAL_WIDTH: 16 bits
TOTAL_MEMORY_SIZE: 32 MBytes
Flash component: SPI Flash
Date:Apr 8 2014 Time:19:03:10
如果控制台中没有任何内容,则可能是uart连接错误,如果uart破解了,则您未设置端口速度。如果您有16个,则TOTAL_MEMORY_SIZE应该为32 MB,这说明有些错误,可能是忘记了电阻。是的,在我第一次尝试焊接它们之后,TOTAL_MEMORY_SIZE变为8Mb。事实证明,最接近Ralink的电阻焊接不良。因此,将sdram焊接起来,缝制了闪光灯,焊接了电阻器,引导加载程序显示为32Mb。接下来我们要做什么?然后,我们尝试启动路由器。必须工作。我们连接电缆,转到Web界面(192.168.1.1)。我们看。此时,您应该没有服务代码:日志中应该有一个错误:类似“找不到密钥sevicetag”(假定路由器已连接到Internet)。接下来,我们自然会在连接了usb-uart的情况下重启路由器,然后立即在控制台中快速按4键,然后依次键入命令数据。setenv zyxelsn S132E30046258
setenv servicetag 101614015618458
saveenv
重新启动设备。服务代码应显示在界面中(路由器必须连接到Internet)。转到更新。在这里,设备立即拒绝寻找更新。我尝试了几次以重新加载页面,路由器完全拒绝更新。在选择其中一个组件(Yandex DNS Internet过滤器)之前,选择“脱机工作”之前,删除按钮一直处于活动状态。通过单击它,我收到消息“设置已保存”(类似这样),一段时间后弹出一个窗口,说有更新,我同意了。之后,通过路由器的Web界面更改固件配置没有问题。目前,固件版本为v2.05(AAKW.1)C1。就这样。PS:如果更新后,通过usb-uart重新连接到路由器并显示所有值(printenv),那么除了您先前输入的zyxelsn和servicetag外,您还将看到一个新的servicepass参数。因此,在此之前,我通过usb-uart下载了从Zyxel网站下载的固件,即使用第三方固件的引导程序,并且未显示servicepass参数。同时,路由器的日志中会显示一条消息,例如“找不到密钥密钥服务通行证”,当然他也不想更新。使用的材料:w3bsit3-dns.com,mysku