找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
广告投放联系QQ68610888
查看: 27120|回复: 55

[PRO(R3P)] 6月16日:小米路由器PRO(R3P)改SPI flash启动,适配OPENWRT,开启160M频宽

[复制链接]
发表于 2019-6-16 20:56 | 显示全部楼层 |阅读模式
本帖最后由 laomao9000 于 2019-6-26 22:48 编辑

缘起:在上个帖子 6月4日-小米路由器PRO(R3P)刷入PandoraBox 19.02,测试完美,稳定 中,刷了PADORABOX固件,使用正常。只是作为不折腾不爽的心理,在反复刷机中又把NAND 固件给搞丢了,机器变砖。手头没有NAND编程器,只能焊接了个16M的SPI 闪存,并刷了一个兼容的SPI固件,目前可以运行,只是不是R3P的专用固件。对于追求完美的发烧友,这是不能接受的,所以,考虑自己适配个SPI固件。
想法:OPENWRT支持R3P,考虑修改其中的闪存配置,支持SPI,编译后刷入SPI闪存。
进展:先用OPENWRT编译,发现没有mt7615的驱动,没有无线;随后找到了MTK的闭源驱动,顺利编译成功。
          新驱动支持160MHZ的频宽,2T*2T的网卡可以到1.7G,可玩性大增!
版本:OPENWRT 18.06,LINUX:4.14.127     SPI FLASH:w25q128 16MB  ,MTK闭源驱动MT7622_7615_SoftAP_v5.0.2.0_20180430

过程:
一、安装ubuntu
a)     下载ubuntu 18.04.2
b)     设置虚拟机
c)     安装ubuntu18.04.2
要点:进入软件和更新,选择阿里云的源
d)     升级组件包
sudo apt-get update
二、准备编译环境
安装依赖关系  sudoapt-get install build-essential asciidoc binutils bzip2 gawk gettext gitlibncurses5-dev libz-dev patch unzip zlib1g-dev lib32gcc1 libc6-dev-i386subversion flex uglifyjs git-core gcc-multilib p7zip p7zip-full msmtplibssl-dev texinfo libglib2.0-dev xmlto qemu-utils libelf-dev
下载源码     git clone https://www.github.com/openwrt/openwrt
三、配置OPERWRT
下载源码     git clone https://www.github.com/openwrt/openwrt
进入目录:   cd openwrt
更新源:     ./scripts/feeds update -a
安装源:     ./scripts/feeds install -a
打开配置:   make menuconfig
       设置必要选项
Target System (MediaTecRalink MIPS)
Subtarget (MT7621based board)
Target Profile (XiaomiMi Router 3 Pro)
LuCI--->  
1.Collections  --->
<*>luci................... LuCIinterface with Uhttpd as Webserver (default)
LuCI --->
2. Modules--->
Translations  --->
<*>Chinese (zh-cn)
3.其他部分配置选项,请选择:
#添加USB挂载
Base system —> <*>block-mount   

#添加硬盘格式支持
Kernel modules —> Filesystems —> <*> kmod-fs-ext4 (移动硬盘EXT4格式选择)
Kernel modules —> Filesystems —> <*> kmod-fs-vfat(FAT16 / FAT32 格式 选择)
Kernel modules —> Filesystems —> <*> kmod-fs-ntfs (NTFS 格式 选择)

#添加USB相关支持
Kernel modules —> USB Support —> <*> kmod-usb-core.
Kernel modules —> USB Support —> <*> kmod-usb-ohci.
Kernel modules —> USB Support —> <*> kmod-usb-storage.
Kernel modules —> USB Support —> <*> kmod-usb-storage-extras.
Kernel modules —> USB Support —> <*> kmod-usb2.
Kernel modules —> USB Support —> <*> kmod-usb3.

#添加自动挂载工具
Utilities —> Filesystem —> <*> badblocks

#添加luci应用
LuCI ->Applications  —> <*> luci-app-aria2……………………………… LuCI Support for aria2
LuCI ->Applications  —> <*> luci-app-ddns……………………… Dynamic DNS configuration module
LuCI ->Applications  —> <*> luci-app-samba……………….. Network Shares – Samba SMB/CIFSmodule
LuCI ->Applications  —> <*> luci-app-transmission…………………. LuCI Support forTransmission

完成后,保存退出

