Ipq806x NSS build (Netgear R7800 / TP-Link C2600 / Linksys EA8500)

The strange thing is that it only crashes with ath10k, while with ath10k-ct it seems to work, even if it is slow.
I will try again with ath10k disabling VHT on 2.4Ghz

Edit: I installed the image with ath10k and I confirm that it works worse, even with VHT disabled on 2.4Ghz, also the wifi coverage is worse than ath10k-ct

Edit2: I found that VHT on 2.4Ghz with the ath10k-ct actually works fine, the slow speed was due to the smartphone I used to test it, with another smartphone it works fine.
The fact remains that 5Ghz is slow compared to what you can get with the tp-link firmware, NSS offload does not work on wifi?

What’s your WAN bandwidth? If it’s under 800–900 Mbps up/down, I wouldn’t bother with an NSS build.

With an R7800 (ath10k) running vanilla OpenWrt K6.6 and software offloading enabled, I can still easily hit 600 Mbps over 5 GHz Wi-Fi. NSS does not help push throughput much over that, just some slightly less CPU utilization. Remember that hostapd for WiFi still consumes quite a bit of CPU utilization regardless of whether you're using NSS or non-NSS image.

Also, if your goal is maximum VPN performance (WireGuard, IPsec, OpenVPN, etc.), vanilla OpenWrt easily outperforms NSS.

I have a 5000/700, the main router is an MT6000 but obviously only gets 2500/700, the C2600 is connected to a gigabit switch which is in turn connected to the MT6000, so it gets 1000/700.
In any case, Internet aside, speed is important to me for local transfers between PCs and NAS server.

The maximum 5GHz Wi-Fi throughput I typically get on the IPQ8065 (R7800 with ath10k) is around 600 Mbps, and about 550 Mbps on the IPQ8064 (R7500v2 with ath10k), with NSS or without NSS / software offloading enabled.

Under ideal conditions — a single Wi-Fi client and no interference from neighboring networks — the R7800 can reach up to 650 Mbps.

Try switching to different Wi-Fi channels on your C2600 to see which one delivers the best performance. Radio interference can significantly impact Wi-Fi throughput.

Is this a hardware limitation? or is this limitation due to the lack of wifi offload?I tried all the channels but the result is the same, with a fritz repeater 2400, which is a N/AC 4x4 like the c2600 when I start a speed test on two 2x2 devices at the same time the speed on both is around 400 Mbps, while with the c2600 in that case the speed for both drops to 200 Mbps, while from a single 2x2 device it is about 500 Mbps.

This post by @quarky could be interesting to the readers of the NSS thread.

2 Likes

Generally speaking, if your goal is maximum throughput for multiple concurrent users, stick with the OEM firmware. If you want greater flexibility and a richer feature set, go with OpenWrt.

DDWRT is also porting NSS to DSA and seems to have it running

2 Likes

The 23.05.5 NSS builds e.g. from Kong are very good and still supported.

That's good and means that it's achievable task for OpenWrt too. Of course I like ddwrt but I like OpenWrt the most. I hope we'll have it at one point. These R7800s are still really good routers and deserve the continued software support.

1 Like

I think I'll have to settle for that then, I much prefer openwrt, I hope that sooner or later we'll be able to get something more out of the wifi of this device

Has DD-WRT moved to later kernel versions? The last time I checked, it’s still on 4.4, but that’s for bcm47xx SoC.

I’ll probably check over there to ā€œappropriateā€ some of their technique … :grimacing:

1 Like

New Build - 04/26/2025 - r60771
Refer to this post, should be beta for migrates IPQ806x chipsets from swconfig to DSA.

1 Like

Did a quick scan. Seems like it's a lot easier how it's done over at the dd-wrt end, i.e. just modifying how the GMAC connects to the PHY layer. A lot simpler compared to what I did and still trying to do.

My approach is modeled after the STMicro stmmac driver where I used the PHYLINK sub-system to get the standard Linux PHY driver to handle the PHY layer (if I understand what I read ... haha.)

I'll think I'll just go with what I have and see if that works out better. Seems to work (almost I think) with bridge VLAN Filtering, so let's see how things progress.

4 Likes

For the ipq806x Sebastian ported everything to K6.1 and first got everything working including nss with swconfig and iptables and now is replacing swconfig with dsa.
IPQ8074 has also been added to ddwrt with nss but is using k6.6
A huge effort to keep ddwrt current.

The Broadcom targets are k4.4

3 Likes

Confirmed the latest of commit #828b4dd is fine and uptime is over 2 days.

I'm using the latest commit too, maybe it's just my impression, but it seemed to me that the wifi was a little faster than before, i need to do more tests.

Edit: I saw that packet steering is enabled by default, should I leave it like that or is it better to disable it?

Hello,
I built the firmware from @asvio's repo (r7800-24.10-nss branch), and NSS works well with hardwired traffic (configured as a NAT router). However, Wi-Fi traffic doesn't seem to be offloaded properly. While benchmarking Wi-Fi, sirq spikes to 50% (equivalent to 100% usage on one core). Is this normal for the IPQ8064 NSS build firmware?

Thanks

@asvio great work! Didn't know 24.10 with nss was even possible. Any chance you can make binaries for the r7800? Otherwise I will try to build from source.

Hi @kiss81,
Sorry, I don’t have an R7800 router. I’m testing on a WXR-2533DHP with a modified DTS file. I can share the firmware, but it’s UNTESTED and could potentially brick your router. Please use it with caution.
https://limewire.com/d/DZfeU#788QDlJ1jV
https://limewire.com/d/5mP54#TAHobhuScJ

Also, this firmware includes some extra packages (btop, htop, USB NIC support for debugging purposes, luci-ttyd, etc.), so the file size is larger than usual. (12MB for sysupgrade image)
Thanks!