I’d get a new power supply. NSS requires your hardware to be in good shape. Many ipq806x devices are now several years old and are prone to power issues on older power supplies when seeking max performance.
I have three r7800s with no crashes. They all last ~7-14 days and only reboot when I flash them with my new 5.10 build. I focus on the basics to get good stability: All the hardware is in good working order, I run simple settings, and I run with most of the extras turned off.
-----------------------------------------------------
OpenWrt SNAPSHOT, r18535+34-97f5617259
-----------------------------------------------------
root@OpenWrt:~# uname -a
Linux OpenWrt 5.10.90 #0 SMP Mon Jan 10 00:58:30 2022 armv7l GNU/Linux
root@OpenWrt:~# uptime
15:20:01 up 4 days, 17:47, load average: 0.00, 0.00, 0.00
root@OpenWrt:~#
Another very happy NSS user. I was able to compile and get NSS working on my r7800 today. I was able to achieved the max download/upload speed I paid for with NSS build. Very cool... Thank you to everyone for the support and special thanks to @ACwifidude for making the patches available to everyone wants to make their own image.
I do have one minor inconvenient I like to ask for some help. It doesn't seem to be causing any issue to the WiFi but it does flood my router log with the below error message every few seconds. mesh1 is one of my mesh WiFi interface that links the other routers in the house to provide internet connection to devices.
Fri Jan 14 14:59:42 2022 kern.err kernel: [ 294.529225] mesh1: NSS TX failed with error[7]: NSS_TX_FAILURE_BAD_PARAM
I search this and other thread for solution, so far I can't find any to get rid of the error message or fix the problem that causing these log entries. I appreciate any help or pointer to posts which might help resolve this issue.
Do you have many WiFi interfaces created in your R7800? You could be running into the NSS virtual interface limits (which is 16). Each WiFi interface registered will take up 2 interfaces.
From the source code, NSS_TX_FAILURE_BAD_PARAM is thrown when the NSS virtual interface number is invalid. I couldn't figure out how this can happen tho. If the WiFi interface has been successfully registered with NSS, this error shouldn't have been thrown. You may want to restart your R7800 and look at the kernel/system logs and see if there are NSS errors logged.
When the driver finds that it fails to send the data packet to NSS, it'll falls back to sending it back up the Linux network stack. That is why you do not see any issue. But this will introduce overhead in the data processing path and likely slows down your WiFi network thru the mesh network.
I have total of 8 WiIFi interface, 2 under the 2GHz radio and 6 under the 5GHz radio. I try removing one of the interface under the 5GHz radio and rebooted the router, still doesn't solve the issue. Log still getting spammed.
Below are NSS log entries from the dmesg command after the reboot. Let me know if I should post the full log. Based on the below logs, look like the WiFi interface are getting created but later destroyed and tries to add it again, but said it already exists. Here's how one of my mesh WiFi interface config look like.
It looks like there may be a bug with the code used by @ACwifidude when a NSS virtual interface is destroyed. The NSS context is not getting reset to NULL.
As a workaround, without restarting the router, you can, from the Luci GUI, remove the mesh1 and mesh3 (this also has issue from your log), then reconfigure them manually. This should make mesh1 and mesh3 work.
You said you made your own build? You may want to try this patch for the NSS support for mac80211. It works for me when WiFi interface is destroyed and recreated. Should work for master or openwrt-21.02 branch mac80211.
Alternatively, you may want to add in another line of code in the patch to reset the NSS context as follows:
static void ieee80211_destroy_nss_virtif(struct ieee80211_sub_if_data *sdata)
{
if (sdata->nssctx) {
nss_virt_if_destroy_sync(sdata->nssctx);
sdata->nssctx = NULL; /* Add this new line */
sdata_info(sdata, "Destroyed NSS virtual interface\n");
}
}
Oh god..
I just figured out I'm using 12V 2A!!
I bought the router used and I never checked out if the power supply was correct or not, I going to buy 5A power supply and try the firmware you suggest, hope it going to fix the reboot and wifi issues, btw are you using ath10k or -ct?
Thanks!!!
5A no problem.
is the maximum current capacity that the transformer can supply, the equipment will use what it needs. what matters is to respect voltage and polarity. luck.
Probably the working current depends on the WLAN Tx power output too. If both 2.4 and 5GHz are at 1000 mW that means more than 2A. My adapters on 4 R7800 routers are rated at 3.5A.