3.修改小米路由器PRO的配置,支持SPI闪存。
  •   修改~/openwrt/target/linux/ramips/image/mt7621.mk对应的R3P 部分如下,设定了SPI固件大小为16M(可为8M/32M,根据自己的闪存大小来)
       define Device/xiaomi_mir3p
       DTS := MIR3P
       IMAGE_SIZE := $(ralink_default_fw_size_16M)
       DEVICE_TITLE := Xiaomi Mi Router 3 Pro
       DEVICE_PACKAGES := \
        kmod-usb3 kmod-usb-ledtrig-usbportwpad-basic uboot-envtools
      endef
    TARGET_DEVICES += xiaomi_mir3p
  • 修改~/openwrt/target/linux/ramips/dts /MIR3P.dts,
     增加SPI支持,设定分区
    &spi0{
        status = "okay";
        m25p80@0 {
                compatible ="jedec,spi-nor";
                reg = <0>;
                spi-max-frequency =<10000000>;
                partitions {
                        compatible ="fixed-partitions";
                        #address-cells =<1>;
                        #size-cells =<1>;
                        partition@0 {
                                label ="u-boot";
                                reg = <0x00x30000>;
                                read-only;
                        };
                        partition@30000 {
                                label ="u-boot-env";
                                reg =<0x30000 0x10000>;
                                read-only;
                        };
                        factory:partition@40000 {
                                label ="factory";
                                reg =<0x40000 0x10000>;
                                read-only;
                        };
                        partition@50000 {
                                compatible ="denx,uimage";
                                label ="firmware";
                                reg = <0x50000 0xfb0000>;
                        };
                };
        };
};

   删除文件中NAND配置
   &nand{
        status = "okay";
        partitions {

              ……….
              ….
};

四、编译
1、        先同步软件包:
make download  V=s -j20  (启动20个线程,加快下载,这样就不用等10个小时了,我用了50分钟下载完毕)
2、        开始编译
make -j1 V=s  (第一次编译,不启用多线程。二次编译时可以选-j4,这个考虑你的CPU支持的线程数)
五、刷机





评分

参与人数 1恩山币 +1 收起 理由
牛腩粉 + 1 不要怂、就是干

查看全部评分

我的恩山、我的无线 The best wifi forum is right here.
发表于 2019-6-16 21:23 | 显示全部楼层
然后呢?起来没有

点评

电脑还在跑,编译中,刚好有空把过程整理了下发上来,做个记录,也请朋友们分析下可行性。  详情 回复 发表于 2019-6-16 21:28
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| 发表于 2019-6-16 21:28 | 显示全部楼层
xinyu1727 发表于 2019-6-16 21:23
然后呢?起来没有

电脑还在跑,编译中,刚好有空把过程整理了下发上来,做个记录,也请朋友们分析下可行性。
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| 发表于 2019-6-17 11:48 | 显示全部楼层
本帖最后由 laomao9000 于 2019-6-23 15:33 编辑

早晨起来,检查后发现系统完成了R3P固件的编译,马上上传,刷入,结果内存/SPI/LAN/部分插件功能正常,并且页面配色比较养眼,如下:

问题:缺少无线!!!难道OPENWRT还是没有MT7615的驱动?
后面考虑引入7615的闭源驱动,二次编译。




本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| 发表于 2019-6-19 20:33 | 显示全部楼层
折腾几天,小米路由器pro(R3P)的SPI板固件可以运行了,但WIFI管理要通过一个插件管理,还是不太理想。
无线芯片MT7615驱动是个问题。OPENWRT目前没有加入这个驱动,所以OPENWRT无法支持MT7615,只能通过其他方法。目前测试了闭源驱动,可以驱动起来,但是wifi管理不能整合到luci界面,要通过MTK的插件来操作,不够完美。
继续寻找其他解决措施。
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

发表于 2019-6-22 07:51 | 显示全部楼层
大神研究下如何把老毛子适配到R3P
OpenWrt虽强大,但效能不如老毛子

点评

老毛子似乎有个固件兼容R3P,具体忘了。 如果有源码也可以研究下,我这没有,只有OPENWRT。  详情 回复 发表于 2019-6-23 12:21
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| 发表于 2019-6-23 12:09 | 显示全部楼层
本帖最后由 laomao9000 于 2019-6-23 15:34 编辑

利用周末时间,终于解决了7615的驱动问题,编译好了SPI版的小米路由器PRO(R3P)固件
不多说,上图:




后面测试带宽、吞吐量。关键想测试对160M带宽的支持情况,有intel的AX200  wlan卡,说是支持160M带宽的,这样应该可以上1.7G了。目前只看到866m


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×

点评

我把K2P也改了NAND启动了,哈哈! 刷了B70的BREED,但是没无线,请问怎么加载7615的无线驱动?  详情 回复 发表于 2019-10-12 11:23
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| 发表于 2019-6-23 12:10 | 显示全部楼层
本帖最后由 laomao9000 于 2019-6-23 13:50 编辑

git源码,切换成了这个给https://github.com/iscilyas/openwrt-r3p
具体命令
下载源码:git clone https://github.com/iscilyas/openwrt-r3p
更新源:     ./scripts/feeds update -a
安装源:     ./scripts/feeds install -a
打开配置:   make menuconfig
       默认配置基本就可,因为已经对R3P做了预配置
下载其他包
      make download  V=s -j20  (启动20个线程,加快下载)
开始编译
                 make -j1 V=s  -jnn为电脑cpu的进程数)
