All firmwares

MeshCoreTel

Fork

Fork of MeshCore-EastMesh firmware for repeaters with WiFi, HTTPS API, local web panel, and MQTT support. Replaces EastMesh AU telemetry with the MeshCoreTel telemetry service. Features WiFi client mode with DHCP, NTP time sync, MQTT brokers (meshcoretel, letsmesh-eu, letsmesh-us), plain TCP and WSS transport, JWT authentication, local HTTPS web panel with password access, battery reporting, fan control on T-Beam 1W, and external LNA toggle on Heltec v4.3. All network processes run on a separate core to avoid LoRa latency.

Fork of EastMesh

Maintainer
VBart ↗
Status
Active
Maturity
Beta
Lifecycle
Active
Latest version
1.2.0
Released
2026-06-07
Runtime
Arduino · C++
Distribution
Community
Licensing
Open source
License
MIT

Capabilities

Transports

  • BLE
  • USB serial
  • Native TCP
  • Wi-Fi AP

Operations

  • Web flasher
  • OTA updates

Networking

  • Repeater
  • Room server
  • Observer
  • MQTT
  • KISS modem

Hardware

  • GPS
  • Display
  • Sensors
  • Low-power RX

Protocol

  • MeshCore compatible

Node role

RepeaterCompanionObserver

Features

  • WiFi client mode with DHCP auto-configuration
  • NTP time synchronization
  • MQTT broker support (meshcoretel, letsmesh-eu, letsmesh-us)
  • Plain TCP and WSS transport
  • JWT authentication using device identity
  • Local HTTPS web panel with password access
  • Battery reporting on supported platforms
  • Fan control on T-Beam 1W
  • External LNA toggle on Heltec v4.3
  • Network processes on separate core for zero LoRa latency

Project signals

popularity 2026-07-20 verification 2026-07-20
GitHub stars
37
Forks
9
Watchers
1
Open issues
9
Contributors
176
Release downloads
2,842
Latest downloads
1,183
Source available
Yes
Releases available
Yes
CI builds
Yes

Releases

