Documentation

ShillehTek NRF24L01+ PA LNA Wireless Transceiver Module Antenna 1100m Range | ShillehTek Product Manual
Documentation / ShillehTek NRF24L01+ PA LNA Wireless Transceiver Module Antenna 1100m Range | ShillehTek Product Manual

ShillehTek NRF24L01+ PA LNA Wireless Transceiver Module Antenna 1100m Range | ShillehTek Product Manual

Overview

The NRF24L01+ PA LNA is the long-range version of the popular NRF24L01+ 2.4 GHz transceiver, with an external SMA antenna, a power amplifier (PA) on transmit, and a low-noise amplifier (LNA) on receive. Where the basic NRF24L01+ tops out around 100m, this module reliably reaches up to 1100m line-of-sight.

It speaks SPI to your microcontroller, supports up to 6 logical pipe addresses per receiver, automatic acknowledgment, and automatic retransmission — meaning you get reliable bidirectional communication out of the box. Perfect for RC robots, drone telemetry, sensor networks, garage door openers, and any project where you need cheap, long-range, two-way wireless.

At a Glance

Frequency
2.4 GHz ISM
Operating Voltage
3.3V
Range
Up to 1100 m
Data Rate
250 kbps / 1 / 2 Mbps
Interface
SPI
Pin Count
8

Specifications

Parameter Value
IC Nordic nRF24L01+ with PA + LNA front-end
Operating Frequency 2.400 - 2.525 GHz (125 channels at 1 MHz spacing)
Operating Voltage 3.0V - 3.6V (3.3V nominal)
Logic Level 3.3V (5V tolerant on most boards via onboard LDO)
TX Current ~115 mA (peak, +20 dBm)
RX Current ~45 mA
TX Power +20 dBm (100 mW) maximum
RX Sensitivity -94 dBm @ 250 kbps
Data Rates 250 kbps / 1 Mbps / 2 Mbps
Range (Max) ~1100 m line-of-sight (with stock antenna)
Modulation GFSK
Logical Pipes Up to 6 per receiver (one primary + 5 secondary)
Antenna External via SMA (2 dBi included)
Pins GND, VCC, CE, CSN, SCK, MOSI, MISO, IRQ

Pinout Diagram

NRF24L01+ PA LNA module pinout showing pins 1-8: GND, VCC, CE, CSN, SCK, MOSI, MISO, IRQ, plus dedicated GND pins 9 and 10 on the side, with SMA antenna connector NRF24L01 chip-level pinout showing GND, VCC (+3.3V), CE, CSN, SCK, MISO, MOSI, IRQ pin functions

Wiring Guide

Arduino Wiring (SPI)

Power MUST come from the Arduino's 3.3V pin (or better, a separate 3.3V supply). The Arduino UNO's onboard 3.3V regulator can only supply ~50 mA, but the PA LNA module pulls ~115 mA on transmit — so for stable operation, add a 10µF or larger capacitor right at the module's VCC/GND pads, or use an external 3.3V supply.

NRF24L01+ Pin Arduino UNO Pin
VCC 3.3V (NEVER 5V)
GND GND
CE D9
CSN D10
SCK D13
MOSI D11
MISO D12
IRQ (unused, optional D2)
Warning: 5V on VCC will permanently destroy the chip. The data lines are 5V tolerant on most boards but VCC is strictly 3.3V.
Tip: Add a 10µF to 47µF electrolytic cap across VCC/GND right at the module. The PA LNA version draws current spikes that brown out unstable supplies.

ESP32 Wiring (SPI)

ESP32 native 3.3V matches the NRF24L01 perfectly. Use VSPI (default) for cleanest results.

NRF24L01+ Pin ESP32 Pin
VCC 3V3
GND GND
CE GPIO 4
CSN GPIO 5
SCK GPIO 18
MOSI GPIO 23
MISO GPIO 19
IRQ (unused)

Raspberry Pi Wiring (SPI)

Enable SPI in raspi-config. Use the Pi's 3.3V rail and SPI0 hardware pins.

NRF24L01+ Pin Raspberry Pi Pin
VCC Pin 1 (3.3V)
GND Pin 6 (GND)
CE Pin 22 (GPIO 25)
CSN Pin 24 (GPIO 8 / CE0)
SCK Pin 23 (GPIO 11)
MOSI Pin 19 (GPIO 10)
MISO Pin 21 (GPIO 9)
IRQ (unused)

