These transceivers use the 2.4 GHz unlicensed band like many WiFi routers, BlueTooth,
some cordless phones etc. The range is 2.400 to 2.525 Ghz which is 2400 to 2525 MHz
(MegaHz). The nRF24L01 channel spacing is 1 Mhz which gives 125 possible channels
numbered 0 .. 124. WiFi uses most of the lower channels and we suggest using the
highest 25 channels for nRF24L01 projects.
Transceivers like these both send and receive data in 'packets' of several bytes at a time.
There is built-in error correction and resending, and it is possible to have one unit
communicate with up to 6 other similar units at the same time. The RF24 Network Library
extends this to multiple 'layers' of interconnected transceivers.
These amazing low-cost units have a lot of internal complexity but some talented people
have written Arduino libraries that make them easy to us. They all use the same pinout as
shown in the following diagram, which is a TOP VIEW (Correction!):
Here are details of the Pinout and connections to Arduino (updated):
Signal RF
Cable
Module
COLOR
PIN
GND
1
Brown
VCC
2
Red
CE
3
Orange CE
CSN
4
Yellow
SCK
5
Green
MOSI
6
Blue
MISO
7
Violet
IRQ
8
Gray
NOTE!! Most * problems with intermittent operation are because of insufficient current or
electrical noise on the 3.3V Power supply. The MEGA is more of a problem with this.
Base
Arduino
Arduino
Module
pin for
pin for
PIN
TMRh20
RF24
Library
RF24
Library
GND
GND
GND *
VCC
3.3 V
3.3V *
7
9
CSN
8
10
SCK
13
13
MO
11
11
MI
12
12
IRQ
-
2
Arduino
MEGA2560
pin for
pin
Mirf
RF24
Library
Library
GND
GND *
3.3V
3.3V *
8
9
7
53
13
52
11
51
12
50
per library
Arduino
MEGA2560
Pin for
Pin for
RH_NRF2
RH_NRF24
4
RadioHead
RadioHead
Library
Library
GND *
GND *
3.3V *
3.3V *
8
8
10
53
13
52
11
51
12
50
N/C
N/C
Need help?
Do you have a question about the NRF24L01 and is the answer not in the manual?