中国队世界杯_2014世界杯德国 - dyhdcw.com

Breed不死鸟

Breed介绍Breed 是国内个人hackpascal 开发的闭源 Bootloader,也被称为“不死鸟”

因为有些官方升级固件自带 bootloader,如果从官方固件升级,会导致现有 bootloader 被覆盖。而当 Breed 更新固件时,它会自动删除固件附带的引导加载程序,因此可以防止 Breed 被覆盖

在线网站

固件下载

AR/QCA/MTK Breed,功能强大的多线程 Bootloader

进入 Breed Web 的三种方式

通电按复位键 4~5 秒进入

通过 BreedEnter 进入

串口 (TTL) 进入

进入 Breed 命令控制台的方法

通过串口 (TTL),在启动提示 Press any key to interrupt autoboot … 时按任意键中断启动即进入 Breed 命令控制台

通过开机按复位键或 BreedEnter.exe 方法中断 Breed,即可通过 telnet 方法进入 Breed 命令控制台 (CMD 中 telnet 192.168.1.1 即可)端口号22

请使用 Windows 自带的 telnet 客户端或者 PuTTY,linux 下的 telnet 客户端兼容不好

Breed特性

实时刷机进度,进度条能准确反映刷机进度

Web 页面快速响应

最大固件备份速度,依 Flash 而定,一般能达到 1MB/s

免按复位键进入 Web 刷机模式

Telnet 功能,免 TTL 进入 Breed 命令控制台

复位键定义测试功能

固件启动失败自动进入 Web 刷机模式

可自定义位置和大小的环境变量块

由于是闭源,无法进行二次开发,所有支持的设备均由 hackpascal 一人完成。

Breed 内置命令介绍[abstatus]语法:abstatus作用:显示自动启动被中断的原因

[arp]语法:arp作用:显示当前 ARP 表

[boot]语法:boot mem boot flash [bank ] boot linux boot raw boot breed 参数: - 启动地址 - Flash bank 号说明:启动固件。 boot mem 从内存地址启动固件; boot flash 从 Flash 启动固件,bank 号可选,默认为 0; boot linux 将 视作 Linux 内核入口地址,并启动; boot raw 禁用中断,并从 处执行; boot breed 将 视作上传的 Breed bin 文件地址,并直接启动。

[btntst]语法:btntst btntst enable btntst disable btntst restore参数: - GPIO 号说明:测试 GPIO 按钮 btntst enable - 启用对 GPIO#n 的状态检测 btntst disable - 禁用对 GPIO#n 的状态检测 btntst restore - 恢复默认检测设置

[dhcp]语法:dhcp dhcp [enable|disable]说明:显示当前的 DHCP 租约 dhcp enable 开启 DHCP 服务 dhcp disable 关闭 DHCP 服务 改动不会保存,重启后恢复默认 DHCP 开启状态

[env]语法:env env list env get env set env unset env clear env save参数: 环境变量名 环境变量数据说明:管理环境变量 必须使用 envconf 启用环境变量后才能使用此命令 修改环境变量后必须保存 env list 列出所有环境变量,显示总空间和空闲空间 env get 获取名称为 的环境变量的值 env set 设置环境变量 的值为 ,不存在则新建 env unset 删除名称为 的环境变量及其值 env clear 清除所有环境变量 env save 保存环境变量

[envconf]语法:envconf envconf disable envconf 参数: 环境变量在 Flash 中的存储位置,起始为 0 环境变量大小,不能小于 0x100 字节说明:启用或禁用环境变量 envconf disable 禁用环境变量功能 指定 和 则启用环境变量注意:部分型号的 Breed 使用固定的环境变量设置,因此此命令不可用

[exit]语法:exit说明:退出 telnet 模式

[flash]语法:flash list flash [bank ] info flash [bank ] dump flash [bank ] read flash [bank ] erase flash [bank ] write 参数: - Flash bank 号 - Flash 地址 - 读取/擦除/写入数据大小 - 要写入 Flash 的数据内存地址 - 要存放读取的 Flash 数据的内存地址说明:flash list 列出所有 Flash flash info 显示 Flash 的详细信息 flash dump 显示 Flash 内的数据 flash read 将 Flash 内的数据读取到内存 flash erase 擦除 Flash flash write 将内存数据写入到 Flash

[gpio]语法:gpio [status|list] gpio button gpio led gpio get gpio set gpio dir set gpio led set 参数: [status] - 列出所有 GPIO 及其状态 - GPIO 号 - 高/低电平 - GPIO 方向为输入/输出 - LED 名称 - LED 亮/灭说明:gpio [status|list] 列出所有 GPIO 及其状态 gpio button 显示当前路由上按钮的状态 gpio led 显示当前路由上部分 LED 的状态 gpio get 获取指定 GPIO 的电平状态 gpio set 设置指定 GPIO 的电平状态 gpio dir set 设置指定 GPIO 的方向 gpio led set 设置 LED 的亮灭

[help]语法:help说明:列出所有可用的命令

