Heltec WiFi LoRa 32 V3

Heltec Automation

868 MHz 915 MHz SX1262 ESP32-S3FN8 22 dBm
DIY Modules Budget

A very popular ESP32-S3-based LoRa board with an SX1262 and an integrated 0.96" OLED display. Community firmware: Companion BLE/USB, Repeater, Room Server. The best balance of price, performance, and community support. 22 dBm transmit power.

Hardware Specifications

MCU

ESP32-S3FN8

RAM

512 KB

Flash

8 MB

Display

OLED (0.96" 128x64)

Button Count

1

Has LEDs

true

Weight

12 g

Dimensions

51 x 26 x 11

LoRa Specifications

LoRa Chip

SX1262

Frequency Band

868 MHz, 915 MHz

Max. TX Power

22 dBm

Antenna Type

U.FL connector

Typical Range

15 km

Connectivity

WiFi

true

Bluetooth

true

GPS

false

Power

USB Type

USB-C

Battery Connector

JST 1.25mm 2-pin

Solar Support

true

Power Consumption (Idle)

45 mA

Power Consumption (TX)

120 mA

Firmware Support

BLE Companion v1.17.1 05.03.2025 Release

Release notes: https://blog.meshcore.io/2026/08/14/release-1-17-1

USB Companion v1.17.1 05.03.2025 Release

Release notes: https://blog.meshcore.io/2026/08/14/release-1-17-1

Repeater v1.17.1 05.03.2025 Release

Release notes: https://blog.meshcore.io/2026/08/14/release-1-17-1

Room Server v1.17.1 05.03.2025 Release

Release notes: https://blog.meshcore.io/2026/08/14/release-1-17-1

Repeater v1.15.0-evo_0.1.21 14.01.2026 Release

⚠️ Check that radio.rxgain(on) and flood.advert.base (0.308) are set correctly after flashing! ⚠️

This build is based on official MeshCore 1.15.0 dev branch (as of 25-May-2026 and additionally includes the following unmerged upstream PRs/changes:

Additional changes:
  • Flood adverts are disabled (flood.advert.interval set to 0) by default
  • :new: modified PR1810 to not block flood adverts but only PAYLOADTYPEGRPTXT and PAYLOADTYPEGRPDATA so that some limited flood advert distribution can be managed via PR2553 to support e.g. observer maps.
Changelog:
  • Based on dev v1.15.0 as of 25-May-2026
Full Changelog: https://github.com/mattzzw/MeshCore-Evo/compare/v1.15.0-evo0.1.20...v1.15.0-evo0.1.21
Repeater PowerSaving17.1 02.01.2026 Release

Built for long off-road adventures and harsh winter conditions

  • Based on MeshCore 1.17.1 mainline.
  • Developed by IoTThinks and tested by our supportive MeshCore friends.
  • Contribution to MeshCore: By IoTThinks%20is%3Apr%20author%3A%40IoTThinks).
  • Source code: https://github.com/IoTThinks/MeshCore/tree/PowerSaving-v17
  • With contributions from Dom4n and MeshCore friends
Notices:
16 Sep 2026: PowerSaving 17.1.5
  • Disabled automatic light sleep for USB Companion on ESP32 for better serial connectivity.
15 Sep 2026: PowerSaving 17.1.4
  • Imported a fix for RAK 3401 battery variant from MeshCore dev. If there is no GPS module, 5V power to the LoRa 1W will be floating and unable to provide maximum TX power as expected. Thanks Mr. Martenumberto for your discovery and persistence.
  • Added BSEC for BME680 on RAK 3401
13 Sep 2026: PowerSaving 17.1.3
  • (Repeater) RXPSv2: Better power consumption for "set radio.rxps balanced". You can now use "set radio.rxps max". All CLIs are at RXPS CLIs
  • (Companion) RXPSv2 is enabled by default with powersaving on.
  • (Repeater) Added support of button press for ESP32 repeaters with powersaving on
  • (Repeater) Fixed crash if doing "gps" on ESP32 repeaters without GPS module
  • (Companion) Moved uptime to below battery icon. Shifted dots left.
  • (Repeaters and sensors) Added "If GPS on after powersaving on", telemetry request will trigger GPS update"
  • (Sensors) Added MCU temperature
  • (Sensor) Added PowerSaving for sensor firmware
  • Added Tracker v2 and T-Deck
  • Added heltec
trackerv2companionradiousbfemoff and heltectrackerv2companionradiousb_femon
  • Added board MKE-S3 (Vietnam)
  • 10 Sep 2026: In case you can not see the "uptime" clearly in companions, please upgrade to PowerSaving 17.1.3 05 Sep 2026: You are advised to reboot repeaters / room servers after on/off or changing RXPS settings. Thanks Mr. Gordon for extensive testing.
    Custom Development and Partnership
    If you want custom development for your projects, Contact Us Looking for Partnership? Discuss Partnership
    Support PowerSaving?
    Support the development via ![Sponsor](https://www.paypal.com/ncp/payment/6FGWJJVC572VL) or ![Sponsor](https://github.com/sponsors/IoTThinks). Buy boards with a coupon and help support ongoing development.
    Instruction:
    • Flash Custom Firmware as in INSTRUCTION. 👈
    • Scroll down to bottom to download uf2 / upgrade.bin to upgrade or freshInstall-merged.bin for new devices. 👈
    • Heltec v4 bin files is for both Heltec v4.2 and v4.3. Heltec v4.3 bin files is for Heltec v4.3 only
    • Heltec v4.3 and T096 have two options FEM RXgain on and FEM Rxgain off.
    • If for board build or support, please ask us at GITHUB or Discord

    Quick Usage

    Repeaters / Room servers
    All PowerSaving features are disabled by default and persisted across reboots. PowerSaving: powersaving on, powersaving off and powersaving GPS PowerSaving: powersaving on then gps on and gps. RX PowerSaving: set radio.rxps balanced and get radio.rxps. Repeaters with RXPS enabled are less affected by noises from cell towers. It may due to LoRa RX only wakes up periodically. Added Battery voltage and PowerSaving status to repeater OLED Set dark theme for Heltec T096. For Heltec v4.3, 4.3R8, T096 and Tracker v2, you may set FEM off to save 10mA: set radio.fem.rxgain off
    BLE / USB Companions
    All PowerSaving features are enabled by default. GPS PowerSaving is enabled when you enable Position in MeshCore app. Added uptime for all companions. Set dark theme for Heltec T096.
    • For Heltec v4.3, 4.3R8, T096 and Tracker v2, you may use femoff version to save 10mA.

    Complete Guides in Wiki

    Check the PowerSaving Wiki for more details: Enjoy MeshCore with PowerSaving. 👍
    Room Server PowerSaving17.1 13.03.2026 Release

    Built for long off-road adventures and harsh winter conditions

    • Based on MeshCore 1.17.1 mainline.
    • Developed by IoTThinks and tested by our supportive MeshCore friends.
    • Contribution to MeshCore: By IoTThinks%20is%3Apr%20author%3A%40IoTThinks).
    • Source code: https://github.com/IoTThinks/MeshCore/tree/PowerSaving-v17
    • With contributions from Dom4n and MeshCore friends
    Notices:
    16 Sep 2026: PowerSaving 17.1.5
    • Disabled automatic light sleep for USB Companion on ESP32 for better serial connectivity.
    15 Sep 2026: PowerSaving 17.1.4
    • Imported a fix for RAK 3401 battery variant from MeshCore dev. If there is no GPS module, 5V power to the LoRa 1W will be floating and unable to provide maximum TX power as expected. Thanks Mr. Martenumberto for your discovery and persistence.
    • Added BSEC for BME680 on RAK 3401
    13 Sep 2026: PowerSaving 17.1.3
    • (Repeater) RXPSv2: Better power consumption for "set radio.rxps balanced". You can now use "set radio.rxps max". All CLIs are at RXPS CLIs
    • (Companion) RXPSv2 is enabled by default with powersaving on.
    • (Repeater) Added support of button press for ESP32 repeaters with powersaving on
    • (Repeater) Fixed crash if doing "gps" on ESP32 repeaters without GPS module
    • (Companion) Moved uptime to below battery icon. Shifted dots left.
    • (Repeaters and sensors) Added "If GPS on after powersaving on", telemetry request will trigger GPS update"
    • (Sensors) Added MCU temperature
    • (Sensor) Added PowerSaving for sensor firmware
    • Added Tracker v2 and T-Deck
    • Added heltec
    trackerv2companionradiousbfemoff and heltectrackerv2companionradiousb_femon
  • Added board MKE-S3 (Vietnam)
  • 10 Sep 2026: In case you can not see the "uptime" clearly in companions, please upgrade to PowerSaving 17.1.3 05 Sep 2026: You are advised to reboot repeaters / room servers after on/off or changing RXPS settings. Thanks Mr. Gordon for extensive testing.
    Custom Development and Partnership
    If you want custom development for your projects, Contact Us Looking for Partnership? Discuss Partnership
    Support PowerSaving?
    Support the development via ![Sponsor](https://www.paypal.com/ncp/payment/6FGWJJVC572VL) or ![Sponsor](https://github.com/sponsors/IoTThinks). Buy boards with a coupon and help support ongoing development.
    Instruction:
    • Flash Custom Firmware as in INSTRUCTION. 👈
    • Scroll down to bottom to download uf2 / upgrade.bin to upgrade or freshInstall-merged.bin for new devices. 👈
    • Heltec v4 bin files is for both Heltec v4.2 and v4.3. Heltec v4.3 bin files is for Heltec v4.3 only
    • Heltec v4.3 and T096 have two options FEM RXgain on and FEM Rxgain off.
    • If for board build or support, please ask us at GITHUB or Discord

    Quick Usage

    Repeaters / Room servers
    All PowerSaving features are disabled by default and persisted across reboots. PowerSaving: powersaving on, powersaving off and powersaving GPS PowerSaving: powersaving on then gps on and gps. RX PowerSaving: set radio.rxps balanced and get radio.rxps. Repeaters with RXPS enabled are less affected by noises from cell towers. It may due to LoRa RX only wakes up periodically. Added Battery voltage and PowerSaving status to repeater OLED Set dark theme for Heltec T096. For Heltec v4.3, 4.3R8, T096 and Tracker v2, you may set FEM off to save 10mA: set radio.fem.rxgain off
    BLE / USB Companions
    All PowerSaving features are enabled by default. GPS PowerSaving is enabled when you enable Position in MeshCore app. Added uptime for all companions. Set dark theme for Heltec T096.
    • For Heltec v4.3, 4.3R8, T096 and Tracker v2, you may use femoff version to save 10mA.

    Complete Guides in Wiki

    Check the PowerSaving Wiki for more details: Enjoy MeshCore with PowerSaving. 👍
    BLE Companion MeshCore-low-power-v1.16.dev_0607 19.04.2026 Release
    v1.16_0607
    • Companion UI: Native multilingual display on Heltec T096 (ST7735S)
    Node names and messages now render natively on the T096 color TFT — characters are displayed as-is instead of being converted to ASCII equivalents. Supported languages include all 31 from v1.14 plus additional scripts:

    Latin-based: Catalan, Croatian, Czech, Danish, Dutch, Estonian, Finnish, French, German, Hungarian, Icelandic, Italian, Latvian, Lithuanian, Maltese, Norwegian, Polish, Portuguese, Romanian, Slovak, Slovenian, Spanish, Swedish, Turkish, Vietnamese, Welsh

    Cyrillic: Belarusian, Bulgarian, Macedonian, Russian, Serbian, Ukrainian

    Greek: Greek

    • Companion UI: Contacts screen now includes room servers; request telemetry from any contact.
    Room servers appear in the contact list tagged [R]. Selecting any contact — chat node or room server — and long pressing opens an action menu: Send message or Request telemetry. Requesting telemetry displays the node's battery voltage and GPS coordinates (if present); long press to open the GPS Trace screen for that location.

    GPS coordinates follow the Pos. Format selected in Settings (DD, UTM, or MGRS).

    The message inbox group list now tags group/channel entries with [G] and room server entries with [R] for consistent visual distinction. Each room message shows the original author's name. When viewing a room message, long press to open the popup and select Reply to post back to the room (visible to all subscribers).

    > Private room servers: messaging requires a prior login. Public rooms (no password) work without any login. For private rooms, log in once via the MeshCore app — if your account has admin rights on that room server, the session persists across reboots. Regular user sessions are not saved to flash and will require re-login after the room server reboots.

    • Companion: switch the app connection between BLE and USB serial without reflashing.
    In USB mode the node behaves like a standard usb build — the PC app connects over the USB serial port directly. Toggle via Settings → Connection Mode on the display, or via TerminalCLI: set conn.mode usb / set conn.mode ble. The setting persists across reboots. BLE toggle is hidden in the Settings menu while USB mode is active.
    • Repeater, Room Sever: hold user button 5 seconds to power off.
    Hold the user button for 5 seconds to power off the node — faster than reaching for the CLI when you're standing next to it. The LED blinks 5 times as a warning before shutdown.
    • Repeater, Room Server: advert.hops.max default changed to 8; room server support added; flood.max.advert alias.
    advert.hops.max now defaults to 8 instead of flood.max — advert relay limiting is active out of the box without any configuration. Room servers now also enforce this limit (previously repeater-only). The command flood.max.advert is accepted as an alias for compatibility with upstream firmware.
    Repeater MeshCore-low-power-v1.17.dev_0914 19.04.2026 Release
    v1.170914
    • Fix: Companion could crash on start ota and then stay in a boot loop. (Companion — ESP32 boards)
    Affects v1.170913 companion builds; repeater and room server are not affected.
    Room Server MeshCore-low-power-v1.17.dev_0914 19.04.2026 Release
    v1.170914
    • Fix: Companion could crash on start ota and then stay in a boot loop. (Companion — ESP32 boards)
    Affects v1.170913 companion builds; repeater and room server are not affected.
    Repeater v1.0.1 17.05.2026 Release

    Full Changelog: https://github.com/MichTronics/MeshCoreNG/compare/bridge-tcp-v1.0.5...repeater-v1.0.1

    BLE Companion v1.0.1 17.05.2026 Release

    Full Changelog: https://github.com/MichTronics/MeshCoreNG/compare/bridge-tcp-v1.0.5...companion-v1.0.1

    USB Companion v1.0.1 17.05.2026 Release

    Full Changelog: https://github.com/MichTronics/MeshCoreNG/compare/bridge-tcp-v1.0.5...companion-v1.0.1

    Room Server v1.0.1 17.05.2026 Release

    Full Changelog: https://github.com/MichTronics/MeshCoreNG/compare/bridge-tcp-v1.0.5...room-server-v1.0.1

    Automatic sync from different repositories