Standalone PlatformIO project using MeshCore as a library. Features: - Heltec LoRa32 V3 support (ESP32-S3 + SX1262) - OLED display integration - OTA firmware updates via WiFi - Serial CLI for configuration Uses symlinked MeshCore library from ../MeshCore
Heltec V3 MeshCore Repeater
A standalone MeshCore repeater project for the Heltec LoRa32 V3 board.
Overview
This project builds a LoRa mesh repeater using the MeshCore library. The repeater:
- Forwards mesh packets between nodes
- Displays status on the onboard OLED
- Supports OTA (Over-The-Air) firmware updates
- Provides a serial CLI for configuration
Project Structure
repeater/
├── platformio.ini # Build configuration
├── src/
│ ├── main.cpp # Entry point
│ ├── MyMesh.cpp # Repeater mesh logic
│ ├── MyMesh.h
│ ├── UITask.cpp # Display handling
│ ├── UITask.h
│ └── RateLimiter.h
└── docs/ # Documentation
Quick Start
# Build
pio run
# Flash via USB
pio run -t upload
# Monitor serial output
pio device monitor
See Building and Flashing for details.
Configuration
Edit platformio.ini to customize your repeater:
; ===== CUSTOMIZE THESE =====
-D ADVERT_NAME='"RPM Repeater"' ; Name shown to other nodes
-D ADVERT_LAT=0.0 ; GPS latitude
-D ADVERT_LON=0.0 ; GPS longitude
-D ADMIN_PASSWORD='"password"' ; Admin password for CLI
-D MAX_NEIGHBOURS=50 ; Max tracked neighbors
Serial Commands
Connect at 115200 baud to access the CLI. See Serial Commands.
OTA Updates
The repeater supports wireless firmware updates. See Flashing.
Hardware
- Board: Heltec WiFi LoRa 32 V3 (ESP32-S3 + SX1262)
- Display: 128x64 SSD1306 OLED
- Radio: SX1262 LoRa @ 910.525 MHz (US default)
Dependencies
This project uses MeshCore as a symlinked library from ../MeshCore. Ensure that directory exists.
Description
Languages
C++
100%