I am playing with the idea of mesh network path finding. The goal is that each node can find the most efficient path through other node to a hub.
One way I could approach it is by flooding the network so each node can decide which node is best to connect with. See the following pseudo code that each node runs
Ping out my ID Wait for responses (all nodes that heard the ping reply their ID and to-hub 'cost') Ignore replys with no to-node cost, they aren't connected to hub yet Record ID and Connection Quality + to-hub cost Pair with lowest cost node Record as Parent Wait for connections from other nodes, record as child Forward data from children to parent
The only problem is that when a node pings, multiple nodes may hear it and respond at the same time, possibly creating interference, and giving the node no time to record neighbours.
Possible solution: Each node is delayed by a factor of its ID and time it takes to respond
How else may I limit the amount of interference in my network?