GithubHelp home page GithubHelp logo

phicomm-n1-openwrt-image-builder's Introduction

斐讯N1盒子OpenWRT镜像自动构建脚本

使用方法:

  1. git clone https://github.com/sean-liang/PHICOMM-N1-OpenWRT-Image-Builder.git
  2. 准备支持N1盒子的Armbian镜像,放入当前目录,建议重命名为armbian.img
  3. 准备编译好的OpenWRT镜像,放入当前目录,建议重命名为openwrt.img
  4. 将需要初始化的配置与文件放入files文件夹
  5. 运行sudo build.sh,构建的最终镜像为n1-firmware.img.gz,大小为500M左右
  6. 使用balenaEtcher一类的工具将镜像写入u盘

Armbian镜像

下载地址

建议从https://yadi.sk/d/pHxaRAs-tZiei下载最新的支持Amlogic S905的stretch镜像,在本说明写作时最新的镜像为:Armbian_19.11.3_Aml-g12_stretch_legacy_5.3.0_20191126.img.xz

选择设备为斐讯n1盒子

如果使用的是上边提到的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

OpenWRT镜像

  • 建议使用Lean的OpenWRT源
  • 编译环境的搭建与编译方法见其说明
  • Target System选择Broadcom BCM27xxSubtarget选择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.254,网关192.168.1.1,DNS114.114.114.114
  • etc/config/dhcp:DHCP配置,默认关闭DHCP服务
  • etc/config/wireless:无线网络配置,默认关闭无线网络

etc/config下的文件可以删除,路由第一次启动会自动生成默认的配置文件。

可以把当前路由的备份文件合并到files中。

phicomm-n1-openwrt-image-builder's People

Contributors

sean-liang avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

phicomm-n1-openwrt-image-builder's Issues

编译时出现以下错误

xx@xx-virtual-machine:~/Desktop/PHICOMM-N1-OpenWRT-Image-Builder$ sudo ./build.sh
Enter OpenWRT image path: ./openwrt.img
Enter Armbian image path: ./armbian.img
OpenWRT Image: ./openwrt.img
Armbian Image: ./armbian.img
Cleanup.
Create work images.
Create work directories.
Copy files from OpenWRT image.
mount: /home/xx/Desktop/PHICOMM-N1-OpenWRT-Image-Builder/image: special device /dev/loop19p2 does not exist.
mv: cannot stat '/home/xx/Desktop/PHICOMM-N1-OpenWRT-Image-Builder/image/': No such file or directory
umount: /home/xx/Desktop/PHICOMM-N1-OpenWRT-Image-Builder/image: not mounted.
Copy files from Armbian image.
find: ‘/home/xx/Desktop/PHICOMM-N1-OpenWRT-Image-Builder/openwrt/lib/modules/
’: No such file or directory
Modify boot script.
sed: can't read /home/xx/Desktop/PHICOMM-N1-OpenWRT-Image-Builder/openwrt/etc/init.d/boot: No such file or directory
Copy defaut configs.
Create firmware image.
Compress firmware image.
Cleanup.
All done. Firmware Image: n1-firmware.img.gz

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.