首先,阅读官方的文档,还有感谢文末的作者们
https://bitbucket.org/padavan/rt-n56u/wiki/EN/HowToMakeFirmware

原汁原味的很好用很安全,而且想免流的,智能VPN的可以手动配置,参考以下教程。
虽然麻烦点,但是路由器这东西监管着自己所有的网络信息,还是自己来配置比较安全。
一步步自己动手。斐讯K2,原版Padavan,OpenVPN+Mproxy,免流。
斐讯K2,原版Padvan使用chnroutes实现VPN分流
斐讯K2,原版Padvan使用dnsmasq避免DNS污染,加速内外网访问
Padavan源码分支–dnscrypt,防止DNS污染

所需软件
» Ubuntu 16.04 LTS i386 ( 编译用环境 )

总体大致分为5个步骤(所有操作均在root权限下进行)
» 配置编译环境Ubuntu 16.04 LTS i386
» 修改配置文件
» 修改原厂信号增益
» 生成固件
» 测试

» 配置编译环境Ubuntu 16.04 LTS i386
系统Ubuntu 16.04 LTS i386
步骤 1 » 安装准备环境
这里我比别人多加了一个工具autopoint,因为我不安装他会编译失败
参考链接:firmware create error
sudo apt-get install git autopoint autoconf automake bison build-essential flex gawk gettext gperf libtool pkg-config zlib1g-dev libgmp3-dev libmpc-dev libmpfr-dev texinfo python-docutils mc

步骤 2 » 克隆源码
cd /opt
sudo git clone https://bitbucket.org/padavan/rt-n56u.git

步骤 3 » 生成工具
cd /opt/rt-n56u/toolchain-mipsel
sudo ./clean_sources
sudo ./build_toolchain

注:以后源码更新了,需要执行以下命令。
sudo git pull
cd /opt/rt-n56u/toolchain-mipsel
sudo ./clean_sources
sudo ./clean_toolchain
sudo ./build_toolchain

若无法更新,恢复初始再更新
sudo git stash
sudo git pull

» 修改配置文件
步骤 1 » 生成/opt/rt-n56u/trunk/.config文件
首先,删除默认的.config文件
sudo rm -f /opt/rt-n56u/trunk/.config
然后,从/opt/rt-n56u/trunk/configs/templates里拷贝ac54u的模板到/opt/rt-n56u/trunk/.config
sudo cp /opt/rt-n56u/trunk/configs/templates/ac54u_base.config /opt/rt-n56u/trunk/.config

步骤 2 » 修改/opt/rt-n56u/trunk/.config文件
文件里写的很详细,按需打开和关闭需要的功能。
对于K2来说,关闭一切usb相关的功能,语言选成en就行了。
为了简单起见,CONFIG_FIRMWARE_PRODUCT_ID=”RT-AC54U”这一行不要改他。

步骤 3 » 适配灯和复位键
修改文件/opt/rt-n56u/trunk/configs/boards/RT-AC54U/board.h
#define BOARD_GPIO_BTN_RESET    1
#define BOARD_GPIO_BTN_WPS      1
#define BOARD_GPIO_LED_ALL      10
#undef  BOARD_GPIO_LED_WIFI     11
#define BOARD_GPIO_LED_POWER    8
#undef  BOARD_GPIO_LED_LAN
#undef  BOARD_GPIO_LED_WAN      10

步骤 4 » 适配TTL和WAN口LAN口
修改文件/opt/rt-n56u/trunk/configs/boards/RT-AC54U/kernel-3.4.x.config
CONFIG_RALINK_UART_BRATE=57600

CONFIG_RAETH_ESW_PORT_WAN=4
CONFIG_RAETH_ESW_PORT_LAN1=3
CONFIG_RAETH_ESW_PORT_LAN2=2
CONFIG_RAETH_ESW_PORT_LAN3=1
CONFIG_RAETH_ESW_PORT_LAN4=0