Raspberry Pi Pico Wiring (SPI)

NRF24L01+ Pin Pico Pin
VCC 3V3 (OUT)
GND GND
CE GP6
CSN GP5 (SPI0 CS)
SCK GP2 (SPI0 SCK)
MOSI GP3 (SPI0 TX)
MISO GP4 (SPI0 RX)
IRQ (unused)

Code Examples

Arduino TX — RF24 Library

nrf24_tx.ino
// NRF24L01+ PA LNA - Arduino TX
// Library: RF24 by TMRh20 (Arduino Library Manager)

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

RF24 radio(9, 10);  // CE, CSN
const byte address[6] = "NODE1";

void setup() {
  Serial.begin(9600);
  radio.begin();
  radio.setPALevel(RF24_PA_HIGH);  // for PA LNA, RF24_PA_HIGH is sweet spot
  radio.setDataRate(RF24_250KBPS);  // longest range
  radio.openWritingPipe(address);
  radio.stopListening();
}

void loop() {
  const char text[] = "Hello from PA LNA!";
  bool ok = radio.write(&text, sizeof(text));
  Serial.println(ok ? "Sent OK" : "Send failed");
  delay(1000);
}

Arduino RX — RF24 Library

nrf24_rx.ino
// NRF24L01+ PA LNA - Arduino RX
#include <SPI.h>
#include <nRF24L01.h>
#include <RF24.h>

RF24 radio(9, 10);  // CE, CSN
const byte address[6] = "NODE1";

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

void loop() {
  if (radio.available()) {
    char text[32] = "";
    radio.read(&text, sizeof(text));
    Serial.print("Got: "); Serial.println(text);
  }
}

Raspberry Pi Pico (MicroPython)

nrf24_pico.py
# NRF24L01+ on Pico - MicroPython
# Use micropython-mrequests or peterhinch's nrf24l01 driver

from machine import Pin, SPI
import nrf24l01
import struct, time

spi = SPI(0, baudrate=4000000, polarity=0, phase=0,
          sck=Pin(2), mosi=Pin(3), miso=Pin(4))
nrf = nrf24l01.NRF24L01(spi, cs=Pin(5), ce=Pin(6), payload_size=8)
nrf.set_channel(76)
nrf.set_power_speed(nrf24l01.POWER_3, nrf24l01.SPEED_250K)

# TX:
nrf.open_tx_pipe(b'NODE1')
nrf.send(struct.pack('i', 1234))

# RX:
nrf.open_rx_pipe(0, b'NODE1')
nrf.start_listening()
while True:
    if nrf.any():
        data = nrf.recv()
        print('Got:', struct.unpack('i', data))
    time.sleep_ms(20)

Frequently Asked Questions

My NRF24L01+ won't transmit reliably — keeps failing.
99% of cases it's the power supply. The PA LNA version pulls 115 mA spikes on transmit; an Arduino UNO's onboard 3.3V regulator can only sustain ~50 mA. Add a 10-47µF cap right at the module's VCC/GND, or use a separate 3.3V supply (e.g., AMS1117 LDO from a 5V rail).
Will VCC at 5V damage it?
Yes — instantly and permanently. The chip is 3.3V only. The data lines are 5V-tolerant on most boards (so SPI from a 5V Arduino works), but VCC is strict 3.3V.
What's the actual range I'll get?
"Up to 1100m" assumes line-of-sight, both antennas vertical, +20 dBm output, and 250 kbps data rate. Real-world: ~300-500m line-of-sight, 50-150m with one or two interior walls. Drop the data rate to 250 kbps for maximum range.
Can it talk to a regular (non-PA-LNA) NRF24L01?
Yes. They use the same protocol and frequencies — the PA LNA version just has a longer-range front-end. Set both to the same channel, data rate, and address and they'll communicate as if identical.
Why are my transmits failing intermittently?
2.4 GHz is shared with WiFi — a busy WiFi network on your channel will cause interference. Move to a higher channel (e.g., radio.setChannel(108) sits above WiFi channels). Also lower the data rate to 250 kbps for better noise rejection.
How many transmitters can talk to one receiver?
Up to 6, using the receiver's 6 logical pipes. Each TX writes to a unique address; the RX listens on all 6 pipes and tells you which pipe a received message came from.