Mi OS 2026: обновление прошивки для T-Deck, многобайтовая маршрутизация и новое мобильное приложение 📡

Прошло немало времени с момента последнего крупного обновления, и наконец пришло время подробно рассказать о новых возможностях экосистемы Mi OS. Если вы только знакомитесь с проектом: Mi OS - это прошивка для устройства LilyGO T-Deck, построенная на базе протокола Mi Core. Mi Core, в свою очередь, представляет собой ячеистую (mesh) сеть для связи без интернета, которая за последние месяцы приобрела глобальную популярность: более 26 000 пользователей по всему миру уже отметили свои узлы на карте. И это лишь видимая часть сообщества.

Цель Mi OS с самого начала - обеспечить максимально удобный пользовательский опыт на компактных устройствах с ограниченными ресурсами. Обратная связь от сообщества через Discord помогла устранить множество ошибок, добавить международные раскладки клавиатуры и улучшить стабильность. В этом материале мы детально разберём новое обновление: архитектуру многобайтовой маршрутизации, возможности мобильного приложения, синхронизацию данных и практические рекомендации по использованию.


Оглавление

Экосистема Mi Core: как работает автономная mesh-сеть 🔗

Аппаратная и программная основа

В основе устройств, совместимых с Mi OS, лежит микроконтроллер ESP32 и радиомодуль LoRa (чаще всего SX1262). Эта связка обеспечивает баланс между энергоэффективностью, дальностью связи и вычислительной мощностью для обработки сетевых протоколов.

┌────────────────────────────────────
│  [ ESP32 ] ──I2C/SPI──► [ SX1262 LoRa ] ──► 📡
│       │
│       ├─UART──► [ Дисплей / Клавиатура ]
│       │
│       ├─I2C──► [ GNSS модуль ] ──► 🛰️
│       │
│       └─Bluetooth──► [ Смартфон / Приложение ]
│
│  Питание: аккумулятор + управление сном
│  Защита: шифрование, аутентификация узлов
└────────────────────────────────────

Принципы работы mesh-топологии

Сеть Mi Core не имеет центральной инфраструктуры. Каждый узел может выполнять одну или несколько ролей:

Роль узла Функция Потребление
Клиент Отправка/приём сообщений Низкое 🔋
Ретранслятор Передача пакетов между узлами Среднее ⚡
Маршрутизатор Построение таблиц маршрутизации Высокое 🔄
Шлюз Мост в интернет (опционально) Очень высокое 🌐

Пакеты передаются по принципу «хоп-за-хопом»: каждый узел, получивший сообщение, проверяет, является ли он конечным адресатом. Если нет - пересылает дальше, основываясь на локальной таблице маршрутизации. Это обеспечивает отказоустойчивость: если один путь недоступен, сеть автоматически находит альтернативу.

Адресация: от 1 до 3 байт

Одно из ключевых нововведений обновления - поддержка многобайтовых адресов. Ранее использовалась однобайтовая адресация (256 уникальных идентификаторов), что создавало конфликты в плотных сетях. Теперь доступны:

  • 1 байт: 256 адресов - подходит для изолированных групп 🎯
  • 2 байта: 65 536 адресов - оптимально для городов и регионов 🏙️
  • 3 байта: 16 777 216 адресов - глобальный масштаб, минимизация коллизий 🌍

💡 Важно: Не все ретрансляторы в сети ещё обновлены до поддержки многобайтовых адресов. Для совместимости с устаревшими узлами можно использовать однобайтовый режим, но это ограничивает масштабируемость.

Как работает маршрутизация

Алгоритм построения маршрута в Mi Core основан на метриках:

  1. RSSI (Received Signal Strength Indicator): уровень сигнала - чем выше, тем надёжнее связь 📶
  2. SNR (Signal-to-Noise Ratio): отношение сигнала к шуму - влияет на вероятность ошибки 🎚️
  3. Hop count: количество переходов - кратчайший путь не всегда самый надёжный 🔢
  4. Node reliability: историческая стабильность узла как ретранслятора 📊

При отправке сообщения узел выбирает оптимальный путь на основе взвешенной комбинации этих параметров. Если связь прерывается, пакет может быть перенаправлен по альтернативному маршруту без участия отправителя.


Новое мобильное приложение: управление сетью со смартфона 📱

Философия интерфейса: просто, но мощно

