Создание децентрализованных сетей связи вне зависимости от инфраструктуры — задача, над которой работают десятки проектов. Среди наиболее популярных решений на базе радиотехнологии LoRa выделяются MeshCore и Meshtastic.
Оба проекта решают схожие задачи, но используют принципиально разные подходы к построению сетей. В этой статье мы проведём техническое (и не очень) сравнение архитектур, лицензий, возможностей и ограничений обеих систем.
Содержание
Фундаментальные различия в архитектуре
Гибридная маршрутизация против полного флуда
В этой статье используется термин «флуд» (от англ. flood — наводнение) для обозначения широковещательной рассылки пакетов во все узлы сети.
MeshCore использует гибридный подход , сочетающий преимущества флуда и прямой маршрутизации:
- При первом сообщении между двумя узлами используется флуд для обнаружения пути
- Получатель отправляет отчёт о доставке с полным путём через ретрансляторы
- Этот путь сохраняется в контакт-листе отправителя
- Последующие сообщения используют сохранённый путь, минимизируя использование эфира
Это критически важно в условиях плотных сетей, где постоянная ретрансляция приводит к коллизиям и потере пакетов.
Meshtastic использует только полный флуд (pure flood):
- Каждое сообщение ретранслируется всеми узлами в сети
- Нет сохранения путей между сессиями
- Простота реализации, но высокая нагрузка на эфир при росте числа узлов
Ретрансляция сообщений: ключевое отличие
В MeshCore клиенты НЕ ретранслируют сообщения — это фундаментальный принцип архитектуры:
- Только ретрансляторы и серверы комнат с включённой опцией
set repeat onмогут пересылать пакеты дальше - Клиентские устройства (с прошивкой BLE/USB Companion) только отправляют и получают сообщения
- Это минимизирует коллизии в эфире и повышает стабильность сети при большом количестве узлов. В плотных сетях это критически важно для сохранения доставки сообщений
Начиная с прошивки 1.13.0 MeshCore добавила поддержку мобильных ретрансляторов («походный вариант») с ограничением выделенной частоты.
В Meshtastic по умолчанию все устройства ретранслируют сообщения:
- Каждый узел получает и передаёт все полученные пакеты
- Это создаёт высокую нагрузку на эфир, особенно в плотных сетях
- Упрощает вход, но снижает стабильность при росте сети
Таблица сравнения ключевых параметров
| Параметр | MeshCore | Meshtastic | Комментарий |
|---|---|---|---|
| Тип маршрутизации | Гибридная (флуд + прямой путь) | Полное наводнение | MeshCore минимизирует использование эфира |
| Режим работы | 3 основных роли, которые задаются на этапе прошивки | 10 ролей, которые можно настроить из приложения | MeshCore жёстко разделяет устройства, что может показаться неудобным, но полезным для реальной работы сети |
| Эфирное время | Репитеры отправляют информацию раз в 3+ часов. Клиенты отправляют информацию о себе только вручную | Автоматическая отправка информации об устройстве и телеметрии (температура, GPS, батарея) | В MeshCore приоритет имеют сообщения пользователей, влияние телеметрии на эфир минимизировано |
| Настройки радио | Свободная простая настройка любой характеристики радио. Сообществом протестирован и выбран стандарт 62.5кГц, показавший свою эффективность | Большинство пресетов имеют ширину канала 250кГц, которая собирает много помех. SF также задан в пресетах. Нет ручной настройки радиопараметров | Помимо прочего, в приложении MeshCore можно посмотреть текущий уровень шума. Meshtastic показывает RSSI для сообщений, в отличие от MeshCore |
| Код | Свободная MIT лицензия, есть отдельные платные прошивки ripple. Код более простой, компилируется быстрее, но имеет меньший функционал | GPL лицензия подходит не для всех коммерческих проектов. Код перегружен, медленная компиляция, много дополнительных библиотек | На сегодняшний день, Meshtastic предоставляет большее количество поддерживаемых устройств и интеграций |
| Повторение клиентами | Нет (только ретрансляторы) | Да (все устройства) | Ключевое архитектурное отличие |
| Макс. количество хопов | 64 | 7 | Теоретический лимит в прошивке |
| Приложения | Настройка устройства производится отдельными блоками, отзывчивый интерфейс, не требуется перезагрузка ноды при изменении настроек радио | Настройка устройства требует множественных перезагрузок. С большим списком контактов может долго подключаться, нередки проблемы с bluetooth | В приложении MeshCore есть инструменты расчёта области покрытия и анализа топографии прямой видимости. Есть платные функции |
| Серверы комнат | Да (хранение истории) | Нет | Аналог почтовых серверов |
| Энергопотребление | Оптимизировано (режим сна) | Выше (постоянное прослушивание) | В MeshCore клиенты работают дольше от аккумулятора |
| Гибкость настройки | Высокая (полный контроль через CLI) | Средняя | MeshCore предоставляет больше параметров |
| Карта | Удобная карта нод в приложении с возможностью синхронизации через интернет | Карта только тех нод, которые отправили свои координаты в текущей меш сети | MeshCore позволяет скопировать и применить настройки LoRa с другого устройства через интернет карту в «один клик» |
| Сообщество | Маленькое активно развивающееся сообщество | Огромное сообщество с длительной историей | MeshCore появился относительно недавно и не имеет большой фанбазы в отличие от Meshtastic |
Технические особенности маршрутизации
Лимит хопов: 64 против 7
Хоп (от англ. hop — «прыжок») — это один переход пакета данных от одного узла сети к другому.
Внутренний лимит прошивки MeshCore составляет 64 хопа. Это теоретический максимум, который позволяет охватывать огромные расстояния через цепочку ретрансляторов. На практике достижение такого количества хопов затруднено из-за:
- Задержек при передаче через каждый узел
- Потерь пакетов на каждом этапе
- Ограничений по времени жизни пакета
В Meshtastic лимит составляет 7 хопов — этого достаточно для локальных сетей, но недостаточно для построения региональных сетей без дополнительной инфраструктуры.
Групповые каналы и флуд
В обеих системах групповые каналы всегда используют флуд, так как нет определённого пути к получателю:
- В MeshCore администраторы ретрансляторов могут ограничить флуд через команду
set flood.max {количество-хопов} - В Meshtastic подобных механизмов контроля нет
Это делает групповые каналы менее эффективными в обеих системах, но в MeshCore есть инструменты для минимизации влияния на сеть.
Лицензионные различия и юридические аспекты
Лицензии прошивок
| Проект | Лицензия | Разрешено | Ограничения |
|---|---|---|---|
| MeshCore | MIT | Коммерческое использование, модификация, распространение | Требуется указание авторства |
| Meshtastic | Apache 2.0 | Коммерческое использование, модификация, распространение | Требуется указание авторства, уведомление об изменениях |
Обе лицензии разрешают коммерческое использование, но логотипы имеют разные условия:
- Логотип MeshCore можно использовать свободно в рамках разумного использования
- Логотип Meshtastic защищён товарным знаком. Использование в коммерческих проектах требует письменного разрешения от команды проекта согласно бренд-гайдлайнам.
Важно: Некоторые компоненты MeshCore закрыты:
- Прошивка T-Deck частично закрыта (требуется разблокировка за $10)
- Мобильное приложение использует модель freemium
- Прошивка устройств (ретрансляторы, серверы комнат) полностью открыта под MIT
Управление сетью и гибкость настройки
Система управления доступом (ACL) в MeshCore
MeshCore предоставляет гранулярный контроль над сетью через систему управления доступом:
setperm {публичный-шестнадцатеричный-ключ} {разрешения}Биты разрешений различаются в зависимости от роли прошивки, но младшие 2 бита универсальны:
0— Гость (только чтение статистики)1— Только чтение2— Чтение и запись3— Администратор
Это позволяет создавать многоуровневые системы управления даже в небольших сетях.
Региональное управление
Начиная с версии 1.12+, MeshCore поддерживает иерархическое управление регионами:
region put {имя} {* | префикс-имени-родителя}
region allowf {префикс-имени}
region denyf {префикс-имени}Это позволяет:
- Ограничивать флуд между географическими зонами
- Создавать «зоны ответственности» для ретрансляторов
- Предотвращать перегрузку эфира в плотных сетях
Энергопотребление и автономность
Почему клиентские устройства на MeshCore работают дольше:
- Клиенты не ретранслируют — основной фактор экономии энергии
- Режим сна — устройства могут «засыпать» между передачами
- Оптимизированные задержки — параметры
txdelayиrxdelayснижают коллизии
В Meshtastic устройства постоянно прослушивают эфир в готовности повторить любой пакет, что значительно увеличивает энергопотребление.
Практический результат: клиентские устройства на базе MeshCore могут работать от того же аккумулятора до 72 часов, тогда как аналогичные устройства на Meshtastic будут работать 36–48 часов.
Серверы комнат — уникальная функция MeshCore
Серверы комнат (Room Server) — это аналог почтовых серверов для меш-сетей:
- Хранят историю сообщений (последние 32 непрочитанных сообщения)
- Позволяют пользователям получать сообщения после возвращения в сеть
- Работают независимо от групповых каналов (где сообщения теряются при отсутствии получателя)
- Поддерживают права доступа
Роли устройств в сети
MeshCore: разделение ролей на уровне прошивки
В MeshCore устройства имеют чётко определённые роли:
- Companion (Клиент) — устройство для подключения к смартфону или ПК. Бывает двух видов:
- BLE Companion — подключение через Bluetooth
- USB Serial Companion — подключение через USB
- Repeater (Ретранслятор) — расширяет зону покрытия сети. Пересылает пакеты только по целевому пути, а не все подряд.
- Room Server (Сервер комнат) — хранит историю сообщений. Аналог почтового сервера: пользователи могут получить непрочитанные сообщения позже.
Meshtastic: 10 режимов работы
Meshtastic поддерживает более гибкую систему режимов работы. На устройстве можно выбрать следующие роли:
- Client (Клиент) — обычное устройство пользователя. Может быть одновременно клиентом и ретранслятором.
- Router (Роутер) — устройство, которое ретранслирует все пакеты. На практике почти все устройства работают как роутеры.
- Repeater (Повторитель) — специализированный режим для ретрансляции пакетов без клиентских функций.
- Tracker (Трекер) — устройство для отслеживания местоположения. Отправляет координаты в сеть.
- Sensor (Датчик) — устройство для сбора данных с датчиков (температура, влажность и т.д.).
- TAK (Tactical) — специальный режим для интеграции с тактическими приложениями (например, ATAK).
- LoRa Gateway (Шлюз) — устройство для подключения меш-сети к интернету через MQTT или другие протоколы.
- Client Mute (Клиент без передачи) — устройство, которое только слушает сеть, но не передаёт сообщения.
- Router Client (Роутер + Клиент) — комбинированный режим: устройство работает как клиент и роутер одновременно.
- Router Mute (Роутер без передачи) — роутер, который ретранслирует пакеты, но не отправляет свои сообщения.
Ограничения и совместимость
Совместимость с оборудованием
Обе системы работают на одинаковом оборудовании (Heltec, RAK, TTGO и др.), но:
- Прошивки несовместимы — нельзя использовать прошивку одной системы одновременно с другой на том же устройстве
- Частотные планы могут отличаться (особенно в регионах с узкополосными настройками)
- Параметры радио (BW, SF, CR) требуют согласования между узлами одной сети
Почему MeshCore не поддерживает ATAK
MeshCore не поддерживает интеграцию с ATAK по нескольким причинам:
- Клиенты не ретранслируют — требуется сеть репитеров для покрытия
- Постоянное движение клиентов между ретрансляторами нарушает стабильность путей
- Необходимость постоянного сброса путей и «наводнения» трафика
- Высокая «разговорчивость» ATAK приводит к коллизиям в эфире
Практические рекомендации: какую систему выбрать?
Выберите MeshCore, если:
- Вам нужна стабильная работа в плотных сетях (более 20 узлов)
- Важна энергоэффективность для автономных устройств
- Требуется хранение истории сообщений
- Вы готовы изучать тонкую настройку через CLI
- Планируете развивать крупную сеть с иерархией ретрансляторов
Выберите Meshtastic, если:
- Вам нужна простая настройка «из коробки»
- Сеть небольшая (до 10–15 узлов)
- Вы новичок в радиосвязи
Будущее развития
Планы MeshCore:
- Улучшенная энергосберегающая прошивка для клиентов
- Поддержка новых устройств (ESP32-S3, RAK 4631 v2)
- Расширенная аналитика сети через интеграцию с analyzer.letsmesh.net
Планы Meshtastic:
- Улучшение стабильности в плотных сетях
- Расширение экосистемы плагинов
- Интеграция с дополнительными сервисами
Заключение
Обе системы имеют право на существование и решают разные задачи:
MeshCore — это продвинутая система для тех, кто готов разбираться в тонкостях настройки и строить стабильные сети с большим количеством узлов. Гибридная маршрутизация, отсутствие ретрансляции клиентами и поддержка рум-серверов делают её идеальной для городских условий и крупных сообществ.
Meshtastic — это решение «из коробки» для небольших сетей и новичков. Простота настройки и обширное сообщество позволяют быстро начать работу без глубокого погружения в технические детали.
Выбор между ними зависит от ваших задач, технических навыков и масштаба планируемой сети.
Полезные ресурсы
- Официальный сайт MeshCore: https://meshcore.co.uk
- Репозиторий: https://github.com/meshcore-dev/MeshCore
- Прошивальщик: https://flasher.meshcore.co.uk
- Карта сети: https://meshcore.co.uk/map.html
- Сравнение на Austin Mesh: https://www.austinmesh.org/learn/meshcore-vs-meshtastic/
- Видео сравнение (на английском): The Comms Channel
- Сравнения и тесты MeshCore: https://boosty.to/vasilisk_lab
Последнее обновление: 19 февраля 2026 года

Добавить комментарий