[mem]语法:mem dump [keep] [size] mem crc32 mem read [byte|short|long] mem write [byte|short|long] mem write str mem copy mem fill mem compare 参数:[keep] - 保持原始字节序 - 起始地址 [size] - 显示/计算的数据大小 [byte] [short] [long] - 指定操作数大小,分别为 1字节、2字节、4字节 - 要写入的值 - 要写入的字符串,支持 C 语言类型的编码说明:mem dump 显示内存数据,可指定要显示的字节数,keep 表示保存原始字节序,否则输出时将转换为 CPU 字节序。 mem crc32 计算内存数据的 CRC32 校验 mem read 读取内存某个地址的数值 mem write 修改内存某个地址的数值 mem write str 将字符串写入某个内存地址 mem copy 复制内存块 mem fill 填充内存块 mem compare 比较内存块

[mdio]语法:mdio list mdio dump mdio read mdio write 参数: - 设备名 - PHY 号 - 寄存器 - 数值说明:mdio list 列出网络接口设备 mdio dump 转储指定接口的 MII 寄存器 (0 ~ 31) mdio read 读取指定接口的 MII 寄存器 mdio write 修改指定接口的 MII 寄存器

[net]语法:net [start|stop]说明:net start 启动网络服务 net stop 停止网络服务,并关闭所有网络连接

[netstat]语法:netstat说明:显示当前活动的网络连接

[reset]语法:reset说明:重启路由

[setbrg]语法:setbrg 参数: - 波特率作用:设置 Breed 串口输出的波特率,一直生效

[spi]语法:spi list spi [dev ] [ [ …]]参数: - SPI 设备名 - 一个操作操作类型: start 开始一次 SPI 传输,即拉低 CS 电平 stop 结束 SPI 传输,即拉高 CS 电平 read 读取数据到内存 read display 读取数据并直接显示为十六进制格式 write 将内存地址中的数据写入 write str 将 字符串写入 speed 设置 SPI 总线频率。默认单位为 Hz,可以增加后缀k/m表示KHz/MHz说明:spi list 列出所有 SPI 设备 spi 命令后面可以跟多个操作,如: spi start write “\x9f” read display 3 stop

[sysinfo]语法:sysinfo说明:显示系统信息

[thread]语法:thread说明:列出所有线程信息

[wget]语法:wget [addr] 参数:[addr] - 要存放数据的内存地址,可忽略 - 要请求文件数据的 HTTP 链接说明:通过 HTTP 协议加载文件到内存。URL 里只能使用 IP 地址。

常见问题及回答 Q&AQ: 开源吗?A: 不开源。

Q: 已经刷了 Breed,如果用路由自带的固件升级是否会覆盖掉 Breed?A: 多半会,所以刷了 Breed 之后都建议只在 Breed 里面更新固件。

Q: 什么时候做 360 C301 支持?A: 现在不做,因为不能很好地支持以前不死 U-Boot 的功能。

Q: 做 BCM 支持么?A: 不做,因为没有任何资料。

Q: 路由换了 32M 的闪存,固件无法软重启A: 这是因为 32M 没有一个统一的标准,所以 CPU 本身支持得并不好,需要依靠固件来处理,如果固件处理不好,就会出现这种问题。这是固件造成的。

Q: 能不能自定义复位键?A: 不能。

Q: telnet 到 Breed,打一个字符,显示两个字符A: 正常现象,因为 telnet 这块没有很好地兼容 linux。

Q: Breed 里面能否改 WAN 口位置?A: 不能。即使改了,固件启动后就会变回去。

Q: 启动 BreedEnter 出现 “无法定位程序输入点 XXXX 于动态链接库 XXXX.dll 上” 的错误A: 请安装 WinPcap 4.1.3/或者 Npcap 的 WinPcap 兼容模式。

Q: MT7620 的 Breed 是否支持外置 PA?A: 支不支持外置 PA 那是固件的事。Breed 只保证能够在有外置 PA 的路由上正常使用。

Q: 从 U-Boot 刷 Breed 后没有无线A: 请去 Breed 里修改 MAC 地址。

Q: 能支持 VxWorks 固件吗?A: 不支持任何非 Linux 内核的固件,包括小于2MB 的固件。

Q: 可以自定义 Breed 的 IP 地址吗?A: 可以,Breed 从 1.1 版开始支持环境变量。具体操作方法请参阅 Breed 更新贴。

Q: 为什么给 AR 的路由换了双 128M 内存,不能识别出 256M 内存?A: 太贪心,AR 的 CPU 不支持这种组合。自己换回去吧。

Q: 可以用编程器将 Breed 刷入空白闪存吗?A: 当然可以。

Q: Ping Breed 的 TTL 值是多少?A: 这个值是不固定的,依据执行 Ping 命令的机器的不同而定。请不要依据 TTL 值来判断是否是处于 Breed 模式。

Q: 如何升级 Breed / 更换为其他的 Bootloader (如原厂 U-Boot)?A: Breed 固件更新页面选择 Bootloader 项刷入即可。

Q: Breed 会阻止刷入其它的 Bootloader 吗?A: 不会,Breed 是开放的 Bootloader,不会增加任何使用上的限制。

BREED官方

Copyright © 2022 中国队世界杯_2014世界杯德国 - dyhdcw.com All Rights Reserved.