Board Comparison¶
This page is meant to help you choose a board, not just list every technical detail.
If you only want a quick answer:
- for a roof-mounted or set-and-forget MQTT repeater, start with
heltec_v4,heltec_v4_tft,Station_G2, orT_Beam_S3_Supreme_SX1262 - for an app-first Wi-Fi companion, headless boards are fine and often simpler
- if you want an onboard screen people will actually use, prefer TFT boards
- if you want a low-power status screen, prefer e-paper boards
The tables below are built from the repo's PlatformIO board metadata and variant build flags.
Targetis the short board name used in this comparison page. Release filenames and local build commands still use the full env names such asheltec_v4_repeater_mqtt.MCUshows the chip family only. Actual runtime clock can vary by env and board configuration.RAMis the MCU's built-in RAM.PSRAMis extra memory on some boards. More PSRAM usually means more headroom for UI, MQTT, and future features.GPSusesโwhen present and is blank when absent.SDusesโwhen the board is currently known to support the SD-backed archive path in EastMesh,๐งชwhen the hardware likely supports TF/microSD but the board-specific integration still needs validation, and is blank when there is no current SD/archive support note.
Start Here¶
- Pick an
ESP32-S3board with16MBflash and PSRAM if you want strong overall headroom for MQTT plus UI:heltec_v4_tft,heltec_v4,Station_G2,LilyGo_TBeam_1W. - Pick a TFT board if this will be used as a human-facing companion or field node:
heltec_v4_tft,heltec_tracker_v2,LilyGo_TDeck,Heltec_T190. - Pick e-paper if you want a status screen with lower idle draw and less frequent refresh:
Heltec_E213,Heltec_E290,Heltec_Wireless_Paper,ThinkNode_M5. - Pick a headless board if this is mainly a fixed MQTT gateway and screen space is not useful:
RAK_3112,Generic_E22,Meshimi,Xiao_C6. - Pick a headless Wi-Fi companion if the phone app will be the primary UI anyway:
RAK_3112_companion_radio_wifi,Xiao_S3_WIO_companion_radio_wifi,Station_G2_companion_radio_wifi. - Pick a GPS-capable board if location-aware/mobile use matters: the T-Beam family,
heltec_tracker_v2,Heltec_v3,heltec_v4,Station_G2,ThinkNode_M5. - If you want the most conservative, older radio family choices, the
SX1276boards areLilyGo_TLora_V2_1_1_6,Tbeam_SX1276, andHeltec_v2.
Additional Signals¶
If you are deciding between otherwise similar boards, these target-level settings often matter more than flash alone.
CPU cfgis the runtime clock MeshCore sets for that target.defaultmeans MeshCore does not override the board's default clock.TX cfgis MeshCore's configuredLORA_TX_POWER, not guaranteed antenna output. Boards with a PA or RF front-end may radiate much more than the configured value suggests.Poweris how the target exposes power in the repo:ADC batt,PMU,custom 2S,fixed/ext, ornone.Extraslists notable RF or peripheral extras exposed by the target, such asPA/FEM,RF switch,BME280,NeoPixel, orext ant.
| Target | CPU cfg | TX cfg | Power | Extras |
|---|---|---|---|---|
| Ebyte_EoRa-S3 | default | 22 dBm cfg | ADC batt | |
| Generic_E22_sx1262 | default | 22 dBm cfg | ADC batt | RF switch |
| Generic_E22_sx1268 | default | 22 dBm cfg | ADC batt | RF switch |
| Heltec_E213 | default | 22 dBm cfg | ADC batt | |
| Heltec_E290 | default | 22 dBm cfg | ADC batt | |
| Heltec_T190 | default | 22 dBm cfg | ADC batt | |
| heltec_tracker_v2 | 160 MHz | 9 dBm cfg* | ADC batt | PA/FEM |
| Heltec_v2 | default | 20 dBm cfg | ADC batt | |
| Heltec_v3 | 80 MHz | 22 dBm cfg | ADC batt | |
| heltec_v4 | 80 MHz | 10 dBm cfg* | ADC batt | PA/FEM |
| heltec_v4_tft | 80 MHz | 10 dBm cfg* | ADC batt | PA/FEM |
| Heltec_Wireless_Paper | default | 22 dBm cfg | ADC batt | |
| Heltec_Wireless_Tracker | 80 MHz | 22 dBm cfg | none | |
| Heltec_WSL3 | 80 MHz | 22 dBm cfg | ADC batt | |
| LilyGo_T3S3_sx1262 | default | 22 dBm cfg | ADC batt | |
| LilyGo_T3S3_sx1276 | default | 20 dBm cfg | ADC batt | RF switch |
| LilyGo_TBeam_1W | default | 22 dBm cfg* | custom 2S | PA/FEM |
| LilyGo_TDeck | default | 22 dBm cfg | ADC batt | |
| LilyGo_Tlora_C6 | default | 22 dBm cfg | none | RF switch |
| LilyGo_TLora_V2_1_1_6 | default | 20 dBm cfg | ADC batt | |
| M5Stack_Unit_C6L | default | 22 dBm cfg | none | RF switch |
| Meshadventurer_sx1262 | default | 22 dBm cfg | ADC batt | RF switch |
| Meshadventurer_sx1268 | default | 22 dBm cfg | ADC batt | RF switch |
| Meshimi | default | 22 dBm cfg | none | ext ant |
| nibble_screen_connect | default | 22 dBm cfg | none | NeoPixel |
| RAK_3112 | 80 MHz | 22 dBm cfg | ADC batt | |
| Station_G2 | default | 7 dBm cfg* | fixed/ext | PA/FEM |
| Station_G2_logging | default | 7 dBm cfg* | fixed/ext | PA/FEM |
| T_Beam_S3_Supreme_SX1262 | default | 22 dBm cfg | PMU | BME280 |
| Tbeam_SX1262 | default | 22 dBm cfg | PMU | |
| Tbeam_SX1276 | default | 20 dBm cfg | PMU | |
| ThinkNode_M2 | default | 22 dBm cfg | ADC batt | |
| ThinkNode_M5 | default | 22 dBm cfg | ADC batt | |
| WHY2025_badge | default | 22 dBm cfg | none | |
| Xiao_C6 | default | 22 dBm cfg | none | RF switch |
| Xiao_S3_WIO | default | 22 dBm cfg | none | RF switch |
* These targets use a PA or RF front-end, so effective output can be much higher than the configured LORA_TX_POWER.
repeater_mqtt Boards¶
This table includes all repeater MQTT targets currently defined in variants/eastmesh_mqtt/platformio.ini.
| Target | MCU | RAM | PSRAM | Flash | LoRa | Display | GPS | SD |
|---|---|---|---|---|---|---|---|---|
| Ebyte_EoRa-S3 | ESP32S3 | 512 KB | 2 MB | 4 MB | SX1262 | OLED (SSD1306) | ||
| Generic_E22_sx1262 | ESP32 | 520 KB | No | 4 MB | SX1262 | None | ||
| Generic_E22_sx1268 | ESP32 | 520 KB | No | 4 MB | SX1268 | None | ||
| Heltec_E213 | ESP32S3 | 512 KB | 8 MB | 16 MB | SX1262 | E-paper (2.13") | ||
| Heltec_E290 | ESP32S3 | 512 KB | 8 MB | 16 MB | SX1262 | E-paper (2.9") | ||
| Heltec_T190 | ESP32S3 | 512 KB | 8 MB | 16 MB | SX1262 | TFT (ST7789) | ||
| heltec_tracker_v2 | ESP32S3 | 512 KB | No | 8 MB | SX1262 | TFT (ST7735) | โ | |
| Heltec_v2 | ESP32 | 520 KB | No | 8 MB | SX1276 | OLED (SSD1306) | ||
| Heltec_v3 | ESP32S3 | 512 KB | No | 8 MB | SX1262 | OLED (SSD1306) | โ | |
| heltec_v4 | ESP32S3 | 512 KB | 2 MB | 16 MB | SX1262 | OLED (SSD1306) | โ | |
| heltec_v4_tft | ESP32S3 | 512 KB | 2 MB | 16 MB | SX1262 | TFT (ST7789) | โ | |
| Heltec_Wireless_Paper | ESP32S3 | 512 KB | No | 8 MB | SX1262 | E-paper (2.13") | ||
| Heltec_Wireless_Tracker | ESP32S3 | 512 KB | No | 8 MB | SX1262 | TFT (ST7735) | โ | |
| Heltec_WSL3 | ESP32S3 | 512 KB | No | 8 MB | SX1262 | None | โ | |
| LilyGo_T3S3_sx1262 | ESP32S3 | 512 KB | 2 MB | 4 MB | SX1262 | OLED (SSD1306) | ๐งช | |
| LilyGo_T3S3_sx1276 | ESP32S3 | 512 KB | 2 MB | 4 MB | SX1276 | OLED (SSD1306) | ๐งช | |
| LilyGo_TBeam_1W | ESP32S3 | 512 KB | 8 MB | 16 MB | SX1262 | OLED (SH1106) | โ | โ |
| LilyGo_TDeck | ESP32S3 | 512 KB | No | 16 MB | SX1262 | TFT (ST7789) | โ | ๐งช |
| LilyGo_Tlora_C6 | ESP32C6 | 512 KB | No | 4 MB | SX1262 | None | ||
| M5Stack_Unit_C6L | ESP32C6 | 512 KB | No | 4 MB | SX1262 | None | โ | |
| Meshadventurer_sx1262 | ESP32 | 520 KB | No | 4 MB | SX1262 | OLED (SSD1306) | โ | |
| Meshadventurer_sx1268 | ESP32 | 520 KB | No | 4 MB | SX1268 | OLED (SSD1306) | โ | |
| Meshimi | ESP32C6 | 512 KB | No | 4 MB | SX1262 | None | ||
| nibble_screen_connect | ESP32S3 | 512 KB | No | 4 MB | SX1262 | OLED (SSD1306) | ||
| RAK_3112 | ESP32S3 | 512 KB | No | 8 MB | SX1262 | None | โ | |
| Station_G2 | ESP32S3 | 512 KB | 8 MB | 16 MB | SX1262 | OLED (SH1106) | โ | |
| Station_G2_logging | ESP32S3 | 512 KB | 8 MB | 16 MB | SX1262 | OLED (SH1106) | โ | |
| T_Beam_S3_Supreme_SX1262 | ESP32S3 | 512 KB | 8 MB | 8 MB | SX1262 | OLED (SH1106) | โ | โ |
| Tbeam_SX1262 | ESP32 | 520 KB | No | 4 MB | SX1262 | OLED (SSD1306) | โ | |
| Tbeam_SX1276 | ESP32 | 520 KB | No | 4 MB | SX1276 | OLED (SSD1306) | โ | |
| ThinkNode_M2 | ESP32S3 | 512 KB | No | 4 MB | SX1262 | OLED (SH1106) | ||
| ThinkNode_M5 | ESP32S3 | 512 KB | No | 4 MB | SX1262 | E-paper (GxEPD) | โ | |
| WHY2025_badge | ESP32C6 | 512 KB | No | 4 MB | SX1262 | None | ||
| Xiao_C6 | ESP32C6 | 512 KB | No | 4 MB | SX1262 | None | ||
| Xiao_S3_WIO | ESP32S3 | 512 KB | No | 8 MB | SX1262 | None | โ |
SD notes:
โmeans the board is currently known to work with the SD-backed archive path in EastMesh.๐งชmeans the board hardware likely supports TF/microSD, but the EastMesh board-specific integration still needs validation before it should be treated as supported.- For the current stats archive, a
4 GBFAT32microSD card is more than sufficient. Larger cards are also supported.
companion_radio_wifi Boards With A Display¶
These are the Wi-Fi companion targets that have a display configured for local status, setup help, or occasional direct interaction.
| Target | MCU | RAM | PSRAM | Flash | LoRa | Display | GPS |
|---|---|---|---|---|---|---|---|
| Heltec_v2 | ESP32 | 520 KB | No | 8 MB | SX1276 | OLED (SSD1306) | |
| Heltec_v3 | ESP32S3 | 512 KB | No | 8 MB | SX1262 | OLED (SSD1306) | โ |
| heltec_tracker_v2 | ESP32S3 | 512 KB | No | 8MB | SX1262 | TFT (ST7735) | โ |
| heltec_v4 | ESP32S3 | 512 KB | 2 MB | 16MB | SX1262 | OLED (SSD1306) | โ |
| heltec_v4_tft | ESP32S3 | 512 KB | 2 MB | 16MB | SX1262 | TFT (ST7789) | โ |
| LilyGo_TBeam_1W | ESP32S3 | 512 KB | 8 MB | 16MB | SX1262 | OLED (SH1106) | โ |
| LilyGo_TLora_V2_1_1_6 | ESP32 | 520 KB | No | 4 MB | SX1276 | OLED (SSD1306) | โ |
| nibble_screen_connect | ESP32S3 | 512 KB | No | 4MB | SX1262 | OLED (SSD1306) | |
| Station_G2 | ESP32S3 | 512 KB | 8 MB | 16MB | SX1262 | OLED (SH1106) | โ |
| T_Beam_S3_Supreme_SX1262 | ESP32S3 | 512 KB | 8 MB | 8MB | SX1262 | OLED (SH1106) | โ |
| ThinkNode_M2 | ESP32S3 | 512 KB | No | 4MB | SX1262 | OLED (SH1106) | |
| ThinkNode_M5 | ESP32S3 | 512 KB | No | 4MB | SX1262 | E-paper (GxEPD) | โ |
companion_radio_wifi Headless Boards¶
These are the Wi-Fi companion targets that rely on the companion app as the primary interface. For many users, this is the best everyday option.
| Target | MCU | RAM | PSRAM | Flash | LoRa | GPS |
|---|---|---|---|---|---|---|
| Heltec_WSL3 | ESP32S3 | 512 KB | No | 8 MB | SX1262 | โ |
| RAK_3112 | ESP32S3 | 512 KB | No | 8 MB | SX1262 | โ |
| Xiao_S3_WIO | ESP32S3 | 512 KB | No | 8 MB | SX1262 | โ |
Practical Picks¶
- Best all-round MQTT repeater with screen and overall headroom:
heltec_v4_repeater_mqtt,heltec_v4_tft_repeater_mqtt,Station_G2_repeater_mqtt,LilyGo_TBeam_1W_repeater_mqtt. - Best MQTT repeater if you want a simple headless install:
RAK_3112_repeater_mqtt,Generic_E22_sx1262_repeater_mqtt,Meshimi_repeater_mqtt,Xiao_C6_repeater_mqtt. - Best low-power display MQTT builds:
Heltec_E213_repeater_mqtt,Heltec_E290_repeater_mqtt,Heltec_Wireless_Paper_repeater_mqtt,ThinkNode_M5_Repeater_mqtt. - Best companion choices if you want the richest local UI:
heltec_v4_tft_companion_radio_wifiandheltec_tracker_v2_companion_radio_wifi. - Best companion choices if you want maximum memory headroom:
T_Beam_S3_Supreme_SX1262_companion_radio_wifi,Station_G2_companion_radio_wifi,LilyGo_TBeam_1W_companion_radio_wifi. - Best companion choices if you are happy with an app-first, mostly headless setup:
RAK_3112_companion_radio_wifi,Xiao_S3_WIO_companion_radio_wifi,Station_G2_companion_radio_wifi. - Best companion choices if you prefer OLED over TFT:
T_Beam_S3_Supreme_SX1262_companion_radio_wifi,heltec_v4_companion_radio_wifi,LilyGo_TBeam_1W_companion_radio_wifi.