本帖最后由 独爱你一人 于 2021-11-21 16:36 编辑
新入手一个二手K3C路由器,到手是个砖头,遂救砖过程详细记录一下,方便自己,方便你我他。只救砖流程步骤,删除其他没用的杂乱内容
首先要感谢@paldier 的帖子,从中学习到了很多知识
还要感谢@jbzzz 的帖子,很明白直观的硬改
重要重要重要
->此帖子只能修复原版硬件,没有升级过512M内存的K3C<-
重要重要重要
鉴于很多坛友跟我要联系方式,遂新建立一个喜欢折腾K3C与K3的交流群 点击链接加入群聊【K3C、K3救砖交流】
***************************************************************************
新增内容:以下这种星号以内的属于填坑,对小白很有用
不需要或者废弃的已经颜色减淡
***************************************************************************
首先需要的就是拆机,然后接TTL,电脑端设置如下:计算机右键管理-设备管理器-端口(查看当前端口是COM12,双击打开属性)-设置位/帧(俗称波特率设置为:115200)
putty设置如下,选择串口,手写COM12与波特率115200。SecureCRT设置一样。
TTL小板使用3.3V模式,只需要接三根线,GND,TX,RX。GND接路由器的GND、TX接路由器的RX、RX接路由器的TX。如果TTL小板不一样可能TX接TX,RX接RX。
我这里没有很方便的工具,焊接了一下
帮助对象:刷入固件以后无限重启,或者刷好固件以后不会分配DHCP动态地址与无线不能发射信号的同学。
只要原机k3c里面的uboot可以启动,不管版本都能刷回官方(重要前提,颗粒不坏,硬伤无解)
此次更新后真的小白顺着操作步骤就可以救砖了。
我制作了一份低版本u-boot-nand.bin文件,默认MAC地址为00:11:22:33:44:55,文件放入了度盘中
根据大神们的研究,u-boot-nand.bin文件其实是(uboot+ubootconfigA+ubootconfigB+gphyfirmware)这4个分区的合体,制作命令如下:
- cat /dev/mtd0 /dev/mtd1 /dev/mtd2 /dev/mtd3 > u-boot-nand.bin
复制代码
然后弹出U盘插到电脑上,把u-boot-nand.bin放入tftp文件夹,tftp文件夹内容如下
电脑本地网址设置为192.168.2.100
***************************************************************************
新增内容:然后打开tftp服务器 双击运行tftpd64.exe
***************************************************************************
连接电脑与K3C的网线,随便插一个LAN口。路由开机进入uboot环境,路由开机以后就恩键盘的回车键,几秒钟后就进入UBOOT状态,如下
***************************************************************************
新增内容:有的坛友,群友,好友使用的系统是win10,需要关闭电脑的杀毒软件,如大数字之类的,
还要关闭自带的防火墙,否则后果严重
如果下面第一条命令顺利执行,往下执行第二条与帖子不符的情况如下图,千万不要给路由器断电,看下面操作
关闭win10自带的防火墙功能,如下所示
控制面板\系统和安全\Windows 防火墙->打开或关闭windows防火墙
***************************************************************************
以后就可以输入命令进行操作了,注意空格与步骤,不可断电。弄错了就成真砖了。
ROM VER: 2.1.0
CFG 0a
B
.
.
U-Boot 2010.06-00096-g44de763-LANTIQ-v-2.3.136 (Sep 19 2017 - 16:01:02)
interAptiv
cps cpu/ddr run in 800/666 Mhz
DRAM: 224 MiB
NAND: Could not find valid JEDEC parameter page; aborting
NAND device: Manufacturer ID: 0xec, Chip ID: 0xf1 (Samsung NAND 128MiB 3,3V 8-bit) 三星颗粒
128 MiB
Bad block table found at page 65408, version 0x01 坏块
。。。。。。
清除整个nand,会自动屏蔽坏块
***************************************************************************
新增备注:这步命令属于危险操作,如果下面命令不能顺利执行的话,路由器千万不要断电,否则变砖,解决方法往上翻
***************************************************************************
GRX500 # nand erase
device 0 whole chip
Skipping bad block at 0x04060000
。。。。。。
通过tftp下载并刷入刚才准备好的uboot文件u-boot-nand.bin
GRX500 # run update_nandboot
Using GRX500 Switch device
TFTP from server 192.168.2.100; our IP address is 192.168.2.1
Filename 'u-boot-nand.bin'.
Load address: 0x80800000
Loading: #################################################################
。。。。。。
0x1c0000 bytes written: OK
到这里刷好UBOOT了,进行重启
GRX500 # reset
ROM VER: 2.1.0
CFG 0a
B
.
.
U-Boot 2010.06-00044-gb399a23-LANTIQ-v-2.3.136 (Jul 24 2017 - 10:45:54) 到此可以与上面的信息对比,这里已经降级成功了uboot
。。。。。。
到这里以后需要使用@paldier大的救砖方法
偷拿老大点数据,附上老大帖子链接
现在机器是正常使用了,不过MAC是我写了个默认的,你需要改成你自己路由器的MAC地址,方法如下,00:11:22:33:44:55改成你自己的MAC地址
- phic_fac -s mac 00:11:22:33:44:55
复制代码
GRX500 # phic_fac -s mac 00:11:22:33:44:55
Erasing redundant Nand...
Writing to redundant Nand... done
Test=OK
写完MAC以后会自动重启,这里路由器启动大概需要5分钟,启动以后不会分配ip地址,无线也搜索不到。
路由器关闭电源,摁着RES键路由器开机,继续恩RES大概15秒钟松手,浏览器打开http://192.168.2.1进入固件升级页面,选择93版本固件刷入,需要等待大约5分钟。
这里需要原本固件中的MTD4号与MTD7号分区文件,mtd4_calibration.bin、mtd7_dev_info.bin
***************************************************************************
新增:等待93版本固件启动以后在putty中登录,账号与密码都是admin
然后输入命令,第二条命令很可能第一遍执行失败,这里第二条命令操作两遍
- tftp -g -l mtd4_calibration.bin 192.168.2.100
复制代码- tftp -g -l mtd4_calibration.bin 192.168.2.100
复制代码- tftp -g -l mtd7_dev_info.bin 192.168.2.100
复制代码- mtd write mtd4_calibration.bin calibration
复制代码- mtd write mtd7_dev_info.bin dev_info
复制代码
然后输入重启命令reboot进行重启路由器,刷机完毕。
如果nand颗粒没有坏的话,路由器会正常启动可以使用。
现在可以关闭tftp服务器与putty,并且拔掉ttl线装机了。
END 下面的步骤废弃,不需要再做
***************************************************************************
***************************************************************************
废弃
mtd4_calibration.bin、mtd7_dev_info.bin把这两个文件放入U盘中,插到路由上,记得cd到你的U盘位置,我的是:
- /ramdisk/usb/.run/mountd/sda1
复制代码 自己的如果不是,可以使用命令进行查看U盘位置
使用如下命令进行恢复MTD4与MTD7分区
- mtd write /ramdisk/usb/.run/mountd/sda1/mtd4_calibration.bin calibration
复制代码- mtd write /ramdisk/usb/.run/mountd/sda1/mtd7_dev_info.bin dev_info
复制代码
为了节省恩山服务器空间,遂把救砖中需要使用到的文件放到了度盘
https://pan.baidu.com/s/1kxQOtbk2JkDSk8XrY51ZJg
然后重启可正常使用。
我这里救砖以后直接刷了官方低版本固件。在救砖ISDK固件中恢复MTD4分区应该也是可以的,待测试。有网友测试成功了可以反馈给我。
|