Приложение разработано в том же минималистичном стиле, что и интерфейс T-Deck. Цель - дать пользователю доступ к расширенным функциям без перегрузки интерфейса. Основные возможности:

  • Подключение к устройствам Mi OS по Bluetooth 🔗
  • Просмотр карты с узлами и маршрутами 🗺️
  • Отправка сообщений через подключённый узел ✉️
  • Управление контактами и каналами 👥
  • Настройка параметров радио и GPS ⚙️

Карта: визуализация сети в реальном времени

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

┌────────────────────────────────────
│  [ Карта сети ]
│
│  🟢 Узел (клиент)          📍 Ваша позиция
│  🔵 Ретранслятор           📶 Уровень сигнала
│  🟠 Конфликт ID            🔄 Активный маршрут
│
│  Легенда:
│  ─────  Линия связи (качество по цвету)
│  ●      Узел (размер = активность)
│  ▲      Ретранслятор (направление антенны)
│
│  Интерактив:
│  • Тап по узлу → инфо (GPS, имя, статус)
│  • Долгий тап → анализ маршрута
│  • Свайп → переключение слоёв (сигнал/маршрут/конфликты)
└────────────────────────────────────
Анализ маршрута: от догадок к точности

Раньше путь пакета можно было лишь приблизительно оценить по логам. Теперь приложение позволяет выполнить детальный анализ для любого сообщения:

  1. Удерживайте сообщение в чате → «Анализ пути» 🔍
  2. На карте отобразится точная цепочка узлов, через которые прошёл пакет 🗺️
  3. Для каждого хопа показаны:
    • Время задержки ⏱️
    • Уровень сигнала при приёме/передаче 📶
    • Тип адреса (1/2/3 байта) 🔢
  4. Если от узла не было рекламы маршрута, вверху отобразится «0» - это нормально для пассивных клиентов 📭

Это особенно полезно при настройке сети: вы видите, какие ретрансляторы реально участвуют в передаче, а какие - лишь формально присутствуют в эфире.

Индикатор сигнала: мгновенная оценка покрытия

В нижней части экрана приложения отображается индикатор сигнала, аналогичный тому, что есть на T-Deck. Он рассчитывается на основе последних принятых пакетов и показывает:

Значение Интерпретация Рекомендация
●●●●● Отличный сигнал, стабильная связь Можно отправлять большие пакеты
●●●○○ Умеренный сигнал, возможны потери Использовать короткие сообщения
●●○○○ Слабый сигнал, высокий риск ошибок Переместиться или добавить ретранслятор
○○○○○ Нет сигнала в зоне видимости Проверить антенну / режим работы

⚠️ Важно: Наличие сигнала не гарантирует возможность отправки сообщения. Сеть может быть перегружена, или маршрут до адресата может отсутствовать. Индикатор показывает только физический уровень связи.


Управление контактами и синхронизация между устройствами 👥

Почему контакты не добавляются автоматически

В Mi OS действует принцип «явного доверия»: контакты, приходящие через сеть, не добавляются в адресную книгу автоматически. Это защищает от спама и несанкционированного отслеживания. Добавить контакт можно вручную через меню «Контакты» в приложении или на T-Deck.

QR-код: быстрый обмен контактами и ключами

Для упрощения настройки приложение поддерживает обмен данными через QR-коды:

  • Экспорт контакта: генерируется QR с публичным ключом и адресом узла 📤
  • Импорт контакта: сканирование кода добавляет узел в адресную книгу 📥
  • Экспорт ключей: для безопасной передачи приватных настроек (требует подтверждения на устройстве) 🔐
┌────────────────────────────────────
│  [ Обмен через QR ]
│
│  Устройство A:                    Устройство B:
│  1. Открыть «Контакты»           1. Открыть «Сканировать»
│  2. Выбрать узел → «Экспорт»     2. Навести камеру на код
│  3. Показать экран               3. Подтвердить импорт
│                                  4. Контакт добавлен
│
│  Формат данных в QR:
│  {
│    "node_id": "3B:7A:12",
│    "public_key": "ed25519:...",
│    "name": "Alice_TDeck",
│    "channels": ["#test", "#local"],
│    "timestamp": 1714000000
│  }
└────────────────────────────────────
Список стат: портативная история сети

Одна из самых мощных функций приложения - работа со «списком стат» (stats list). Это локальная база данных, которая хранит:

  1. Историю всех увиденных узлов (до 1800+ записей) 📋
  2. Маршруты, по которым проходили пакеты 🗺️
  3. Статистику сигнала и задержек для каждого узла 📊
  4. Временные метки последней активности ⏰

