LoRa-радиоканал · Без сотовой связи и интернета в поле

GPS LoRa-трекинг в реальном времени
там, где нет сети

MeshTrack — система трекинга для гор, леса, полей и водоёмов.
Трекеры передают позицию по LoRa-радиоканалу на десятки километров,
приложения показывают движение на карте,
шлюзы Wi-Fi/GSM выводят данные в интернет.

Проверено на парапланерной гонке RusXFly 2025 в Приэльбрусье (Пятигорск — Джилы-Су — Кисловодск): 40 трекеров, высота 2600 м, снег, горы
— трекинг спортсменов работал.

MeshTrack Desktop: карта с маркерами летателей и панель трекеров справа
Десктоп-приложение: карта с маркерами и панель телеметрии

Как это работает

Координаты трекера передаются по LoRa (радиоканал). Доступны сетевой или полностью локальный варианты работы.

1

Трекер

Например, InnoTracker: ГЛОНАСС + LoRa, пакет 21 байт.
На борту Bluetooth и ретрансляция.
В автономном режиме работает несколько суток.

2

Шлюз

Принимает выбранный протокол по LoRa и передаёт данные по Wi-Fi или GSM.
В USB-режиме подключается к ноутбуку и работает с MeshTrack Desktop без интернета.

3

Системы мониторинга

Ретрансляция в любую систему трекинга: Wialon, GlonassSoft, Locarus, Traccar.
Для быстрого старта можно подключить бесплатный free-gps.ru.

4

Онлайн-доступ

После настройки Wialon или другой системы мониторинга трек и события доступны в браузере или приложении платформы.
Доработаем своё приложение под вашу задачу.

Локальная работа без интернета

С ноутбуком. Шлюз подключается к ноутбуку по USB, а MeshTrack Desktop получает данные напрямую. Карты и область просмотра загружаются заранее.

С телефона. Телефон подключается по Bluetooth напрямую к трекеру. В приложении LoRa RADAR видны сохранённые в трекере объекты и их маршруты; карты для офлайн-режима также загружаются заранее.

Открытый код

Мы публикуем исходные коды проекта, но часть компонентов закрыта
из-за использования сторонних платных сервисов, например картографии.
Продажа этих компонентов позволяет нам развивать проект.

AGLoRa

Исходный DIY-проект: Arduino, GPS, LoRa и Bluetooth. Решение, из которого выросла система MeshTrack.

github.com/Udj13/AGLoRa

AGLoRa Client

Клиент AGLoRa (Android, iOS). Это отдельный клиент для быстрого тестирования собранного модуля.

github.com/Udj13/AGLoRa-client-flutter

MeshTrack Desktop

Десктоп-приложение: карта, телеметрия, история и экспорт треков. Сборки доступны в GitHub Releases.

github.com/Udj13/meshtrack-desktop

Прошивки MeshTrack

Прошивки для готовых Meshtastic-совместимых LoRa-модулей.

Сборки — по запросу.

Разработка с ИИ-агентами

Схемотехническая база делается людьми, но активное использование ИИ-агентов позволяет быстро и дёшево доработать ПО проекта под вашу задачу.

Это не вайбкодинг

Первые версии прошивок и приложений написаны до активного распространения ИИ-агентов.

Разработка по-прежнему требует инженера: тесты в поле, поиск и устранение аппаратных проблем.

Агенты ускоряют!

ИИ-агенты активно используются в разработке и тестировании софта.

Цикл «идея → прошивка → тесты → вывод» укладывается в часы вместо недель, а результат виден сразу.

Задача человека — выбор правильной архитектуры, схемотехнические решения, контроль результата.

Софт под вашу задачу — быстро

Клиентскую программу под вашу уникальную потребность можно собрать гораздо быстрее, чем несколько лет назад.

Высказывайте свои идеи и пожелания и получайте индивидуальное решение!

Репозитории подготовлены к работе с агентами

Все проекты по возможности оптимизированы под использование ИИ-агентов и содержат файлы AGENTS.md с максимально подробными инструкциями: как собрать, прошить, настроить и проверить.

Инструкции написаны так, чтобы задачу могла выполнить даже недорогая локальная LLM — необязательно самая дорогая облачная модель. Агент найдёт нужные разделы документации и выполнит работу с первого раза.

