IntermediateWireless Communication

nRF24L01 Wireless Sensor Link

Send a small sensor reading between two microcontroller boards over a low-cost 2.4 GHz radio link.

Estimated time: 2โ€“3 hours ยท Skills: SPI wiring, radio libraries, packet structure, power decoupling

Parts from the database

Other supplies

Amazon links may be affiliate links. As an Amazon Associate, Electronics Hobby Hub earns from qualifying purchases.

Connections

  1. For each node, connect radio VCC to 3V3 only, GND to GND, SCK to GP18, MISO to GP16, MOSI to GP19, CE to GP17, and CSN to GP20.
  2. Place a 10โ€“47 ยตF electrolytic capacitor close to each module's VCC/GND.
  3. Use distinct transmitter/receiver addresses and matching channel/data-rate settings in both sketches.

Build steps

  1. Install the RF24 library and run its GettingStarted example with the radios close together.
  2. Confirm one board can transmit and the other reports packets before adding sensors.
  3. Add a compact struct with the reading and a sequence number; check the receiver's packet status.
  4. Move the nodes apart gradually and record where packets become unreliable in your space.

Software and firmware setup

Firmware is required on both Pico boards, but the two-node application sketches are not included yet. Configure both radios with identical addresses, channel, data rate, and payload structure; add the optional DHT22 only after basic packets work.

Test your build

The receiver should display changing packets. Range varies with antenna, module version, obstructions, and radio interference; do not assume a fixed range.

Troubleshooting

  • If radios are not detected, verify SPI pin mapping and use 3.3 V power.
  • If packets drop, add supply decoupling and test at short range before adjusting radio settings.
  • Do not use a high-power PA/LNA radio module without checking its supply-current needs.

Safety and limitations

Use certified low-power modules and follow local radio rules. Never connect a 5 V SPI signal directly to a 3.3 V radio.

Manufacturer and platform documentation

Community Notes for This Project

These are unverified visitor contributions, separate from the build guide and manufacturer specifications. Verify technical advice against the linked datasheets before relying on it.

Set up the comments service to load community notes.

Share a tip or question about this build

โ† Browse all projects