[RELEASE] ARK Router – Modern Executive Dashboard & Automation Suite for LuCI (v1.5.x)

Hi everyone,

I'm excited to officially introduce ARK Router (luci-app-ark-router), a high-performance, mobile-first, trilingual (EN / PT-BR / ES) operations control suite and executive dashboard built natively for OpenWrt / LuCI.

Instead of attempting to replace OpenWrt or forking the core system, ARK Router operates as an advanced, non-destructive add-on package on top of official LuCI. It respects your existing UCI configurations, works seamlessly side-by-side with vanilla LuCI, and never overwrites your kernel.

The project is under very active development with constant updates and rapid improvements, driven directly by community feedback, bug reports, and testing across real-world hardware platforms.

ARK Router Banner


:light_bulb: Why ARK Router? The Problem It Solves

OpenWrt is the gold standard for routing freedom and network control. However:

  1. The default LuCI interface is desktop-centric: Monitoring client speeds or configuring network rules from a smartphone or tablet in the field is clunky.
  2. Advanced engineering requires CLI gymnastics: Enabling ZRAM memory compression, tuning Baby Jumbo MTU 1500 on PPPoE, setting up proper Multi-WAN failover, or resolving hardware flow offloading vs. SQM conflicts often requires editing raw configuration files via SSH with a constant risk of bricking or network lockout.
  3. Hardware fragility on entry/mid-tier routers: Routers with 128MB–256MB RAM frequently suffer from Out-Of-Memory (OOM) kernel panics when running multiple services, while repeated writes wear down SPI/NAND flash memory.

ARK Router bridges this gap: it packages 69 production-audited features into an intuitive, touch-friendly operations center with zero flash storage wear, automated safeguards, and 1-click execution.


:glowing_star: Comprehensive Feature Tour (69 Audited Capabilities)

1. :globe_with_meridians: Multi-WAN & Advanced Routing (mwan3)

  • Auto-WAN Port Conversion: Convert any secondary physical LAN port into a dedicated WAN2 in a single click without manually crafting VLAN switch tags.
  • Sub-Second Dual-WAN Failover & Balancing: Automated link health checks with session-based load balancing, weighted distribution, and instantaneous failover between fiber, Starlink, 4G/5G, or backup ISPs.
  • Broad-Spectrum PBR (BitTorrent / High-Port Balancing): Offload heavy torrent and P2P connections across secondary links while strictly keeping sensitive traffic (ports 80, 443, 53) pinned to your low-jitter primary WAN.
  • Isolated Bridge Modem / ONU Web Access: Access your fiber ONT/modem web interface (e.g., 192.168.1.1 or 192.168.100.1) directly from your LAN without IP conflicts or complex static routes.
  • TCP Turbo Engine: Adaptive Linux kernel tuning (BBR/Cubic, netdev_max_backlog, extended TCP receive/transmit buffers) calibrated specifically to saturate Gigabit links.

2. :high_voltage: Smart Queue Management (SQM / CAKE) & Anti-Bufferbloat

  • Zero-Drop CAKE Engine: Instant bufferbloat mitigation targeting clean A+ ratings on latency-under-load tests.
  • Auto-Healing l3_device Resolution: Solves the notorious OpenWrt bug where SQM binds to the raw physical interface instead of the virtual PPPoE tunnel (pppoe-wan), automatically re-binding rules whenever links bounce.
  • Dual-WAN SQM Dynamic Sync: Automatically tracks and enforces individual, independent SQM shaping bandwidth limits per WAN connection.
  • IRQ Balance & CPU Pinning: Binds CAKE queue processing and network interrupts to dedicated secondary CPU cores, keeping CPU Core 0 100% free for system tasks, DNS, and web serving.
  • Mutual Exclusion with Hardware Flow Offload (PPE): Hardware flowtables bypass queues and break SQM. ARK Router enforces mutual exclusion: toggling SQM off automatically restores hardware PPE offloading in real time without requiring a router reboot.