from GitHub · updated 2026-07-05
  1. v1.2.0 # Latest 1 month ago · 2026-06-07 16:54 UTC

    Новая версия прошивок для MeshCoreTel-повторителей с поддержкой MQTT и веб-интерфейсом для конфигурирования и мониторинга.

    Что нового в этом релизе

    Основа: обновление до официальной MeshCore v1.16.0

    Прошивка обновлена до последней официальной версии MeshCore v1.16.0, которая включает улучшения и исправления от сообщества разработчиков.

    Новое: управление усилителем приёма (LNA) на устройствах Heltec с FEM

    Кого касается: владельцев устройств Heltec, оснащённых внешним модулем усиления сигнала (FEM — Front-End Module), например с чипом KCT8103L (Heltec v4.3).

    Что такое LNA: Low Noise Amplifier — малошумящий усилитель на пути приёма сигнала. Когда он включён, устройство лучше слышит слабые сигналы от удалённых узлов сети.

    Что изменилось:

    • Официальная v1.16.0 отключила LNA по умолчанию на устройствах Heltec с FEM. В данной же прошивке сохранено включённое состояние по умолчанию для повторителя.
    • Добавлена новая настройка radio.fem.rxgain, которая позволяет через CLI-команды включать и отключать LNA без перезагрузки (и тем более без перепрошивки) устройства:
    get radio.fem.rxgain        # посмотреть текущее состояние
    set radio.fem.rxgain on     # включить LNA (лучший приём)
    set radio.fem.rxgain off    # выключить LNA
    

    Текущее значение сохраняется при перезагрузках. Все CLI-команды можно выполнять через веб-интерфейс.

    Обращаю внимание, что LNA усиливает и сигнал и шумы — это нормально.

    С включенным LNA на Heltec v4.3:

    > set radio.fem.rxgain on
    OK - LoRa FEM RX gain on
    
    Screenshot From 2026-06-07 19-46-59

    И с выключенным:

    > set radio.fem.rxgain off
    OK - LoRa FEM RX gain off
    
    Screenshot From 2026-06-07 19-47-19

    Изменения из 1.16.0:

    Ниже приведу наиболее интересный список изменений, унаследованных из официальной прошивки 1.16.0 для повторителей на базе ESP32.

    Увеличение преамбулы для низких SF

    При SF ≤ 8 (быстрые режимы) преамбула увеличена с 16 до 32 символов. На низких SF у радио меньше времени на захват сигнала, поэтому более длинная преамбула снижает вероятность пропуска начала пакета.

    Расширенный ACK (6 байт вместо 4)

    ACK-пакеты теперь содержат 6 байт вместо 4: добавлены байт номера попытки отправки и случайный байт. Это устраняет редкие коллизии при дедупликации пакетов и готовит почву для поддержки более 4 попыток доставки прямых сообщений в будущих версиях приложения. Повторители должны быть обновлены до 1.16.0 раньше, чем приложение начнёт использовать эту функцию.

    Новые настройки ограничения хопов

    flood.max.advert (по умолчанию: 8) Отдельный лимит хопов для пакетов-объявлений (advert). Раньше объявления ограничивались общим flood.max. Теперь можно задать меньший радиус распространения объявлений, не трогая лимит для обычных сообщений. 1

    flood.max.unscoped (по умолчанию: 64, то есть фактически выключено) Ограничивает хопы для flood-пакетов, у которых нет метки региона. В MeshCore пакеты бывают двух видов: с меткой региона — они позволяют повторителям фильтровать трафик по географии, и без метки — они распространяются по всей сети без географической фильтрации. Этот параметр позволяет отдельно ограничить именно такие "безрегиональные" пакеты.

    Значение по умолчанию для интервала flood-объявлений

    Значение по умолчанию для flood.advert.interval изменено с 12 до 47 часов. Параметр по-прежнему настраивается командой set flood.advert.interval <часы>.

    Исправление бага: обновление соседей через flood-адверты

    Если соседний повторитель использовал path.hash.mode 1 или 2, его flood-адверты не обновляли запись …

  2. v1.1.2 # 1 month ago · 2026-06-06 14:54 UTC

    Минорное обновление прошивок для MeshCoreTel-повторителей с поддержкой MQTT и веб-интерфейсом для конфигурирования и мониторинга.

    Что нового в этой версии:

    Веб-панель

    • Рядом с публичным ключом узла в разделе "Info" появилась кнопка-ссылка на профиль устройства на meshcoretel.ru.
    Screenshot From 2026-06-06 17-50-24
    • В таблице соседей "Neighbours" короткие ID теперь тоже являются ссылками на профили соседних узлов на meshcoretel.ru.
    Screenshot From 2026-06-06 17-49-59
    • Для boot в истории событий "Events" теперь отображается причина перезагрузки — например, power on, software reset, panic/exception и т.д.
    Screenshot From 2026-06-06 17-52-39
    • Для low memory в истории событий "Events" теперь отображается сколько свободной памяти оставалось в тот момент.

    CLI

    • Команда get pwrmgt.bootreason теперь работает на ESP32: показывает причину последней перезагрузки устройства.
    Screenshot From 2026-06-06 17-54-07

    Синхронизация времени

    • Устройство теперь автоматически использует NTP-сервер, который предоставляет DHCP-сервер в локальной сети (если он его передаёт). Это полезно в изолированных сетях без доступа к интернету, где есть свой NTP-сервер.

    Исправления

    • Исправлен редкий сбой MeshCore-прошивки при приёме LoRa-пакетов максимального размера. Сбой проявлялся крайне редко, но мог приводить к перезагрузке устройства.
    • Исправлен баг: график ошибок приёма пакетов переставал обновляться и показывал нули после длительной работы устройства.

    Жаркое лето

    Во многих городах установилилась теплая погода и графики температуры MCU поползли вверх. Чтобы снизить температуру в прошивке предусмотрены режимы сбережения энергии для Wi-Fi, которые заметно снижают тепловую нагрузку на чип без какой-либо деградации функциональности и стабильности в большинстве случаев.

    Включаются эти режимы командами set wifi.powersaving min и set wifi.powersaving max.

    По умолчанию энергосбережение для Wi-Fi отключено:

    get wifi.powersaving
    > none
    

    Попробуйте начать с min и проследить стабильность Wi-Fi с MQTT и Web в этом режиме. Если всё хорошо, можете попробовать и max. Температура чипа в этих режимах заметно снизится.

    Текущий режим также отображается на веб-панели в разделе "Stats":

    Screenshot From 2026-06-06 17-48-06

    В составе релиза:

    • *-merged.bin — полная версия (рекомендуется при первой прошивке)
    • *.bin — только сам код приложения (настройки сохраняются)

    Прошивка также доступна в веб-прошивальщике от Мешкартеля:

  3. v1.1.1 # 2 months ago · 2026-05-16 15:39 UTC

    Корректирующий релиз прошивок для MeshCoreTel-повторителей с поддержкой MQTT и веб-интерфейсом для конфигурирования и мониторинга.

    О чём релиз: исправлена досадная проблема с OTA — после прошивки панель могла сообщать, что устройство не загрузилось, хотя это было не так. Также ещё улучшена отзывчивость веб-интерфейса и устранены огрехи в отображении графиков.

    Базируется на прошивках:

    • MeshCore v1.15.0
    • EastMesh v1.3.11

    Изменения по сравнению с версией v1.1.0

    Исправление во встроенном в веб-панель OTA-обновлении

    После успешной прошивки панель могла ждать минуту и показать "Device did not come back online. =(", хотя устройство загружалось нормально, не пугайтесь. Это происходило из-за того, что CI-сборки всегда генерируют новый самоподписной сертификат, и браузер блокировал проверочное соединение.

    Ранее, когда это тестировалось при локальной сборке, сертификат между сборками не менялся и всё работало, но в релизных сборках сертификат всегда отличается, а из соображений безопасности разработчики браузеров ошибку сертификата сделали неотличимой от ошибки подключения. После прошивки нужно просто в браузере перезагрузить страницу и согласиться принять новый сертификат.

    Теперь, вместо попыток опроса устройства, отображается 10-секундный обратный отсчёт с автоматическим переходом на страницу входа.

    Производительность

    Включены "TLS session tickets": браузер теперь возобновляет HTTPS-сессию без полного RSA-рукопожатия — веб-интерфейс открывается заметно быстрее при повторных подключениях.

    Графики трендов

    • Ложный нулевой столбец в начале графика пакетов и нулевой минимум диапазона из-за этого — устранены.
    • Диапазон min/max для пакетов теперь учитывает сумму RX и TX, а не только RX.
    • Аномальный скачок на стыке сессий при восстановлении истории с SD-карты — исправлен.
    • Синхронизация подсветки между графиками теперь по временно́й метке — разные графики больше не выделяют разные моменты времени.
    • Исправлена подсветка крайних столбцов на столбчатых графиках (пакеты, спутники GPS).

    Прочее

    • Кнопки в неактивном состоянии больше не подсвечиваются при наведении.

    Браузер теперь может кэшировать TLS-сессию в течении суток с момента последнего обращения. Это избавляет от необходимости каждый раз считать сессионые ключи, что в разы снижает нагрузку на устройство и устраняет задержку для новых подключений.

    Было:

    $ openssl s_time -connect heltec:443 -time 10
    
    
    Now timing without session id reuse.
    starting
    **********
    
    10 connections in 0.02s; 500.00 connections/user sec, bytes read 0
    10 connections in 11 real seconds, 0 bytes read per connection
    

    Стало:

    $ openssl s_time -connect heltec:443 -time 10 -reuse
    
    
    Now timing with session id reuse.
    starting
    rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr
    
    142 connections in 0.12s; 1183.33 connections/user sec, bytes read 0
    142 connections in 11 real seconds, 0 bytes read per connection
    

    Стало на порядок быстрее.

