17 KiB
Author | Title | Description | Preview |
---|---|---|---|
Assada | Meshtastic в Україні | Meshtastic — LoRaWAN Mesh Network в Україні | https://assada.dead.guru/storage/images/1690058736_image.png |
Meshtastic — це проект, який дозволяє використовувати недорогі радіоприймачі на базі LoRa як дальньобійну комунікаційну платформу в зонах без наявної або ненадійної комунікаційної інфраструктури.
[TOC]
Історія появи технології LoRa.
На початку 2015 року Semtech Corporation та дослідницький центр IBM Research представили новий відкритий енергоефективний мережевий протокол LoRaWAN (Long Range Wide Area Networks), що забезпечує значні переваги перед Wi-Fi та стільниковими мережами завдяки можливості розгортання міжмашинних (M2M) комунікацій, чи сколихнули ринок IoT.
Технологія LoRa з'явилася на світ під егідою некомерційної організації LoRa Alliance, заснованої такими компаніями, як IBM, Semtech, Cisco та ін., з метою прийняття та просування протоколу LoRaWAN як єдиний стандарт для глобальних мереж з низьким енергоспоживанням (LPWAN — від англ. Low Power Wide Area ).
Розробники LoRa Alliance позиціонують LoRa як технологію, що має значні переваги перед стільниковими мережами та WiFi завдяки можливості розгортання міжмашинних (M2M) комунікацій на відстанях до 20 км. та швидкостях до 50 Кбіт/с., при мінімальному споживанні електроенергії, що забезпечує кілька років автономної роботи на одному акумуляторі типу АА.
Діапазон застосування даної технології величезний: від домашньої автоматизації та інтернету речей до промисловості та розумних міст.
Що таке Meshtastic?
Meshtastic — це "LoRa based" проект, який дозволяє використовувати недорогі GPS-радіостанції (30 баксів плюс-мінус) як розширюваний меш GPS-комунікатор із надтривалим терміном служби батареї. Ці радіоприймачі чудово підходять для піших прогулянок, катання на лижах, велоспорту – практично для будь-якого хобі, де у вас немає надійного доступу до Інтернету. Кожен учасник вашої приватної мережі завжди може бачити місцезнаходження та відстань усіх інших учасників, а також будь-які текстові повідомлення, надіслані у ваш груповий чат або писати вам особисто через приватні повідомлення.
Радіостанції автоматично створюють і підтримують мережу LoRaWAN для пересилання пакетів у разі потреби(до 7 хопів), тому кожен у групі може отримувати повідомлення навіть від найдальшого учасника. Радіостанції за бажанням працюватимуть із вашим телефоном, але телефон не обовя`зковий.
Основна функція проекту: передача тексту та ваших координат через смартфон без використання стільникового зв'язку та інтернету.
Тобто. на ваш смартфон Android або iOS, встановлюється програма Meshtastic. Це програма-чат на зразок Telegram або Viber. Телефон з'єднується з радіомодемом через Btuetooth. Через радіомодем здійснюється зв'язок з іншими абонентами, у яких стоїть така сама програма і такий же модем. На екрані смартфона ви можете бачити список абонентів та карту їх розташування. Ви бачите груповий чат та p2p чати з учасниками мережі.
Варіанти сценаріїв застосування:
- Екстрений цифровий зв'язок при надзвичайних ситуаціях (наприклад відключення світла)
- Пошук втрачених людей
- Створення своєї радіомережі серед однодумців усередині свого району і навіть далі, що самоорганізується, у своєму власному проекті
- Передача легкої телеметрії, наприклад, з власної метеостанції, показання дозиметру чи іншого датчика
- Спорт на відкритому повітрі з обмеженим покриттям мобільного зв'язку. (Піші прогулянки горами, катання на лижах, катання на човнах, парапланеризм або квадрокоптери, і т. д.)
- Ситуації, в яких GPS-комунікатори із закритим вихідним кодом просто не допоможуть (легко додати функції для пілотів квадрокоптерів або планерів і т.д.)
- Безпечний зв'язок на великій відстані всередині груп, незалежно від стільникових операторів
Необхідне апаратне забезпечення для роботи з Meshtastic:
- Android/iOS cмартфон або комп'ютер для налаштувань і спілкування в чаті
- Meshtastic – радіомодем на основі LoRa-модулів зв'язку ==про це далі==
- антена. Краща антена – кращий зв`язок
- Li-Ion акумулятор або PowerBank для живлення модулю
Радіомережа будується на основі готових LoRa-радіомодулів. Головна особливість їх полягає у великій дальності зв'язку за дуже мізерної потужності. В Україні виділено під LoRa ділянки частот 433МГц. Саме під цю частоту вам необхідно знайти або зібрати модем і антену.
Пристрої Meshtastic
Загальний список пристроїв, які підтримуються Meshtastic можна переглянути на офіційному сайті проекту: https://meshtastic.org/docs/supported-hardware
Є кілька варіантів радіомодемів, які рекомендубться для використання в Українській мережі:
- LILYGO® TTGO LoRa32 V2.1_1.6 T-Lora — найдешевший, без GPS і не великою потужністю передачі. https://a.aliexpress.com/_Ev5JaUT
- LILYGO® T-Beam - самий популярний пристрій. Вже з GPS і більшою потужністю передачі. https://www.aliexpress.com/item/4001286458852.html
{.md-cover .md-img-r} @mat_bot ужність, енергоефективний дисплей, вбудований датчик температури і вологості. https://www.aliexpress.com/item/1005003026107533.html
Прошивка пристроїв
Для себе я обрав саме LILYGO® T-Beam як найбільш збалансований по ціні і кількості функцій. Отримавши модуль перше що треба зробити - оновити прошивку модему до останньої версії. Зробити це можна двома способами: простим через web інтерфейс і умовно складним, через esptool. Вам можуть знадобитися драйвера для serial-чіпу ch9102: https://github.com/WCHSoftGroup/ch343ser_linux
Зверніть увагу! Драйвер не підтримує версію ядра >= 6.1. Але ви можете застосувати відповідні патчі. Наприклад
0c08ee45b2
.patch
Прошивка через web інтерфейс
- Підключаємо пристрій до комп'ютера через USB
- Відкриваємо https://flasher.meshtastic.org/ і виберіть прошивку, яку потрібно завантажити на Meshtastic , та виберіть COM порт, до якого підключений ESP32.
- Натисніть кнопку "Flash" у веб-флешері. Процес прошивки може зайняти кілька хвилин.
- Після завершення прошивки пристрій перезавантажиться.
Прошивка через esptool (складний варіант)
Процес збірки і сам процес описаний UT3UMS тут: #hw/tbeam-firmware-ut3ums.md
Додатково при виборі цього способу прошивки модему можна реалізувати наступне:
- Українська мова на екрані пристрою: https://wikimesh.pp.ua/uk/налаштування/Увімкнення_Української_мови
- Збільшення потужності https://wikimesh.pp.ua/uk/налаштування/Збільшення_потужності
- Розширене логування RadioLib через Serial https://wikimesh.pp.ua/uk/налаштування/Розширене_логування_RadioLib
Перші налаштування і підключення до мережі
T-Beam і інші модеми з підтримкою Bluetooth можуть бути налаштовані з додатку. Але цей спосіб, особисто в мене, працює погано. Тому я обрав варіант використання meshtastic cli утиліти(клієнту).
Також варто зазначити що ви можете налаштувати і працювати з модемом через web клієнт: https://client.meshtastic.org/
Встановлення meshtastic-cli
Вам потрібен python3 і pip > 20. Перевірте свої версії і оновіть за необхідності:
python3 --version
pip3 --version
Встановлюємо cli клієнт:
pip3 install --upgrade pytap2
pip3 install --upgrade meshtastic
Далі можна підключити модем до комп'ютера через USB і виконати наступну команду:
meshtastic --info
Таким чином ви перевірите що все працює.
Налаштування модему.
Для початку роботи з модемом вам необхідно виконати наступні дії:
meshtastic --set-owner 'your node name' --set-owner-short 'NODE'
де your node name
- це ваше ім'я в мережі, а NODE
- це коротке ім'я, яке буде відображатися на екрані модему. Щось типу аватарки. Підтримується в тому числі і емодзі.
Встановлюємо налаштування радіо:
meshtastic --set lora.region UA_433 --set lora.modem_preset LONG_FAST
Після зміни кожного налаштування модем автоматично перезавантажиться. Параметри налаштувань можна об`єднувати в одну команду:
meshtastic --set-owner 'your node name' --set-owner-short 'NODE' --set lora.region UA_433 --set lora.modem_preset LONG_FAST
Підключення до мережі
Завантажте клієнт для вашої сторінки https://meshtastic.org/downloads
І відскануйте QR код з налаштуваннями мережі.
Для IOS використовуйте QR сканер в додатку камери. Для Android використовуйте вбудований в додаток Meshtastic сканер в налаштуваннях каналів.
Вітаю! Ви в мережі! Спробуйте написати щось в чат і ви обов`язково отримаєте відповідь якщо ваш пакет хтось "почув". Якщо ні, то спробуйте змінити місцезнаходження або використати антену з більшим коефіцієнтом підсилення. Приклади антен наведені тут: https://wikimesh.pp.ua/uk/Рекомендовані_антени
Корисні посилання
- https://wikimesh.pp.ua/uk/home - Українська документація
- https://meshtastic.org/ - основний сайт проекту
- https://t.me/meshtastic_ua - Українська спільнота в Telegram
- https://mesh.0x21h.net - карта покриття (beta)
- https://mesh.in.ua/grafana/d/R4RChebVk/mesh?orgId=1&refresh=5s - Дашборд мережі
- https://t.me/meshtastic_lviv - спільнота міста Львів
- https://t.me/meshtastic_ua_chernivtsi - спільнота міста Чернівці
- https://t.me/meshtastic_ua_odesa - спільнота міста Одеса