Экосистема MeshCore продолжает активно развиваться, и одним из ключевых элементов являются клиентские приложения для взаимодействия с LoRa-устройствами. На сегодняшний день самым перспективным open-source решением является MeshCore Open - кросс-платформенный клиент на базе Flutter, который предлагает расширенный функционал по сравнению с официальным приложением. А его модификация MCO Advanced выводит возможности на новый уровень благодаря уникальным алгоритмам сжатия текста. Давайте разберем все детали. 🚀
MeshCore Open - это бесплатное open-source приложение с открытым исходным кодом, разработанное специально для работы с устройствами LoRa в сетях MeshCore. Программа позволяет подключаться к LoRa-устройствам, обмениваться зашифрованными сообщениями без интернета и мобильной связи, управлять узлами сети и настраивать параметры соединения.
В отличие от официального клиента MeshCore, open-source версия предлагает значительно более информативное отображение метаданных сообщений и удобную визуализацию маршрутов. Приложение построено на фреймворке Flutter, что обеспечивает нативную производительность на всех поддерживаемых платформах.
Кросс-платформенность означает, что вы можете использовать одно и то же приложение на всех своих устройствах с единым интерфейсом и синхронизированными настройками.
MeshCore Open предлагает богатый набор функций для полноценной работы в mesh-сети. Рассмотрим их подробно.
Зашифрованные приватные беседы с отдельными контактами. Все сообщения шифруются на устройстве отправителя и расшифровываются только на устройстве получателя. Даже ретрансляторы, через которые проходят пакеты, не могут прочитать содержимое.
Трансляция сообщений подписчикам каналов в mesh-сети. Вы можете создавать тематические каналы для обсуждения различных тем, координации групп или экстренных оповещений.
Возможность реагировать на сообщения с помощью эмодзи. Это упрощает коммуникацию и позволяет быстро выражать согласие, несогласие или другие эмоции без написания полного ответа.
Приложение позволяет организовать контакты в группы, отслеживать время последнего посещения каждого узла и управлять историей бесед. Вы всегда видите, кто был активен недавно, а кто давно не выходил на связь.
Создание пользовательских групп для организации контактов в ячеистой сети. Например, вы можете создать группы "Семья", "Друзья", "Коллеги" или "Аварийная связь" для быстрого доступа к нужным собеседникам.
Одна из самых мощных функций - визуализация маршрутов и качества сигнала для каждого контакта. Вы видите, через какие ретрансляторы проходит сообщение, сколько хопов оно делает и каково качество связи на каждом участке.
Ручное переопределение маршрута и автоматический поиск оптимального пути. Если стандартный маршрут работает плохо, вы можете задать альтернативный путь через конкретные ретрансляторы.
Отслеживание отношения сигнал-шум (SNR) в реальном времени для каждого узла. Это помогает понять качество связи и выявить проблемные участки сети.
Визуализация узлов mesh-сети на интерактивной карте. Вы видите расположение всех активных ретрансляторов и пользователей, что помогает понять географическое покрытие сети.
Фильтрация по типу узла (чат, ретранслятор, датчик) и временному диапазону. Вы можете показать только активные за последний час узлы или скрыть датчики, оставив только коммуникационные ноды.
Обмен GPS-координатами и пользовательскими метками с контактами. Поддержка формата военной системы координат MGRS (Military Grid Reference System), что важно для туристов, военных и спасателей.
Загрузка фрагментов карты для использования в автономном режиме в удаленных районах. Даже если вы полностью отрезаны от цивилизации, у вас будет карта с отмеченными узлами сети.
Сканирование и подключение к устройствам MeshCore через Bluetooth Low Energy (BLE) или TCP/IP. BLE обеспечивает низкое энергопотребление, а TCP позволяет подключаться через WiFi-мосты.
Настройка параметров радиосвязи, питания и сети прямо из приложения. Вы можете изменить частоту, мощность передатчика, режим сна и другие параметры без необходимости подключения к компьютеру.
Состояние батареи в реальном времени с кривыми напряжения, специфичными для типа батареи. Вы видите не просто процент заряда, а реальную картину состояния аккумулятора и прогнозируемое время работы.
Полный интерфейс командной строки для ретрансляторов прямо из мобильного приложения. Вы можете выполнять любые команды, которые обычно доступны только через терминал на компьютере.
Настройка поведения ретранслятора, ограничений мощности и сетевых параметров. Вы можете удаленно настроить ретранслятор, установленный на крыше или в другом труднодоступном месте.
Просмотр трафика, подключенных клиентов и состояния системы. Вы видите, сколько сообщений ретранслируется, какие узлы активны и какова общая нагрузка на сеть.
Администрирование ретрансляторов из любой точки сети Mesh. Даже если ретранслятор находится в другом городе, вы можете управлять им через mesh-сеть без прямого подключения.
MCO Advanced - это форк MeshCore Open с расширенными возможностями, разработанный энтузиастом из сообщества 4PDA. Основная фишка модификации - продвинутые алгоритмы сжатия текста, позволяющие значительно увеличить эффективную длину сообщений в условиях ограниченной пропускной способности LoRa.
Первый метод сжатия - транслитерация кириллицы в латиницу с последующим сжатием. Это позволяет сократить объем текста на 30-40% без потери читаемости для тех, кто привык к транслиту.
Алгоритм заменяет русские буквы на латинские эквиваленты по настраиваемым словарям. Например, "Привет" превращается в "Privet", "Как дела" в "Kak dela". Затем применяется дополнительное сжатие повторяющихся паттернов.
В версии 8.0.0.1.1.0 добавлены профили для Cyr2Lat. Теперь можно сохранить каждый собственный словарь и назначить его персонально любому каналу или контакту. Это позволяет использовать разные правила транслитерации для разных групп общения.
Cyr2Lat поддерживает личные сообщения и публичные каналы. Получатель должен иметь поддержку Cyr2Lat для автоматической расшифровки, но даже без неё сообщение остается читаемым (просто в виде транслита).
Начиная с версии 8.0.0.1.4.4, в MCO Advanced появился революционный метод сжатия текста на основе машинного обучения - mesh-compressor. Этот алгоритм использует обученную языковую модель весом всего 3 мегабайта и обеспечивает сжатие на 50-70%!
Языковая модель анализирует контекст сообщения и предсказывает наиболее вероятные следующие символы. Вместо передачи полных слов, алгоритм передает только отклонения от предсказаний, что радикально сокращает объем данных.
💡 Важно: Модель обучена на русскоязычных и англоязычных сообщениях, поэтому обеспечивает наилучшее сжатие именно для этих языков. Поддерживается 10 языков в целом, но качество может варьироваться.
Все сжатые сообщения помечаются префиксом "mcmp:" (или "mcmp2:" в новых версиях), чтобы клиент понимал, что нужно применить декодирование. Это также защищает от ошибочной раскодировки обычных сообщений.
Алгоритм имеет несколько важных ограничений, которые нужно учитывать:
Для обработанных с помощью mesh-compressor сообщений добавлен индикатор - бейдж "mcmp". Его необходимо включить в настройках приложения (трассировка сообщений). Это помогает визуально отличать сжатые сообщения от обычных.
В качестве транспорта используется base91, так как на текущий момент через MeshCore нельзя отправлять бинарные данные - всё приводится в текст. Base91 обеспечивает более плотное кодирование по сравнению с base64, что дает дополнительную экономию байт.
Алгоритм постоянно улучшается от версии к версии. Рассмотрим ключевые изменения.
Первый релиз mesh-compressor. Использовалась начальная версия модели, префикс "mcmp:". Поддержка только для личных сообщений.
Обновленная модель mesh-compressor. Сообщения теперь расшифровываются JS-версией на сайте https://dimapanov.github.io/mesh-compressor/, но нужно удалить префикс "mcmp2:". Обратная совместимость отсутствует - другие пользователи должны также обновиться.
⚠️ Внимание: Свежая версия способна декодировать сообщения от предыдущей, но не наоборот. Если вы обмениваетесь сжатыми сообщениями с кем-то, убедитесь, что оба используете актуальную версию.
Добавлено сжатие сообщений для рум-серверов (room servers). Это позволяет использовать mesh-compressor в групповых чатах, где все участники договорились использовать одинаковые версии клиентов.
Установка MeshCore Open и MCO Advanced зависит от платформы и источника.
Основной источник - репозиторий на GitHub: https://github.com/zjs81/meshcore-open. Здесь доступны последние стабильные версии для всех платформ.
MCO Advanced распространяется через форум 4PDA и GitHub репозиторий разработчика. Файлы имеют имя mco_advanced-{version}.ipa или mco-advanced-{version}.apk.
🔥 Критически важно: Всегда скачивайте модификации только из проверенных источников. Никогда не устанавливайте приложения из непроверенных ссылок, так как они могут содержать вредоносный код.
После установки выполните первичную настройку:
Как MeshCore Open смотрится на фоне других клиентов для MeshCore?
Meshtastic - это альтернативная mesh-сеть на базе LoRa с собственными клиентами. Основные отличия:
MeshCore использует более продвинутый протокол маршрутизации с оценкой качества линка, тогда как Meshtastic полагается на flooding и простую маршрутизацию. Это делает MeshCore более эффективным в сложных условиях городской застройки.
Клиенты Meshtastic (официальное приложение, Meshenger) также предлагают богатый функционал, но специфичный для протокола Meshtastic. Они несовместимы с устройствами MeshCore.
💡 Важно: MeshCore и Meshtastic - это разные экосистемы. Устройство, прошитое прошивкой MeshCore, не может работать в сети Meshtastic и наоборот. Выберите одну экосистему и используйте соответствующие клиенты.
Помимо сжатия текста, MCO Advanced предлагает ряд других улучшений.
В версии 9.0.0.1.6.0 добавлена возможность отмены отправки сообщения. Эта функция включается в настройках каждого канала, контакта или рум-сервера. Задержка регулируется в настройках приложения.
После нажатия кнопки "Отправить" сообщение не уходит мгновенно, а ждет указанное время (по умолчанию 15 секунд). В течение этого времени вы можете отменить отправку, если заметили ошибку или передумали.
Рекомендуемое значение задержки - 15 секунд, так как она связана с механизмом устранения дублей отрисовки полученных своих же сообщений через повторы от репитеров. Минимальное значение - 10 секунд.
Расширенная логика переотправки сообщений теперь доступна в каналах. Если сообщение не получило подтверждения о доставке, оно будет автоматически переотправлено.
Настройка таймаута для переотправки (стандартное значение - 30 секунд, минимальное - 10). Это помогает избежать перегрузки сети при плохой связи.
В версии 9.0.0.1.6.1 добавлены закладки и история последних TCP-подключений. Запоминается 5 последних успешных подключений, каждое из них можно пометить как избранное и присвоить имя.
Избранные подключения не очищаются при достижении лимита истории. Это удобно, если вы регулярно подключаетесь к одним и тем же удаленным ретрансляторам через WiFi-мосты.
В версии 9.0.0.1.6.2 добавлен произвольный ограничитель максимального объема сообщений в каналы. Это связано с проблемами при получении подтверждений ретрансляций длинных сообщений.
Ограничение заложено в прошивке и зависит от типа подключения ноды к устройству. По BLE лимит меньше, чем по USB. Чтобы получать подтверждения ретрансляций, длина сообщения не должна превышать определенного порога байт.
⚠️ Внимание: По умолчанию ограничение установлено в 0 (не ограничивать). Если вы столкнулись с проблемами получения подтверждений, установите разумный лимит (например, 200-300 байт для BLE).
При использовании MeshCore Open и MCO Advanced могут возникнуть некоторые типичные проблемы.
MeshCore Open и MCO Advanced поддерживаются активными сообществами энтузиастов.
Основной репозиторий MeshCore Open: https://github.com/zjs81/meshcore-open. Здесь вы можете:
Русскоязычное сообщество на форуме 4PDA активно обсуждает MeshCore Open и MCO Advanced. Здесь вы найдете:
Официальный сайт MeshCore: https://meshcore.co.uk/. Здесь доступна документация по протоколу, прошивкам и совместимому оборудованию.
MeshCore Open и его модификация MCO Advanced - это мощные инструменты для работы с LoRa mesh-сетями. Они предлагают значительно больше возможностей по сравнению с официальным клиентом и открывают новые горизонты для эффективной коммуникации в условиях ограниченной пропускной способности.
MeshCore Open - это отличный выбор для тех, кто хочет выжать максимум из своей LoRa mesh-сети. А MCO Advanced с его уникальными алгоритмами сжатия текста позволяет передавать сообщения, которые физически не поместились бы в стандартный пакет LoRa.
Экосистема MeshCore продолжает развиваться, и такие проекты, как MeshCore Open и MCO Advanced, играют ключевую роль в этом развитии. Они демонстрируют силу open-source сообщества и показывают, что децентрализованные коммуникации могут быть не только надежными, но и удобными.
💡 Совет: Начните с официального клиента MeshCore, чтобы понять основы. Когда почувствуете уверенность, переходите на MeshCore Open для расширенного функционала. А если нужна максимальная эффективность - попробуйте MCO Advanced с mesh-compressor.
Будущее децентрализованных коммуникаций уже здесь, и оно открыто для всех! 🚀
Для удобства пользователей мы собрали все актуальные ссылки на официальные источники, репозитории и обсуждения модификации MCO Advanced в одном месте. Все ссылки открываются в новой вкладке с защитой от передачи реферера.
Основная разработка модификации MCO Advanced ведется в отдельной ветке
Если бы MCO Advanced использовал тот же идентификатор пакета, что и оригинальный MeshCore Open, установка модификации приводила бы к перезаписи оригинального приложения. Раздельные ветки позволяют:
💡 Совет: Всегда проверяйте хеш-суммы скачанных файлов и подписи релизов, чтобы убедиться в подлинности сборки. Не устанавливайте приложения из непроверенных зеркал.
Актуальная стабильная версия модификации с полной поддержкой mesh-compressor, Cyr2Lat, отложенной отправки и всех последних улучшений. Доступны сборки для iOS (.ipa), Android (.apk) и Windows (.exe/.zip).
🔗 Скачать MCO Advanced 9.0.0-mco.1.6.2 с GitHub Releases
Для разработчиков и энтузиастов, желающих изучить исходный код модификации или внести свой вклад в развитие проекта. В этой ветке изменены исходные названия приложения и пакета на MCO Advanced.
🔗 Просмотреть исходный код ветки rename-mco-advanced
Русскоязычное сообщество на 4PDA - лучшее место для получения помощи, обсуждения новых версий и обмена опытом с другими пользователями MeshCore Open и MCO Advanced. Здесь публикуются анонсы релизов, скриншоты и подробные инструкции по установке.
🔗 Тема MCO Advanced на форуме 4PDA
⚠️ Важно: Для доступа к файлам на форуме 4PDA может потребоваться регистрация и авторизация. Не передавайте свои учетные данные третьим лицам и не используйте одинаковые пароли на разных сайтах. 🔥 Рекомендация: Обновляйте MCO Advanced по мере выхода новых версий. Разработчики активно исправляют ошибки и добавляют новые функции, особенно в части mesh-compressor и работы с ретрансляторами.
Благодарим всех разработчиков и участников сообщества за вклад в развитие децентрализованных коммуникаций! Если у вас есть вопросы или предложения по улучшению статьи - оставляйте комментарии или связывайтесь с нами через форму обратной связи. 🚀
MeshCore Open и MCO Advanced - клиенты для LoRa mesh-сетей 📡
Оглавление
Что такое MeshCore Open? 🎯
Ключевые особенности
[ MeshCore Open - Архитектура ]
Flutter Framework
│
├─> iOS (iPhone/iPad)
├─> Android
└─> Windows Desktop
Подключение:
├─> BLE (Bluetooth Low Energy)
└─> TCP/IP (Serial over WiFi)
Поддерживаемые платформы
Основные функции клиента 🛠️
Обмен сообщениями 💬
Прямые сообщения
Публичные каналы
Реакции на сообщения
Управление контактами 👥
Организация контактов
Группы контактов
Визуализация mesh-сети 🕸️
Просмотр маршрутов
[ Визуализация маршрута ]
[ Ваш телефон ]
│
▼ (SNR: 12 dB)
[ Ретранслятор A ]
│
▼ (SNR: 8 dB)
[ Ретранслятор B ]
│
▼ (SNR: 15 dB)
[ Контакт ]
Всего хопов: 3
Общее время: 2.4 сек
Управление маршрутом
Метрики сигнала
Карта и местоположение 🗺️
Просмотр карты
Фильтрация узлов
Обмен местоположением
Офлайн-карты
Управление устройствами 🔧
Подключение BLE/TCP
Настройки устройства
Мониторинг батареи
Настройки ретрансляторов 📡
Доступ к CLI
Управление настройками
Панель статистики
Удаленное управление
MCO Advanced - продвинутая модификация 🚀
Cyr2Lat - сжатие кириллицы 🔤
Как работает Cyr2Lat
[ Пример Cyr2Lat сжатия ]
Оригинал:
"Привет! Как дела? Всё отлично!"
Длина: 32 символа
После Cyr2Lat:
"Privet! Kak dela? Vsyo otlichno!"
Длина: 31 символ
Сжатие: ~3%
С дополнительным сжатием:
"Privet!Kak dela?Vsy otn!"
Длина: 24 символа
Сжатие: ~25%
Профили сжатия
Совместимость
mesh-compressor - ML сжатие 🧠
Как работает ML сжатие
Пример сжатия
[ mesh-compressor в действии ]
Оригинал (русский):
"Встречаемся завтра в 15:00 у входа в парк"
Длина: 42 символа
После mesh-compressor:
"mcmp:N/PjxV>Qp9ygtJ"
Длина: 19 символов
Сжатие: 55%
Оригинал (английский):
"Meeting tomorrow at 3 PM at park entrance"
Длина: 41 символ
После mesh-compressor:
"mcmp:K8xZ#mQ2vL9pR4"
Длина: 18 символов
Сжатие: 56%
Префикс mcmp:
Ограничения mesh-compressor
Индикатор сжатия
Кодирование base91
Эволюция mesh-compressor 📈
Версия 8.0.0.1.4.4 (05.05.2026)
Версия 8.0.0.1.5.0 (08.05.2026)
Версия 9.0.0.1.6.0 (11.05.2026)
Установка и настройка 📥
Официальные источники
GitHub Releases
Установка на iOS
Установка на Android
Установка на Windows
Источники MCO Advanced
Первый запуск
Сравнение с другими клиентами ⚖️
MeshCore Open vs Официальный клиент
Характеристика
MeshCore Open
Официальный клиент
Исходный код
Открытый (Open Source)
Закрытый
Платформы
iOS, Android, Windows
iOS, Android
Визуализация маршрутов
Подробная с метриками
Базовая
Управление репитерами
Полный CLI + GUI
Ограниченное
Сжатие текста
Cyr2Lat + mesh-compressor (в MCO Advanced)
Нет
Офлайн-карты
Да
Ограниченно
Частота обновлений
Еженедельно
Ежемесячно
Сообщество
Активное (GitHub, 4PDA)
Официальная поддержка
Когда выбирать MeshCore Open
MeshCore Open vs Meshtastic клиенты
Различия протоколов
Функционал клиентов
Продвинутые функции MCO Advanced 🎯
Отложенная отправка сообщений ⏱️
Как работает отложенная отправка
Настройки задержки
Переотправка сообщений 🔄
Таймаут переотправки
Закладки TCP-подключений 🔖
Преимущества закладок
Ограничение размера сообщений 📏
Зачем нужно ограничение
Решение проблем 🔍
Проблемы с подключением 🔌
BLE не находит устройство
TCP-подключение не устанавливается
Проблемы со сжатием 📦
mesh-compressor не декодирует
Cyr2Lat не работает
Проблемы с производительностью ⚡
Приложение вылетает
Медленный интерфейс
Сообщество и поддержка 👥
GitHub сообщество
Сообщество 4PDA
Официальные ресурсы MeshCore
Итоговый вердикт ✅
Сильные стороны
Слабые стороны
Рекомендации
[ Кому подходит MeshCore Open ]
✔ Опытным пользователям MeshCore
✔ Разработчикам и энтузиастам
✔ Тем, кому нужно максимальное сжатие текста
✔ Пользователям Windows
✔ Тем, кто хочет полный контроль над сетью
[ Кому лучше выбрать официальный клиент ]
✘ Новичкам в MeshCore
✘ Тем, кому нужна простота
✘ Пользователям, нежелающим разбираться в настройках
Финальные мысли
Полезные ссылки и ресурсы 🔗
Репозиторий MCO Advanced на GitHub 🐙
rename-mco-advanced репозитория HDDen. Это сделано специально, чтобы избежать конфликта имен пакетов при установке MCO Advanced рядом с оригинальным приложением MeshCore Open на одном устройстве.
[ Структура репозитория MCO Advanced ]
github.com/HDDen/meshcore-open/
│
├─> main (оригинальный meshcore_open)
│
└─> rename-mco-advanced (ветка модификации)
│
├─ Изменено имя приложения
├─ Изменен ID пакета
└─ Добавлены функции MCO Advanced
Результат: можно установить обе версии рядом!
Зачем нужна отдельная ветка
Ссылки для скачивания 📥
Релиз на GitHub (MCO Advanced 9.0.0-mco.1.6.2)
Исходный код (ветка rename-mco-advanced)
Обсуждение на форуме 4PDA