微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 无线和射频 > 射频无线通信设计 > RT5350芯片移植OpenWrt固件

RT5350芯片移植OpenWrt固件

时间:10-02 整理:3721RD 点击:

参考:

https://github.com/Squonk42/OpenWrt-RT5350?ref=commandbarr

http://www.right.com.cn/forum/thread-120311-1-1.html


最新openwrt已经支持RT5350,不需要再打补丁了。(http://www.right.com.cn/forum/fo ... read&tid=120311)

文章见后面【UBUNTU下Hame MPR-A1 openwrt固件生成


以841n v3做例子,使用OpenWrt编个带USB脱机下载的固件(引出这个地址,为了让没有动手编译过的人,了解一下别人的编译过程【图文详解】,起到一个抛砖引玉的作用) 【http://www.right.com.cn/forum/forum.php?mod=viewthread&tid=83746】


OpenWrt-RT5350

Patches to compile OpenWrt Linux on Ralink RT5350-based routers.

Note These patches only apply to kernel < 3.8.x. For more recent kernels, please visit our new repository athttps://github.com/kaechele/openwrt!

Introduction

RT5350-based routers are not yet supported in OpenWrt, not even yet in the bleeding edge trunk.

However, here are some experimental patches to the current OpenWrt trunk repository that should work.

These patches were originally developed for the Hame MPR-A1 router, but they also apply to its numerous clones and more generally to a lot of Ralink RT5350-based routers.

This comes from the fact that the RT5350 is a SoC ("System on Chip") that requires only a few external components to provide a working wireless router. So basically, all these designs are very similar, only differing in the SP Flash chip model or the way to control the USB overcurrent protection switch chip.

Build Instructions

In order to build OpenWrt on an RT5350-based router, you need to:

  • download the latest OpenWrt trunk sources from svn
  • download the patches
  • apply the patches
  • choose your target/subtarget/profile for the build
  • compile the firmware

This is achieved using the following code snippet:

mkdir openwrt cd openwrt svn co svn://svn.openwrt.org/openwrt/trunk git clone https://github.com/Squonk42/OpenWrt-RT5350.git cd trunk patch -p0 <../OpenWrt-RT5350/openwrt_add_pm25lq032_flash_support.patch patch -p0 <../OpenWrt-RT5350/openwrt_add_rt5350_wlan_support.patch patch -p0 <../OpenWrt-RT5350/openwrt_hame_mpr-a1.patch make menuconfig

In the configuration menu, you need to select the following options:

  • Target Ssytem: Ralink RT288x/RT3xxx
  • Subtarget: RT305x based boards
  • Target Profile: HAME MPR-A1

Then proceed to build:

make -j x

... where "x" is the number of CPU on your PC + 1.

The first time you compile can take hours, since the toolchains is built first. Subsequent builds only take a few minutes.

Then copy the the resulting image to your TFTP server root, so you can Flash it from the router's U-Boot bootloader:

cp bin/ramips/openwrt-ramips-rt305x-mpr-a1-squashfs-sysupgrade.bin /tftpboot/Patch Contentsopenwrt_add_pm25lq032_flash_support.patch

This patch contains the definition of 3 SPI Flash chip that are commonly used in RT5350-based routers, but that are missing from the default OpenWrt MTD Flash device driver:

  • PMC PM25LQ032

This patch is platform independent, as these definitions may also be useful to other non RT5350-based machines.

openwrt_add_rt5350_wlan_support.patch

This patch contains the changes required to add support for the RT5350 to the mac80211 driver.

This patch has been developped bi 123serge123 from the OpenWrt forum (https://forum.openwrt.org/viewtopic.php?pid=186493#p186493), adapted by Heffer from the same forum, then ported to the latest mac80211 2013-01-07 by myself.

openwrt_hame_mpr-a1.patch

This patch contains all the required changes required to define the HAME MPR-A1 profile for OpenWrt.

It is based on previous work by arpunk, arteq, Heffer, p1vo and myself from OpenWrt forum (https://forum.openwrt.org/viewtopic.php?id=37002).

==========================================================

UBUNTU下Hame MPR-A1 openwrt固件生成【http://www.right.com.cn/forum/fo ... read&tid=120311】

先粘贴一下MPR-A1 的硬件配置 【见http://bbs.mydigit.cn/read.php?tid=421833】

硬件配置:
1)RT5350,MIPS体系的SOC芯片;W9812G6是16MB的DDR RAM;25Q32是4MB的串行FLASH。
2)另外还有EMC5755是电池充电控制器。
3)RJ45座、网口变压器、USB口、按钮、开关、WIFI天线等,都使用了特别小的封装,见细节特写照片。

