Перейти к содержимому

Порты (UART) … ↩ 3.13 m2

mod. Пятница, 09 октября 2026 06:24 . См. 122

Betaflight без GUI · Урок 3 из 13 · Модуль 2. Порты и подключение

Один порт — одно устройство. Учимся назначать UART и функции приёмника, GPS и VTX через команду serial.

Неправильно назначенный порт — самая частая причина, почему приёмник или GPS «не видны». Команда serial решает это за минуту.

Содержание

1. Цели урока

После этого урока вы будете понимать:

  • зачем нужны порты и что на них подключается
  • как читать и задавать конфигурацию командой serial
  • что означают маски функций (64 = RX_SERIAL и т.д.)
  • чем порт отличается от физического разъёма
↑ К оглавлению

2. Что такое порты и зачем они

У полётного контроллера несколько последовательных портов (UART). К ним подключаются внешние устройства, каждое — на свой порт: приёмник, GPS, VTX, Blackbox, компьютер (USB/MSP).

Одна железка — один порт: Одна и та же «железка» может быть подпаяна к разным UART на разных платах. Поэтому в GUI вы выбираете, что висит на каком порту. В CLI это делает команда serial.

Посмотреть текущую настройку:

# serial
↑ К оглавлению

3. Формат команды serial

Окно CLI с выводом команды serial: порт, маска функций и четыре скорости
# serial <порт> <функции> <msp_baud> <gps_baud> <telemetry_baud> <blackbox_baud>
  • порт — номер UART: 0 = UART1, 5 = UART6, 20 = USB VCP, 30/31 = SoftSerial1/2.
  • функции — сумма битовых масок, 0 = порт выключен.
  • baud — скорости подсистем (обычно 115200, GPS часто 57600).
↑ К оглавлению

4. Маски функций

Самая ценная таблица урока. Функции складываются.

ЗначениеФункцияЧто это
0 (пусто) порт выключен
1 MSP связь с компьютером (конфигуратор, CLI)
2 GPS GPS-модуль
4 FrSky Telemetry (HUB) телеметрия FrSky
8 HoTT Telemetry телеметрия Graupner HoTT
16 LTM Telemetry телеметрия LTM
32 SmartPort телеметрия FrSky SmartPort
64 RX_SERIAL серийный приёмник (SBUS, CRSF, IBUS)
128 BLACKBOX Blackbox-регистратор
512 MAVLink Telemetry телеметрия MAVLink
1024 ESC_SENSOR телеметрия ESC (BLHeli32, KISS)
2048 TBS SmartAudio управление VTX по SmartAudio
4096 IBUS Telemetry телеметрия FlySky
8192 IRC Tramp управление VTX по Tramp
16384 RCDEVICE управление камерой (RunCam и др.)
32768 LIDAR лазерный дальномер
65536 FrSky OSD OSD FrSky
131072 VTX MSP управление VTX по MSP
Номер порта — это идентификатор, а не «UART + 1»: Первое число в команде serial — внутренний идентификатор порта, и он совпадает с порядковым номером UART не всегда. Последовательные порты идут по порядку: 0–9 — это UART1–UART10. Отдельно стоят 20 — USB VCP (виртуальный COM-порт платы), 30 и 31 — SoftSerial 1 и 2, 40 — LPUART1. Поэтому в выводе diff all строка serial 20 1 115200 57600 AUTO 115200 — это не «двадцатый UART», а USB-порт с функцией MSP (1).
Почему после 128 сразу 512: Бит 8, то есть число 256, в Betaflight пропущен: раньше это была телеметрия MSP, её убрали, а освободившийся номер занимать не стали, чтобы не ломать старые конфигурации. Поэтому ряд идёт 128 → 512, а не 128 → 256. Значения выше 16384 появляются только в свежих версиях прошивки; точный список для вашей — команда serial без аргументов.
↑ К оглавлению

5. Примеры

Приёмник (SBUS/CRSF) на UART1:

# serial 0 64 115200 57600 0 115200

Расшифровка: UART1 (0), RX_SERIAL (64), MSP 115200, GPS 57600, telemetry 0, blackbox 115200.

GPS на UART3:

# serial 2 2 115200 57600 0 115200

VTX SmartAudio на UART5:

# serial 4 2048 115200 57600 0 115200

Несколько функций на одном порту — маски складываются. MSP (1) + Blackbox (128) = 129:

# serial 1 129 115200 57600 0 115200

Выключить порт:

# serial 2 0 115200 57600 0 115200
Зачем четыре скорости, если функция одна: Команда serial всегда принимает шесть чисел: порт, маска функций и четыре скорости — по одной на каждую «скоростную» функцию (MSP, GPS, телеметрия, Blackbox). Применяется только та скорость, чья функция включена в маске; остальные просто хранятся и попадают в diff all. Так, в строке serial 2 2 115200 57600 0 115200 (GPS на UART3) реально работает только 57600 — второе число после маски относится к MSP, а его на порту нет. Более того, часть функций эти скорости не использует вовсе: скорость задана протоколом. Серийный приёмник (64) работает на скорости протокола (SBUS — 100000, CRSF — 420000), SmartAudio (2048) — на 4800, Tramp (8192) — на 9600. Для GPS значение 0 означает автоопределение скорости.
↑ К оглавлению

6. Частая путаница

  • Порт ≠ физический разъём. Номер UART определяется разводкой платы. Смотрите карту распайки в документации вашей платы.
  • MSP и Serial RX — разные функции. MSP — для компьютера, RX_SERIAL — для приёмника. Не включайте приёмник функцией MSP.
  • SoftSerial (30, 31) — программные порты на свободных пинах; медленные, для приёмников не рекомендуются.
↑ К оглавлению

7. Практика

Задание 3.1. Назначение портов

Выполняется в CLI, полёт не требуется.

  • Выполните serial и запишите текущую конфигурацию.
  • Найдите в документации платы, на каком UART у вас приёмник.
  • Пропишите приёмник: serial <n> 64 ....
  • save, затем проверьте через serial.
↑ К оглавлению

8. Проверьте себя

Сформулируйте ответ своими словами, прежде чем сверяться со справочником ответов (последняя статья курса).

  1. Что означает число 64 в команде serial 0 64 ...?
  2. Как задать две функции на одном порту, например MSP и Blackbox?
  3. Чем порт отличается от физического разъёма?
  4. Почему нельзя включить приёмник функцией MSP?
↑ К оглавлению

9. Чек-лист самопроверки

  • Понимаю, что 64 — это функция RX_SERIAL
  • Умею складывать маски функций (1 + 128 = 129)
  • Знаю номер UART своего приёмника
  • Не путаю MSP и Serial RX
Результат: Все пункты выполнены — переходите к следующему уроку.
↑ К оглавлению

10. Что дальше

  • Предыдущий урок: 2. Конфигурация: diff / dump / defaults / save
  • Следующий урок: 4. Основная конфигурация
  • Полный перечень тем — в статье «Содержание курса».
↑ К оглавлению
  • мод. : Пятница, 09 октября 2026