回答

收藏

给SOM9331安装Breed不死Bootloader

#其他 #其他 2723 人阅读 | 0 人回复 | 2016-06-12

SOM9331本身自带的系统很不好用,功能少之又少,所以全部自己动手更换。Openwrt系统部分好办,直接下载源码编译就行,这次先从bootloader入手,刷入Breed,而不是u-boot。
    Breed不是 U-Boot,也不是 U-Boot 的改进版,是全新、独立的、跟 U-Boot 平级的 Bootloader。
    “不死”指的是所有固件更新操作均在 Breed 里面完成。因为有些官方升级固件自带 Bootloader,如果从官方固件的 Web 进行升级,那么会导致 Breed 被覆盖。Breed 在刷入固件时会自动去掉固件自带的 Bootloader,因此能够保证 Breed 本身是“不死”的。
Breed 拥有以下新特性:
    真正多线程 (RTOS)
    实时刷机进度,进度条能准确反映刷机进度
    Web 页面快速响应
    最大固件备份速度,依 Flash 而定,一般能达到 1MB/s
    免按复位键进入 Web 刷机模式
    telnet 功能,免 TTL 进入 Breed 命令控制台
    复位键定义测试功能
    固件启动失败自动进入 Web 刷机模式
    功能很多而且很实用,我的路由器都换成它了,所以SOM9331也不例外。
    首先用USB串口连接,SOM9331已经做好了 ,非常方便。连接之后打开一个控制台

    使用cat /proc/mtd可以看到系统结构,要下手的地方就是这个“u-boot”。
    到作者自建的服务器https://breed.hackpascal.net/上下载对应型号的文件,SOM9331就是breed-ar9331.bin。

    由于怕引起IP地址冲突,所以SOM9331现在并没有连接到局域网中,也不能访问外网。可以提前下载好这个bin文件,在PC中开一个http server然后下载到SOM9331上。当然其他方法也可以,只要能下载进去就行。
    按理说现在只要执行mtd -r write breed-ar9331.bin u-boot就可以替换了,但是SOM9331做了限制,u-boot被写保护不能更改,这样就比较麻烦了。不过还是有解决方法的,就是先刷入一个解锁u-boot的固件。SOM9331可以刷wr741nd的固件,请自行从网上找。

    直接在SOM9331的网页中选择固件烧写诗不行的,提示固件格式不正确,还是得用mtd的方式。
    而且需要先恢复出厂设置以下才可以。


    mtd -r write xxx.bin firmware将固件写入。等待几分钟,可以打开网页了

    741的,不过这个只是临时的,肯定不会用这个系统。现在可以重新输入breed了

    文件很小,很快就写入完成,自动重启。等待一会儿,给板子断电。
    为什么要断电呢?因为如果自动启动的话又将重新进入openwrt的系统里,看不到breed的效果。
    另外,Breed虽然是个bootloader,包含了u-boot的全部命令,但是它同样也带有可视化配置的网页,比起枯燥乏味的u-boot强多了,如果不用可就太浪费了。
    Breed进入的方法:在断电的时候按住板子的Reset键,上电,等待3秒钟,放开。
此时就可以在PC上打开浏览器,输入192.168.1.1来访问了。

    上图就是SOM9331的信息。Breed不仅可以烧写固件、备份固件,更主要的是可以很方便的超频,直接指定参数即可,大大简化的操作。
    不死bootloader完成,后面可以编译openwrt了。
关注下面的标签,发现更多相似文章
分享到:
回复

使用道具 举报

您需要登录后才可以回帖 注册/登录

本版积分规则

关闭

站长推荐上一条 /3 下一条