meshtastic-2.6-preview
Meshtastic 2.6 Preview здесь! Над ней работали 1,5 года, и она включает первый релиз нашей совершенно новой UI для автономных устройств — Meshtastic UI или MUI в сокращении. Мы также внедряем совершенно новый алгоритм маршрутизации для прямых сообщений. Плюс многое другое! Мы очень взволнованы этой предварительной версией, и это, вероятно, наш самый насыщенный функциями релиз со времен 2.0 в ноябре 2022 года. Нам не терпится услышать ваше мнение!
{/ truncate /}
Что значит Preview?
Это предварительная версия, что означает, что она еще не совсем готова для общего использования. Представьте её как pre-alpha. Мы делаем её доступной, чтобы собрать отзывы от сообщества, выявить скрытые ошибки и тщательно протестировать всё перед полным релизом. Если вы чувствуете себя авантюристом и хотите помочь нам улучшить последние функции, попробуйте! Если вы предпочитаете подождать более отполированную версию, это тоже нормально. Полный релиз выйдет скоро.
Ключевые функции в 2.6
Маршрутизация по следующему узлу для DM
После почти 1,5 лет подготовки, реализации, симуляций и тестирования в реальных условиях мы рады объявить о более эффективном протоколе маршрутизации для прямых сообщений. Поскольку подход обратно совместим, вы можете безопасно обновить только часть своей mesh-сети, но чем больше узлов обновлено, тем больше вы от этого выиграете.
В предыдущем посте в блоге мы объяснили, почему Meshtastic использует подход «управляемого затопления», но отметили, что особенно для прямых сообщений можно внести улучшения. Мы также рассматривали разные подходы для маршрутизации широковещательных сообщений (см., например, это предложение), но оказалось сложно превзойти текущий метод в различных топологиях, и без breaking changes можно сделать лишь немного.
Чтобы реализовать новый маршрутизатор по следующему узлу для прямых сообщений, пришлось принять несколько мер для обеспечения обратной совместимости, ограничения накладных расходов на управление маршрутизацией и использования памяти. Кроме того, мы должны убедиться, что он хорошо работает в реальных условиях, таких как мобильные узлы, асимметричные связи и потеря пакетов, которая может происходить в любом месте маршрута, особенно при увеличении трафика.
Поскольку в незашифрованном заголовке Meshtastic оставалось два неиспользуемых байта, мы теперь используем их для обозначения текущего ретранслятора пакета и узла, который, по нашему мнению, должен ретранслировать наш пакет — следующего узла. Изначально сообщение, адресованное одному получателю, будет использовать подход управляемого затопления. Затем мы будем отслеживать узел(ы), которые пытаются ретранслировать пакет за нас. Если после успешной доставки приходит ответ (например, ответ NodeInfo, подтверждение или traceroute) и узел, который ретранслирует это вам, был также (одним из) узлов, ретранслировавших исходный пакет, он будет обозначен как следующий узел отныне. Это означает, что вместо того чтобы позволить всем узлам пытаться ретранслировать пакет, ретранслировать будет только тот узел, для которого байт следующего узла совпадает. Обратите внимание, что это определяется на каждый прыжок, поэтому если есть асимметричная связь или узел на старой прошивке посередине, на этом прыжке будет использовано управляемое затопление. Когда узел перемещается или условия RF изменяются, следующий узел может стать недействительным. Поэтому узел всегда вернется к управляемому затоплению на последней попытке retransmission, если не услышит ретрансляцию от своего следующего узла.
Визуализация того, как работает маршрутизация по следующему узлу для DM в Meshtastic.
Особая благодарность @GUVWAF за работу над этой функцией.
Meshtastic UI (MUI): Новый автономный опыт
После года разработки, включая крупные изменения в инструментарии по пути, мы рады представить предварительный релиз Meshtastic UI (MUI) — совершенно нового интерфейса для автономных устройств Meshtastic. MUI обеспечивает seamless сенсорный опыт, позволяя взаимодействовать с вашей сетью Meshtastic без необходимости в приложении на телефоне.
Этот релиз — результат 12 месяцев кодирования, с 12 000 строками handwritten кода и 50 000 строками сгенерированного кода, успешно портированного на 10 различных устройств. MUI также доступен глобальной аудитории, переведенный на 18 языков.
Хотя это захватывающий milestone, MUI все еще находится в разработке. Мы активно работаем над добавлением новых функций, улучшением производительности и совершенствованием всего.
Поддерживаемые устройства
MUI совместим с рядом устройств, включая:
- Автономные LoRa-устройства с ESP32-S3 и TFT-дисплеем: LilyGo T-Deck, Seeed SenseCAP Indicator, unPhone, PICOmputer, Elecrow 5"/7" (экспериментально)
- Устройства в стиле CYD с ESP32-S3, подключенные по Serial к любому LoRa-устройству: T-HMI, Mesh-Tab, "Replicator" (ESP-4848S040), Makerfabs 4"
- Встроенные Linux-устройства с SPI/I2C и GPIOs: Raspberry Pi, Milk-V или LuckFox с TFT SPI и LoRa-шляпой
- Нативные Linux-установки: ПК с Meshstick или симуляция SIMRadio с использованием X11 MUI
Функции
MUI оснащен мощными инструментами для упрощения управления вашей сетью Meshtastic:
- Экран Dashboard — Отображает статус устройства с первого взгляда, включая новые сообщения, количество обнаруженных узлов, дату и время, настройки радио, GPS, звук, Wi-Fi и MQTT. Быстрые функции доступны через интуитивные иконки.
- Список узлов — Просмотр, фильтрация и выделение узлов в вашей сети.
- Окно чата — Отправка и получение сообщений с постоянной историей сообщений.
- Динамическая карта позиций — Панорамирование и масштабирование с настраиваемыми стилями карт для лучшей визуализации сети. Начальный набор тайлов карт для Земли доступен в трех разных стилях здесь. Просто разархивируйте и перенесите папку на SD-карту. Включенные тайлы покрывают уровни масштаба 1–6, но если нужны более высокие уровни масштаба, вам потребуется скачать дополнительные тайлы. Мы скоро предоставим больше деталей о том, как это сделать.
- Базовая настройка устройства — Быстрая настройка и корректировка базовых параметров без необходимости в приложении Meshtastic.
- Полезные инструменты — Включает mesh-сканер, измеритель сигнала, traceroute, статистику и лог пакетов.
- Режим программирования по Bluetooth — Легкое беспроводное обновление и настройка устройств с использованием Bluetooth.
![]()
Новый интерфейс Meshtastic UI (MUI) для автономных устройств с видом карты.
MUI представляет собой крупный шаг вперед в UI Meshtastic на устройстве, обеспечивая более интуитивный и удобный опыт для автономных устройств. Мы с нетерпением ждем, как сообщество использует MUI, и рассчитываем на ваши отзывы по мере того, как мы продолжаем улучшать и расширять его возможности.
Meshtastic UI можно прошить, включив опцию «Meshtastic UI» в Meshtastic Web Flasher.
Особая благодарность @mverch67 за работу над этой функцией.
InkHUD
MUI — не единственный UI, который мы запускаем с 2.6! Мы также представляем InkHUD — новый heads-up display для e-ink устройств Meshtastic. InkHUD — это простой, но мощный интерфейс, предназначенный для того, чтобы ваша сеть Meshtastic всегда была под рукой. С всегда включенным dashboard на базе eInk он обеспечивает мониторинг сети в реальном времени и полезные insights при минимальном энергопотреблении. InkHUD предлагает seamless опыт с первого взгляда без необходимости в приложении на телефоне, гарантируя, что самая важная информация всегда доступна.
![]()
Новый интерфейс InkHUD для e-ink устройств Meshtastic.
Особая благодарность @todd-herbert за работу над этой функцией.
Функции:
- Навигация одной кнопкой — Легкая навигация по меню и настройкам с помощью простого интерфейса с одной кнопкой.
- Мониторинг нескольких узлов в реальном времени — Отслеживайте несколько узлов и активность сети с первого взгляда.
- Просмотр сообщений в виде потоков — Следите за разговорами прямо на устройстве без необходимости открывать приложение на телефоне.
- Ненавязчивые уведомления — Получайте оповещения и прямые сообщения без прерывания текущего экрана.
- Настраиваемые экраны — Выбирайте и размещайте самую важную информацию с помощью настраиваемых апплетов и макетов разделенного экрана.
- Постоянный дисплей — Держите ключевые данные видимыми всегда без энергозатрат традиционных экранов.
Сейчас поддерживаемые устройства для InkHUD:
InkHUD можно прошить, включив опцию «InkHUD» в Meshtastic Web Flasher.
Другие заметные функции
Улучшенное управление файлами состояния устройства
Meshtastic 2.6 вводит более надежный способ обработки состояния устройства и данных узлов путем разделения их на отдельные файлы. Ранее они хранились вместе, что означало, что одна проблема с flash-памятью могла привести к потере данных или нестабильности системы. By keeping device state and the node database separate, Meshtastic ensures that essential system data remains intact even if there’s a problem with the node database. This change improves data integrity, reduces the risk of corruption, and makes recovery easier in the event of a filesystem issue or unexpected power loss.
Meshtastic через LAN (UDP) – Теперь на ESP32
Meshtastic 2.6 добавляет поддержку mesh-сетевого взаимодействия через локальную сеть (LAN) с использованием UDP, в настоящее время доступна для устройств ESP32 на WiFi. Эта функция позволяет узлам общаться через стандартное сетевое соединение, расширяя вашу mesh-сеть без полной зависимости от RF-сигналов. Это особенно полезно в местах с ограниченным покрытием RF или когда вы хотите связать несколько сетей Meshtastic через существующую инфраструктуру.
После активации узлы автоматически обнаруживают друг друга и подключаются через локальную сеть с минимальной настройкой. Хотя эта функция все еще находится на экспериментальной стадии, мы планируем расширить поддержку на дополнительные платформы в будущих релизах. Техническая документация разрабатывается, и мы приветствуем отзывы сообщества, чтобы помочь ее усовершенствовать.
Оптимизированный расчет времени слота LoRa
Meshtastic 2.6 включает улучшения в расчетах времени слота LoRa, делая передачу пакетов более эффективной. Сокращая время слота, в том же окне повторной трансляции становится доступно больше слотов, что снижает вероятность столкновений пакетов и улучшает общую производительность сети.
Прошивка предварительной версии Meshtastic 2.6
🚨 Прошивка предварительной версии 2.6 требует сброса устройства: Создайте резервную копию конфигурации/ключей 🚨
Теперь, поскольку мы не хотим, чтобы кто-то случайно прошил эту предварительную версию на свои устройства, мы сделали процесс прошивки немного сложнее... забавным способом! Она доступна для прошивки через Веб-программатор Meshtastic, но сначала нужно ввести специальный код. Конечно, мы не скажем вам код, но его не должно быть слишком сложно разгадать. Вот подсказка:
![]()
Новая предварительная версия прошивки, готовая к прошивке — мягко охраняемая игровым прошлым. Думайте о NES, думайте об имени Konami, введите легенду, чтобы разблокировать свое право.
Не портите веселье!
Поделитесь своим отзывом
Мы с нетерпением ждем, что вы думаете о предварительной версии Meshtastic 2.6! Если вы столкнетесь с проблемами, у вас есть вопросы или вы просто хотите поделиться мыслями, пожалуйста, присоединяйтесь к нам в Discord Meshtastic или Подреддите Meshtastic. Ваш отзыв бесценен и поможет нам сделать полный релиз еще лучше. Спасибо за то, что вы часть сообщества Meshtastic!
Визуализация того, как работает маршрутизация по следующему узлу для DM в Meshtastic.