注意: 截止到2013-07-29, openwrt trunk已经支持了MPR-A1和MPR-A2了, 请大家直接下载官方的openwrt-trunk编译即可,打补丁神马的已经是历史了.
特此更正,以免误人子弟)
搭建开发环境
ubuntu 12.04LTS

  • sudo apt-get install build-essential subversion git-core libncurses5-dev zlib1g-dev gawk flex quilt libssl-dev xsltproc libxml-parser-perl

[color=rgb(51, 102, 153) !important]复制代码
Openwrt编译环境搭建(English)

准备文件
1.下载truck35407代码
  • $ mkdir openwrt
  • $ cd openwrt
  • $ svn co svn://svn.openwrt.org/openwrt/trunk@35407 trunk35407
  • $ ./scripts/feeds update -a
  • $ ./scripts/feeds install -a

[color=rgb(51, 102, 153) !important]复制代码
2.下载Github上的Patch(使用GIT工具或者点击zip下载)
  • $ git clone https://github.com/Squonk42/OpenWrt-RT5350.git

[color=rgb(51, 102, 153) !important]复制代码
3.为源代码打补丁
  • cd trunck35407
  • patch -p0 <补丁路径//openwrt_add_pm25lq032_flash_support.patch
  • patch -p0 <补丁路径//openwrt_add_rt5350_wlan_support.patch
  • patch -p0 <补丁路径//openwrt_hame_mpr-a1.patch

[color=rgb(51, 102, 153) !important]复制代码
4.编译
trunck35407路径下执行
  • make menuconfig

[color=rgb(51, 102, 153) !important]复制代码
Target Ssytem: Ralink RT288x/RT3xxx
Subtarget: RT305x based boards
Target Profile: HAME MPR-A1
保存后退出,执行
  • make

[color=rgb(51, 102, 153) !important]复制代码
如果想查看详细编译信息,执行
  • make V=99

[color=rgb(51, 102, 153) !important]复制代码
多核加速(双核是使用3参数,4核则使用5)
  • make -j 3

[color=rgb(51, 102, 153) !important]复制代码
5.编译后的bin文件位于truck35407/bin/ramips/ramips/openwrt-ramips-rt305x-mpr-a1-squashfs-sysupgrade.bin

ubuntu下烧录固件
1.需要拆壳,MPR-A1的壳子非常好拆,需要使用螺丝刀。
2.板子背面有四个焊点(V2.2的MPR-A1串口焊盘上面都盖了绿油需要手工刮开),串口各个引脚的定义:


3.连接TTL工具,TTL工具的质量有点要求,我手上的pl2303连上去之后MPR-A1不能启动,而另外一个FTDI的就正常,这个地方要注意一下。
4.安装putty

  • sudo apt-get install putty

[color=rgb(51, 102, 153) !important]复制代码
设置串口波特率为57600,8,n,1.(dmesg | grep tty 可以用来查看串口号)
5.连接网线设置本机的地址为192.168.2.2(其他也可)
6.安装tftp,
  • sudo apt-get install tftpd-hpa tftp

[color=rgb(51, 102, 153) !important]复制代码
, copy bin文件到/var/lib/tftpboot
  • sudo cp 路径/openwrt-ramips-rt305x-mpr-a1-squashfs-sysupgrade.bin /var/lib/tftpboot

[color=rgb(51, 102, 153) !important]复制代码
, 执行
  • tftp 192.168.2.2

[color=rgb(51, 102, 153) !important]复制代码
7.启动MPR-A1, 在putty中快速按下2,烧录固件,
输入Y,回车。
设置设备ip为192.168.2.1
设置服务器ip为192.168.2.2
输入bin文件的文件名openwrt-ramips-rt305x-mpr-a1-squashfs-sysupgrade.bin
一切顺利的话,现在你就拥用一台Hame mpr-a1的openwrt设备了。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top