3. :clamp: RAM Compression (ZRAM / LZ4) & Memory Shielding

  • Double Multitasking on 128MB–256MB Devices: Creates an in-memory LZ4 compressed swap disk running purely in volatile RAM (/tmp). Absorbs heavy connection spikes with zero flash memory wear, eliminating OOM reboots.
  • Safety Lock for Single-Core CPUs (MIPS): Automatically detects single-core processors and caps allocation to 32MB with swappiness=15, preventing the CPU from stalling.
  • 5-Second Countdown Lock on High-RAM Routers: Routers with $\ge 512$MB RAM feature a timed confirmation modal to avoid wasting CPU cycles when physical memory is already abundant.
  • Automated RAM Purge (ram-purge): Background memory maintenance flushes cached buffers when memory pressure rises.

4. :stethoscope: ARK Doctor (Automated System Auditor & 1-Click Self-Healing)

  • 10-Layer Live Health Diagnostic: Continuously audits Wi-Fi radio status, br-lan bridge topology, DHCP leases, IPv4/IPv6 address assignment, hostapd syntax, and firewall integrity.
  • 1-Click Self-Repair (ark-doctor --fix): Fixes duplicate MACs, lingering firewall tables, and syntax mismatches with one click, restoring stability without requiring a factory reset.

5. :fire: Clean Dual-Firewall Engine (fw4 vs fw3)

  • 100% Pure fw4 / nftables: On modern OpenWrt (22.03 to 25.x+), ARK Router exclusively issues native nftables commands. It never invokes legacy iptables wrappers, permanently eliminating LuCI's "Legacy rules detected" alert.
  • Legacy fw3 / iptables Compatibility: Maintains complete backward compatibility for compact hardware on OpenWrt 19.07–21.02.
  • UPnP / NAT-PMP IGD with Safe Mode: External WAN ports remain securely closed by default, with 1-click dynamic port opening for gaming consoles (Xbox, PlayStation, Switch, PC) backed by STUN anti-crash protection.
  • Baby Jumbo MTU 1500 on PPPoE (RFC 4638): Dynamic hotplug hook (05-ark-pppoe-babyjumbo) raises the underlying Ethernet interface to 1508/1512 bytes, ensuring a full, unfragmented 1500 MTU inside PPPoE fiber tunnels.

6. :antenna_bars: Wi-Fi 6, 6E, Wi-Fi 7 & Mesh Orchestration

  • Full Next-Gen Standard Support: IEEE 802.11ax, 802.11be, and Multi-Link Operation (MLO) compatibility.
  • Channel & Bandwidth Guardrails: Safely unlocks 320 MHz bandwidth exclusively on the 6 GHz band, while strictly capping 5 GHz at 160 MHz with automatic non-DFS safe-channel fallback (Channel 36).
  • Seamless Fast Roaming: Coordinated 802.11r, 802.11k, and 802.11v handoffs to eliminate VoIP and video call drops between APs.
  • Client & Band Steering: Integrated usteer daemon steers 5GHz/6GHz capable devices away from congested 2.4GHz bands.
  • EasyMesh 802.11s & Satellite Shield: One-click master and satellite credential sync with Satellite Shield to protect your backhaul mesh connection.
  • Wireless Ethernet Dispatch (WED): MediaTek hardware acceleration for Wi-Fi to Ethernet bridging.
  • 1-Click Dumb AP Mode with Anti-Lockout: Converts any router into a transparent bridged Access Point (disables NAT and DHCP, dynamically obtaining an IP from your upstream network via DHCP or custom static IP). Simultaneously binds a permanent background fail-safe rescue IP (192.168.12.1) so you can always access the LuCI panel even on an offline test bench without risking a lockout.

7. :shield: Hybrid AdBlock, Parental Controls & Bandwidth Shaping

  • Dual Engine Architecture:
    • Full Profile (512MB+ RAM): Runs full AdGuard Home entirely in volatile RAM (/tmp/adguardhome) on port 3000 with 1M+ local rules, instant caching, and zero flash writes.
    • Lite Profile (128MB–256MB RAM): Ultra-light Cloud Anycast mode via dnsmasq supporting 9 curated security upstreams (Cloudflare 1.1.1.3, Quad9, CleanBrowsing, NextDNS, Control D).
  • 0ms Instant Domain Blacklist ("X or Y"): Drops unwanted domains returning 0.0.0.0 with 0ms overhead in dnsmasq.
  • Per-Device Rate Limiting with Local LAN Bypass (RFC 1918): Bandwidth caps apply strictly to WAN/Internet traffic. Local transfers (NAS, Plex/Emby, Wi-Fi 6/7 file transfers) continue at native Gigabit/Multi-Gigabit speeds.
  • Real-Time Per-Device DMA Telemetry: Live throughput read directly from driver counters (iwinfo) with Exponential Moving Average (EMA) filtering to kill 0 bps jitter. Includes sortable columns for cumulative consumption (MB/GB).

