КОНЦЕПЦИЯ И РАЗРАБОТКАБЕСПИЛОТНЫЙ СПОРТ · #bezpiLOTa · KAIROS DRONE AGENTДокументация
#bezpiLOTa→Getting Started→Drone Agent
QUICKSTART / DRONE AGENT

Целевой Agent устанавливается на Linux SBC, подключённый к flight controller по UART или USB. После выпуска status cockpit должен показывать локальный URL, а browser checklist — подтверждать MAVLink, video, network и передачу в Mission Control.

PLANNED

Собственный установщик KairOS ещё не опубликован; страница фиксирует проверяемый install‑контракт без ложного URL.

Репозиторий KairOS ↗
8080setup / REST
SYSTEMDservice supervision
LOCALdefault mode
SSHinstall path
01
WHAT YOU WILL BUILD

Rust-first Agent рядом с полётным контроллером

Целевой Agent должен работать на companion SBC, получать FC heartbeat и обслуживать REST на 8080, MAVLink routing, video, radio и optional cloud. Python‑слой предусматривается для AI/vision, hardware bootstrap и plugin runtime. systemd контролирует каждый service и его зависимости.

02
PREREQUISITES

Hardware и software перед установкой

  • Поддерживаемый Linux single-board computer.
  • Flight controller с ArduPilot, PX4, Betaflight или iNav, соединённый UART или USB.
  • USB UVC или CSI camera только если требуется video.
  • Internet access на SBC во время установки зависимостей.
  • Raspberry Pi OS Bookworm, Ubuntu 22.04+, Armbian, Debian 12+ или совместимый Linux.
  • SSH access и curl.
  • Отдельное стабильное питание для SBC, рассчитанное на camera, radios и peak load.
03
INSTALL

Целевой Flash Tool выбирает board и формирует команду

01

Загрузить stock OS

Запишите и запустите поддерживаемую ОС производителя, включите SSH и обновите базовую систему.

02

Открыть Flash Tool

После публикации Mission Control выберите air-side Drone Agent и точную модель платы.

03

Скопировать generated command

Tool формирует one-line curl для актуального installer и выбранного profile.

04

Выполнить по SSH

Script требует sudo, устанавливает dependencies и создаёт user/directories, config и systemd units.

05

Дождаться health

Board detection, service start и первый status должны завершиться без failed units.

Для планирования принят ориентир 3–8 минут, но это не KairOS SLA. Статический URL намеренно не подставляется: правильную команду должен выдавать выпущенный Flash Tool. Несуществующий kairos/install.sh был бы ложной и потенциально опасной инструкцией.

04
OPEN LOCAL SETUP

Сначала status, затем URL

bashЦелевой KairOS CLI
kairos
Целевой интерфейс KairOS: команда становится исполнимой только после выпуска соответствующего компонента.
ПутьURL
Same machinehttp://127.0.0.1:8080
mDNShttp://kairos.local:8080
Agent hotspothttp://192.168.4.1
USB tetherhttp://10.55.0.1:8080
LANhttp://<sbc-ip>:8080
bashCompact и machine-readable status
kairos status
kairos status --json
Целевой интерфейс KairOS: команда становится исполнимой только после выпуска соответствующего компонента.
05
FINISH THE CHECKLIST

Семь экранов до передачи в Mission Control

01

Identify

Имя, роль, board profile, version и часовой пояс.

02

MAVLink

FC heartbeat, firmware, serial port, baud, system/component IDs и router URL.

03

Video

Camera detection, resolution, codec, local WHEP и recording state; можно пропустить без камеры.

04

Network

Hotspot/LAN, Wi‑Fi client, Ethernet, USB tether, modem и mDNS.

05

Remote access

Optional tunnel/cloud; local mode является полноценным и правильным состоянием.

06

Mission Control

Открыть GCS и добавить node по hostname/IP либо обнаружить автоматически.

07

Finish

Сохранить support summary, проверить services и выйти из onboarding.

Настройка агента: подключение MAVLink к ArduCopter, serial-порт, Wi-Fi и LTE, сетевые порты, географические ограничения и карта миссии.
ИНТЕРФЕЙС / ВИЗУАЛЬНЫЙ ПРИМЕРПроверка подключения перед передачей в Mission Control

Параметры MAVLink и сети, состояние канала и карта миссии собраны в интерфейсе агента. Такой обзор связывает настройку FC с последующим операторским подключением.

06
USEFUL COMMANDS

Минимальный CLI для состояния и lifecycle

bashЦелевой lifecycle CLI
kairos
kairos status
kairos status --json
kairos update
kairos uninstall
Целевой интерфейс KairOS: команда становится исполнимой только после выпуска соответствующего компонента.

Status operations read state. Update и uninstall меняют систему и требуют отдельного решения оператора, сохранённой конфигурации и recovery plan. Не запускайте lifecycle command во время подготовки или выполнения полёта.

07
TROUBLESHOOTING

Разделите supervisor, MAVLink и camera

bashAgent не открывает webapp
journalctl -u kairos-supervisor -n 50 --no-pager
ss -tlnp | grep 8080
Целевой интерфейс KairOS: команда становится исполнимой только после выпуска соответствующего компонента.
bashНет FC heartbeat
ls -la /dev/ttyUSB* /dev/ttyAMA* /dev/ttyACM* 2>/dev/null
journalctl -u kairos-mavlink -n 50 --no-pager
Целевой интерфейс KairOS: команда становится исполнимой только после выпуска соответствующего компонента.
bashКамера не найдена
ls -la /dev/video*
v4l2-ctl --list-devices
Целевой интерфейс KairOS: команда становится исполнимой только после выпуска соответствующего компонента.
  • Если :8080 не слушает, сначала проверяйте supervisor/service state, а не browser cache.
  • Если serial device отсутствует, проверьте кабель, питание FC, USB enumeration и permissions.
  • Если heartbeat не появляется, сверяйте baud и FC telemetry port settings.
  • Если /dev/video* есть, но stream не запускается, проверяйте formats и занятость устройства другим process.
  • Не публикуйте journal с API keys, Wi‑Fi credentials или pairing state.