Show all 9 releases →

Device compatibility (28)

✓ 28 Supported
DeviceMCURadioStatusNotes
Heltec V4esp32-s3Semtech SX1262✓ Supported
Heltec V3esp32-s3Semtech SX1262✓ Supported
Heltec V2esp32Semtech SX1276✓ Supported
Heltec Vision Master E213esp32-s3Semtech SX1262✓ Supported
Heltec Vision Master E290esp32-s3Semtech SX1262✓ Supported
Heltec T190esp32-s3Semtech SX1262✓ Supported
Heltec Wireless Tracker v3esp32-s3Semtech SX1262✓ Supported
Heltec WSL3esp32-s3Semtech SX1262✓ Supported
Heltec Wireless Paperesp32-s3Semtech SX1262✓ Supported
LilyGo T3 S3 (SX126x)esp32-s3Semtech SX1262✓ Supported
LilyGo T3 S3 (SX127x)esp32-s3Semtech SX1276✓ Supported
LilyGo T-Beam 1Wesp32-s3Semtech SX1262✓ Supported
LilyGo T-Beam (SX1262)esp32Semtech SX1262✓ Supported
LilyGo T-Beam 1.2 (SX1276)esp32Semtech SX1276✓ Supported
LilyGo T-Deckesp32-s3Semtech SX1262✓ Supported
LilyGo LoRa32 V2.1_1.6esp32Semtech SX1276✓ Supported
LilyGo T-LoRa C6esp32-c6Semtech SX1262✓ Supported
UnitEng Station G2esp32-s3Semtech SX1262✓ Supported
Elecrow ThinkNode M2 Miniesp32-s3Semtech SX1262✓ Supported
Elecrow ThinkNode M5esp32-s3Semtech SX1262✓ Supported
RAK WisBlock 3112esp32-s3Semtech SX1262✓ Supported
Xiao S3 WIOesp32-s3Semtech SX1262✓ Supported
Xiao C6esp32-c6Semtech SX1262✓ Supported
M5Stack Unit C6Lesp32-c6Semtech SX1262✓ Supported
Ebyte EoRa-S3-XXXTB Radioesp32-s3Semtech SX1262✓ Supported
ESP32 + E22 SX126x (generic)esp32Semtech SX1262, Semtech SX1268✓ Supported
MeshAdventureresp32Semtech SX1262, Semtech SX1268✓ Supported
Nibble Screen Connectesp32-s3Semtech SX1262✓ Supported