RF24Mesh  V1.0.3b
A user friendly mesh overlay for sensor networks using RF24Network and nRF24L01 radio modules
RF24Mesh_Example.cpp

Raspberry Pi Example Sketch
This example sketch shows how to manually configure a node via RF24Mesh, and send data to the master node.The nodes will refresh their network address as soon as a single write fails. This allows the nodes to change position in relation to each other and the master node.

#include <RF24/RF24.h>
#include <RF24Network/RF24Network.h>
RF24 radio(RPI_V2_GPIO_P1_15, BCM2835_SPI_CS0, BCM2835_SPI_SPEED_8MHZ);
RF24Network network(radio);
uint32_t displayTimer=0;
int main(int argc, char** argv) {
// Set the nodeID to 0 for the master node
// Connect to the mesh
printf("start nodeID %d\n",mesh.getNodeID());
radio.printDetails();
while(1)
{
// Call mesh.update to keep the network updated
// Send the current millis() to the master node every second
if(millis() - displayTimer >= 1000){
displayTimer = millis();
if(!mesh.write(&displayTimer,'M',sizeof(displayTimer))){
// If a write fails, check connectivity to the mesh network
if( ! mesh.checkConnection() ){
// The address could be refreshed per a specified timeframe or only when sequential writes fail, etc.
printf("Renewing Address\n");
}else{
printf("Send fail, Test OK\n");
}
}else{
printf("Send OK: %u\n",displayTimer);
}
}
delay(1);
}
return 0;
}