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
- NRF24Duino pin definition
|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|
- To have a quick start of this board, you can try a pair, or another arduino with nrf24l01.
- The board are pre-flashed RF24 get started sketch, use RF24 arduino library
- Connect the board with FTDI-basic
- Turn on the serial monitor in arduino
- One board should be on "T" mode, another one should be on "R" mode.
- Note: LED is not work for default pre-programmed sketch, but can be used for other libraries which support nrf24l01
- To upload new sketch, please choose board:
Arduino uno (new firmware will switch to pro-mini 3v3/8m firmware, if your board can not work please also try this option or contact us)
Bootloader Flash Guide
- This is not necessary for, we already pre-loaded the bootloader
Other Boards (reference only)
NRF24L01 with MCU USB Control
|Section||Header text||Header text|
|2||12||Register to setup power rate and serial port baud rate|
NRF24L01 with STC C51 MCU
Demo Code of STC51
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
- 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
|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|
|CRC check||AT+CRC=8||8 or 16||2.4GHz|
|File:NRF24L01P Product Specification 1 0.pdf||Documents|
|tmrh20 - RF24, recommanded||Arduino library|
|RF24, RF24 v1||Arduino library|
|Mysensors, instruction||Arduino library|