8. :locked: VPN Suites & Multi-Path Bonding

  • Decoupled WireGuard Client & Server: Fast configuration import with sub-100ms RPC responses that never freeze the web UI. Includes QR-code generation for smartphones and dynamic re-sync on WAN failover.
  • ZeroTier Remote Access in RAM: Integrated ZeroTier with an ultra-compact 0.3s RAM loader tailored for 16MB flash hardware.
  • Speedify Multi-Path Bonding: Combines multiple Internet connections (Fiber + 4G + Wi-Fi) for redundant link bonding.

9. :satellite: Starlink Control Center

  • Direct gRPC/HTTP integration for Starlink dishes (Gen 1/2/3).
  • Displays live obstruction data, SNR, ping drops, throughput, and 3D dish orientation.
  • 25-Hour Telemetry Buffer: Retains dish performance logs in RAM without wearing down flash storage.
  • Direct LAN Portal (/starlink/): Fast, unauthenticated local monitoring portal for all household users.

10. :globe_showing_americas: Native Trilingual Experience (Triple i18n)

  • 100% Translation Parity: Full, audited coverage across English, Português (Brasil), and Español (Neutro).
  • Not machine-translated: all screens, modals, tooltips, and validation errors are naturally localized while preserving universal networking terms (WAN, LAN, MTU, PPPoE, SSID, CAKE, BSS Coloring).

:laptop: Screenshots

Dashboard Overview Performance & Memory Shielding (ZRAM / UPnP)
Dashboard Overview Performance Shielding
Mobile-First UI Live Multi-Starlink Telemetry
Mobile Overview Starlink Telemetry
SQM CAKE Bufferbloat Tuner WAN & Multi-WAN Controls
SQM Editor WAN Editor

:package: Hardware Profiles & Compatibility

ARK Router automatically selects the optimal profile based on your hardware resources:

Profile Target Specs Example Devices Active Feature Set
Ultra-Lite 128MB RAM / 16MB Flash D-Link DGL-5500, Archer C7 v2/v5 Cloud Anycast AdBlock, MIPS-capped ZRAM (32MB), SQM CAKE, Pure fw3/fw4, Core Dashboard
Balanced 256MB–512MB RAM / 128MB+ Flash Cudy WR3000 v1, GL.iNet MT3000 Dynamic ZRAM (116MB), Multi-WAN mwan3, WireGuard, ZeroTier in RAM, irqbalance, nlbwmon
High Performance 512MB–1.5GB RAM (Quad-Core) Acer Predator W6x, Flint 2 (GL-MT6000) Local AdGuard Home in RAM, Multi-Starlink, Hardware WED, High-speed WireGuard Server
Enterprise / x86 >1.5GB RAM / 8+ Cores Protectli, Minisforum, VirtualBox x86 Unlimited Multi-WAN, Full speed multi-gigabit CAKE shaping, Enterprise QoS
  • OpenWrt Compatibility: 19.07, 21.02, 22.03, 23.05, 24.10, and modern 25.x snapshots (luci-compat).
  • Package Managers: Both modern apk and classic opkg are natively supported.
  • Architecture: all / noarch package.

:counterclockwise_arrows_button: Active Development & Constant Updates

ARK Router is actively developed and frequently updated. We continuously roll out:

  • Ongoing performance tuning for MediaTek Filogic, Qualcomm Atheros, and x86 architectures.
  • Regular compatibility fixes for upstream OpenWrt changes (including nftables/fw4 evolutions and apk packaging).
  • Built-in OTA updates and simple package upgrades (.apk and .ipk) right from the system tools.

