Перейти к содержанию

MeshCore: альтернативная платформа для mesh-сетей

Что такое MeshCore

MeshCore — открытая система mesh-связи на базе LoRa: телефоны и радиомодули обмениваются сообщениями через цепочку узлов без интернета и сотовой сети.

Простыми словами: рации, которые умеют передавать сообщения друг через друга. Вы пишете в приложении — сигнал уходит на LoRa-устройство — если собеседник далеко, ретрансляторы перекидывают пакет дальше — сообщение доходит до чужого устройства.

Покрытие строит сообщество. Это не замена мобильной связи, а отдельный офлайн-канал на большие расстояния при низком энергопотреблении. Проект открытый (прошивки и инструменты, MIT).


Типы прошивок (роли устройств)

Одно и то же железо обычно можно прошить в разные роли. Разница — в поведении в сети.

Прошивка / роль Что делает Когда нужна
Companion (Chat / клиент) Работает с приложением на телефоне: чаты, объявления (Advert), личные сообщения Для обычного участия в сети
Repeater (ретранслятор) Принимает и пересылает чужие пакеты, расширяет покрытие Для «вышки»: балкон, крыша, высокое место
Room server Хранит историю сообщений комнаты (простой BBS) Когда нужна история, а не только чат «здесь и сейчас»
Sensor / другие Телеметрия и спец. сценарии По задаче

В чём разница ролей на практике

  • Companion удобен человеку, но не раздаёт чужой трафик дальше.
  • Repeater — основа покрытия. Без репитеров mesh «сжимается» на короткие локальные островки.
  • Room server — про историю и комнаты. Обычно его не используют как замену репитера: для покрытия — отдельный repeater, для истории — room server.

Список поддерживаемых плат — в MeshCore Flasher.


Как MeshCore доставляет сообщение

  1. Маршрута ещё нет — сообщение уходит в режиме поиска пути (flood / «разведка»). Ретрансляторы помогают найти цепочку до адресата.
  2. Путь найден — следующие сообщения идут по этому маршруту: пересылают только нужные репитеры.
  3. Путь сломался — снова разведка и новый маршрут.

Итог: сеть старается сначала найти дорогу, потом ходить по ней.

Как это выглядит на карте

Представьте двух людей с клиентами (Companion) на разных концах карты.

  • Если между ними есть репитеры и зоны охвата «сцепляются», сообщение может пойти так:

вы → репитер A → репитер B → … → адресат.

Каждый репитер принимает пакет и передаёт дальше по цепочке, пока он не дойдёт.

  • Если репитеров нет (или они слишком далеко друг от друга), клиенты просто не слышат друг друга: прямой радиосвязи не хватает, а «моста» из ретрансляторов нет. Сообщение до адресата не дойдёт, пока не появится промежуточный узел (или вы не сблизитесь).

Сравнение с Meshtastic

Подробное сравнение MeshCore и Meshtastic, их преимуществ и рекомендации по выбору смотрите в разделе Справочник → Сравнение платформ.


Радиопараметры для сети MeshNetBY

Ниже — рекомендуемый профиль для сети MeshNetBY в Минске. Все участники сети должны совпадать по частоте, BW, SF и CR.

Параметр (RU) В приложении (EN) Значение Зачем
Пресет Preset EU/UK (Narrow) Базовый набор под EU в «узкой» полосе
Частота Frequency 869.618 МГц Местная сеть
Полоса Bandwidth (BW) 62.5 кГц Уже канал — меньше шума, короче пакеты
Spreading Factor SF 8 Баланс скорость — дальность
Coding Rate CR 8 Устойчивость к ошибкам
Мощность TX Power 22 дБм; не превышайте местные нормы
Хэш пути Path hash 2 байта Длина идентификатора в пути

Важно

Если ваше сообщество уже зафиксировало другие цифры — используйте их. Главное — единство профиля внутри сети.

После смены параметров перезагрузите устройство.


Как настроить

1. Клиент (Companion)

  1. Откройте flasher.meshcore.io, выберите модель платы.
  2. Прошейте Chat / Companion (Bluetooth). Для первой прошивки обычно включают Erase / Clear device.
  3. Установите приложение MeshCore (Android / iOS) или веб-клиент.
  4. Включите Bluetooth и подключите устройство (PIN часто 123456, если не показан на экране).
  5. В настройках радио задайте параметры из таблицы выше.
  6. Задайте имя ноды и сделайте Advert.
  7. В зоне покрытия появятся соседние ноды и репитеры.

2. Ретранслятор (Repeater)

  1. Прошейте роль Repeater (flasher или config.meshcore.io по USB).
  2. Выставьте те же RF-параметры, что у клиентов сети.
  3. Задайте имя; координаты — по возможности (удобно для карт).
  4. Смените пароль администратора (часто по умолчанию password).
  5. Поставьте повыше с нормальной антенной.

3. Room server

  1. Прошейте роль Room server.
  2. Те же RF, что у сети.
  3. Смените гостевой/админ пароли (гость часто по умолчанию hello).
  4. Не рассчитывайте на room server как на основной репитер покрытия.

Полезные ссылки