| Meshtastic: быстрый старт |
|
| Добавил(а) microsin | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Meshtastic® это проект, интенсивно использующий радиотракты LoRa в для организации платформы передачи данных на больших дистанциях при отсутствии другой надежной коммуникационной инфраструктуры. Этот проект на 100% открыт и поддерживается заинтересованным независимым сообществом.
Основные функциональные возможности: ● Большие расстояния для обмена данными (331 км, достигнутые MartinR7 & alleg). Meshtastic использует LoRa (Long-RAnge radio protocol, широко распространенный во многих регионах без необходимости получения дополнительных лицензий, сертификатов и разрешений, в отличие от радиолюбительской радиосвязи (HAM radio operations). Радиостанции Meshtastic разработаны для повторной широковещательной ретрансляции (rebroadcast) сообщений, которые были ими приняты, формируя тем самым mesh-сеть. Этот принцип организации сети гарантирует, что каждый член группы, даже если он находится на самом большом расстоянии, может принимать сообщения. Дополнительно радиостанции Meshtastic могут соединяться (paired) с одним телефоном, позволяя друзьям и семье отправлять сообщения непосредственно на ваше определенное радио. Важно отметить, что каждое устройство способно поддерживать соединение только от одного пользователя одновременно. Если вас интересует технический обзор о том, как работает Meshtastic см. врезку ниже. Когда вы отправляете сообщение на вашем сопутствующем приложении Meshtastic (companion app), оно передается на радио с помощью Bluetooth, Wi-Fi/Ethernet или последовательное соединение (serial, виртуальный COM-порт). Затем это сообщение передается по радио. Если передающий сообщение не получил подтверждение от любого другого устройства после определенного таймаут, то сообщение передается повторно до трех раз. Когда принимающая радиостанция захватила пакет, она проверяет - слышала ли это сообщение раньше. Если уже слышала, то сообщение игнорируется. Если не слышала, то сообщение ретранслируется. Для каждого сообщения, которое радиостанция ретранслирует, она декрементирует в сообщении счетчик "hop limit" ("ограничитель прыжка"). Когда радиостанция принимает пакет, у которого hop limit нулевой, она не будет ретранслировать сообщение. Радиостанция будет сохранять небольшое количество пакетов (около 30) в своей памяти, когда она не соединена с клиентским приложением (client app). При переполнении буфера пакетов более старые заменяются только более новыми приходящими текстовыми сообщениями. [Что такое mesh?] Слово "mesh" переводится как "сеть". На уровне радиоканала mesh-сеть Meshtastic это набор узлов, которые используют следующие одинаковые параметры: коэффициент расширения LoRa (spreading factor), центральная частота (center frequency) и полоса пропускания (bandwidth). Узел может состоять только в одной радиосети (radio mesh); он не будет видеть сообщения (или отвечать на сообщения) от узлов, которые используют другие значения этих параметров. Для формирования mesh-сетки узлы в ней должны использовать одинаковые значения параметров. Эти значения группируются в "предустановки" (presets, пресеты), которые могут просто выбраны с разделе конфигурации LoRa. Пресеты позволяют узлам легко настраивать одинаковые параметры радиоблока. Поверх этой mesh-радиосети находятся каналы (Channels). Логическая mesh-сеть формируется каналом с определенным именем (name) и ключом шифрования (encryption key). Канал по умолчанию (default channel) в радио-mesh это Channel 0 с пустым "name" и ключом шифрования AQ==. Узлы могут принадлежать к максимум 8 каналам в радио-mesh. Может быть создан пользовательский канал для использования определенной группой. Только узлы, сконфигурированные с одинаковым именем канала и ключом шифрования, могут читать и показывать сообщения на этом канале. Однако все узлы в радио-mesh будут принимать и могут повторно передавать сообщения (в зависимости от их роли Role) независимо от настроек канала для сообщения. Meshtastic это открытый (open source) проект, доступный на GitHub. Наши главные волонтеры донатят свое время для написания и поддержки его кода. Если вы хотите принять в этом участие, см. GitHub [2], присоединяйтесь к Discord-серверу [3] и читайте обсуждения Meshtastic Discussions [4]. См также [5]. Если вы столкнетесь с любыми проблемами при подключении к сети Meshtastic, обращайтесь на форум или Discord, это поможет как вам, так и будущим пользователям сети. Разработчики заинтересованы в волонтерах, и помогут желающим стать экспертами Meshtastic. [Быстрый старт Meshtastic] Как уже упоминалось, Meshtastic создает mesh-сеть, в которой устройства обмениваются данными с помощью LoRa radio. Соедините свой телефон или компьютер к радиостанции radio Meshtastic через Bluetooth, WiFi или USB — и коммуницируйте с другими людьми на больших расстояниях без Интернета или сотовой связи. Поддерживаемое оборудование. Перед началом работы важно определить тип используемого оборудования. Meshtastic тесно сотрудничает со своими партнерами и спонсорами, которые производят официально поддерживаемое оборудование. Эти устройства тестируются, документируются и рекомендуются для лучшего опыта с Meshtastic. Существует также широкий спектр оборудования, поддерживаемого сообществом; однако эти устройства официально не поддерживаются Meshtastic. В этом случае обращайтесь с сообществу Discord. Далее во врезках вы найдете примеры поддерживаемого железа, отсортированные по типу используемого микроконтроллера MCU. Как только вы опознаете свое оборудование, проверьте кабель данных, прошейте firmware, после чего подключите и сконфигурируйте свое устройство. Чип ESP32 оборудован и WiFi, и Bluetooth, делая его идеальным выбором для устройств, которым нужен доступ к web-интерфейсу или конфигурации на основе WiFi. Варианты на ESP32-S3 предоставляют повышенную производительность. Ниже приведен список партнерского оборудования и в конце еще устройство, поддерживаемое сообществом. [Seeed Studio] SenseCAP Indicator — устройство на основе ESP32-S3 и RP2040 Dual-MCU, с тач-скрином 4".
[RAK Wireless] RAK3312 Core module — ESP32-S3-based WisBlock modular core. [Elecrow] ThinkNode M2 — переносное устройство ESP32-S3, спроектированное для эксплуатации на улице. [LILYGO®] T-Deck / T-Deck Plus / T-Deck Pro — автономные устройства с экраном и клавиатурой. [B&Q Consulting] Station G2Station G2 — мощный трансивер LoRa для лицензированного радиолюбительского использования (HAM operation). [Поддержка комьюнити] Xiao ESP32-S3 Kit — Compact LoRa dev kit. Чип nRF52 более эффективен по энергопотреблению, чем ESP32, и его проще обновлять через UF2, но только если он оборудован Bluetooth (нет WiFi). Идеально подходит для устройств с питанием от аккумулятора или солнечной батареи. [Оборудование партнеров и спонсоров] Seeed Studio: Card Tracker T1000-E — IP65-rated card-sized tracker with GPS. RAK Wireless: WisMesh Tag — Portable location tracker with IP66 rating. Elecrow: ThinkNode M3 — nRF52840 with LR1110 radio and GPS. LILYGO®: T-Echo — All-in-one unit with E-Ink screen, GPS, and battery in injection-molded case. muzi ᴡᴏʀᴋꜱ: R1 Neo — Custom-designed nRF52840 device with GPS. RP2040 это двухядерный ARM-чип, разработанный Raspberry Pi. Оптимальный по себестоимости вариант для DIY-проектов. Оборудование от партнера RAK Wireless: RAK11310 Core module — RP2040-based WisBlock modular core with SX1262. Предложение от сообщества: Raspberry Pi Pico + Waveshare LoRa Module (замечание: Bluetooth на Pico W пока не поддерживается Meshtastic). Примечание: если ваше устройство не относится ни к одному из перечисленных выше, то просмотрите список поддерживаемых устройств (supported devices https://meshtastic.org/docs/hardware/devices/), чтобы определить, какой MCU в вашем устройстве, или обратитесь в группу Discord [3] с любыми вопросами. Ниже описаны основные шаги по быстрому старту. 1. Физическое подключение. Важное предостережение: некоторые трансиверы LoRa не допускают подачу питания, если к ним не подключена согласованная антенна. Поскольку питание часто приходит на устройство через кабель USB, обратите на это особое внимание. Включение трансивера LoRa на передачу с отключенной антенной может вывести его из строя! Подключите к компьютеру свое устройство Meshtastic кабелем USB. Некоторые кабели предназначены только для зарядки, поэтому убедитесь, что кабель USB поддерживает передачу данных и не поврежден. Для проверки кабеля можно использовать другое рабочее устройство USB, например смартфон. О работоспособности кабеля может сигнализировать появление устройства в Диспетчере Устройств при подключении (если вы используете Windows) или появление соответствующего сообщения в логе dmesg (если используете Linux). 2. Установка драйвера последовательного устройства (Serial Drivers). Многие устройства изначально поддерживаются операционной системой компьютера, и иногда последовательный драйвер не требуется. Например, устройства на основе чипов nRF52/RP2040 обычно не требуют драйвера последовательного порта, поскольку они обнаруживаются в операционной системе как флешки. Поэтому не нужно загружать драйвер для такого устройства, если не требуется установить поддержку UF2. Некоторые варианты установки драйверов описываются ниже во врезках. Вам может понадобиться установка драйвера от Silicon Labs для чипов CP210X USB-UART. Некоторые более новые платы могут потребовать драйвер CH9102 (CH340/CH341). [Windows] Если ваше устройство потребовало драйвер, загрузите его по следующим ссылкам: CP210X USB to UART bridge - Download CH9102 Driver - Windows Download CH9102 Driver - Windows Download (Direct Download for Windows 7) После установки драйвера устройство должно появиться в Диспетчере Устройств Windows, раздел COM & LPT. Оно может выглядеть примерно как одно из следующих вариантов: Silicon Labs CP210X USB to UART Bridge (COM5) [Linux] 1. Подключите свое устройство Meshtastic в порт USB. 2. Откройте Terminal и введите команду: lsusb 3. Вы должны увидеть что-то наподобие: ID xxxx:xxxx Silicon Labs CP210x UART Bridge [macOS] 1. Перейдите в Apple Menu -> About This Mac -> More Info -> System Report... -> Hardware -> USB. 2. Вы должны увидеть наподобие одной из следующих записей: CP210X USB to UART Bridge Controller [Windows] CH34x Driver - Windows Download [Linux] CH34x Driver - Linux Download [macOS] В последних версиях macOS драйверы последовательного устройства (USB Serial driver) уже встроен в систему. Если вы уже загрузили/установили драйверы, то удалите их. Удаление CH34x USB Driver. Если у вас уже загружены/установлены драйверы macOS WCH-IC CH340/CH341 ("CH341SER_MAC") через CH34x_Install_V1.5.pkg, до бы должны деинсталлировать расширение ядра (Uninstall kernel extension): 1. Отключите ваше устройство. 2. Откройте Terminal и выполните команду: sudo rm -rf /Library/Extensions/usbserial.kext 3. Перезагрузите систему (Reboot). Установка драйвера CH34x. Загрузите драйвер по ссылке: CH34x Driver - macOS Download 3. Прошивка Firmware. После выполнения шагов 1 и 2 мы можете теперь прошить Meshtastic firmware в устройство. Ниже описан процесс прошивки для некоторых популярных устройств. Рекомендуемый метод прошивки - использовать Web Flasher [6]. 1. Web Flasher требует для себя браузера Chrome или Edge, и это отличный выбор для быстрого программирования устройств. Поскольку этот метод прошивки очень прост для использования, он хорошо подойдет начинающим пользователям. 2. Консольный скрипт (CLI Script [7]) считается "способом прошивки вручную". 3. Прошивка с помощью дополнительного внешнего serial-USB адаптера считается "способом последнего шанса", когда другие методы прошивки почему-то не работают или недоступны. Примечание: web-клиент на meshtastic.local [8] перепрограммирует устройство только как путем полного стирания и переустановки с нуля (full wipe and reinstall) устройства. Если вы выбрали reinstall, то получите последний (bundled, в полном комплекте) web-интерфейс. Чтобы сохранить предыдущие настройки вы можете предварительно экспортировать свою конфигурацию перед reinstall, и затем загрузить их обратно. Устройства на платформах nRF52 и RP2040 позволяют использовать простые способы обновления firmware. Никакие драйверы или специальное ПО для этого не требуются. Drag & Drop. Перетаскивание файлов прошивки на устройства nRF52 и RP2040 приведут к автоматической установке релизов firmware. Over-The-Air (OTA). Это так называемое обновление "по воздуху", т. е. по радиоканалу. Устройства nRF52 могут обрабатывать обновления OTA прошивки, когда файл firmware передается от мобильного устройства (например смартфон) через BlueTooth. nRF Factory Erase. Вы можете захотеть выполнить полное стирание с откатом в заводское состояние (Factory Erase) перед установкой firmware, чтобы очистить данные, которые могут менять формат и место расположение между релизами. Конвертация RAK4631-R в RAK4631. Если на вашем устройстве нет загрузчика Ардуино (Arduino bootloader), то понадобится выполнить преобразование. Raspberry Pi в качестве SWDIO Flash Tool. Если ваше устройство не прошивается через USB или Bluetooth, то доступна еще одна опция - прошивка через отладочный интерфейс SWDIO. 4. Подключение и конфигурирование устройства. После прошивки Meshtastic firmware в устройство, вы можете перейти к начальной конфигурации [9]. В зависимости от типа соединения с устройством некоторые опции конфигурации могут не поддерживаться полностью. Определитесь, какой клиент подойдет вам лучше всего. Для беспроводного соединения через BlueTooth подойдут клиенты: [Модули LoRa для Meshtastic] Для устройств Meshtastic часто используются модули китайских компаний EBYTE и DX-SMART. Ниже представлен краткий обзор и сравнение четырёх LoRa-модулей этих компаний: E22-400M33S [10] Основные различия между ними заключаются в рабочем диапазоне частот, выходной мощности, дальности связи, физических размерах и используемом чипе.
Описание модулей и рекомендации по выбору 1. Выбор частоты: у модулей разные диапазоны Sub-1GHz. ● E22-400M33S [10] работает в более низком диапазоне 433/470 МГц. Главное преимущество этих частот — лучшая способность огибать препятствия и проникать сквозь стены. Это идеальный выбор для городской застройки или мест со сложным рельефом и большим количеством помех. 2. Мощность и дальность: главный критерий выбора. Это самое существенное различие между модулями, которое напрямую определяет, какую территорию они смогут покрыть. ● Для большой дальности / покрытия обширных территорий (E22-400M33S и E22-900M30S): - Это мощные модули. E22-400M33S — самый мощный в линейке (33.5 dBm) с самой большой заявленной дальностью (до 16 км). Эти модули подходят для использования на открытом воздухе, где нужна сверхдальняя связь: нефтяные месторождения, шахты, карьеры, крупные сельскохозяйственные угодья или опорные сети "умного города". Платой за мощность являются большие габариты и высокий ток до 650 мА, что приводит к высокому энергопотреблению. ● Для средней дальности / низкого энергопотребления (E22-900M22S и DX-LR20-900M22S): - Это модули со стандартной мощностью около 22 dBm и дальностью 7-8 км. 3. Чип и бренд: совместимость и стоимость. ● Серия E22 (бренд EBYTE): модули E22-900M22S и E22-900M30S построены на базе современного чипа Semtech SX1262, а E22-400M33S — на SX1262 или SX1268. Чипы серии SX126x — это новое поколение по сравнению с популярными SX127x. Они обеспечивают более низкое энергопотребление, лучшую чувствительность и более высокую скорость передачи данных. EBYTE — известный производитель, и к его модулям обычно прилагается хорошая документация и техническая поддержка. Какие модули предпочтительнее использовать для Meshtastic в России? Главный критерий выбора: частота. В России для Meshtastic исторически сложились два основных диапазона частот: 1. 868 МГц — официально разрешенный диапазон, менее зашумленный. Ваш первый шаг — узнать, какая частота используется в вашем городе/регионе. Лучше всего зайти в Telegram-сообщество `meshtastic_russia` и спросить местных участников. Вот частоты для некоторых регионов:
Как видите, в Москве, например, используются оба диапазона. Если в вашем городе еще нет сети, вы можете стать первопроходцем и выбрать диапазон самостоятельно. Какой модуль выбрать под вашу частоту? Теперь, зная частоту, можно смотреть на совместимость модулей. 1. Если в вашем регионе используется частота 433 МГц: из представленных вариантов подойдет только E22-400M33S [10]. Он специально разработан для диапазона 433/470 МГц. Это мощный модуль (33.5 dBm, до 16 км), но он довольно крупный и энергозатратный. Идеален для создания мощной стационарной базовой станции. 2. Если в вашем регионе используется частота 868 МГц: подойдут все три модуля из этого обзора: E22-900M22S, DX-LR20-900M22S и E22-900M30S. Выбор между ними будет зависеть от того, какое устройство вы собираете: - Для портативной/компактной микросоты: лучше всего подойдут E22-900M22S или DX-LR20-900M22S. Они очень маленькие, потребляют мало энергии и идеально впишутся в самодельное устройство на базе, например, ESP32. Важные нюансы при выборе устройства. Выбор радиомодуля — это только полдела. Для Meshtastic вам понадобится плата с микроконтроллером (ESP32, nRF52), к которой этот модуль подключается. Вот что нужно иметь в виду: ● Энергопотребление: если вы планируете питать устройство от аккумулятора и хотите, чтобы оно работало долго (например, в походе), обратите внимание на платы с чипом nRF52 (например, Heltec T114, LilyGo T-Echo, RAK4631). Платы на ESP32 (как Heltec V3) потребляют заметно больше энергии. ● Готовые решения: сейчас сообщество рекомендует смотреть в сторону актуальных моделей: Heltec V3, V4 (ESP32 + SX1262) и Heltec T114 (nRF52 + SX1262). ● Антенна: это, пожалуй, самый важный элемент. "Штатный пенек" на Heltec V3 в городе даст не больше 300 метров. Качественная антенна может улучшить сигнал в сотни раз. Поиск хорошей антенны — отдельный квест, в котором вам помогут местные сообщества. Итог: прежде всего определитесь с частотой в вашем регионе. Если это 433 МГц — берите E22-400M33S. Если 868 МГц — выбирайте между компактностью (E22-900M22S) и мощностью (E22-900M30S). И помните, что в конечном итоге вы собираете законченное устройство, поэтому смотрите не только на модуль, но и на платформу в целом, и конечно на антенну. [Отличие модулей E22-900M30S и E220-900M30S] Главное и по сути единственное отличие модулей E22-900M30S и E220-900M30S кроется в используемом чипе, что влечет за собой небольшие различия в характеристиках и позиционировании. Визуально и по габаритам они практически идентичны.
1. Главное отличие — чип и производительность: ● E22-900M30S построен на более старом, но мощном и проверенном чипе SX1262. Это флагманское решение Semtech, обеспечивающее превосходную чувствительность (-151 дБм) и, как следствие, большую дальность связи (12 км). Он потребляет чуть меньше тока в режиме передачи (650 мА). 2. Особенности питания: ● Модуль на SX1262 (E22) имеет более широкий диапазон питающих напряжений (начиная с 2.5V), что может быть критично для некоторых схем с нестабильным питанием. Что это значит для Meshtastic в России? Если вы собираете устройство для Meshtastic, оба модуля формально совместимы, так как работают в нужном диапазоне 868 МГц. Однако нюансы есть: ● E22-900M30S (SX1262) может дать вам больше уверенности в качестве связи на предельных расстояниях или в условиях сильных помех благодаря своей легендарной чувствительности. Это проверенный "боец". Итог: если для вас важна максимальная теоретическая дальность и надежность — выбирайте E22-900M30S (SX1262). Если вы хотите использовать более современный чип и, возможно, сэкономить без существенной потери качества для обычных городских задач — подойдет E220-900M30S (LLCC68). Прошивка Meshtastic должна работать с обоими, так как поддерживает и SX1262, и LLCC68. [Ссылки] 1. Документация Meshtastic. |