:rocket: Quick Installation

ARK Router installs cleanly as an add-on package without breaking your existing network configurations.

Option 1: Automated 1-Line Installer (Recommended)

Connect via SSH to your OpenWrt router and run:

wget -O- https://raw.githubusercontent.com/Despensativo/ark-router/main/scripts/install.sh | sh
3 Likes

Hello!
I would like to test this I have clean install of OpenWrt 25.12.x ok RBR50V1 and have 22mb of usable /overlay space can I install it without problem or I need to expand my storage via extroot?
How big is the installation size of full package.

Hi @AyanZ!

Yes, 22 MB of /overlay space is more than enough! You do NOT need extroot.

Here is the exact size breakdown and why you ran out of space earlier:

:package: Package & Overlay Sizes

  1. ARK Router Lite (luci-app-ark-router):

    • Download size: ~530 KB (.ipk)
    • Installed footprint on /overlay: ~1.8 MB (views, JS, CSS theme, backend).
    • Sub-1MB operational dependencies (nlbwmon, sqm/CAKE, mwan3, miniupnpd, tc-full): ~2.0 MB to 2.5 MB combined.
    • :backhand_index_pointing_right: Total installed footprint: ~4.0 MB to 4.5 MB.
      With your 22 MB of free overlay, you will still have over 17 MB free!
  2. What about Add-ons and the "No space left on device" error?

    • If you manually installed luci-app-ark-router-full.ipk, it pulls speedtest-go, which is a standalone Go binary weighing ~24 MB on flash — that is what filled your 22 MB overlay.
    • AdGuard Home: Consumes 0 MB of flash! It runs 100% in volatile RAM (/tmp/adguardhome), protecting your flash from wear. Since your Orbi RBR50 has 512 MB of RAM, you can run the full AdGuard engine comfortably in RAM without using any of your 22 MB overlay.
    • ZeroTier: Consumes about ~3.5 MB if installed from the panel.

:rocket: Recommended Way to Install on RBR50 (22 MB Overlay):

Use our automated one-line installer, which checks your hardware budget and selects the safe Lite profile automatically:

sh -c "$(curl -fsSL https://raw.githubusercontent.com/Despensativo/ark-router/main/scripts/install.sh)"

Hello!

So, I tried it.

Even though I changed the language to English, it still wouldn’t translate everything. Only the top section of the first page was in English, so I had to manually translate the rest.

As soon as ARK was installed, my internet stopped working. It wouldn’t work unless I enabled the dual-server setting with Cloudflare. Google DNS wouldn’t work with my ISP’s DNS either.

The regulatory region also didn’t have all the available options. Since I live in Pakistan, I had to manually change it again.

I haven’t tested everything else yet, but SQM also didn’t work with the automatic method. It created the PPPoE interface, but it never added the speed or ran the speed test.

When I installed AdGuard Home, it also didn’t set itself up automatically. I had to configure it manually. The internet stopped working again, and this time I wasn’t sure how to get it working. AGH itself wasn’t working either, and everything was showing 0/0. Forwarding to the port didn’t work either.

Hi @AyanZ,

First of all, thank you so much for the detailed and thorough feedback! Testing ARK Router on a Qualcomm Atheros (IPQ4019) Netgear Orbi RBR50 from Pakistan was invaluable in uncovering latency, DNS, and hardware-specific assumptions that we have now completely resolved in release v1.5.6.

Here is what was happening behind each issue and how we fixed them:

1. English Translation / i18n

  • Root Cause: LuCI DOM text nodes contain trailing whitespace and newlines due to template indentation. The translation lookup was comparing raw strings, so card contents failed dictionary matching while the top header translated.
  • Fix: We implemented whitespace-tolerant DOM text mapping in formatters.js and added dynamic language detection that automatically matches LuCI's active interface language (auto). All cards, modals, and tooltips now translate cleanly to English.

