1.可以让本身不支持emmc驱动的openwrt通过和玩客云的armbian镜像移植后实现支持emmc,方便写入emmc.
2.移植得到新的n1-firmware.img
镜像,如果无法启动,则尝试使用原本openwrt.img
镜像里的dtb文件或找其他合适的dtb文件.
git clone https://github.com/sean-liang/PHICOMM-N1-OpenWRT-Image-Builder.git
- 准备支持N1盒子的Armbian镜像,放入当前目录,建议重命名为
armbian.img
- 准备编译好的OpenWRT镜像,放入当前目录,建议重命名为
openwrt.img
- 将需要初始化的配置与文件放入
files
文件夹 - 运行
sudo build.sh
,构建的最终镜像为n1-firmware.img.gz
,大小为500M左右 - 使用balenaEtcher一类的工具将镜像写入u盘
建议从https://yadi.sk/d/pHxaRAs-tZiei下载最新的支持Amlogic S905的stretch镜像,在本说明写作时最新的镜像为:Armbian_19.11.3_Aml-g12_stretch_legacy_5.3.0_20191126.img.xz
如果使用的是上边提到的Armbian_19.11.3_Aml-g12_stretch_legacy_5.3.0_20191126.img.xz
,默认已经选择n1盒子了,可以省略下边的步骤。
- 挂载镜像的boot分区:
sudo mkdir -p /media
LOOP_DEV="$(sudo losetup -P -f --show armbian.img)"
sudo mount "$LOOP_DEV"p1 /media
- 检查
/media/uEnv.ini
文件中的dtb_name
是否为meson-gxl-s905d-phicomm-n1.dtb
,如果不是,可以到/media/dtb
目录下找到n1的dtb的路径并修改uEnv.ini
文件 - 写入并取消挂载镜像:
cd & sudo sync
sudo umount /media
sudo losetup -d $LOOP_DEV
- 建议使用Lean的OpenWRT源
- 编译环境的搭建与编译方法见其说明
Target System
选择Broadcom BCM27xx
,Subtarget
选择BCM2710 boards (64 bit)
,Target Profile
选择Raspberry Pi 2B-1.2/3B/3B+/3CM
Target Image
需要勾选ext4
- 编译之后的镜像:
bin/targets/brcm2708/bcm2710/openwrt-brcm2708-bcm2710-rpi-3-ext4-factory.img.gz
- 解压:
gunzip openwrt-brcm2708-bcm2710-rpi-3-ext4-factory.img.gz
得到OpenWRT的镜像文件:openwrt-brcm2708-bcm2710-rpi-3-ext4-factory.img
初始配置与程序在files
文件夹下:
etc/modules.d/wireless_enable
:无线硬件的设置,原地址https://github.com/maxlicheng/phicomm-n1-wireless,不要删除etc/config/network
:网络接口配置,默认IP为192.168.1.1
,网关192.168.1.1
,DNS114.114.114.114
。etc/config/dhcp
:DHCP配置,默认关闭DHCP服务etc/config/wireless
:无线网络配置,默认关闭无线网络
etc/config
下的文件可以删除,路由第一次启动会自动生成默认的配置文件。
可以把当前路由的备份文件合并到files
中。