OpenWrt for the Skyworth GN630V GPON ONT (AX3000), an Airoha AN7529CT (EN7523 family) box. It runs a current OpenWrt kernel (6.18) and LuCI, installs from the stock web UI, and keeps the stock firmware in the second flash bank so you can always go back.
Hardware restriction: Do not flash this firmware on the 2.5G GN630V. Only the AX3000 GN630V variant is covered by this build; the 2.5G variant has not been tested and may be incompatible. Check the full model/variant marking on the device label; do not infer compatibility from appearance.
___ __ __ _ ______ ______
/ | / /___ / /_ ____ _| | / / __ \/_ __/
/ /| | / / __ \/ __ \/ __ `/| | /| / / /_/ / / /
/ ___ |/ / /_/ / / / / /_/ / | |/ |/ / _, _/ / /
/_/ |_/_/ .___/_/ /_/\__,_/ |__/|__/_/ |_| /_/
/_/ Skyworth GN630V | AN7529CT | Linux 6.18
Status: early test builds. Verified on hardware: booting from either bank, the persistent overlay, the LAN switch, Wi-Fi 6 on both bands, encrypted DNS, LuCI, installing from the stock web UI, and going back to stock. GPON: the optics (EN7571, with the unit's own calibration) and the PON MAC come up and report loss of signal without fibre. Test status: GPON registration has reached O5 on a live line. Stable Internet service over fibre is still under test. Read Recovery before flashing.
There are two GN630V models. AlphaWRT supports only the white one.
| GN630V AX3000 | GN630V 2.5G | |
|---|---|---|
| Colour | White | Black |
| Wired ports | 4x 1 Gbps LAN | Has a 2.5 Gbps port |
| AlphaWRT | Supported, tested on a live TIME line | Not supported. Untested, do not flash |
Go by the model marking on the label, not by the colour alone.
| Part | Details |
|---|---|
| SoC | Airoha (EcoNet) AN7529CT, EN7523 family |
| CPU | 2x ARM Cortex-A53 at 1.0 GHz, running in 32-bit (AArch32) mode |
| RAM | 512 MB DDR |
| Flash | 256 MiB SPI NAND (FORESEE F35SQB002G) |
| Fibre | GPON ONT: EN7571-class xPON MAC with an EN7570 laser driver |
| Ethernet | 4x 1 Gbps LAN (internal MT7530 switch) |
| Wi-Fi | Wi-Fi 6 AX3000, MediaTek MT7916 dual band: 2.4 GHz 2x2, 5 GHz 2x2 up to 160 MHz |
| Phone | 1x TEL (FXS) port, not supported by AlphaWRT yet |
| Buttons | Reset, WPS |
| LEDs | Power, PON, LOS, Internet, Wi-Fi 2.4 GHz, Wi-Fi 5 GHz, LAN 1-4, TEL, VoIP, USB, WPS |
| Console | UART, 115200 8N1, 3.3 V |
The flash map, boot chain and image format are in docs/HARDWARE.md.
- OpenWrt (procd, ubus, LuCI, apk, dropbear, firewall4) on Linux 6.18, with a persistent UBIFS overlay.
- Dual bank, stock kept. AlphaWRT runs from whichever flash bank it was written to. The other bank keeps the stock firmware untouched, and nothing in AlphaWRT ever writes it.
alphawrt-bootbank stockplus a reboot brings stock back. - Installs from the stock web UI. The image is a valid stock-format (HDR2) bank image, so the stock upgrade page takes it as it is.
- Real board support, not a generic EN7523 build: GN630V partition map, MAC from the bootloader env, MT7916 calibration from flash, MT7530 switch, LEDs, and the FORESEE SPI-NAND driver backported from mainline.
- Wi-Fi that keeps working. On first boot AlphaWRT reuses the network names, passwords and country from the stock settings, now as WPA2/WPA3. Each band gets its stock MAC, and 5 GHz runs at 160 MHz.
- Encrypted DNS by default. dnsmasq serves the LAN and forwards to dnsproxy: DNS-over-QUIC and DNS-over-HTTPS (HTTP/3) upstreams, DNS-over-TLS fallback. To go back to the ISP's DNS, see the commands at the top of
/etc/uci-defaults/95_alphawrt_dns. - Two web interfaces. Switch between them with the link at the top right.
- Basic (the default): Home, Wi-Fi, Devices and System pages, like the stock firmware's.
- Advanced: the full OpenWrt interface (LuCI).
- Quick Setup (top bar, and the first page after the first login):
- Presets come only from the project's own sources:
- Unifi (TM): Internet PPPoE on VLAN 500, from this box's own stock firmware. Click Use the identity saved by the stock firmware if TM supplied and provisioned this GN630V.
- TIME: PPPoE on VLAN 499 and a Huawei HG8145X6 ONT profile, tested on a live TIME line.
- Allo and others: manual. No third-party ISP or ONT presets are bundled.
- Once the fibre registers, Quick Setup uses the Internet VLAN the ISP's OLT provisions.
- Your own serial number and PLOAM password, or the identity the stock firmware saved, plus PPPoE, Wi-Fi and the admin password.
- A fibre card on Status > Overview shows the PON state and optical levels.
- Presets come only from the project's own sources:
- Its own LuCI theme,
luci-theme-alphawrt: follows the device's light/dark setting, works at phone width. Bootstrap stays installed as a fallback.
From stock firmware, use only *-tclinux-factory.bin through the stock web UI. Use *-sysupgrade.bin only when upgrading a running AlphaWRT installation. Do not sysupgrade the stock firmware. Keep tclinux in the factory image name: the stock page rejects anything else. Details and recovery steps are in docs/INSTALL.md.
After the reboot: http://192.168.1.1, user root, no password. The first login opens Quick Setup.
ssh root@192.168.1.1
alphawrt-bootbank # what each bank holds
alphawrt-bootbank stock
reboot
./build.sh # clones OpenWrt at the pinned commit, applies patches/, buildsNeeds the OpenWrt build prerequisites and a case-sensitive filesystem. On macOS, use a case-sensitive APFS volume with GNU coreutils/findutils/sed/tar/grep/make ahead of the system tools. On Apple Silicon, OpenWrt can't build its own Go bootstrap, so install Go (brew install go) and add this to openwrt/.config before building:
CONFIG_GOLANG_EXTERNAL_BOOTSTRAP_ROOT="/opt/homebrew/opt/go/libexec"
# CONFIG_GOLANG_BUILD_BOOTSTRAP is not set
The output lands in openwrt/bin/targets/airoha/en7523/.
| Path | |
|---|---|
patches/ |
patches on the pinned EN7523 tree: the GN630V board (dual bank, image, Wi-Fi/DNS defaults, xPON wiring) |
package/ |
luci-theme-alphawrt and luci-app-alphawrt (Quick Setup, Basic interface), copied into the tree as package/alphawrt/ |
config/gn630v.config |
build config seed |
config/feeds.conf |
the feed commits the build uses |
.github/workflows/build.yml |
Linux CI build with build.sh; run by hand with "repro" to build twice and compare |
tools/ |
UART/U-Boot helpers: chunked TFTP RAM boot, TFTP server, flash dump, image checker; budget.py (flash budget report, run by build.sh); compare-test.sh (stock vs AlphaWRT capture) |
docs/ |
hardware and boot chain, install, recovery, ONT/ISP tester guide, stock vs AlphaWRT testing, hardware acceptance, roadmap |
- Sirherobrine23: the EN7523 OpenWrt tree AlphaWRT builds on (Sirherobrine23/openwrt, openwrt/openwrt#20104) and the trees it collects, with the open xPON PHY/MAC, EN7571 optics and OMCI stack. AlphaWRT's fibre support is this stack plus our fixes.
- Kiwironic/openwrt-en7523: the EN7523 + MT7916 board support this port started from
- realldz/econet-42x6-openwrt and gilsonolegario/px3321-en7523-notes: vendor U-Boot and EN7523 ONU notes
- OpenWrt's EcoNet target for
tclinux-trx.sh, and the mainline FORESEE F35SQB002G driver - Anime4000's RTL960x project: public OMCI/xPON research that informed our background understanding of ONU identity and OLT behaviour. AlphaWRT's GPON implementation is based on the upstream EN7523 xPON stack above.
GPL-2.0, like OpenWrt; package/luci-theme-alphawrt is Apache-2.0, like LuCI. No proprietary firmware is part of this repository: the MT7916 firmware comes from OpenWrt's mt76 package, and the NPU firmware stays on the user's own stock image.