NRF24L01 Programing Help

I am working on a project in which I need two NRF24L01 to communicate. Both the receiver and transmitter are connected to a Breakout Adapter On-Board 3.3V Regulator module. I am using two Arduino nanos to control them. In the transmitters serial monitor it says "Sending: (a number)" which is correct, while the receivers serial monitor isn't writing anything.
Here are my pins:
NRF24L01 → Nano
VCC: 5V
GND: GND
CE: 7
CSN: 8
SCK: D13
MO: D11
MI: D12
Here is the Transmitters code:

#include <SPI.h>
#include <RF24.h>

RF24 radio(7, 8);  // CE, CSN pins
const byte address[6] = "00001";

int counter = 0;

void setup() {
  Serial.begin(9600);
  radio.begin();
  radio.openWritingPipe(address);
  radio.setPALevel(RF24_PA_LOW);
  radio.stopListening();  
}

void loop() {
  counter++;
  Serial.print("Sending: ");
  Serial.println(counter);

  radio.write(&counter, sizeof(counter));

  delay(500);
}

Here is the Receivers code:

#include <SPI.h>
#include <RF24.h>

RF24 radio(7, 8);  // CE, CSN pins
const byte address[6] = "00001";

int incomingNumber = 0;

void setup() {
  Serial.begin(9600);
  radio.begin();
  radio.openReadingPipe(0, address);
  radio.setPALevel(RF24_PA_LOW);
  radio.startListening();
}

void loop() {
  if (radio.available()) {
    radio.read(&incomingNumber, sizeof(incomingNumber));
    Serial.print("Received: ");
    Serial.println(incomingNumber);
  }
  Serial.println(incomingNumber);
}

Any help is appreciated, thank you

You don't check the return status of radio.begin().

radio.printDetails() would be full of great debugging info. But you don't call it.

You don't check the return status of radio.write().

You never look at radio.failureDetected to see if the library has detected a fault.

The library gives you all kinds of great tools to assist in debugging communication problems.

You don't appear to be using many of them.

You might want to rethink that approach.

The fact that incomingNumber is not being printed every loop indicates the receiver is not running.

Post an annotated schematic showing how you wired your project.

Power Stability Issues with RF24 Radio Modules

As described in the RF24 Common Issues Guide, radio modules, especially the PA+LNA versions, are highly dependent on a stable power source. The 3.3V output from an Arduino is often not stable enough for these modules in many applications. While they may appear to work with an inadequate power supply, you may experience lost packets or reduced reception compared to modules powered from a more stable source. The Nano/UNO 5V rail can also be a problem, as it may not supply enough current during transmit.

Symptoms of Power Issues:

Radio module performance may improve when touched, indicating power stability problems.

These issues are often caused by the absence of a local capacitor, a common cost-saving omission by some manufacturers.

Temporary Patch:

Add capacitors close to the VCC and GND pins of the radio module. A 10 uF capacitor is usually sufficient, but the exact value can depend on your circuit layout.

Use low ESR capacitors. Capacitors with low Equivalent Series Resistance (ESR) provide better power stability and improved performance.

Be sure the transmitter and receiver are at least one meter apart. More distance is better during testing.

Reference:
https://github.com/nRF24/RF24/blob/master/COMMON_ISSUES.md

During TX (3.3V supply), worst case current depends on which module you have:

  1. Plain nRF24L01+ module (no PA/LNA, small PCB antenna)

TX current at 0 dBm (max power): typically about 11 to 12 mA. Lower power levels are less, roughly 7 to 9 mA depending on setting.

Rule of thumb: budget at least 15 mA for the radio itself.

  1. nRF24L01+ PA+LNA long-range module (with external power amplifier, often SMA antenna)

TX current at max PA level: typically about 115 to 130 mA.
Current peaks can be higher. A safe design budget is 150 to 200 mA available at 3.3V.

Power notes:
Place local decoupling capacitors at the module: 0.1 uF ceramic plus 10 to 47 uF electrolytic or tantalum directly at VCC and GND.

For PA+LNA modules, do not rely on a weak 3.3V pin. Use a proper 3.3V regulator with adequate current capacity.

Using appropriate capacitors can greatly improve the reliability of your RF24 module by ensuring a stable power supply, minimizing packet loss, and improving overall performance. A separate regulated power supply for the radios is often the best long-term solution.