OpenWrt-based access point network operating system (AP NOS) for TIP OpenWiFi. Read more at openwifi.tip.build.
Building requires a recent Linux installation. Older systems without Python 3.7 will have trouble. See this guide for details: https://openwrt.org/docs/guide-developer/toolchain/beginners-build-guide
Install build packages on Debian/Ubuntu (or see above guide for other systems):
sudo apt install build-essential libncurses5-dev gawk git libssl-dev gettext zlib1g-dev swig unzip time rsync python3 python3-setuptools python3-yaml
Use ./build.sh <target>
, or follow the manual steps below:
- Clone and set up the tree. This will create an
openwrt/
directory.
./setup.py --setup # for subsequent builds, use --rebase instead
- Select the profile and base package selection. This setup will install the
feeds and packages and generate the
.config
file.
cd openwrt
./scripts/gen_config.py linksys_ea8300
- Build the tree (replace
-j 8
with the number of cores to use).
make -j 8 V=s
The build results are located in the openwrt/bin/
directory:
Type | Path |
---|---|
Firmware images | openwrt/bin/targets/<target>/<subtarget>/ |
Kernel modules | openwrt/bin/targets/<target>/<subtarget>/packages/ |
Package binaries | openwrt/bin/packages/<platform>/<feed>/ |
main
- Stable dev branchnext
- Integration branchstaging-*
- Feature/bug branchesrelease/v#.#.#
- Release branches (major.minor.patch)
Build files:
Makefile
- Calls Docker environment per targetdock-run.sh
- Dockerized build environmentdocker/Dockerfile
- Dockerfile for build imagebuild.sh
- Build scriptsetup.py
- Clone and set up the treeconfig.yml
- Specifies OpenWrt version and patches to apply
Directories:
feeds/
- OpenWiFi feedspatches/
- OpenWiFi patches applied during buildsprofiles/
- Per-target kernel configs, packages, and feeds- wifi-ax: Wi-Fi AX packages
- ucentral-ap: uCentral packages
- x64_vm: x86-64 VM image
AP-NOS packages implementing the uCentral protocol include the following repositories (refer to the ucentral feed for a full list):
- ucentral-client: https://github.com/Telecominfraproject/wlan-ucentral-client
- ucentral-schema: https://github.com/Telecominfraproject/wlan-ucentral-schema
- ucentral-wifi: https://github.com/blogic/ucentral-wifi