Разумеется, агент не спаяет за вас модуль и не измерит КСВ антенны. Если вы самостоятельно собираете устройство, вы должны понимать, что делаете. Но всегда можно проконсультироваться у ИИ! 🙈

Просто покажите проект своему агенту

  1. Откройте репозиторий. Склонируйте или скачайте открытый проект из раздела «Открытый код» — там всё необходимое для сборки, настройки и прошивки.
  2. Сформулируйте задачу обычными словами. Например: «настрой шлюз на мой Traccar», «добавь в трекер новый датчик», «собери прошивку под мой модуль». Специальный язык не нужен.
  3. Агент сделает работу сам. Он прочитает AGENTS.md и документацию, найдёт нужные инструкции и выполнит настройку, сборку или прошивку.

Не знаете, какую архитектуру выбрать и что именно поручить агенту? Опишите задачу — подскажем по почте.

Безопасность и шифрование

Почему в MeshTrack нет шифрования на радиоканале — и чем это обосновано.

Нет шифрования — намеренно

В проекте специально не используется шифрование данных по нескольким причинам:

  • Регуляторные риски. Дальность связи LoRa превышает порог в 400 м (Постановление Правительства РФ № 313), поэтому шифрование потребовало бы лицензии ФСБ на разработку шифровальных средств и нотификации для ввоза и оборота.
  • Размер пакета. Технически, добавить шифрование легко, но для LoRa каждый байт важен! Короткий пакет сокращает время в эфире и расход энергии. Сжатие данных в пакете не является средством криптографической защиты.
  • Информационная безопасность. Прозрачность передаваемых данных и замкнутый контур ИБ снижают риски для оператора. Если нода открыта для посторонних, вы не контролируете, кто и для чего использует её ретрансляцию: через неё могут передавать незаконный трафик, использовать её как навигационный маяк или канал связи с БПЛА. Вы ретранслируете чужие пакеты, не зная их содержимого, — и это создаёт репутационные и правовые риски.

Как настраивается совместимость

Это похоже на обычную эфирную рацию: приёмник и трекер настраиваются на общий канал и параметры передачи:

  • Частота (868 / 433 МГц и суб-диапазоны)
  • Sync word — фильтр для данных на уровне приёмника
  • Spreading Factor (SF7–SF12) — компромисс дальности и скорости
  • Bandwidth, Coding Rate и скорость передачи
  • Бинарный формат пакета, адаптированный под задачу

Эти параметры помогают разделить устройства и уменьшить случайные совпадения, но не подтверждают отправителя и не защищают содержимое пакета. Совместимый приёмник может получить незашифрованные данные.

Сравнение с Meshtastic и LoRaWAN-сетями

Meshtastic — известный и серьёзный проект, больше ориентированный на обмен сообщениями. Тем не менее, пакет Meshtastic может содержать данные о координатах устройства, так что было бы странно не поддержать программно такие распространённые устройства! Большинство продаваемых на маркетплейсах плат LoRa уже идут с прошивкой Meshtastic.

MeshTrack и Meshtastic используют разные архитектуры и форматы пакетов. Основное отличие MeshTrack — попытка максимально уменьшить размер пакета: это критически влияет на дальность, время трекера в эфире и возможность ретрансляций (передачи данных от трекера к трекеру по цепочке). Это не выдуманная проблема, передача одного пакета Meshtastic (60 байт) на максимально дальнобойном SF12 занимает более одной секунды. Обычно это не проблема, но иногда в сети могут быть десятки устройств.

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

Шлюз MeshTrack может принимать пакеты Meshtastic и LoRaWAN, но не является полноценной LoRaWAN-базовой станцией или Meshtastic-нодой. Совместимость приёма сообщений Meshtastic зависит от протокола, версии, параметров приёмника и режима прошивки шлюза. Отсутствие ChirpStack и сетевого сервера — архитектурное отличие, а не дополнительная защита данных.

Заказать трекер или проконсультироваться

Опишите задачу, количество объектов, регион и нужную систему мониторинга. Подберём трекеры и шлюз и поможем настроить передачу данных.

Написать на почту

Контакты

Вопросы, заказ оборудования и предложения — пишите:

Евгений Шлягин · shlyagin@gmail.com · профиль на GitHub