mirror of
				https://github.com/Telecominfraproject/wlan-ap.git
				synced 2025-10-29 17:42:41 +00:00 
			
		
		
		
	
			
				
					
						
					
					c0c358cb50ee446e57dcd1632375f77da74f5305
				
			
			
		
	 Marek Kwaczynski
		
	
	c0c358cb50
	
	
	cloud_discovery: add blacklist for discovery methods
			Marek Kwaczynski
		
	
	c0c358cb50
	
	
	cloud_discovery: add blacklist for discovery methods
		
			
			Introduce a blacklist mechanism to avoid retrying failed discovery methods within the same discovery cycle. Each time a method fails validation, it is added to the blacklist. The blacklist is cleared once the device transitions to ONLINE or after all discovery methods have been attempted. This prevents repeated attempts of failing methods and ensures the discovery process progresses more reliably. Signed-off-by: Marek Kwaczynski <marek@shasta.cloud>
OpenWiFi AP NOS
OpenWrt-based access point network operating system (AP NOS) for TIP OpenWiFi. Read more at openwifi.tip.build.
Building
Setting up your build machine
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
Doing a native build on Linux
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 .configfile.
cd openwrt
./scripts/gen_config.py linksys_ea8300
- Build the tree (replace -j 8with the number of cores to use).
make -j 8 V=s
Build output
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>/ | 
Developer Notes
Branching model
- main- Stable dev branch
- next- Integration branch
- staging-*- Feature/bug branches
- release/v#.#.#- Release branches (major.minor.patch)
Repository structure
Build files:
- Makefile- Calls Docker environment per target
- dock-run.sh- Dockerized build environment
- docker/Dockerfile- Dockerfile for build image
- build.sh- Build script
- setup.py- Clone and set up the tree
- config.yml- Specifies OpenWrt version and patches to apply
Directories:
- feeds/- OpenWiFi feeds
- patches/- OpenWiFi patches applied during builds
- profiles/- Per-target kernel configs, packages, and feeds- wifi-ax: Wi-Fi AX packages
- ucentral-ap: uCentral packages
- x64_vm: x86-64 VM image
 
uCentral packages
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
Description
				
					Languages
				
				
								
								
									C
								
								85.9%
							
						
							
								
								
									Shell
								
								5.6%
							
						
							
								
								
									Makefile
								
								3.3%
							
						
							
								
								
									Roff
								
								1.8%
							
						
							
								
								
									UnrealScript
								
								1.6%
							
						
							
								
								
									Other
								
								1.6%