From ElectroDragon Wiki
(Redirected from NRF24L01)


The Nordic Semiconductor nRF24L01 is descended from the TXRX24G, but it offers some important features that make it much easier to deal with:

  • Enhanced Shockburst™: This is Nordic’s link layer protocol that gives the radio auto-acknowledgement, auto-retransmit, and packet loss detection capability. It will make the wireless link much more reliable without adding complexity to the students’ application programs.
  • SPI bus: The nRF24L01 implements a 4-wire Serial Peripheral Interface bus. This allows the software driver to use the microcontroller’s native high speed SPI module for communications instead of having to do manual bit bashing, which is less reliable, slower, and more difficult to implement.
  • External antenna: This should improve the new radio’s sensitivity and range over those of the old radios.
  • MultiCeiver™: Each radio can receive packets on up to six different addresses. This allows us to implement features such as selective packet broadcasting without sacrificing other functionality.

Other features: Variable packet widths, packet queueing, ack packet payload, etc.

Module pin definition, board schematic

Dimension, Schematic

  • NRF24Duino pin definition
Pins Configuration
D2 via Jumper Nrf24l01 - IRQ interrupt
D7 Nrf24l01 - enable pin (EN or CE)
D8 SPI Flash - chip slect pin(CS)
D9 via Jumper On-board testing LED
D10 Nrf24l01 - chip select pin(CS or SS)
D11-D13 Nrf24l01 and SPI Flash - SPI pins

Other Boards (reference only)


NRF24L01 with MCU USB Control


Section Header text Header text
1 00 frequency
2 12 Register to setup power rate and serial port baud rate
3-7 34,56,78,90,27 Example

NRF24L01 with STC C51 MCU

STC15L204EA +NRF24L01 Schematic

Demo Code of STC51 Usage Connect board RX to TX (MCU,PC), and board TX to RX(MCU,PC)
Simply use a UART connector (PL2303, FT232RL, CP2102, etc) to connector between PC and this module.

  • To upload C51 demo code, notice the MCU frequency, for default button pressed frequency is 22.1184 mhz, and data transmission demo code frequency is 18.xx Mhz

Testing Methods

  • In this case you don't need connect with any UART and go to PC
  • Prepare two pairs, all power up normally:
  • One pair of TX and RX connect to LEDs, and LEDs goes to VCC.
  • The TX (Or RX) in another pair should shortly connect to GND
  • Now the LEDs will start to blinking which means both works well
  • Try to further adapt the demo code for your projects

Serial to NRF24L01

Command Example Parameters Default
baudrate AT+BAUD=7 set to 115200 Example 9600
Air speed AT+RATE=1 250kbps, 1Mbps, 2Mbps 2Mbps
Set Target Receiver module address AT+RXA=0xAA,0xBB,0xCC,0xDD,0xEE - 0xFF,0xFF,0xFF,0xFF,0xFF
Set local transmitter address AT+TXA=0xAA,0xBB,0xCC,0xDD,0xEE - 0xFF,0xFF,0xFF,0xFF,0xFF
Set channel AT+FREQ=2.424G - 2.4GHz
CRC check AT+CRC=8 8 or 16 2.4GHz
System enquiry AT? - -


Title Type
File:NRF24L01P Product Specification 1 0.pdf Documents
Radiohead Arduino library
tmrh20 - RF24, recommanded Arduino library
RF24, RF24 v1 Arduino library
Mirf Arduino library
Mysensors, instruction Arduino library
AVRlib Arduino port


Pages in category "NRF24"

The following 5 pages are in this category, out of 5 total.