Newifi2(D1) 刷入pb-boot和breed的记录
今天要给一个newifi d1刷系统时发现居然还是原厂的uboot, 使用uboot刷入rom时会进行校验拦截第三方的rom. 之前有刷过这个设备的, 但是已经完全记不清怎么处理的了. 查了一下, 这个得用pb-boot这个boot固件, 不能用breed, 因为这个32M的flash如果使用breed的话会有问题, 比如无法软件reboot.
网上很多资料因为时间长了, 文件链接都已经失效. 费了不少功夫把pb-boot安装上了, 把过程记录一下
1. 下载3500版本的固件, 地址 https://pan.baidu.com/s/1-jgMP_pa6BjxKopUsSrrkg, 密码 k533
用其他版本的固件, 在最后一步执行mtd write的时候, 会出现 Could not open mtd device: fullflash Can't open device for writing! 错误
2. 拔掉电源, 压着resset孔加电. 进入自带的uboot
3. 需要将电脑IPv4地址配置为 192.168.1.10/255.255.255.0, 通过浏览器访问 http://192.168.1.1
4. 上传刚才下载的固件, 时间会比较长, 黄蓝灯(有些版本的颜色不一样, 也可能是蓝红灯)交错时是在上传, 然后是黄灯, 然后会自动重启, 蓝灯闪, 到蓝灯不闪时, 恢复就结束了
5. 电脑IPv4配置为DHCP自动获取IP, 然后浏览器访问http://192.168.99.1, 主界面点击"高级设置", 进入lucy界面后, 点击"系统->管理权", 在这里启用ssh
开始命令行操作,
终端1:
# ssh连入192.168.99.
cd /tmp
dd if=/dev/mtd0 of=uboot.bin
dd if=/dev/mtd2 of=factory.bin
dd if=/dev/mtd3 of=fullflash.bin
终端2:
# 备份至本地
scp root@192.168.99.1:/tmp/factory.bin .
root@192.168.99.1's password:
factory.bin % 64KB .5MB/s :
scp root@192.168.99.1:/tmp/fullflash.bin .
root@192.168.99.1's password:
fullflash.bin % 32MB .0MB/s :
scp root@192.168.99.1:/tmp/uboot.bin .
root@192.168.99.1's password:
uboot.bin % 192KB .8MB/s : # 将pb-boot上传至d1
scp pb-boot-newifi2--6562a88.bin root@192.168.99.1:/tmp/
root@192.168.99.1's password:
pb-boot-newifi2--6562a88.bin % 148KB .3MB/s :
终端1:
# 制作fullflash固件
dd if=/dev/zero bs= count= | tr "\000" "\377" >pb_192.bin
+ records in
+ records out
bytes (.0KB) copied, 0.004637 seconds, .4MB/s dd if=pb-boot-newifi2.bin of=pb_192.bin conv=notrunc
+ records in
+ records out
bytes (.8KB) copied, 0.003581 seconds, .3MB/s cat /tmp/pb_192.bin /dev/mtd1 /dev/mtd2 /dev/mtd4 >fullflash_with_pb.bin # 写入, 写入的时间比较长, 需要耐心等待
mtd write fullflash_with_pb.bin fullflash
Unlocking fullflash ...
Writing from fullflash_with_pb.bin to fullflash ...
root@xCloud:/tmp#
写入时, 等交替闪烁的(e)和(w)结束后返回提示符时, 就可以重启设备了, 按着reset进入pb-boot. 这次不需要再设置固定IP了, 可以自动获取192.168.1.2的IP
OpenWrt 18.06的rom, 2.4G wlan还是有问题
Update 2019-02-16:
Breed又提供d1的下载了, https://breed.hackpascal.net/ 下面的 breed-mt7621-newifi-d1.bin
如果是刷breed, 其实命令是一样的, 就是把pb-boot换成了breed, 全部命令如下
dd if=/dev/mtd0 of=uboot.bin
dd if=/dev/mtd2 of=factory.bin
dd if=/dev/mtd3 of=fullflash_original.bin #这步有点慢, 耐心等待
# scp备份之前生成的三个文件
dd if=/dev/zero bs=1024 count=192 | tr "\000" "\377" >breed_192.bin
dd if=breed-mt7621-newifi-d1.bin of=breed_192.bin conv=notrunc
cat /tmp/breed_192.bin /dev/mtd1 /dev/mtd2 /dev/mtd4 >fullflash_with_breed.bin #这步有点慢, 耐心等待
mtd write fullflash_with_breed.bin fullflash # 写入, 写入的时间比较长, 需要耐心等待
# 如果这步发生错误, 在未重启d1之前, 都可以用 mtd write fullflash_original.bin fullflash 命令将路由器恢复回原来的固件
全部命令执行记录
root@xCloud:/tmp# dd if=/dev/mtd0 of=uboot.bin
384+0 records in
384+0 records out
196608 bytes (192.0KB) copied, 0.103660 seconds, 1.8MB/s
root@xCloud:/tmp# dd if=/dev/mtd2 of=factory.bin
128+0 records in
128+0 records out
65536 bytes (64.0KB) copied, 0.033944 seconds, 1.8MB/s
root@xCloud:/tmp# dd if=/dev/mtd3 of=fullflash_original.bin
65536+0 records in
65536+0 records out
33554432 bytes (32.0MB) copied, 17.245314 seconds, 1.9MB/s
root@xCloud:/tmp# dd if=/dev/zero bs=1024 count=192 | tr "\000" "\377" >breed_192.bin
192+0 records in
192+0 records out
196608 bytes (192.0KB) copied, 0.004785 seconds, 39.2MB/s
root@xCloud:/tmp# dd if=breed-mt7621-newifi-d1.bin of=breed_192.bin conv=notrunc
205+1 records in
205+1 records out
104981 bytes (102.5KB) copied, 0.002521 seconds, 39.7MB/s
root@xCloud:/tmp# cat /tmp/breed_192.bin /dev/mtd1 /dev/mtd2 /dev/mtd4 >fullflash_with_breed.bin root@xCloud:/tmp# mtd write fullflash_with_breed.bin fullflash
Unlocking fullflash ... Writing from fullflash_with_breed.bin to fullflash ...
Newifi2(D1) 刷入pb-boot和breed的记录的更多相关文章
- 手动刷入Android 4.4.1 KOT49E OTA更新包
一.Android 4.4 KitKat Google前段时间发布了Android新版本Android 4.4 KitKat,由于我的Nexus 4也是托朋友从US带回来的,所以很快就收到了Googl ...
- 使用fastboot工具刷入recovery.img、boot.img、system.img等
在Android SDK目录的platform-tools目录下有fastboot.exe刷机工具(注:需要将机器进入fastboo模式) 刷recovery.img: fastboot flash ...
- 【转】 怎么刷入BOOT.IMG(刷机后开机卡在第一屏的童鞋请注意)-------不错不错
原文网址:http://bbs.gfan.com/android-3440837-1-1.html 之前呢,有好多机油问我关于刷机卡屏的问题,我解答了好多,但一一解答太费事了,在这里给大家发个贴吧.其 ...
- 小米路由器3G R3G 刷入Breed和OpenWrt 20.02.2 的记录
小米 R3G 参数 Architecture: MIPS Vendor: Mediatek Bootloader: U-Boot System-On-Chip: MT7621 family CPU/S ...
- 杂牌机搞机之旅(二)————移植TWRP第三方Recovery并刷入
原本想把杂牌机作为android破解和开发的测试机,破解的话肯定是安装框架的嘛,毕竟有些是要涉及到脱壳 . 但是,我尝试安装xposed的时候,手机卡在了开机界面,也就是magisk出现了错误,如果想 ...
- 杂牌机搞机之旅(一)——获得root权限(刷入magisk)
刷机不规范,抱机两行泪,谨慎刷机!! 一般获取root权限,我们都是通过软件来获取的,但是,软件破解root的成功率不是很高,现在,android版本普遍5.0+,大名鼎鼎的magisk可以直接获得r ...
- Android6.0源码下载编译刷入真机
编译环境是Ubuntu12.04.手机nexus 5,编译安卓6.0.1源码并烧录到真机. 源码用的是科大的镜像:http://mirrors.ustc.edu.cn/aosp-monthly/,下载 ...
- 〖Android〗Nexus 7 flo (razor) 刷入Recovery/CM-11.0后卡在开机动画的解决方法
操作日志: 起因:Nexus 7 flo 华硕平板,刷了一个CWM Recovery之后变成了砖机: 尝试1:使用CWM Recovery清除数据,开机失败 尝试2:刷入CM 11 Snapshot的 ...
- 从谷歌官网下载android 6.0源码、编译并刷入nexus 6p手机
版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/fuchaosz/article/details/52473660 1 前言 经过一周的奋战,终于从谷 ...
随机推荐
- MVC详解(转)
原文链接:MVC详解 MVC与模板概念的理解 MVC(Model View Controller)模型-视图-控制器 MVC本来是存在于Deskt op程序中的,M是指数据模型,V是指用户界面,C ...
- go语言之进阶篇创建goroutine协程
1.goroutine是什么 goroutine是Go并行设计的核心.goroutine说到底其实就是协程,但是它比线程更小,十几个goroutine可能体现在底层就是五六个线程,Go语言内部帮你实现 ...
- 对象引用 方法传参 值传递 引用传递 易错点 MD
Markdown版本笔记 我的GitHub首页 我的博客 我的微信 我的邮箱 MyAndroidBlogs baiqiantao baiqiantao bqt20094 baiqiantao@sina ...
- protobuf Protocol Buffers 简介 案例 MD
Markdown版本笔记 我的GitHub首页 我的博客 我的微信 我的邮箱 MyAndroidBlogs baiqiantao baiqiantao bqt20094 baiqiantao@sina ...
- 矩阵中的旋转(Rotation)
参考的是<游戏和图形学的3D数学入门教程>,算是读书笔记吧. 目录 [隐藏] 1.2D中的旋转 2.3D中的旋转 2.1绕x轴旋转: 2.2绕Y轴旋转 2.3绕Z轴旋转 1.2D中的旋转 ...
- 我对android davilk 虚拟机的理解
Davilk虚拟机作为Android平台的一部分.Google公司花了大量时间思考针对低功耗手持设备的优化设计.在智能手机出现之前,与桌面设备相比,手持设备在内存和速度方面落后8-10年.它们的计算能 ...
- 用keras实现lstm 利用Keras下的LSTM进行情感分析
1 I either LOVE Brokeback Mountain or think it’s great that homosexuality is becoming more accept ...
- Eclipse版本控制Git不能Pull或者Push
如下图,addWcLesson.jsp做了修改,但是却显示蓝色√,而且在Eclipse的Git提交插件中也没有监测到修改的文件,导致无法Push and Commit 原因:之前有些文件执行了 ...
- docker service ps打印出来的错误信息被截断了怎么办?
[解决方法] 用Format属性: 这个其实解决不了截断的问题,不过可以显示更少的列,看起来更清楚. Formatting The formatting options (--format) pr ...
- javascript 将treeNode 转换id和pid的Array
function treeTolist(treeNodes, opt) { if (!opt) { opt = {}; opt.key = "id"; opt.parent = & ...