What's new

AiMesh Router Node Maximum

  • SNBForums Code of Conduct

    SNBForums is a community for everyone, no matter what their level of experience.

    Please be tolerant and patient of others, especially newcomers. We are all here to share and learn!

    The rules are simple: Be patient, be nice, be helpful or be gone!

jaboda

New Around Here
Hi,

Sorry if this has been posted before but I haven't seen it mentioned anywhere.

As you may know there's a hard limit of 9 nodes in an Asus AiMesh network. Adding any more gives the error "The limit on the number of AiMesh nodes is 9. Currently your system has reached the maximum".
Today I tried to add a new AiMesh Node and it said I'd hit the maximum when I hadn't. I assumed there's a counter and it had become incorrect due to earlier topology changes I'd made.

It seems that not only is there a counter but it can be changed via SSH/Telnet. I didn't need to currently do that as I was reinstalling an existing node but I will try this in the future when we need to add more.
The config value is "cfg_recount" and it should be set on the AiMesh master to the number of Nodes installed. It's set to zero on the nodes.
To view the current value run "nvram show | grep 'cfg_recount' "
To change it simply run "nvram set cfg_recount=[number of nodes] | nvram commit".

Not only that but there seems to be a maximum as well, which is stored in "cfg_re_maxnum". Unlike the count this is stored on all Nodes as well, but not sure if it's needed.
To view the current value (which defaults to 9) run "nvram show | grep 'cfg_re_maxnum' "
To change it run "nvram set cfg_re_maxnum=[number of nodes] | nvram commit".

Has anyone else got any experience of changing these two values? How many nodes can an AiMesh run with, assuming mostly ethernet backhaul?
I am looking forward to testing this and will report back.
 
I did some more testing with this.
These settings are reset on reboot. The settings cfg_relist and cfg_relist_x hold the Node list which cfg_recount calculates on reboot.

Unfortunately when I tried to change these settings it cleared them as they contain < characters. So be careful!

In the end I recreated the Mesh which fixed the issue
 
im having the same issues from the multiple testing, removal, a router crash after firmware update fail etc etc.

>>>/tmp/home/root# nvram show | grep 'cfg_recount'
cfg_recount=9
size: 75005 bytes (56067 left)
>>>:/tmp/home/root#

Do i clear it with

nvram set cfg_recount=[number of nodes] | nvram commit
?

Will this remove and of the existing nodes?
 
I had orphaned nodes that wouldn't show up in the GUI and prevented me from adding new nodes as the outer thought I had reached the 9-node limit.