然后就可以刷机测试了。


忽略下面图片,恩山脑子乱了,删不掉,自己冒出来的。
=================================

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| 发表于 2019-6-23 12:21 | 显示全部楼层
fyi2000 发表于 2019-6-22 07:51
大神研究下如何把老毛子适配到R3P
OpenWrt虽强大,但效能不如老毛子

老毛子似乎有个固件兼容R3P,具体忘了。
如果有源码也可以研究下,我这没有,只有OPENWRT。

点评

hanwckf的源码里,jcg-860m是双7615,你可以去编译下那个,稍微改下就能开512ram和160mhz。不过你这个是不是eeprom丢了。。。  详情 回复 发表于 2019-6-26 21:37
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| 发表于 2019-6-23 12:26 | 显示全部楼层
测试1:LAN-WAN           LAN口接我的NAS,电脑5G接入,目前带宽是866M,实测可以达到75MB的下载,相当理想了。



测试2:信号强度

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| 发表于 2019-6-26 11:21 | 显示全部楼层
优化设置,开启了160M频宽!网卡为intel ax200。小米路由器不支持1024QAM,在256QAM下,通过开通160M频宽,2T*2T可以上1.7G!没有4T的网卡,如果有的话是不是可以上3.5G呢?





本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

发表于 2019-6-26 14:07 来自手机 | 显示全部楼层
1.7g实际吞吐量咋样?4.4.2.1驱动的r6800和dir882实际吞吐量被卡在850m了

点评

还在调试优化,目前看吞吐量还不如886M,现需要找到关联参数,进行优化。 但小米路由器PRO(R3P)是MT7615N*2,芯片支持160M频宽可以确定了。 手头没有MTK的资料,感觉瞎摸索。  详情 回复 发表于 2019-6-26 20:37
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| 发表于 2019-6-26 20:37 | 显示全部楼层
ByByMe 发表于 2019-6-26 14:07
1.7g实际吞吐量咋样?4.4.2.1驱动的r6800和dir882实际吞吐量被卡在850m了

还在调试优化,目前看吞吐量还不如886M,现需要找到关联参数,进行优化。
但小米路由器PRO(R3P)是MT7615N*2,芯片支持160M频宽可以确定了。

手头没有MTK的资料,感觉瞎摸索。

点评

老哥!现在160mhz研究出来了嘛···急需啊。acrh17的160mhz已经跪了  详情 回复 发表于 2019-8-23 15:40
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

发表于 2019-6-26 21:37 来自手机 | 显示全部楼层
laomao9000 发表于 2019-6-23 12:21
老毛子似乎有个固件兼容R3P,具体忘了。
如果有源码也可以研究下,我这没有,只有OPENWRT。

hanwckf的源码里,jcg-860m是双7615,你可以去编译下那个,稍微改下就能开512ram和160mhz。不过你这个是不是eeprom丢了。。。
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

发表于 2019-6-26 21:39 来自手机 | 显示全部楼层
另外我开160mhz并没有修改什么特殊的参数速度就可以跑800多。测试问题?5020驱动bug?eeprom丢了?

点评

mtd Factory 分区  详情 回复 发表于 2019-6-27 08:36
这是最高速度,不过千兆啊!连接显示可是1.7G[attachimg]294915[/attachimg] [attachimg]294914[/attachimg]  详情 回复 发表于 2019-6-26 22:29
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

有疑问请添加管理员QQ86788181|手机版|小黑屋|Archiver|恩山无线论坛(常州市恩山计算机开发有限公司版权所有) ( 苏ICP备05084872号 )

GMT+8, 2024-4-24 05:54

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

| 江苏省互联网有害信息举报中心 举报信箱:js12377 | @jischina.com.cn 举报电话:025-88802724 本站不良内容举报信箱:68610888@qq.com 举报电话:0519-86695797

快速回复 返回顶部 返回列表