Ryan Malloy 91d144901a Fix dangling pointer bug in WiFiManager getSSID/getConnectionName
WiFi.SSID() returns a temporary String object. Calling .c_str() on it
returns a pointer to the internal buffer, but the String is destroyed
at the end of the statement - leaving a dangling pointer.

Fix by caching the SSID in a member variable when connection state
changes, and returning a pointer to that stable storage.

Also fix getWiFiStatus() in MyMesh.cpp which was using WiFiState enum
values instead of NetworkState (the interface return type).
2026-02-05 09:47:01 -07:00

Heltec V3 MeshCore Repeater

A standalone MeshCore LoRa mesh repeater for the Heltec WiFi LoRa 32 V3.

Build

pio run

Flash

Via USB:

pio run -t upload

Via OTA:

  1. Connect to serial: screen /dev/ttyUSB0 115200
  2. Type: start ota
  3. Join WiFi: MeshCore-OTA
  4. Browse to: http://192.168.4.1/update
  5. Upload: .pio/build/heltec_v3_repeater/firmware.bin

Monitor

pio device monitor

Configuration

Edit platformio.ini:

-D ADVERT_NAME='"RPM Repeater"'
-D ADVERT_LAT=0.0
-D ADVERT_LON=0.0
-D ADMIN_PASSWORD='"password"'

Dependencies

Requires MeshCore library at ../MeshCore.

Docs

See docs/ for detailed documentation.

Description
MeshCore LoRa repeater firmware for Heltec V3 with MQTT/Ethernet gateway support
Readme 198 KiB
Languages
C++ 100%