本帖最后由 lzcxlb 于 2025-12-31 19:25 编辑
刷机折腾的强制先决条件:务必备份N60pro路由的factory硬件信息分区,这是路由的ID身份证!
N60Pro U-Boot 2025
这个主U-Boot要是为了解决N60Pro硬改512MB闪存后没合适的U-Boot,以及解决之前U-Boot存在的多个问题。 U-Bboot2025-WildEdition 恩山论坛首发,且唯一地址!无任何付费!
U-Boot2025 WildEdition 的特点:
- 支持所有LAN口接入,包括2.5G LAN口
- 支持所有LAN口 自动DHCP分配IP。默认IP: 10.10.10.1
- 支持整个闪存或者自定义分区的 备份和还原以及MD5分区文件校验
- 支持当前 immortalwrt 固件格式 ITB FIT模式 或者传统BIN 刷入
- 支持多个UBI分区表选择刷入。
- 支持路由重置按钮或者WIFI按钮,启动进入Uboot。(如果:WIFI按钮不起作用,是因为之前刷过其他U-boot导致,重置环境变量即可)
- 优化U-boot上传下载速度,备份还原支持IDM和迅雷下载(其他下载器未测)。N60Pro BL2超频到2.3G,U-boot上传和下载分别在150MB/s和100MB/s左右
- 修复NMBM问题,支持彻底移除NMBM管理和签名
- 修复其他细节问题和WEB端优化等
启动并进入U-Boot的方法:断电或者通电0.5秒内,按住路由重置按钮或者WIFI按钮,出现电源LED快闪3次慢闪2次,则 代表成功进入 U-Boot failsafe web。 WIFI 信号LED亮灯代表成功分配IP到LAN口设备。
关于 新增的DHCP IP分配: 测试调试主要针对Windows设备,实测win10、win11、debian12 设备
关于mtk nmbm管理,如今都使用UBI动态管理块,已经被时代淘汰。在楼主多次调试和测试中,只要有nmbm管理并启用,大分区写入或者读取、断电等操作有概率导致nmbm管理逻辑分区错误,导致逻辑坏块。这里也跟网上搜索了解的信息 一致。
也是导致 一个正常的512MB闪存 只有 480MB可用空间的根本原因,也是uboot mod大分区的缘由。
nmbm默认启用保留块:256block(块),对于当前主流闪存一块=128KB(闪存芯片决定),那么512MB闪存因保留块的空间大小=256*128KB÷1024=32MB
如果固件或者U-Boot,启用NMBM管理直接导致,闪存空间管理减少。当前N60PRO官方固件和少部分第三方固件内核依然启用NMBM管理。为此兼容和解决这个问题,U-Boot保留NMBM管理和增加移除NMBM。
推荐:对于新内核6.6+固件默认已经关闭NMBM管理(内核日志搜索"spi-nand"、"nmbm"),强烈推荐,"移除NMBM"。对于N60PRO 使用512MB闪存,则UBI可用分区则有506.5MB,也就是常说的modxxx大分区
关于备份和还原:WEB端极小的概率不支持部分老旧的浏览器显示或者下载。强烈推荐:备份factory分区,上传还原文件名包含md5值,以便核对文件有效性!
本U-Boot2025-WildEdition 仅仅基于N60PRO官方分区表,扩展UBI分区大小,针对不同使用场景。楼主个人选择UBI分区400MB,剩下100MB作为额外配置文件存储,不依赖USB存储。纯个人喜好,仅供参考!
本U-Boot支持128MB闪存,发帖前实际未测。
调试版本已经实现U-Boot,WEB在线终端功能,实测因为U-Boot性能限制,性能下降10%左右。出问题,还是得TTL终端显示靠谱,因此最终还是给移除了。
首次刷入本U-Boot 推荐 :
1. "重置环境变量并重启" ,首次刷入或者重置config环境变量可能会的导致无法启动之前的固件,需要重新刷入固件
2. 手动确认并刷新NMBM状态。以固件内核启动日志为准。 新内核固件建议“移除NMBM”,官方老内核固件或者其他第三方老固件,推荐“重建NMBM”(应该硬改512MB的朋友都不会选择官方老固件吧)
BL2 超频
小超怡情,大超有风险,可能会导致无法启动需要TTL救砖
N60Pro MT7986a默频2.0G,娱乐超频大概能提升 20%左右性能,超频之后推荐进行稳定性测试。
我选择stress-ng 作为测试。稳定性测试 受温度、固件、插件影响。测试前关闭多余后台。散热最低要求:原厂散热必须安装方能进行测试
- stress-ng --cpu 4 --vm 3 --vm-bytes 512M --timeout 4800s --metrics-brief
- # --cpu 4 至少大于等于4,推荐6个线程起步
- # --metrics-brief 可选项
复制代码 两台N60Pro 多次测试稳定分别是2.30G和2.40G。
这里提供2.30G 、2.40G 、2.50G BL2文件。 从2.30G开始最佳,直接2.50G上头 ,体质一般可能需要TTL救砖了。
实在是 没有找到哪里可以给SOC增电压。就像BL2内存频率限定一样?仅个人猜测。
stress-ng 压力测试大部分固件没有内置,需要自行安装,本贴提供的固件已经包含。
在 普通固件下刷入 U-Boot 和 BL2
在排除TTL情况下,通过设置默认账户密码和ssh,终端登录是必须的!N60pro先天刷机圣体,当前官方默认固件,默认账户登录WEB界面,可启用SSH。
通过Xshell(终端软件)+WinSCP。或者网友推荐MobaXterm N合一也是不错的选择,纯个人习惯。
在启用SSH后,终端登录,查看当前分区表
这里以2025年5月的磊科官方固件为例
MobaXterm 或 WinSCP 登录即可下载 /tmp/mtd*.bin
- useradmin@N60PRO:~# cat /proc/mtd
- dev: size erasesize name
- mtd0: 08000000 00020000 "spi0.1"
- mtd1: 00100000 00020000 "BL2"
- mtd2: 00080000 00020000 "u-boot-env"
- mtd3: 00200000 00020000 "Factory"
- mtd4: 00200000 00020000 "FIP"
- mtd5: 07280000 00020000 "ubi"
- dd if=/dev/mtd1 of=/tmp/mtd1_BL2.bin && dd if=/dev/mtd4 of=/tmp/mtd4_FIP.bin && dd if=/dev/mtd3 of=/tmp/mtd3_Factory.bin && dd if=/dev/mtd2 of=/tmp/mtd2_u-boot-env.bin
复制代码
刷入BL2 U-Boot固件准备:
1. 修改更新源 /etc/opkg/distfeeds.conf
- src/gz immortalwrt_core https://mirror.nju.edu.cn/immortalwrt/releases/24.10-SNAPSHOT/targets/mediatek/filogic/packages
- src/gz immortalwrt_base https://mirrors.vsean.net/openwrt/releases/24.10-SNAPSHOT/packages/aarch64_cortex-a53/base
- src/gz immortalwrt_luci https://mirrors.vsean.net/openwrt/releases/24.10-SNAPSHOT/packages/aarch64_cortex-a53/luci
- src/gz immortalwrt_packages https://mirrors.vsean.net/openwrt/releases/24.10-SNAPSHOT/packages/aarch64_cortex-a53/packages
- src/gz immortalwrt_routing https://mirrors.vsean.net/openwrt/releases/24.10-SNAPSHOT/packages/aarch64_cortex-a53/routing
- src/gz immortalwrt_telephony https://mirrors.vsean.net/openwrt/releases/24.10-SNAPSHOT/packages/aarch64_cortex-a53/telephony
复制代码 2. 注释/etc/opkg.cconf 签名验证 #option check_signature
- dest root /
- dest ram /tmp
- lists_dir ext /var/opkg-lists
- option overlay_root /overlay
- #option check_signature
复制代码 3. 安装 kmod-mtd-rw
- opkg update && opkg install mtd kmod-mtd-rw
复制代码
刷入U-Boot 和 BL2
以本贴U-Boot为例:
下载附件内U-Boot2025-WildEdition_N60PRO-512MB-2GRAM*.zip。解压并核对MD5值
mt7986_netcore_n60-pro-512m-fip-env_mtd.bin 上传 路由/tmp ,终端运行
insmod mtd-rw.ko i_want_a_brick cd /tmp && mtd write mt7986_netcore_n60-pro-512m-fip-env_mtd.bin FIP && mtd verify mt7986_netcore_n60-pro-512m-fip-env_mtd.bin FIP
#BL2 同理
insmod mtd-rw.ko i_want_a_brick cd /tmp && mtd write 2.3G-BL2-immortalwrt-mediatek-filogic-netcore_n60-pro-512m-preloader.bin BL2 && mtd verify 2.3G-BL2-immortalwrt-mediatek-filogic-netcore_n60-pro-512m-preloader.bin BL2
注意: - 当前固件 分区表对应分区的名字,区分大小写!
- 找不到对应当前固件内核 kmod-mtd-rw ,最好搜索其他更新源 或者 在线快速编译构建
- BL2超频 切记请勿上头直接2.5G,体质一般直接变砖。需要TTL救砖
关于部分闪存如凯侠TC58CVG2S0HRAIG、TC58CVG2S0HRAIJ 属于4K+256,应选择专用4K+256 的 BL2
焊的全新的512M闪存。利用救砖工具重新刷了uboot,并且在 bootmenu里刷了bl2,并在此界面开启了web serve进入uboot页面刷了固件和分区表。但是很奇怪的是,刷完之后,一启动就会在ttl窗口里看到系统启动中止
F0: 102B 0000
FA: 1040 0000
FA: 1040 0000 [0200]
F9: 0000 0000
L0: 8005 0000 [0001]
00: 1012 0000
F9: 0000 0000
L0: 8005 0000 [0001]
01: 102A 0001
02: 1012 0000
BP: 2000 00C0 [0001]
EC: 0000 0000 [1000]
T0: 0000 00B9 [010F]
System halt!
并且没法通过按reset键和wifi键启动进入uboot。试过重置环境变量也不行。
现在只有通过救砖工具的 bootmenu进uboot的页面,或者通过运行救砖工具,等它刷uboot结束不做干预自行启动路由器才能顺利启动。
类似的 TC58CVG2S0HRAIJ SNAND_MEMORG_4G_4K_256 是 4K 256 的
drivers/mtd/nand/spi/toshiba.c
drivers/mtd/mtk-snand/mtk-snand-ids.c
BL2源码/plat/mediatek/apsoc_common/drivers/snfi/mtk-snand-ids.c
512M闪存测试固件
本贴提供系统固件,仅供学习、调试和研究使用!
提供相应ITB固件格式测试
建议:首次刷入固件,重启开机2分钟之后。再次重启,以便禁用不常用插件
截至发帖之前:个人推荐使用237大佬源码编译!
237大佬固件网速测试
手机和路由直线 距离2米。WIFI并不是N60Pro的强项,先天不足。 好消息:官方也是听劝的,新出2G 内存版本。坏消息但是只听进去1/3,或许在酝酿新型号
恩山网友对此路由器评价
这货就是512m内存+usb3.0版本的N60,但依然不是外置FEM,但看N60的信号测试,也还算行,MTK的内置FEM也不错。
缺点应该是信号不行,特别是5G的。因为都是内置fem,没有独立外置fem,这是个遗憾。
磊科官方推荐信道 2.4G信道9 5G信道44
测速图片,仅供参考
本贴400M UBI固件,建议选择本U-Boot 当中的ubi-400MB-data-100m 分区表。增加额外的独立配置文件存储UBI分区
首次格式闪存100MB data分区 参考: - root@N60PRO:~# cat /proc/mtd
- dev: size erasesize name
- mtd0: 00100000 00020000 "bl2"
- mtd1: 00080000 00020000 "u-boot-env"
- mtd2: 00200000 00020000 "factory"
- mtd3: 00200000 00020000 "fip"
- mtd4: 19000000 00020000 "ubi"
- mtd5: 06400000 00020000 "data"
- root@N60PRO:~# mtd erase /dev/mtd5
- Unlocking /dev/mtd5 ...
- Erasing /dev/mtd5 ...
- root@N60PRO:~# ubidetach -m 5
- root@N60PRO:~# ubiformat /dev/mtd5
- ubiformat: mtd5 (nand), size 104857600 bytes (100.0 MiB), 800 eraseblocks of 131072 bytes (128.0 KiB), min. I/O size 2048 bytes
- libscan: scanning eraseblock 799 -- 100 % complete
- ubiformat: 800 eraseblocks are supposedly empty
- ubiformat: formatting eraseblock 799 -- 100 % complete
- root@N60PRO:~# ubiattach /dev/ubi_ctrl -m 5 -d 1 -b 1
- UBI device number 1, total 800 LEBs (101580800 bytes, 96.8 MiB), available 790 LEBs (100311040 bytes, 95.6 MiB), LEB size 126976 bytes (124.0 KiB)
- root@N60PRO:~# ubimkvol /dev/ubi1 -N datac -m
- Set volume size to 100311040
- Volume ID 0, size 790 LEBs (100311040 bytes, 95.6 MiB), LEB size 126976 bytes (124.0 KiB), dynamic, name "datac", alignment 1
- root@N60PRO:~# mkdir -p /opt/datac/ ; mount -t ubifs ubi1_0 -o sync /opt/datac
复制代码
本贴400MB固件 开机默认挂载ubi1_0分区。
硬改和TTL救砖很多帖子都有详细介绍这里就简单带过。
硬改(512MB 2G RAM)
硬改:一句话总结 就是 新手不推荐。除非做好报废准备。
4月底到5月份 入手两台N60Pro ,作为毫无硬改经验的楼主,各种功课研究之后决定使用老显卡作为练手。 得出:楼主多年前购买的山寨风枪+烙铁头 已经淘汰、且温度无法掌控,严重影响操作,特别是新手难以克服手抖,当前设备+新手使用吸锡带存在严重风险直接导致掉铜点,小马蹄烙铁头是新手最佳选择 但是耐不住楼主属于没苦硬吃,又菜又爱折腾,折腾半天,运气加成完成。 楼主选择 闪存:原装 W25N04KVZEIR 内存: D8CJX 全新闪存可以提前刷入BL2+U-boot。也可在焊接闪存后通过TTL刷入BL2 + U-Boot + factory + 固件 N60PRO官方原闪存底部散热铜层没用锡(至少我购入的这两款是如此,方便拆闪存,不愧是DIY硬改圣体啊),推荐加点锡,尽可能的少锡,有助于闪存散热。 更换固态电容听劝恩山网友建议16V 470uf,电容更换 孔去锡 没有专业工具,我用普通牙签。 内存芯片 风枪 温度 450-470 常用455-468。必须用助焊膏/油。提前 270-300多度预热20秒左右,然后+点助焊膏,再开到471°C 大概几十秒到1分钟,发现可以轻推。拿下!(仅限跟楼主一样的新手了解,风枪和技术不同,不具备参考)
原内存对孔位,我是拿30倍放大镜拍照对比,总是担心对不准
内存如果使用原装高温锡,需要特别注意温度,助焊膏/油,下镊子微微触碰内存有回弹基本就可以了。 山寨风枪+烙铁头 温度是玄学,更可能是楼主新手 需要注意:内存体积有窄体和宽体两种。 具体其他硬改可以参考论坛其他网友分享。如需增加散热片一定要亲自测量。
TTL救砖
当BL2 或 u-boot分区 受损,那么必须使用TTL救砖 这里直接推荐使用咖啡猫大佬提供的救砖工具,使用本贴提供的Uboot2025-WildEdition版本,将下载的uboot放入fip-debrick-only文件夹。 流程: 路由断电 ⟶ 如图准备好TTL杜邦线连接和对应接入CH341A或者类似设备 ⟶ 准备终端软件(楼主个人喜欢使用Xshell)、确定com端口 ⟶ 终端运行救砖工具 ⟶ 选择对应com端口 ⟶ 选择对应救砖uboot fip文件 新手提醒: - 如果救砖列表没显示当前uboot,可能需要修改文件名。详情看"MT798X串口TTL救砖命令.bat"脚本内容对文件名判断
- 注意路由TTL的 RX 、TX,对应接入CH341A或者类似设备的TX、RX也就是反接
- 提前对 CH341A或者类似设备 TTL模式 调试检测
- 当等待1分半左右,显示"FIP sent",可以使用上下键盘方向键选择 bootmenu。(楼主个人使用Xshell)
- 本Uboot2025-WildEdition 支持 使用"mtd mr 尾部大小MB" 命令,解决 因NMBM管理 错误导致逻辑坏块。(不是经常刷机或者调试还真用不上)
附件和固件下载
文件MD5检验:
- U-Boot:
- 3067EBD0FFEAEA9A86E8652307758EAA mt7986_netcore_n60-pro-512m-fip-env_mtd.bin
- BL2:
- C5F4359945AFDC4FFDE0793E2C8C9528 *2.3G-BL2-immortalwrt-mediatek-filogic-netcore_n60-pro-512m-preloader.bin
- 79CBB9E407A7B2B13F58F4E852988AA8 *2.4G-BL2-immortalwrt-mediatek-filogic-netcore_n60-pro-512m-preloader.bin
- FEB5A21BBF70053A523439B79436C5B9 *2.5G-BL2-immortalwrt-mediatek-filogic-netcore_n60-pro-512m-preloader.bin
- 专用4K+256-BL2: (仅限特殊闪存,如:TC58CVG2S0HRAI*)
- 1EBFDF011084E24EBDAFA96FE06021DC *n60-pro-512m_2.0G-bl2_4K-256.bin
- FA6A3839C354FD9FB3D4056B58F21020 *n60-pro-512m_2.3G-bl2_4K-256.bin
- 5C752CFCBDE6F16775BA2C9BA5EEB556 *n60-pro-512m_2.4G-bl2_4K-256.bin
- 5D4BE94D7ACB5F6EAF01D8216D395CAF *n60-pro-512m_2.5G-bl2_4K-256.bin
- 固件:
- 2025-12-14
- F5A04F252799851D1A0043EAEEDF15C2 *400MB-immortalwrt-mediatek-filogic-netcore_n60-pro-512m-squashfs-sysupgrade.bin
- 4284D06AD14F839B2DF6AC8607F182DA *506.5MB-immortalwrt-mediatek-filogic-netcore_n60-pro-512m-squashfs-sysupgrade.bin
- EF41D5726C381FD20A1757543195249D *400MB-immortalwrt-mediatek-filogic-netcore_n60-pro-512mb-squashfs-sysupgrade.itb
- 3D6C399DAE7FA9A1D843416D1359872F *506.5MB-immortalwrt-mediatek-filogic-netcore_n60-pro-512mb-squashfs-sysupgrade.itb
- 2025-12-31
- 7640CBDC6780412A5DD508EF81676666 *400MB-immortalwrt-mediatek-filogic-netcore_n60-pro-512m-squashfs-sysupgrade.bin
- 1D03A4488A001C223918FCA6A0516262 *506.5MB-immortalwrt-mediatek-filogic-netcore_n60-pro-512m-squashfs-sysupgrade.bin
- E852712D1DAA0477AA28E0FBDFDDC98B *400MB-immortalwrt-mediatek-filogic-netcore_n60-pro-512mb-squashfs-sysupgrade.itb
- 2777DF1FB73C002DA803CD35582BBFF7 *506.5MB-immortalwrt-mediatek-filogic-netcore_n60-pro-512mb-squashfs-sysupgrade.itb
复制代码
固件文件名大小:400MB 或者 506.5MB 代表该固件DTS设备树对应的 U-Boot分区表大小
U-Boot、BL2、固件和救砖工具下载:
受限于个人认知和非专业非业余水平,本贴内容难免有错误或者偏差!还请恩山管理员和广大网友们海涵和指教,谢谢!
|