Hi guys,
I need to create a network of 1000 nodes, where everyone reports back to one particular node (gateway). I've developed a prototype using LWMesh stack, with a transceiver set a 250kbps. So far it's been ok. I've been able to handle 30 devices, all sending data to one hub every 30 minutes. But ever since i've read this post
https://www.eevblog.com/forum/microcontrollers/lightweight-mesh-software-stack-in-real-life-how-many-nodes-max/msg1053312/#msg1053312 i'm worried. I'm not sure how many more nodes i'll be able to add, and i don't have an easy way of testing the network with that many (at least not in a near future).
In the current configuration, all nodes are routing nodes (NWK_ENABLE_ROUTING); and with native routing algorithm. In final application, the distance between nodes will be approximately 50 meters. Range distance is not an issue, since nodes can communicate to each other even at 100 meters. However, the number of hops is the bottleneck. The topology of the network is a static grid of homogeneous distribution. Once installed, nodes remain at the same position. The gateway will be at the centre, and i need to get to every node with less than 5 hops.
When i tested the native routing algorithm using five nodes (each one 50 meters apart from the other), i noticed that every one routed the messages of his nearest neighbour, overloading the network since each one was, in theory, capable of avoid one hop and talk to the node located at 100 meters apart. I'm aware that this scenario is a consequence of the nature of the algorithm, since it's using the best LQI to define the path, but is unacceptable for the final application.
I was wondering if there is a way of improving performance in order to achieve the goal of 1000 nodes in the same network.
First option is to set the routing algorithm to AODV in order to minimise the number of hops. However, i'm not sure if this is enough.
Second option is to limit the number of routing nodes (to 100) and the rest to non-routing ones. Despite this is probably the best option, it makes harder the maintenance of the network.
Third option is to modify the routing algorithm. Perhaps implement an algorithm using all broadcast messages which contain the source/destiny information inside the payload. Sooner or later, the messages will get to the gateway.
Someone thinks this is even possible? Any suggestions to achieve the goal are welcome.
Thanks in advance.
Frank