RFM95W LoRa breakout (SX1276, 868/915 MHz) with ESP32

Supply 3.3-5 V Bus SPI
VINGNDENG0SCKMISOMOSICSRSTG1G2G3G4G5ANT

Pins and ESP32 wiring

PinRoleESP32 pinNotes
VINPower3V3On-board regulator: 3.3 to 6 V
GNDGroundGND
ENNot wired to the ESP32—Regulator enable, pulled up. Leave unconnected
G0InterruptD35DIO0: TX done / RX done interrupt
SCKSPI clockD18
MISOSPI MISOD19
MOSISPI MOSID23
CSSPI chip selectD5SPI chip select (NSS)
RSTInput (the ESP32 drives it)D25Reset, active LOW
G1InterruptVPDIO1, optional
G2Not wired to the ESP32—DIO2, usually unused
G3Not wired to the ESP32—
G4Not wired to the ESP32—
G5Not wired to the ESP32—
ANTNot wired to the ESP32—Antenna pad. Always connect an antenna before transmitting

Suggested wiring for the 30-pin ESP32 DevKit, avoiding flash, input-only and strapping pins. BoardPilot checks it for you as you wire.

Starter code (Arduino)

void setup() { pinMode(25, OUTPUT); }  // RST

void loop() {
  digitalWrite(25, HIGH);
  delay(500);
  digitalWrite(25, LOW);
  delay(500);
}

Sources

Try it in 3D in BoardPilot

BoardPilot Part data (JSON)

Related parts

Part data: CC BY 4.0, free to reuse with credit to BoardPilot.