This thread helped me fix the problem. Here's what I did:

  1. Use Merlin FW to ensure SCP is working (Asus firmware doesn't have it).
  2. Use an SSH client like Bitvise to logon
  3. Use WinSCP to pull up the file explorer
  4. Check the current node count
    • nvram get cfg_recount
  5. Write the cfg_relist to a file.
    • nvram get cfg_relist > cfg_relist.txt
  6. Use WinSCP to edit out the bogus/orphaned entries from the file and save
    • EDIT cfg_relist.txt with WinSCP (Notepad++) then SAVE
  7. Write the data back to NVRAM. Doing it this away dodges the "<" character issue mentioned above.
    • nvram set cfg_relist "`cat cfg_relist.txt`"
  8. Reboot and Check the count! It works!
    • nvram get cfg_recount

I forgot to NVRAM COMMIT when I did the above, but it seemed to work just fine and retained everything post-boot. YMMV.
 
@skavan There is a typo in your nvram set command. It should be:
Code:
nvram set cfg_relist="`cat cfg_relist.txt`"
or
Code:
nvram set cfg_relist="$(cat cfg_relist.txt)"

The use of nvram commit in the previous posts is also bad practice. nvram commit should be a separate command (or use ;) and not the target of a pipe.
 
I had orphaned nodes that wouldn't show up in the GUI and prevented me from adding new nodes as the outer thought I had reached the 9-node limit.

This thread helped me fix the problem. Here's what I did:

  1. Use Merlin FW to ensure SCP is working (Asus firmware doesn't have it).
  2. Use an SSH client like Bitvise to logon
  3. Use WinSCP to pull up the file explorer
  4. Check the current node count
    • nvram get cfg_recount
  5. Write the cfg_relist to a file.
    • nvram get cfg_relist > cfg_relist.txt
  6. Use WinSCP to edit out the bogus/orphaned entries from the file and save
    • EDIT cfg_relist.txt with WinSCP (Notepad++) then SAVE
  7. Write the data back to NVRAM. Doing it this away dodges the "<" character issue mentioned above.
    • nvram set cfg_relist "`cat cfg_relist.txt`"
  8. Reboot and Check the count! It works!
    • nvram get cfg_recount

I forgot to NVRAM COMMIT when I did the above, but it seemed to work just fine and retained everything post-boot. YMMV.
This was helpful but the part on editing need more information please. i thot to just leave it blank and start from scratch.

reset all my nodes, adding them successfully but they do not show up on the GUI.

Restore a backup of the list and it works for some nodes but not the "newly" added ones, some nodes that were old are visible but i cant add any nodes.
 
I was able to update the mesh node count on my Asus GT-AX11000. In my case, I reached the max number of nodes because I used a firmware backup from one gt-ax11000 router to a new one. The nodes that were associated with the first router, of course, never showed up in my node list in the second router. Not that this is anything special, all mesh nodes drop from the node list after being disconnected for some amount of time.

It is possible to do this entirely within the linux shell using Bitvise xterm and SSH. I'm running the stock Asus firmware, but I don't see why it wouldn't also work with Merlin.

Here's how I did it:

1. Use Bitvise to connect to connect via SSH and open a new terminal console window. You will be in the /tmp/home/root directory by default.
2. Optional- Run the command: nvram get cfg_recount
This should return the number 9 on the next line which means that the AIMesh node count is at maximum
3. Run the command: nvram get cfg_relist > cfg_relist.txt
4.
Optional- Check that the file was created by typing: ls
(lower case LS) This should show that the file cfg_relist.txt was created.
5. Use the built-in vi editor to open the file you just created in step 3 above by running the command: vi cfg_relist.txt
Opening the file for editing will give a file similar to this:

<60:45:CB:CC:C2:AA>60:45:CB:CC:C2:AA>60:45:CB:CC:C2:AA>1660125805<4C:ED:FB:36:FD:BB>52:ED:FB:36:FD:BB>52:ED:FB:36:FD:BB>1660125692<10:7B:44:A0:99:CC>16:7B:44:A0:99:CC>16:7B:44:A0:99:CC>1703070093<10:7B:44:A0:7B:AD>16:7B:44:A0:7B:AD>16:7B:44:A0:7B:AD>1703070092<4C:ED:FB:36:FD:EE>52:ED:FB:36:FD:EE>52:ED:FB:36:FD:EE>1703070100<10:7B:44:CE:C7:FF>16:7B:44:CE:C7:FF>16:7B:44:CE:C7:FF>1691456972<10:7B:44:CE:A7:11>16:7B:44:CE:A7:11>16:7B:44:CE:A7:11>1703328953<10:7B:44:A0:8B:22>16:7B:44:A0:8B:22>16:7B:44:A0:8B:22>1703070089<4C:ED:FB:36:FD:33>52:ED:FB:36:FD:33>52:ED:FB:36:FD:33>1701552086

Each record starts with the "<" character and is delimited with a ">" character between data fields.
The first hex number after the "<" represents the mac address that the main router associates with the mesh node. For example "<60:45:CB:CC:C2:AA".
You can view the mac address for each node in the "AIMesh" section of the main router admin page using computer browser (not mobile app) to connect. Click on a node in the tree figure and look in the upper right for the mac address immediately beneath the model name of the mesh node device. It's in white font, so it's easy to miss.
Each record ends with a ten-digit number corresponding to the date that the node was installed or last updated. For example ">1660125805". This is represented in seconds since Unix Epoch, i.e., 1/1/1970
6. Match the first hex digits of each of the nine records in the cfg_relist.txt file to an active AIMesh node in the admin page of the main router. Those that don't match in the cfg_relist.txt file are the orphaned mesh nodes to be removed.
7. Using vi, simply delete the orphaned records, starting with the "<" character and ending with the ten-digit date. For example, remove the first record from the example above by deleting: <60:45:CB:CC:C2:AA>60:45:CB:CC:C2:AA>60:45:CB:CC:C2:AA>1660125805
8. When finished deleting orphaned records, run the following command in vi- :wq
(that is "colon" followed by wq and then press "enter"). This will save the file and exit the vi editor.
9. Run the command: nvram set cfg_relist="`cat cfg_relist.txt`"
10.
Go to the admin page for the main router and reboot the system. The router will go through the "Applying Changes" count to 100%.

You should now have permanently removed the orphaned mesh nodes. You can run step 2 again and it should reflect the new number of nodes, equaling 9 minus the number of records you deleted.

This should be a fairly low-risk change. If you accidentally remove an active node, you should be able to reset the node and simply add it to your AIMesh again.
 
Last edited:
I was able to update the mesh node count on my Asus GT-AX11000. In my case, I reached the max number of nodes because I used a firmware backup from one gt-ax11000 router to a new one. The nodes that were associated with the first router, of course, never showed up in my node list in the second router. Not that this is anything special, all mesh nodes drop from the node list after being disconnected for some amount of time.

It is possible to do this entirely within the linux shell using Bitvise xterm and SSH. I'm running the stock Asus firmware, but I don't see why it wouldn't also work with Merlin.

Here's how I did it:

1. Use Bitvise to connect to connect via SSH and open a new terminal console window. You will be in the /tmp/home/root directory by default.
2. Optional- Run the command: nvram get cfg_recount
This should return the number 9 on the next line which means that the AIMesh node count is at maximum
3. Run the command: nvram get cfg_relist > cfg_relist.txt
4.
Optional- Check that the file was created by typing: ls
(lower case LS) This should show that the file cfg_relist.txt was created.
5. Use the built-in vi editor to open the file you just created in step 3 above by running the command: vi cfg_relist.txt
Opening the file for editing will give a file similar to this:

<60:45:CB:CC:C2:AA>60:45:CB:CC:C2:AA>60:45:CB:CC:C2:AA>1660125805<4C:ED:FB:36:FD:BB>52:ED:FB:36:FD:BB>52:ED:FB:36:FD:BB>1660125692<10:7B:44:A0:99:CC>16:7B:44:A0:99:CC>16:7B:44:A0:99:CC>1703070093<10:7B:44:A0:7B:AD>16:7B:44:A0:7B:AD>16:7B:44:A0:7B:AD>1703070092<4C:ED:FB:36:FD:EE>52:ED:FB:36:FD:EE>52:ED:FB:36:FD:EE>1703070100<10:7B:44:CE:C7:FF>16:7B:44:CE:C7:FF>16:7B:44:CE:C7:FF>1691456972<10:7B:44:CE:A7:11>16:7B:44:CE:A7:11>16:7B:44:CE:A7:11>1703328953<10:7B:44:A0:8B:22>16:7B:44:A0:8B:22>16:7B:44:A0:8B:22>1703070089<4C:ED:FB:36:FD:33>52:ED:FB:36:FD:33>52:ED:FB:36:FD:33>1701552086

Each record starts with the "<" character and is delimited with a ">" character between data fields.
The first hex number after the "<" represents the mac address that the main router associates with the mesh node. For example "<60:45:CB:CC:C2:AA".
You can view the mac address for each node in the "AIMesh" section of the main router admin page using computer browser (not mobile app) to connect. Click on a node in the tree figure and look in the upper right for the mac address immediately beneath the model name of the mesh node device. It's in white font, so it's easy to miss.
Each record ends with a ten-digit number corresponding to the date that the node was installed or last updated. For example ">1660125805". This is represented in seconds since Unix Epoch, i.e., 1/1/1970
6. Match the first hex digits of each of the nine records in the cfg_relist.txt file to an active AIMesh node in the admin page of the main router. Those that don't match in the cfg_relist.txt file are the orphaned mesh nodes to be removed.
7. Using vi, simply delete the orphaned records, starting with the "<" character and ending with the ten-digit date. For example, remove the first record from the example above by deleting: <60:45:CB:CC:C2:AA>60:45:CB:CC:C2:AA>60:45:CB:CC:C2:AA>1660125805
8. When finished deleting orphaned records, run the following command in vi- :wq
(that is "colon" followed by wq and then press "enter"). This will save the file and exit the vi editor.
9. Run the command: nvram set cfg_relist="`cat cfg_relist.txt`"
10.
Go to the admin page for the main router and reboot the system. The router will go through the "Applying Changes" count to 100%.

You should now have permanently removed the orphaned mesh nodes. You can run step 2 again and it should reflect the new number of nodes, equaling 9 minus the number of records you deleted.

This should be a fairly low-risk change. If you accidentally remove an active node, you should be able to reset the node and simply add it to your AIMesh again.
so in short, there is no way to run more than nine nodes at the same time?
 
You don't want to run this many routers on the same channels and AiMesh was never designed to scale this much. If you really need >9 APs better look for business series equipment. Omada and UniFi are good price/performance systems for home use.
 

Similar threads

Latest threads

Support SNBForums w/ Amazon

If you'd like to support SNBForums, just use this link and buy anything on Amazon. Thanks!

Sign Up For SNBForums Daily Digest

Get an update of what's new every day delivered to your mailbox. Sign up here!
Top