This page is meant to help you choose a board, not just list every technical detail.
If you only want a quick answer:
heltec_v4, heltec_v4_tft, Station_G2, or T_Beam_S3_Supreme_SX1262The tables below are built from the repo's PlatformIO board metadata and variant build flags.
Target is the short board name used in this comparison page. Release filenames and local build commands still use the full env names such as heltec_v4_repeater_mqtt.MCU shows the chip family only. Actual runtime clock can vary by env and board configuration.RAM is the MCU's built-in RAM.PSRAM is extra memory on some boards. More PSRAM usually means more headroom for UI, MQTT, and future features.GPS uses ✅ when present and is blank when absent.SD uses ✅ when the board is currently known to support the SD-backed archive path in MeshCoreTel-firmware, 🧪 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.ESP32-S3 board with 16MB flash and PSRAM if you want strong overall headroom for MQTT plus UI: heltec_v4_tft, heltec_v4, Station_G2, LilyGo_TBeam_1W.heltec_v4_tft, heltec_tracker_v2, LilyGo_TDeck, Heltec_T190.Heltec_E213, Heltec_E290, Heltec_Wireless_Paper, ThinkNode_M5.RAK_3112, Generic_E22, Meshimi, Xiao_C6.RAK_3112_companion_radio_wifi, Xiao_S3_WIO_companion_radio_wifi, Station_G2_companion_radio_wifi.heltec_tracker_v2, Heltec_v3, heltec_v4, Station_G2, ThinkNode_M5.SX1276 boards are LilyGo_TLora_V2_1_1_6, Tbeam_SX1276, and Heltec_v2.If you are deciding between otherwise similar boards, these target-level settings often matter more than flash alone.
CPU cfg is the runtime clock MeshCore sets for that target. default means MeshCore does not override the board's default clock.TX cfg is MeshCore's configured LORA_TX_POWER, not guaranteed antenna output. Boards with a PA or RF front-end may radiate much more than the configured value suggests.Power is how the target exposes power in the repo: ADC batt, PMU, custom 2S, fixed/ext, or none.Extras lists notable RF or peripheral extras exposed by the target, such as PA/FEM, RF switch, BME280, NeoPixel, or ext 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 BoardsThis 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 MeshCoreTel-firmware.🧪 means the board hardware likely supports TF/microSD, but the MeshCoreTel-firmware board-specific integration still needs validation before it should be treated as supported.4 GB FAT32 microSD card is more than sufficient. Larger cards are also supported.companion_radio_wifi Boards With A DisplayThese 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 BoardsThese 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 | ✅ |
heltec_v4_repeater_mqtt, heltec_v4_tft_repeater_mqtt, Station_G2_repeater_mqtt, LilyGo_TBeam_1W_repeater_mqtt.RAK_3112_repeater_mqtt, Generic_E22_sx1262_repeater_mqtt, Meshimi_repeater_mqtt, Xiao_C6_repeater_mqtt.Heltec_E213_repeater_mqtt, Heltec_E290_repeater_mqtt, Heltec_Wireless_Paper_repeater_mqtt, ThinkNode_M5_Repeater_mqtt.heltec_v4_tft_companion_radio_wifi and heltec_tracker_v2_companion_radio_wifi.T_Beam_S3_Supreme_SX1262_companion_radio_wifi, Station_G2_companion_radio_wifi, LilyGo_TBeam_1W_companion_radio_wifi.RAK_3112_companion_radio_wifi, Xiao_S3_WIO_companion_radio_wifi, Station_G2_companion_radio_wifi.T_Beam_S3_Supreme_SX1262_companion_radio_wifi, heltec_v4_companion_radio_wifi, LilyGo_TBeam_1W_companion_radio_wifi.