步骤 5 » 关闭usb
除了在/opt/rt-n56u/trunk/.config里面关闭一切usb相关的选项,
还需要在/opt/rt-n56u/trunk/configs/boards/RT-AC54U/board.mk里设置
BOARD_NUM_USB_PORTS=0

步骤 6 » 设置时区
修改文件/opt/rt-n56u/trunk/user/shared/defaults.h
#define DEF_TIMEZONE                “CST-8”
#define DEF_NTP_SERVER0                “ntp1.aliyun.com”

步骤 7 » 对改过内存的人(我未测试,感谢原作者)
修改文件/opt/rt-n56u/trunk/linux-3.4.x/drivers/mtd/ralink/ralink_spi.c
/opt/rt-n56u/trunk/linux-3.4.x/drivers/mtd/ralink/ralink_spi_bbu.c

举个例子:
加入一句“{ “MX25L12845E”,        0xe1, 0x100c6110, 64 * 1024, 256, 0 },”,即可支持MXIC MX25L12845E 16M Flash。

{ “MX25L1605D”,          0xc2, 0x2015c220, 64 * 1024, 32,  0 },
{ “MX25L3205D”,          0xc2, 0x2016c220, 64 * 1024, 64,  0 },
{ “MX25L6406E”,          0xc2, 0x2017c220, 64 * 1024, 128, 0 },
{ “MX25L12835F”,        0xc2, 0x2018c220, 64 * 1024, 256, 0 },
{ “MX25L12845E”,        0xe1, 0x100c6110, 64 * 1024, 256, 0 },    <===加入这句
{ “MX25L25635F”,        0xc2, 0x2019c220, 64 * 1024, 512, 1 },
{ “MX25L51245G”,        0xc2, 0x201ac220, 64 * 1024, 1024, 1 },

步骤 8 » 适配无线频率,TTL频率等
修改文件/opt/rt-n56u/trunk/configs/boards/RT-AC54U/kernel-3.4.x.config
这里这样设置是因为适配breed。
CONFIG_RALINK_UART_BRATE=57600

修改文件/opt/rt-n56u/trunk/user/shared/defaults.h
这里这样设置是因为频率多。
#define DEF_WLAN_2G_CC                “CN”
#define DEF_WLAN_5G_CC                “GB”

» 修改原厂信号增益
步骤 1 » 替换文件
附件里Stock_v21.4.6.10文件夹内有三个文件
MT7612E_EEPROM.bin
MT7620_AP_2T2R-4L_V13.BIN — 原厂正常模式
MT7620_AP_2T2R-4L_V15.BIN — 原厂穿墙模式

将MT7612E_EEPROM.bin替换/opt/rt-n56u/trunk/vendors/Ralink/MT7620/MT7612E_EEPROM.bin
然后二选一(注意大小写):
正常模式,将MT7620_AP_2T2R-4L_V13.BIN重命名为MT7620_AP_2T2R-4L_external_LNA_external_PA_V15.bin,然后替换
/opt/rt-n56u/trunk/vendors/Ralink/MT7620/MT7620_AP_2T2R-4L_external_LNA_external_PA_V15.bin

穿墙模式,将MT7620_AP_2T2R-4L_V15.BIN重命名为MT7620_AP_2T2R-4L_external_LNA_external_PA_V15.bin,然后替换
/opt/rt-n56u/trunk/vendors/Ralink/MT7620/MT7620_AP_2T2R-4L_external_LNA_external_PA_V15.bin

步骤 2 » 修改内核
修改文件/opt/rt-n56u/trunk/configs/boards/RT-AC54U/kernel-3.4.x.config加入一行
CONFIG_EXTERNAL_PA_EXTERNAL_LNA=y

» 生成固件
好了,最后一步,生成固件。
cd /opt/rt-n56u/trunk
sudo ./clear_tree
sudo ./build_firmware

编译完成的固件在/opt/rt-n56u/trunk/images

» 测试
刷进去,双清,重启,运行一段时间看看。

链接: https://pan.baidu.com/s/1boYC8Z9 密码: cb8a