While building Arduino or any other microcontroller platform project over time the need will arise to establish communication between two of the Arduino boards or microcontrollers for data exchange and/or control. This communication could be achieved using either wired or wireless process. For wireless communication between devices, quite a number of options exist including WiFi, GSM/GPRS, Bluetooth, RF and more recent technologies like LoRaWAN among others. All of these communication protocols have their pros and cons and the situation is in which they are the best fit. For mid-range communication between two microcontrollers, for example, one of the most suitable communication protocol is RF (radio frequency) as it has a good cost to performance ratio and a very good communication range can be attained using certain modules.
Today, we will look at the radio frequency based communication between microcontrollers using one of the most popular RF communication modules; the NRF24L01 communication module.
The NRF24L01 module is a low-cost (less than$3) ultra-low power, bi-directional transceiver module. It is designed to operate within the 2.4GHz ISM band which means it can be used for projects with industrial, scientific and medical applications. The module can achieve data rates as high as 2Mbits! and uses a high-speed SPI interface in order to communicate with the Arduino and other kind of microcontroller and development boards.
Communication Between Two Arduinos Using NRF24L01 – [Link]