Specifications
- Operating Voltage: 3.3V to 7V
- Operating Temperature: -40°C to +90°C
- Supported Modes: Sniffer, Station, SoftAP, Wi-Fi Direct
- Data Rates:
- 150 Mbps @ 11n HT40
- 72 Mbps @ 11n HT20
- 54 Mbps @ 11g
- 11 Mbps @ 11b
- Transmit Power:
- 19.5 dBm @ 11b
- 16.5 dBm @ 11g
- 15.5 dBm @ 11n
- Receiver Sensitivity: Up to -98 dBm
- UDP Sustained Throughput: 135 Mbps
- 868 MHz Antenna: Must be connected to IPEX interface
- Battery Circuit: Lithium battery charge/discharge with status LED
Pinout

OLED Display (I2C)
OLED |
ESP32 Pin |
SDA |
GPIO 4 |
SCL |
GPIO 15 |
RST |
GPIO 16 |
SX1276 LoRa (SPI)
LoRa Pin |
ESP32 Pin |
MISO |
GPIO 19 |
MOSI |
GPIO 27 |
SCK |
GPIO 5 |
CS |
GPIO 18 |
IRQ |
GPIO 26 |
RST |
GPIO 14 |
Example Code
#include "SPI.h"
#include "LoRa.h"
#include "Wire.h"
#include "Adafruit_GFX.h"
#include "Adafruit_SSD1306.h"
#define SCK 5
#define MISO 19
#define MOSI 27
#define SS 18
#define RST 14
#define DIO0 26
#define BAND 866E6
#define OLED_SDA 4
#define OLED_SCL 15
#define OLED_RST 16
#define SCREEN_WIDTH 128
#define SCREEN_HEIGHT 64
Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, OLED_RST);
int counter = 0;
void setup() {
Serial.begin(115200);
pinMode(OLED_RST, OUTPUT);
digitalWrite(OLED_RST, LOW); delay(20); digitalWrite(OLED_RST, HIGH);
Wire.begin(OLED_SDA, OLED_SCL);
if (!display.begin(SSD1306_SWITCHCAPVCC, 0x3C)) while (true);
display.clearDisplay();
display.setTextSize(1);
display.setTextColor(WHITE);
display.setCursor(0, 0);
display.println("LoRa Sender");
display.display();
SPI.begin(SCK, MISO, MOSI, SS);
LoRa.setPins(SS, RST, DIO0);
if (!LoRa.begin(BAND)) while (true);
}
void loop() {
LoRa.beginPacket();
LoRa.print("Hello ");
LoRa.print(counter);
LoRa.endPacket();
display.clearDisplay();
display.setCursor(0, 0);
display.println("Packet Sent!");
display.setCursor(0, 20);
display.print("Counter: ");
display.print(counter);
display.display();
counter++;
delay(10000);
}
Specifications
- Operating Voltage: 3.3V to 7V
- Operating Temperature: -40°C to +90°C
- Supported Modes: Sniffer, Station, SoftAP, Wi-Fi Direct
- Data Rates:
- 150 Mbps @ 11n HT40
- 72 Mbps @ 11n HT20
- 54 Mbps @ 11g
- 11 Mbps @ 11b
- Transmit Power:
- 19.5 dBm @ 11b
- 16.5 dBm @ 11g
- 15.5 dBm @ 11n
- Receiver Sensitivity: Up to -98 dBm
- UDP Sustained Throughput: 135 Mbps
- 868 MHz Antenna: Must be connected to IPEX interface
- Battery Circuit: Lithium battery charge/discharge with status LED
Pinout

OLED Display (I2C)
OLED |
ESP32 Pin |
SDA |
GPIO 4 |
SCL |
GPIO 15 |
RST |
GPIO 16 |
SX1276 LoRa (SPI)
LoRa Pin |
ESP32 Pin |
MISO |
GPIO 19 |
MOSI |
GPIO 27 |
SCK |
GPIO 5 |
CS |
GPIO 18 |
IRQ |
GPIO 26 |
RST |
GPIO 14 |
Example Code
#include "SPI.h"
#include "LoRa.h"
#include "Wire.h"
#include "Adafruit_GFX.h"
#include "Adafruit_SSD1306.h"
#define SCK 5
#define MISO 19
#define MOSI 27
#define SS 18
#define RST 14
#define DIO0 26
#define BAND 866E6
#define OLED_SDA 4
#define OLED_SCL 15
#define OLED_RST 16
#define SCREEN_WIDTH 128
#define SCREEN_HEIGHT 64
Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, OLED_RST);
int counter = 0;
void setup() {
Serial.begin(115200);
pinMode(OLED_RST, OUTPUT);
digitalWrite(OLED_RST, LOW); delay(20); digitalWrite(OLED_RST, HIGH);
Wire.begin(OLED_SDA, OLED_SCL);
if (!display.begin(SSD1306_SWITCHCAPVCC, 0x3C)) while (true);
display.clearDisplay();
display.setTextSize(1);
display.setTextColor(WHITE);
display.setCursor(0, 0);
display.println("LoRa Sender");
display.display();
SPI.begin(SCK, MISO, MOSI, SS);
LoRa.setPins(SS, RST, DIO0);
if (!LoRa.begin(BAND)) while (true);
}
void loop() {
LoRa.beginPacket();
LoRa.print("Hello ");
LoRa.print(counter);
LoRa.endPacket();
display.clearDisplay();
display.setCursor(0, 0);
display.println("Packet Sent!");
display.setCursor(0, 20);
display.print("Counter: ");
display.print(counter);
display.display();
counter++;
delay(10000);
}