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 доставляет сообщение
- Маршрута ещё нет — сообщение уходит в режиме поиска пути (flood / «разведка»). Ретрансляторы помогают найти цепочку до адресата.
- Путь найден — следующие сообщения идут по этому маршруту: пересылают только нужные репитеры.
- Путь сломался — снова разведка и новый маршрут.
Итог: сеть старается сначала найти дорогу, потом ходить по ней.
Как это выглядит на карте
Представьте двух людей с клиентами (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)
- Откройте flasher.meshcore.io, выберите модель платы.
- Прошейте Chat / Companion (Bluetooth). Для первой прошивки обычно включают Erase / Clear device.
- Установите приложение MeshCore (Android / iOS) или веб-клиент.
- Включите Bluetooth и подключите устройство (PIN часто
123456, если не показан на экране). - В настройках радио задайте параметры из таблицы выше.
- Задайте имя ноды и сделайте Advert.
- В зоне покрытия появятся соседние ноды и репитеры.
2. Ретранслятор (Repeater)
- Прошейте роль Repeater (flasher или config.meshcore.io по USB).
- Выставьте те же RF-параметры, что у клиентов сети.
- Задайте имя; координаты — по возможности (удобно для карт).
- Смените пароль администратора (часто по умолчанию
password). - Поставьте повыше с нормальной антенной.
3. Room server
- Прошейте роль Room server.
- Те же RF, что у сети.
- Смените гостевой/админ пароли (гость часто по умолчанию
hello). - Не рассчитывайте на room server как на основной репитер покрытия.