Список хранится в памяти смартфона и может быть экспортирован в другое устройство с Mi OS. Это позволяет:

  • Быстро «ознакомить» новый узел с топологией сети 🔄
  • Перенести историю маршрутов для офлайн-анализа 💾
  • Синхронизировать данные между несколькими устройствами одного пользователя 📱📱
Как экспортировать и импортировать список

Процесс синхронизации максимально упрощён:

  1. В приложении откройте «Настройки» → «Данные» ⚙️
  2. Нажмите «Экспорт списка стат» → файл сохранится в памяти устройства 📤
  3. Передайте файл на другое устройство (через кабель, облако или локальную сеть) 🔄
  4. На целевом устройстве: «Импорт списка стат» → данные добавятся в базу 📥

💡 Совет: Список стат может занимать значительный объём памяти при большом количестве узлов. Регулярно очищайте устаревшие записи (старше 30 дней) через меню «Управление данными».


Управление каналами и хэштеги: гибкая сегментация трафика #️⃣

Что такое канал в Mi Core

Канал - это логическое разделение трафика внутри физической сети. Все узлы, настроенные на один канал, видят сообщения друг друга. Это позволяет:

  • Изолировать группы пользователей (например, экспедиция, локальное сообщество, тестовая группа) 👥
  • Снизить нагрузку на эфир, разделив трафик по темам 📉
  • Организовать приватные каналы с шифрованием 🔐

Хэштеги: удобный способ управления каналами

В приложении можно добавлять каналы через хэштеги:

  1. Откройте меню «Каналы» → «Добавить» ➕
  2. Введите название с хэштегом: #yorkshire, #test, #emergency 🏷️
  3. Приложение автоматически настроит параметры канала (частота, мощность, режим шифрования) ⚙️
  4. Канал появится в списке и станет доступен для отправки сообщений 📡

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

Конфликты каналов и как их избежать

Если несколько групп используют одинаковый хэштег, но разные параметры (частота, ключ шифрования), возникает конфликт: сообщения не доходят, хотя канал «виден» в списке. Чтобы этого избежать:

