I need help to design a special wireless communication between a main device and many end devices. Each device has a “nrf24l01” radio from Nordic semiconductor. The main device is a Raspberry pi, and the end devices are Arduino nano or uno or similar ones.
The main device and end devices are close by, not too far each other. The end devices are to measure for example temperatures at their local spots. For typical applications, the end devices collect measured data and send the data to the main device, but I need something special.
I like to use have least 15 end devices now, but only one main device.
Initially, I do not want end devices to do anything without the permission from main device. So initially all the end devices are not doing any things, and their radios just listen to the main device.
The main device will send out an RF signal to all end devices every 1-2 seconds. All the end devices shall receive the signal from main device at the same time, and after each end device receive the signal from the main device, each end device will collect a measured data and send the collect measured data back to the main device. But this project is focused on the RF communication, thus each end device will NOT measure temperature. Each end device only needs to send two data back to the main device: (1) the first data is device #, so main device knows the signal is from each end device (2) the second data is "random time delay", the random time delay here means that, upon the receiving of radio from main device, the end device shall generate a random time delay in between 0-30ms, wait til the delay is completed, then each end device sends (device #) and (random time delay) altogether back to main device. This is an ongoing data communcaiton, and the main device will receive data from end devices every 1-2 seconds.
You have to figure out a solution to make sure main device do not miss the data from end devices. If there are more than 6 channels of data from end devices reaching main device at the same time, some data from end devices may be missed by the main device. Then you will have to figure out how to ask end devices to re-send the data. The re-sending of the data must be received by the main device before the main device send out the next run of radio to end devices. Please remember that main device send out a radio to all end devices every 1-2 seconds.
You must know nrf24l01 very well in order to do the project.