原文见:http://my.oschina.net/zuobz/blog/208034
slider >>> Too few posts! (required minimum are 3) (the featured image may be missing)
恩山论坛:http://www.right.com.cn/forum/portal.php
移植OpenWrt到CuHead Pro WiFi
Posted by: zou, baozhu , 三月 13, 2014
CuHead Pro是一款路由器开发板,下面是开发板的配置信息。
名称 | 型号 | 厂家 | 参数 |
CPU | RT5350F | Ralink | 360MHz(MIPS arch) |
SDRAM | W9825g6jh-6 | Winbond | 32M |
FLASH | MX25L6405D | MXIC | 8M |
RT5350核心板几乎所有引脚都已经引出到arduino引脚,包括1个USB,1个WLAN,1个I2S, 1个I2C,1个SPI,以及GPIO口。
客户使用此开发板已经被设计多种产品,路由器,移动数据储存,3g热点,有线转无线,串口数据传输,voip,wifi音响等。
OpenWrt 可以被描述为一个嵌入式的 Linux 发行版,(主流路由器固件有 dd-wrt,tomato,openwrt三类)而不是试图建立一个单一的,静态的系统。OpenWrt的包管理提供了一个完全可写的文件系统,从应用程序供应商提供的选择和配置,并允许您自定义的设备,以适应任何应用程序。不要看Cuhead Pro这个板子配置低,跑这样一个OpenWrt系统性能还是非常不错的,下面是OpenWrt的移植过程。
说明:
作者:zuobaozhu@gmail.com
OpenWrt编译平台:ubuntu 64位
命令提示符 $ 表示在pcDuino上面运行的指令;
命令提示符 # 表示在x86_64的linux主机上运行的指令
命令提示符 > 表示在u-boot状态下运行的指令
安装编译OpenWrt系统所需要的软件包
#sudo apt-get install subversion
#sudo apt-get install git-core
#sudo apt-get install gcc g++ binutils patch bzip2 flex bison make autoconf gettext texinfo unzip sharutils subversi-dev ncurses-term zlib1g-dev
下载OpenWrt
新建一个OpenWrt的文件夹,使用svn下载。
1
2
3
|
#mkdir openwrt
#cd openwrt
# svn co svn://svn.openwrt.org/openwrt/trunk
|
由于trunk不断的在更新,你的版本可能跟我的不一样,但是一定是最新的。
更新软件包
更新openwrt
1
2
|
#cd trunk
# ./scripts/feeds update –a
|
安装所有软件包
1
|
# ./scripts/feeds install –a
|
配置编译系统
下载好了之后需要配置系统支持,我们的板子。
1
|
#make menuconfig
|
会出现下面这个界面
我们的开发板跟HAME的HAME-MPR-A2硬件配置是一样的。
1、选择 CPU 型号
Target System —> Ralink RT288x/RT3xxx
2、选择 CPU 子型号
Subtarget —> RT3x5x/RT5350 based boards
3、选择具体路由器型号
Target File —>HAME-MPR-A2
大家都知道路由器有一个WEB界面,通过这个界面可以设置路由器。OpenWrt使用的WEB叫LUCI,这里我们可以选择需要的添加的Web界面的语言,App。
1, 让系统默认自带Luci
LuCI —>
-
Collections —>
<*> luci
2, 选择Luci默认自带的App
LuCI —>
-
Applications —>
<*> luci-app-ddns……………………… Dynamic DNS configuration module
<*> luci-app-hd-idle……………………. Hard Disk Idle Spin-Down module
<*> luci-app-multiwan………… LuCI Support for the OpenWrt MultiWAN agent
3, 让系统默认自带OpenWrt主题
LuCI —>
4. Themes —>
<*> luci-theme-openwrt……………………………………. OpenWrt.org
4, 让系统默认自带你所属国家的语言,这里我选择中文。
LuCI —>
5. Translations —>
<*> luci-i18n-chinese………………….. Chinese (by Chinese Translators)
由于OpenWrt默认是没有开启Wifi的,你需要修改一下。
修改/trunk/package/mac80211/files/lib/wifi /mac80211.sh
# REMOVE THIS LINE TO ENABLE WIFI:
#option disabled 1 –修改成这样
现在可以编译整个系统了,执行下面命令,第一次编译时间很长,编译过程中需要下载很多软件,根据网速而定,这里测试6M的网络编译大概4个小时。参数V=s的意思是编译的过程中打印全部信息,如果因为网速慢,编译过程中可能会出错,你重新执行make命令就可以了。
1
|
#make V=s
|
编译完成之后,生成的文件在bin/ ramips目录下面:
openwrt-ramips-rt305x-mpr-a1-squashfs-sysupgrade.bin就是我们需要的文件。把这个文件拷贝出来,下面就开始把这个文件烧写到板子上面。
需要将之前的串口透传的两个跳线帽拔掉,连接串口调试的TX和RX。设置PC端的串口调试波特率为57600。
板子上的u-boot提供tftp的烧录方式,这里需要用到一个Tftpd32的软件来辅助下载,打开这个软件。点击下面的下拉按键,可以看到本机的网卡和IP,这里选择是本机的无线网卡,IP为192.168.1.100。刚编译成功的openwrt-ramips-rt305x-mpr-a1-squashfs-sysupgrade.bin放在电脑的E盘,这里直接选择就行。
下面打开串口调试Xshell。给板子上电,在上电的时候要迅速按下电脑的‘2’键。这时候出现下面这个界面。
这时候输入Y,开始设置参数,利用TFTP服务器下载。
可以看到填入的设备信息为开发板的IP,这个IP可以设置在不和局域网其他设备冲突的情况下任何一个IP,设置的IP需要和服务器在同一网段,回车之后开始TFTP下载。
有时候会有“checksun bad”这样的信息,这个时候如果内核依然不能启动,就重新烧写一次吧。烧写之后系统会自动重启,这时候你电脑就会搜索一个无线热点为OpenWrt。没有密码,点击就可以进行连接。
连接OpenWrt这个wifi热点之后,打开浏览器输入192.168.1.1这个地址。
这里提示密码没有设置,你可以点击login直接登录。
同样你电脑现在也可以上百度,其他的网站。