Руководство пользователя

Mavix — начало работы

Версия 0.1.0 Обновлено: май 2026

Что такое Mavix

Mavix — система FPV-пилотирования дронов через интернет. Видеопоток с камеры дрона приходит к вам напрямую по технологии WebRTC, а команды управления с USB-джойстика уходят на полётный контроллер дрона по протоколу CRSF (для Betaflight/iNav) или MAVLink (для ArduPilot/PX4). Сервер отвечает только за авторизацию и за то, чтобы дрон и оператор нашли друг друга в сети — само видео и команды идут между ними напрямую.

Чтобы пользоваться системой, нужны три вещи: ваш аккаунт, прошивка MavixBoard на дроне (Raspberry Pi) и приложение MavixDesktop на вашем ПК.

Что вам понадобится

  • Raspberry Pi 4 или новее с Ubuntu Server 24.04 LTS или Raspberry Pi OS. Устанавливается на дрон рядом с полётным контроллером.
  • Полётный контроллер с одной из поддерживаемых прошивок: Betaflight, iNav (через CRSF по UART) или ArduPilot/PX4 (через MAVLink по USB).
  • Камера: USB-камера (тестируется через fswebcam) или CSI-камера через libcamera/rpicam. Поток кодируется в H.264 на стороне дрона.
  • ПК с Windows 10+ или Linux x64 — для приложения оператора.
  • USB-джойстик — Radiomaster Pocket (Mode 2 / EdgeTX) и аналоги. Поддерживаются также обычные геймпады.
  • Стабильный интернет и на дроне, и на ПК. Для дрона подойдёт Wi-Fi или LTE-модуль (Waveshare SIM7600 и аналоги).

Первый полёт: от установки до взлёта

1. Зарегистрируйтесь и войдите

На сайте Mavix создайте аккаунт по email и паролю. После входа вам станет доступна страница «Скачать» — там лежат все программы.

2. Установите MavixDesktop на ПК

Скачайте приложение оператора для вашей операционной системы: .exe для Windows или .AppImage для Linux. При первом запуске войдите своим email и паролем. После авторизации откроется экран со списком дронов — пока он будет пустым.

3. Установите MavixBoard на дрон

Скачайте установщик MavixBoard (архив .tar.gz) — при сборке сервер автоматически встроит в него токен вашего аккаунта и идентификатор дрона, так что дрон сразу привяжется к вам. Перенесите файл на Raspberry Pi и распакуйте:

tar xzf mavixboard-XXXXXXXX.tar.gz
cd mavixboard-XXXXXXXX
sudo ./install.sh

Установщик создаст изолированный Python-venv в /opt/mavixboard/, поставит все зависимости из архива (интернет в этот момент не нужен) и положит ваш токен в /etc/mavixboard/preset.env.

Ручной запуск (для проверки, что всё работает):

set -a; . /etc/mavixboard/preset.env; set +a
sudo /opt/mavixboard/.venv/bin/python -m mavixboard

Останавливается Ctrl+C. Если хотите, чтобы дрон стартовал автоматически при включении питания, включите systemd-юнит:

sudo systemctl enable --now mavixboard
sudo journalctl -u mavixboard -f

После этого служба будет автоматически запускаться при каждой загрузке RPi.

4. Настройте полётный контроллер

Подключите три провода между RPi и FC: RPi TX (Pin 8)FC UART RX, FC UART TXRPi RX (Pin 10), и GND на GND. Питание не нужно — оба устройства 3.3В.

Конкретная настройка зависит от вашей прошивки (Betaflight, iNav или ArduPilot) — подробности в разделе «Поддерживаемые полётные контроллеры».

5. Дождитесь появления дрона в списке

Когда дрон подключится к серверу, он автоматически появится в окне MavixDesktop. Список обновляется автоматически.

6. Подключитесь и взлетайте

Кликните по карточке дрона. Откроется окно с видеопотоком и панелью настройки. На первом запуске рекомендуется выполнить калибровку камеры — приложение само переберёт поддерживаемые разрешения и FPS.

Поддерживаемые полётные контроллеры

Mavix работает с тремя семействами прошивок:

  • Betaflight — CRSF по UART на 420 000 бод
  • iNav — CRSF по UART (требует receiver_type = SERIAL и serialrx_halfduplex = OFF)
  • ArduPilot / PX4 — MAVLink по USB через /dev/ttyACM*

Для CRSF минимальный конфиг через CLI (на примере UART4):

serial 3 64 115200 115200 0 115200
set serialrx_provider = CRSF
set serialrx_inverted = OFF
feature TELEMETRY
map TAER
aux 0 0 0 1800 2100 0 0
save

