Using a ESP32-S3-DevKitC-1 I run the following code
// ESP32 > NRF24L01 receiver test using a text string
// ESP32_S3_DevKit_1 connections
// ESP32_S3 SCK pin GPIO12 to NRF24L10_pin SCK
// ESP32_S3 MISO pin GPIO13 to NRF24L10_pin MISO
// ESP32_S3 MOSI pin GPIO11 to NRF24L10_pin MOSI
// ESP32_S3 SS pin GPIO 10 to NRF24L10 SS
// ESP32_S3 pin GPIO16 to NRF24L10 CE
// ESP32_S3 pin GPIO17 to NRF24L10 DCSN
#include <SPI.h>
#include <RF24.h>
#define CE_PIN 16
#define CSN_PIN 17
bool radioNumber = 1;
const uint8_t pipes[][6] = { "1Node", "2Node" };
RF24 radio(CE_PIN, CSN_PIN);
char dataReceived[10]; // this must match dataToSend in the TX
bool newData = false;
//===========
void setup() {
Serial.begin(115200);
delay(1000);
Serial.println("ESP32_S3 > NRF24L01 Receive text");
radio.begin();
if (radio.isChipConnected())
Serial.println("Receiver NF24 connected to SPI");
else {
Serial.println("NF24 is NOT connected to SPI");
while (1)
;
}
radio.setChannel(125);
radio.setDataRate(RF24_1MBPS);
//radio.setDataRate(RF24_250KBPS);
radio.printDetails();
if (!radioNumber) {
radio.openWritingPipe(pipes[0]);
radio.openReadingPipe(1, pipes[1]);
} else {
radio.openWritingPipe(pipes[1]);
radio.openReadingPipe(1, pipes[0]);
}
radio.startListening();
// radio.setPayloadSize(sizeof(Struct1));
}
//=============
void loop() {
if (radio.available()) {
char testString[10] = "";
radio.read(testString, sizeof(testString));
Serial.print("Test string: ");
Serial.println(testString);
}
}
the serial monitor displays
ESP32_S3 > NRF24L01 Receive text
Receiver NF24 connected to SPI
SPI Speedz = 10 Mhz
STATUS = 0x0e RX_DR=0 TX_DS=0 MAX_RT=0 RX_P_NO=7 TX_FULL=0
RX_ADDR_P0-1 = 0x65646f4e32 0x65646f4e31
RX_ADDR_P2-5 = 0xc3 0xc4 0xc5 0xc6
TX_ADDR = 0x65646f4e32
RX_PW_P0-6 = 0x20 0x20 0x20 0x20 0x20 0x20
EN_AA = 0x3f
EN_RXADDR = 0x03
RF_CH = 0x7d
RF_SETUP = 0x07
CONFIG = 0x0e
DYNPD/FEATURE = 0x00 0x00
Data Rate = 1 MBPS
Model = nRF24L01+
CRC Length = 16 bits
PA Power = PA_MAX
ARC = 0