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-сеть 🔗
- Аппаратная и программная основа
- Принципы работы mesh-топологии
- Новое мобильное приложение: управление сетью со смартфона 📱
- Философия интерфейса: просто, но мощно
- Карта: визуализация сети в реальном времени
- Управление контактами и синхронизация между устройствами 👥
- Почему контакты не добавляются автоматически
- QR-код: быстрый обмен контактами и ключами
- Управление каналами и хэштеги: гибкая сегментация трафика #️⃣
- Что такое канал в Mi Core
- Хэштеги: удобный способ управления каналами
- Поддержка устройств с аппаратной клавиатурой ⌨️
- Почему это важно для автономной связи
- Как приложение адаптируется под клавиатуру
- Установка и доступность приложения 📲
- Android: прямая загрузка с сайта
- iOS: ожидание в App Store
- Этикет сети: почему важно контролировать ботов и тестовый трафик 🤖
- Назначение тестового канала
- Как боты влияют на сеть
- Что дальше: планы развития и как остаться в курсе 🗓️
- Запланированные улучшения
- Как участвовать в развитии проекта
Экосистема 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 основан на метриках:
- RSSI (Received Signal Strength Indicator): уровень сигнала - чем выше, тем надёжнее связь 📶
- SNR (Signal-to-Noise Ratio): отношение сигнала к шуму - влияет на вероятность ошибки 🎚️
- Hop count: количество переходов - кратчайший путь не всегда самый надёжный 🔢
- Node reliability: историческая стабильность узла как ретранслятора 📊
При отправке сообщения узел выбирает оптимальный путь на основе взвешенной комбинации этих параметров. Если связь прерывается, пакет может быть перенаправлен по альтернативному маршруту без участия отправителя.
Новое мобильное приложение: управление сетью со смартфона 📱
Философия интерфейса: просто, но мощно
Приложение разработано в том же минималистичном стиле, что и интерфейс T-Deck. Цель - дать пользователю доступ к расширенным функциям без перегрузки интерфейса. Основные возможности:
- Подключение к устройствам Mi OS по Bluetooth 🔗
- Просмотр карты с узлами и маршрутами 🗺️
- Отправка сообщений через подключённый узел ✉️
- Управление контактами и каналами 👥
- Настройка параметров радио и GPS ⚙️
Карта: визуализация сети в реальном времени
Карта в приложении отображает не просто точки, а структуру mesh-сети с детализацией до уровня отдельных ретрансляторов. Ключевые элементы:
┌──────────────────────────────────── │ [ Карта сети ] │ │ 🟢 Узел (клиент) 📍 Ваша позиция │ 🔵 Ретранслятор 📶 Уровень сигнала │ 🟠 Конфликт ID 🔄 Активный маршрут │ │ Легенда: │ ───── Линия связи (качество по цвету) │ ● Узел (размер = активность) │ ▲ Ретранслятор (направление антенны) │ │ Интерактив: │ • Тап по узлу → инфо (GPS, имя, статус) │ • Долгий тап → анализ маршрута │ • Свайп → переключение слоёв (сигнал/маршрут/конфликты) └────────────────────────────────────
Анализ маршрута: от догадок к точности
Раньше путь пакета можно было лишь приблизительно оценить по логам. Теперь приложение позволяет выполнить детальный анализ для любого сообщения:
- Удерживайте сообщение в чате → «Анализ пути» 🔍
- На карте отобразится точная цепочка узлов, через которые прошёл пакет 🗺️
- Для каждого хопа показаны:
- Время задержки ⏱️
- Уровень сигнала при приёме/передаче 📶
- Тип адреса (1/2/3 байта) 🔢
- Если от узла не было рекламы маршрута, вверху отобразится «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). Это локальная база данных, которая хранит:
- Историю всех увиденных узлов (до 1800+ записей) 📋
- Маршруты, по которым проходили пакеты 🗺️
- Статистику сигнала и задержек для каждого узла 📊
- Временные метки последней активности ⏰
Список хранится в памяти смартфона и может быть экспортирован в другое устройство с Mi OS. Это позволяет:
- Быстро «ознакомить» новый узел с топологией сети 🔄
- Перенести историю маршрутов для офлайн-анализа 💾
- Синхронизировать данные между несколькими устройствами одного пользователя 📱📱
Как экспортировать и импортировать список
Процесс синхронизации максимально упрощён:
- В приложении откройте «Настройки» → «Данные» ⚙️
- Нажмите «Экспорт списка стат» → файл сохранится в памяти устройства 📤
- Передайте файл на другое устройство (через кабель, облако или локальную сеть) 🔄
- На целевом устройстве: «Импорт списка стат» → данные добавятся в базу 📥
💡 Совет: Список стат может занимать значительный объём памяти при большом количестве узлов. Регулярно очищайте устаревшие записи (старше 30 дней) через меню «Управление данными».
Управление каналами и хэштеги: гибкая сегментация трафика #️⃣
Что такое канал в Mi Core
Канал - это логическое разделение трафика внутри физической сети. Все узлы, настроенные на один канал, видят сообщения друг друга. Это позволяет:
- Изолировать группы пользователей (например, экспедиция, локальное сообщество, тестовая группа) 👥
- Снизить нагрузку на эфир, разделив трафик по темам 📉
- Организовать приватные каналы с шифрованием 🔐
Хэштеги: удобный способ управления каналами
В приложении можно добавлять каналы через хэштеги:
- Откройте меню «Каналы» → «Добавить» ➕
- Введите название с хэштегом:
#yorkshire,#test,#emergency🏷️ - Приложение автоматически настроит параметры канала (частота, мощность, режим шифрования) ⚙️
- Канал появится в списке и станет доступен для отправки сообщений 📡
Хэштег - это не обязательный синтаксис, а удобная абстракция. Канал можно создать и без него, указав параметры вручную. Но хэштеги упрощают запоминание и обмен настройками между пользователями.
Конфликты каналов и как их избежать
Если несколько групп используют одинаковый хэштег, но разные параметры (частота, ключ шифрования), возникает конфликт: сообщения не доходят, хотя канал «виден» в списке. Чтобы этого избежать:
| Параметр | Рекомендация | Проверка |
|---|---|---|
| Частота | Использовать региональный план (RU864, EU868) | Сравнить в «Настройки» → «Радио» |
| Ключ шифрования | Генерировать уникальный для приватных каналов | Экспорт/импорт через QR |
| Режим адреса | Согласовать 1/2/3 байта внутри группы | Проверить в «Инфо канала» |
| Мощность передачи | Не превышать разрешённые лимиты | Сверить с локальным законодательством |
Одновременная работа с несколькими каналами
Устройство может быть подключено к нескольким каналам одновременно. Сообщения отправляются в выбранный канал, а входящие фильтруются по подпискам. Это позволяет:
- Следить за общим каналом (#test) и приватным (#expedition) одновременно 👀
- Быстро переключаться между контекстами без перенастройки радио 🔄
- Ретранслировать сообщения между каналами (требует ручной настройки и понимания рисков) 🌉
⚠️ Внимание: Ретрансляция между каналами может нарушить изоляцию трафика и привести к утечке приватных сообщений. Используйте эту функцию только при полном понимании последствий.
Поддержка устройств с аппаратной клавиатурой ⌨️
Почему это важно для автономной связи
В последние месяцы растёт интерес к компактным Android-устройствам с физической клавиатурой: Unihertz Titan Pocket, F(x)tec Pro1 и другие. Такие устройства идеально подходят для работы с Mi OS:
- Физическая клавиатура ускоряет ввод сообщений в полевых условиях ⚡
- Компактный форм-фактор удобен для ношения в рюкзаке или на поясе 🎒
- Отсутствие зависимости от интернета делает их надёжным инструментом в экстремальных ситуациях 🆘
Как приложение адаптируется под клавиатуру
Приложение автоматически определяет подключённую аппаратную клавиатуру и меняет интерфейс:
- Поле ввода текста получает фокус при открытии канала - можно сразу печатать ⌨️
- Центральная кнопка интерфейса меняет функцию: вместо эмодзи-панели становится кнопкой отправки 📤
- Доступ к эмодзи сохраняется через комбинацию
клавиш (например,
Ctrl+Space) 😊 - Поддерживаются международные раскладки, добавленные благодаря обратной связи сообщества 🌍
┌──────────────────────────────────── │ [ Интерфейс с клавиатурой ] │ │ ┌──────────────────────────┐ │ │ #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 доступно для скачивания напрямую с официального сайта проекта. Это позволяет обходить ограничения магазинов и быстро получать обновления:
- Перейдите на официальный сайт проекта 🌐
- Найдите раздел «Download» или «Mobile App» 📥
- Скачайте APK-файл последней версии 🔽
- Разрешите установку из неизвестных источников в настройках безопасности ⚙️
- Установите приложение и запустите 🚀
⚠️ Важно: Скачивайте приложение только с официального сайта. Сторонние источники могут распространять модифицированные версии с уязвимостями или вредоносным кодом.
iOS: ожидание в App Store
Версия для iOS находится в процессе модерации и скоро появится в App Store. После публикации:
- Откройте App Store на устройстве Apple 🍎
- Найдите приложение по названию проекта 🔍
- Нажмите «Загрузить» и дождитесь установки ⏳
- Предоставьте необходимые разрешения (Bluetooth, геолокация, уведомления) 🔐
Необходимые разрешения и зачем они нужны
Для полноценной работы приложение запрашивает следующие разрешения:
| Разрешение | Цель | Обязательно |
|---|---|---|
| Bluetooth | Подключение к T-Deck / V4 | ✅ Да |
| Геолокация | Отображение на карте, обновление позиции узла | ⚠️ Для карты |
| Хранилище | Сохранение списка стат, экспорт/импорт | ⚠️ Для синхронизации |
| Уведомления | Оповещения о новых сообщениях | ❌ Нет |
| Камера | Сканирование QR-кодов контактов | ⚠️ Для быстрого импорта |
Решение частых проблем при установке
Если приложение не устанавливается или не подключается к устройству:
- Проверьте версию Android: требуется Android 8.0+ (API 26) 📱
- Включите Bluetooth и геолокацию: оба сервиса должны быть активны 🔗📍
- Перезагрузите T-Deck: иногда помогает сброс соединения 🔄
- Обновите прошивку T-Deck: убедитесь, что устройство работает на последней версии Mi OS ⚙️
- Проверьте права доступа: в настройках приложения разрешите все необходимые разрешения ⚙️
💡 Совет: Если подключение не устанавливается, попробуйте «забыть» устройство в настройках Bluetooth и выполнить сопряжение заново.
Этикет сети: почему важно контролировать ботов и тестовый трафик 🤖
Назначение тестового канала
Канал #test (или аналогичный) предназначен для проверки связи, отладки маршрутов и обучения новых пользователей. Однако его использование требует ответственности:
- Тестовый канал использует ту же частоту, что и все остальные каналы в регионе 📡
- Каждое сообщение в #test занимает эфирное время, которое могло бы использоваться для важных коммуникаций ⏱️
- Автоматические боты, отвечающие на каждое сообщение, создают каскадный трафик и перегружают сеть 🤖🤖🤖
Как боты влияют на сеть
Представьте ситуацию: один пользователь отправляет тестовое сообщение. Пять ботов автоматически отвечают на него. Каждый ответ видят все узлы в радиусе действия, и некоторые из них тоже могут иметь ботов. Результат:
┌──────────────────────────────────── │ [ Эффект домино от ботов ] │ │ Пользователь: "Привет, тест" 🗣️ │ │ │ ▼ │ Бот 1: "Получено" Бот 2: "ОК" │ │ │ │ ▼ ▼ │ Бот 3: "Пинг" Бот 4: "Эхо" │ │ │ │ ▼ ▼ │ Бот 5: "Тест" ... и так далее │ │ Результат: │ • 1 сообщение → 10+ ответов │ • Занято эфирное время для всех │ • Полезные сообщения могут потеряться │ • Батареи узлов разряжаются быстрее └────────────────────────────────────
Правила ответственного тестирования
Чтобы не мешать работе сети, соблюдайте простые правила:
- Ограничьте частоту тестов: не отправляйте сообщения чаще раза в 5-10 минут ⏰
- Отключите автоответчиков: если вы запускаете бота, настройте его на редкие или ручные ответы 🤖⚙️
- Используйте локальные каналы: для тестов в пределах одной группы создайте приватный канал с уникальным хэштегом 🔐
- Уважайте эфир: помните, что каждый байт в эфире - общий ресурс сообщества 🤝
Инструменты для мониторинга нагрузки
Приложение и T-Deck предоставляют средства для оценки нагрузки на сеть:
- Счётчик пакетов: показывает количество принятых/отправленных сообщений за период 📊
- График загрузки: визуализирует активность в эфире по времени 📈
- Фильтр по каналам: позволяет оценить вклад каждого канала в общую нагрузку 🔍
🔥 Ключевая мысль: Тестовый канал - не изолированная песочница. Это часть общей сети, и каждое сообщение влияет на всех. Ответственное использование - залог стабильности для каждого участника.
Что дальше: планы развития и как остаться в курсе 🗓️
Запланированные улучшения
Команда разработки активно работает над новыми функциями. В ближайших обновлениях ожидаются:
- Кастомизация уведомлений: выбор звуков, обоев и стилей для T-Deck 🔔🎨
- Расширенная аналитика: детальные отчёты по производительности сети и узлам 📉
- Поддержка новых устройств: адаптация под будущие модели с LoRa и аппаратной клавиатурой 🆕
- Улучшенная офлайн-карта: более детальные слои и оптимизация кэширования 🗺️⚡
Как участвовать в развитии проекта
Mi OS - проект с открытым исходным кодом, и вклад сообщества играет ключевую роль. Вы можете помочь:
- Тестирование: устанавливайте бета-версии и сообщайте об ошибках через Discord или GitHub 🐛
- Документация: помогайте переводить руководства и создавать туториалы для новых пользователей 📚
- Разработка: если вы программист - присылайте пул-реквесты с улучшениями или исправлениями 💻
- Обратная связь: делитесь идеями и сценариями использования в сообществе - это помогает расставлять приоритеты в разработке 💬
Где следить за обновлениями
Чтобы не пропустить важные анонсы:
- Официальный сайт проекта - релизы и документация 🌐
- Discord-сервер - живое общение с разработчиками и пользователями 💬
- GitHub-репозиторий - исходный код, баг-трекер, обсуждения 🐙
- Социальные сети - анонсы и новости проекта 📱
Заключение: сеть растёт благодаря вам
Успех Mi OS и экосистемы Mi Core - это результат совместных усилий тысяч пользователей по всему миру. Каждый узел на карте, каждый отзыв в Discord, каждая строчка кода вносит вклад в развитие автономной связи будущего.
Если вы только начинаете путь в мире mesh-сетей - не бойтесь экспериментировать, задавать вопросы и делиться опытом. Если вы опытный пользователь - помогайте новичкам, тестируйте новые функции и предлагайте улучшения. Вместе мы строим сеть, которая работает там, где нет интернета.
Спасибо, что вы с нами. Вперёд, к новым горизонтам автономной связи! 🚀📡
📌 Источник: Материал подготовлен на основе официального анонса обновления и технической документации проекта. Актуальная информация, загрузка приложения и участие в сообществе доступны на официальном сайте проекта.