Для iNav дополнительно нужны set receiver_type = SERIAL, set small_angle = 180 и set min_check = 1000.

Для ArduPilot настройка не требуется — трансмиттер автоматически определяет MAVLink FC по USB и пробрасывает поток в QGroundControl через UDP 14550.

Работа в приложении оператора

Главный экран приложения — список ваших дронов. Каждая карточка показывает имя дрона и индикатор статуса:

  • Зелёный — дрон подключён и готов к управлению.
  • Жёлтый — идёт подключение.
  • Серый — дрон не на связи (выключен или вне сети).

В шапке кабинета доступна страница настройки джойстиков. В окне управления дроном внизу справа отображается текущий пинг.

Подключение и калибровка джойстика

Подключите джойстик к USB-порту ПК — он сразу появится в списке. Для каждого устройства доступны действия:

  • Калибровка — 10-шаговый мастер: центр, максимум/минимум по каждой оси (тяга, рыскание, тангаж, крен), затем кнопка ARM.
  • Загрузить из файла — восстановите ранее сохранённую калибровку.
  • Сохранить в файл — выгрузите свою калибровку для другого ПК.

Стандартный маппинг для Radiomaster Pocket (Mode 2 / EdgeTX):

СтикКаналФункция
Правый XCH2Крен (Roll)
Правый YCH3Тангаж (Pitch)
Левый YCH1Тяга (Throttle)
Левый XCH4Рыскание (Yaw)
ТумблерCH5ARM / DISARM

Тумблеры на Pocket экспортируются как оси, а не кнопки — приложение определяет тип автоматически.

Управление видеопотоком

В окне управления дроном:

  • Переключайте активную камеру стрелками ← → если их несколько.
  • Меняйте разрешение, FPS и битрейт. Битрейт применяется на лету, разрешение и FPS требуют короткой перезагрузки потока.
  • При переключении камер неактивная камера автоматически снижает битрейт до 200 кбит/с — канал не перегружается, поток не прерывается.
  • Запускайте принудительную калибровку камеры через кнопку «Калибровка камер». Во время неё дрон перебирает все доступные режимы — это может занять продолжительное время.

Порядок ARM и безопасность

Перед каждым полётом проверьте порядок включения:

  1. Отключите USB от полётного контроллера.
  2. Подключите батарею.
  3. Подождите 5 секунд — FC завершит инициализацию.
  4. Стик газа полностью вниз.
  5. Щёлкните тумблер ARM на джойстике.
Снимите пропеллеры перед первым тестом — особенно если вы только что прошили FC или поменяли калибровку.

Если что-то пошло не так

Дрон не появляется в списке

  • Проверьте, что служба запущена: systemctl status mavix.service.
  • Убедитесь, что у дрона есть выход в интернет (Wi-Fi или LTE).
  • Проверьте логи на дроне: journalctl -u mavix.service -f.

FC не армируется

В CLI любого FC введите status — строка Arming disabled flags покажет причину. Самые частые:

  • RXLOSS — нет RC-сигнала. Проверьте провода RPi ↔ FC, dtoverlay=disable-bt в /boot/firmware/config.txt, и что serial console отключена.
  • THROTTLE / THR — газ не на нуле. Стик газа полностью вниз, для iNav: set min_check = 1000.
  • ANGLE / ACC — дрон не ровно. Для iNav: set small_angle = 180 и calibrate acc.
  • MSP (Betaflight) — отключён USB, питайте от батареи.

Видео фризит или прерывается

  • Снизьте битрейт и FPS в настройках камеры.
  • Проверьте сигнал Wi-Fi или уровень LTE на дроне (mmcli -m 0).
  • Если оба устройства за NAT с симметричной фильтрацией, потребуется TURN-сервер.

Не работает джойстик

  • Проверьте, что устройство видно в системе (на Linux — jstest /dev/input/js0).
  • Сделайте новую калибровку — старая могла быть выполнена для другого устройства.

WebRTC не подключается

  • Проверьте, что у дрона стабильное интернет-соединение.
  • Если используется LTE — установите приоритет: sudo nmcli connection modify lte ipv4.route-metric 50.
  • В сложных сетях с симметричным NAT нужен TURN-сервер.

Забыли пароль

На странице входа нажмите «Забыли пароль?» — сервер отправит вам письмо со ссылкой для сброса. Ссылка действительна один час.

Полная техническая спецификация (архитектура WebRTC, формат CRSF-фреймов, схемы подключения) доступна в разделе «Техническая документация».