|
本帖最后由 楠楠 于 2021-4-14 19:50 编辑
最近入手了8820S,玩了两天想刷回原厂,用breed的命令行模式刷成功了,分享一下经验
刷机方法已经有很详细的帖子了,用TTL 连接,登录 用户名:zte_wrt 密码:12345!@#$%
在刷breed之前要备份 mtd0,USB口插个U盘
# cat /proc/mtd 显示原系统
dev: size erasesize name
mtd0: 07f80000 00020000 "Whole flash"
mtd1: 00220000 00020000 "Bootloader"
mtd2: 00140000 00020000 "indiv"
mtd3: 00140000 00020000 "tag"
mtd4: 00180000 00020000 "usercfg"
mtd5: 00180000 00020000 "backcfg"
mtd6: 00180000 00020000 "defcfg"
mtd7: 00180000 00020000 "env"
mtd8: 00180000 00020000 "log"
mtd9: 01900000 00020000 "version1"
mtd10: 01900000 00020000 "version2"
mtd11: 00e60000 00020000 "fs1"
mtd12: 00e60000 00020000 "fs2"
mtd13: 00800000 00020000 "plugin"
# cd /mnt/usb1_1/ (进入U盘根目录)
# cat /dev/mtd0 > whole.bin (备份原机固件到U盘,文件体积127M)
之后就可以刷入B70的 breed,重启后就可以刷入其他固件了,
注意:因为B70固件的分区结构与ZTE原厂完全不同,原厂eeprom数据不起作用,必须更新eeprom,可以从备份的mtd0中提取,也可以用网友分享的eeprom
lemom定制的eeprom: 8820s_eeprom_b70gs_yh_nomac.zip 这个与原厂区别很大,用在我的机器上信号很差
lemontreenm 分享的eeprom与我的原厂数据接近,信号比较好,数码传送门 lemontreenm的百度盘:https://pan.baidu.com/s/15eHLqa_6BCp86XAOgpg5rQ 提取码: fggf
当然也可以自己用原厂数据做
数据地址: breed支持的对应eeprom地址
2.4G 部分,
whole.bin eeprom
36:F000h 0000h
5.8G 部分
whole.bin eeprom
36:F800h 8000h
breed只需要上面两组无线数据,其他mac地址可以在控制台输入
原厂固件MAC地址及序列号; LAN/WAN的mac地址
whole.bin eeprom
22:0000h E000h
+++++++++++++++重点来了,刷回原机固件++++++++++++第二天测试,刷回原厂固件后不能保存设置,不知道哪个地方出问题了,
这个方法仅供参考
方法是根据恩山大神 breed 作者 hackpascal 原帖相关内容 具体命令的语法及参数,请仔细读一下
准备工具:
HFS: http://www.rejetto.com/hfs/?f=dl breed只支持http下载文件,
1. 传输文件:从http文件服务器到路由器内存,会显示内存的开始地址及数据大小
wget http://192.168.1.11/whole.bin
记录下 Saving to address 后面的内存地址和 Length: 后面 0x 开头的数据大小
读入备份文件的内存起始地址是 0x80001000,数据大小是 0x7f80000
2. 擦除 Flash:flash是breed的内部命令,用于NAND的读取写入擦除等操作
执行命令
flash erase 0x0 0x7f80000
清除flash 从地址0x0 长度0x7f80000 127M,对应上面一步读入的备份文件长度
这时候NAND flash 已经全部清空,千万别重启别断电!!!
这时候NAND flash 已经全部清空,千万别重启别断电!!!
这时候NAND flash 已经全部清空,千万别重启别断电!!!
3. 写入数据:
执行命令
flash write 0x0 0x80001000 0x7f80000
把内存起始地址0x80001000 长度为0x7f80000的数据从0x0开始写入闪存,
显示 Succeeded 原厂编程器固件写入完成,重启就行了
以上操作是breed从内存中进行的,如果失败,路由器必砖,所以一定要小心,别出差错,真变砖了,相对简单的方法只有换spi闪存了
|
|