Параметр Рекомендация Проверка
Частота Использовать региональный план (RU864, EU868) Сравнить в «Настройки» → «Радио»
Ключ шифрования Генерировать уникальный для приватных каналов Экспорт/импорт через QR
Режим адреса Согласовать 1/2/3 байта внутри группы Проверить в «Инфо канала»
Мощность передачи Не превышать разрешённые лимиты Сверить с локальным законодательством
Одновременная работа с несколькими каналами

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

  • Следить за общим каналом (#test) и приватным (#expedition) одновременно 👀
  • Быстро переключаться между контекстами без перенастройки радио 🔄
  • Ретранслировать сообщения между каналами (требует ручной настройки и понимания рисков) 🌉

⚠️ Внимание: Ретрансляция между каналами может нарушить изоляцию трафика и привести к утечке приватных сообщений. Используйте эту функцию только при полном понимании последствий.


Поддержка устройств с аппаратной клавиатурой ⌨️

Почему это важно для автономной связи

В последние месяцы растёт интерес к компактным Android-устройствам с физической клавиатурой: Unihertz Titan Pocket, F(x)tec Pro1 и другие. Такие устройства идеально подходят для работы с Mi OS:

  • Физическая клавиатура ускоряет ввод сообщений в полевых условиях ⚡
  • Компактный форм-фактор удобен для ношения в рюкзаке или на поясе 🎒
  • Отсутствие зависимости от интернета делает их надёжным инструментом в экстремальных ситуациях 🆘

Как приложение адаптируется под клавиатуру

Приложение автоматически определяет подключённую аппаратную клавиатуру и меняет интерфейс:

  1. Поле ввода текста получает фокус при открытии канала - можно сразу печатать ⌨️
  2. Центральная кнопка интерфейса меняет функцию: вместо эмодзи-панели становится кнопкой отправки 📤
  3. Доступ к эмодзи сохраняется через комбинацию клавиш (например, Ctrl+Space) 😊
  4. Поддерживаются международные раскладки, добавленные благодаря обратной связи сообщества 🌍
┌────────────────────────────────────
│  [ Интерфейс с клавиатурой ]
│
│  ┌──────────────────────────┐
│  │ #expedition              │
│  │ Alice: Встреча в 18:00  │
│  │ [Поле ввода] █           │ ← Фокус здесь
│  └──────────────────────────┘
│
│  [📤 Отправить]  [⚙️ Настройки]
│
│  Горячие клавиши:
│  Enter          → Отправить
│  Ctrl+Enter     → Новая строка
│  Ctrl+Space     → Эмодзи-панель
│  Ctrl+K         → Переключение канала
│  Ctrl+L         → Карта / Список чатов
└────────────────────────────────────
Полностью автономный режим

Устройства с клавиатурой часто используются в условиях отсутствия интернета. Приложение поддерживает полную офлайн-работу:

  • Кэшированные карты загружаются заранее и работают без подключения 🗺️
  • Все функции отправки/приёма сообщений доступны через подключённый T-Deck или V4 📡
  • Локальная база контактов и статистика хранится в памяти устройства 💾
  • Синхронизация с другими устройствами возможна через локальную передачу файлов 🔄
Рекомендации по выбору устройства

Если вы рассматриваете покупку устройства с клавиатурой для работы с Mi OS, обратите внимание на:

Критерий Минимум Рекомендуется
ОЗУ 4 ГБ 6+ ГБ (для кэширования карт)
Память 64 ГБ 128+ ГБ (для истории сети)
Аккумулятор 3000 мАч 4000+ мАч (для полевой работы)
Поддержка Bluetooth 5.0+ ✅ Обязательно ✅ Обязательно
Защищённый корпус Желательно IP67+ для экстремальных условий

💡 Совет: Unihertz Titan Pocket - отличный баланс цены и функциональности для работы с Mi OS. Но любое Android-устройство с клавиатурой и Bluetooth 5.0+ будет совместимо.


Установка и доступность приложения 📲

Android: прямая загрузка с сайта

Приложение для Android доступно для скачивания напрямую с официального сайта проекта. Это позволяет обходить ограничения магазинов и быстро получать обновления:

  1. Перейдите на официальный сайт проекта 🌐
  2. Найдите раздел «Download» или «Mobile App» 📥
  3. Скачайте APK-файл последней версии 🔽
  4. Разрешите установку из неизвестных источников в настройках безопасности ⚙️
  5. Установите приложение и запустите 🚀

⚠️ Важно: Скачивайте приложение только с официального сайта. Сторонние источники могут распространять модифицированные версии с уязвимостями или вредоносным кодом.

iOS: ожидание в App Store

Версия для iOS находится в процессе модерации и скоро появится в App Store. После публикации:

  • Откройте App Store на устройстве Apple 🍎
  • Найдите приложение по названию проекта 🔍
  • Нажмите «Загрузить» и дождитесь установки ⏳
  • Предоставьте необходимые разрешения (Bluetooth, геолокация, уведомления) 🔐
Необходимые разрешения и зачем они нужны

Для полноценной работы приложение запрашивает следующие разрешения:

Разрешение Цель Обязательно
Bluetooth Подключение к T-Deck / V4 ✅ Да
Геолокация Отображение на карте, обновление позиции узла ⚠️ Для карты
Хранилище Сохранение списка стат, экспорт/импорт ⚠️ Для синхронизации
Уведомления Оповещения о новых сообщениях ❌ Нет
Камера Сканирование QR-кодов контактов ⚠️ Для быстрого импорта
Решение частых проблем при установке

Если приложение не устанавливается или не подключается к устройству:

  1. Проверьте версию Android: требуется Android 8.0+ (API 26) 📱
  2. Включите Bluetooth и геолокацию: оба сервиса должны быть активны 🔗📍
  3. Перезагрузите T-Deck: иногда помогает сброс соединения 🔄
  4. Обновите прошивку T-Deck: убедитесь, что устройство работает на последней версии Mi OS ⚙️
  5. Проверьте права доступа: в настройках приложения разрешите все необходимые разрешения ⚙️

💡 Совет: Если подключение не устанавливается, попробуйте «забыть» устройство в настройках Bluetooth и выполнить сопряжение заново.


Этикет сети: почему важно контролировать ботов и тестовый трафик 🤖

Назначение тестового канала

Канал #test (или аналогичный) предназначен для проверки связи, отладки маршрутов и обучения новых пользователей. Однако его использование требует ответственности:

  • Тестовый канал использует ту же частоту, что и все остальные каналы в регионе 📡
  • Каждое сообщение в #test занимает эфирное время, которое могло бы использоваться для важных коммуникаций ⏱️
  • Автоматические боты, отвечающие на каждое сообщение, создают каскадный трафик и перегружают сеть 🤖🤖🤖

Как боты влияют на сеть

Представьте ситуацию: один пользователь отправляет тестовое сообщение. Пять ботов автоматически отвечают на него. Каждый ответ видят все узлы в радиусе действия, и некоторые из них тоже могут иметь ботов. Результат:

┌────────────────────────────────────
│  [ Эффект домино от ботов ]
│
│  Пользователь: "Привет, тест" 🗣️
│       │
│       ▼
│  Бот 1: "Получено"     Бот 2: "ОК"
│       │                 │
│       ▼                 ▼
│  Бот 3: "Пинг"    Бот 4: "Эхо"
│       │                 │
│       ▼                 ▼
│  Бот 5: "Тест"    ... и так далее
│
│  Результат:
│  • 1 сообщение → 10+ ответов
│  • Занято эфирное время для всех
│  • Полезные сообщения могут потеряться
│  • Батареи узлов разряжаются быстрее
└────────────────────────────────────
Правила ответственного тестирования

Чтобы не мешать работе сети, соблюдайте простые правила:

  1. Ограничьте частоту тестов: не отправляйте сообщения чаще раза в 5-10 минут ⏰
  2. Отключите автоответчиков: если вы запускаете бота, настройте его на редкие или ручные ответы 🤖⚙️
  3. Используйте локальные каналы: для тестов в пределах одной группы создайте приватный канал с уникальным хэштегом 🔐
  4. Уважайте эфир: помните, что каждый байт в эфире - общий ресурс сообщества 🤝
Инструменты для мониторинга нагрузки

Приложение и T-Deck предоставляют средства для оценки нагрузки на сеть:

  • Счётчик пакетов: показывает количество принятых/отправленных сообщений за период 📊
  • График загрузки: визуализирует активность в эфире по времени 📈
  • Фильтр по каналам: позволяет оценить вклад каждого канала в общую нагрузку 🔍

🔥 Ключевая мысль: Тестовый канал - не изолированная песочница. Это часть общей сети, и каждое сообщение влияет на всех. Ответственное использование - залог стабильности для каждого участника.


Что дальше: планы развития и как остаться в курсе 🗓️

Запланированные улучшения

Команда разработки активно работает над новыми функциями. В ближайших обновлениях ожидаются:

  • Кастомизация уведомлений: выбор звуков, обоев и стилей для T-Deck 🔔🎨
  • Расширенная аналитика: детальные отчёты по производительности сети и узлам 📉
  • Поддержка новых устройств: адаптация под будущие модели с LoRa и аппаратной клавиатурой 🆕
  • Улучшенная офлайн-карта: более детальные слои и оптимизация кэширования 🗺️⚡

Как участвовать в развитии проекта

Mi OS - проект с открытым исходным кодом, и вклад сообщества играет ключевую роль. Вы можете помочь:

  1. Тестирование: устанавливайте бета-версии и сообщайте об ошибках через Discord или GitHub 🐛
  2. Документация: помогайте переводить руководства и создавать туториалы для новых пользователей 📚
  3. Разработка: если вы программист - присылайте пул-реквесты с улучшениями или исправлениями 💻
  4. Обратная связь: делитесь идеями и сценариями использования в сообществе - это помогает расставлять приоритеты в разработке 💬
Где следить за обновлениями

Чтобы не пропустить важные анонсы:

  • Официальный сайт проекта - релизы и документация 🌐
  • Discord-сервер - живое общение с разработчиками и пользователями 💬
  • GitHub-репозиторий - исходный код, баг-трекер, обсуждения 🐙
  • Социальные сети - анонсы и новости проекта 📱
Заключение: сеть растёт благодаря вам

Успех Mi OS и экосистемы Mi Core - это результат совместных усилий тысяч пользователей по всему миру. Каждый узел на карте, каждый отзыв в Discord, каждая строчка кода вносит вклад в развитие автономной связи будущего.

Если вы только начинаете путь в мире mesh-сетей - не бойтесь экспериментировать, задавать вопросы и делиться опытом. Если вы опытный пользователь - помогайте новичкам, тестируйте новые функции и предлагайте улучшения. Вместе мы строим сеть, которая работает там, где нет интернета.

Спасибо, что вы с нами. Вперёд, к новым горизонтам автономной связи! 🚀📡

📌 Источник: Материал подготовлен на основе официального анонса обновления и технической документации проекта. Актуальная информация, загрузка приложения и участие в сообществе доступны на официальном сайте проекта.


🔥 Репетиторы по математике • 5-11 класс • Поступление в физико-математические школы России