2. Internet Outage on Installation (Multi-WAN & Ping Blackout)

  • Root Cause: The mwan3 multi-WAN tracking daemon was automatically enabled even on single-WAN setups, and its track target was pinging a regional Brazilian host (200.160.2.3) with an aggressive 2-second timeout. From Pakistan, the round-trip latency exceeded 2 seconds, leading mwan3 to falsely declare the connection dead and drop your default route.
  • Fix:
    1. Single-WAN setups will never run mwan3 tracking.
    2. We completely removed the regional host and switched the universal default to global Anycast: Cloudflare (1.1.1.1) and Google (8.8.8.8) with relaxed timeouts (4s), 10s intervals, and initial_state=online. Installing ARK Router will never disrupt your single-WAN connectivity.

3. Wi-Fi Regulatory Domain (Pakistan - PK)

  • Root Cause: The fallback regulatory table had a limited regional subset, and radio probing assumed MediaTek-style PHY interface names (phy0-ap0), failing on Qualcomm Atheros IPQ4019.
  • Fix: We added the complete ISO 3166-1 country list (including PK - Pakistan, IN, SA, AE, etc.) and dynamic radio query across all wireless drivers (iwinfo and uci show wireless).

4. SQM Automatic Speedtest

  • Root Cause: The automated speedtest engine previously required apk package management to install speedtest-go, which failed on standard opkg-based OpenWrt builds (like the Orbi).
  • Fix: Introduced an universal multi-stream fallback engine (using built-in HTTP chunking against Fast.com / Cloudflare CDN). When speedtest-go is absent, ARK Router runs the built-in test and automatically feeds download and upload rates directly into CAKE SQM.

5. AdGuard Home Setup & Port 53 Conflict

  • Root Cause: Fresh AdGuard Home installations had no default configuration and tried to bind port 53 (colliding with dnsmasq). Concurrently, dnsmasq was redirected to 127.0.0.1#5335 before validating if AGH was actually running.
  • Fix: Added a strict circuit breaker:
    1. ARK Router now pre-generates /etc/adguardhome/adguardhome.yaml binding DNS to port 5335 and Web UI to port 3000.
    2. Before touching dnsmasq, it verifies that AGH is actively listening and responding on port 5335. If it does not respond, the redirection is aborted immediately, keeping your normal DNS and internet connection 100% intact.

How to update on your Netgear Orbi:

:star: Recommended (1-Line Universal Installer):

We recommend using the official 1-line installer below. It automatically detects your router architecture and package manager (opkg), verifies available flash storage/RAM, and installs cleanly without needing manual package URLs:

wget -O- https://raw.githubusercontent.com/Despensativo/ark-router/main/scripts/install.sh | sh

Hello!

Thanks for the fixes and the detailed explanation!

I found a few more bugs/issues while testing ARK Setup:

  • Mobile scrolling: When doing the ARK Setup and general navigation on mobile, the page doesn’t scroll up.

  • Pop-ups: After closing a pop-up, it throws you back to the beginning of the page instead of keeping you in the same position where you were. It would be better if it stayed in the same area.

  • Close/cross button: The cross button blinks when applying changes. It keeps hiding and showing itself.

  • Translation: The translation still isn’t working for everything. There are still parts of the interface that I have to translate manually using the browser.

  • SQM: After testing with Fast.com, the SQM limits aren’t automatically applied. It also only has an upload-speed calculator. It would be better to have a download-speed calculator as well. There also doesn’t seem to be an option for link overhead or extra parameters such as NAT, dual-srchost, dual-dsthost, etc., which are important for proper SQM configuration. I still had to configure these manually.

  • AdGuard Home: When clicking “Open AdGuard Home Panel,” it opens "192.168.1.1/24:3000" instead of "192.168.1.1:3000".

    Also, AdGuard Home doesn’t show any statistics at all. How am I supposed to know whether it is actually working or not?

    In fact, it wasn’t working again. My internet went down, and I had to uninstall AdGuard Home to get my internet working again.

  • Dropdown menus: When selecting something from a dropdown, the dropdown is extremely thin/small. You can’t properly scroll through it or even see all the available options.

I haven’t finished testing everything yet, but I’ll report any other issues I find.


Beautiful UI but text translation still buggy.



Thank you for the feedback and the compliment on the UI! We’re already working on the translation fixes and an update will be out soon. We also have plenty of new features on the way to make advanced settings much simpler to use. Stay tuned!