OSD … ↩ 11.13 m5
mod. Пятница, 09 октября 2026 14:12 . См. 57
Betaflight без GUI · Урок 11 из 13 · Модуль 5. Отображение и доп. оборудование
Как включить OSD и расставить элементы поверх видео через параметры osd_*_pos, не открывая графический редактор.
osd_*_pos — упакованное число с координатами и битами видимости профилей. Сохраняйте diff all перед изменениями и берите готовые значения из GUI своей платы, а не из чужого примера.
Содержание
1. Цели урока
После этого урока вы будете понимать:
- как включить OSD и выбрать активный профиль
- как связаны флажки 1 / 2 / 3, видимость и параметры
osd_*_pos - почему число позиции — не записанные подряд строка и колонка
- где искать формат, единицы, таймеры и предупреждения
![]() |
![]() |
2. Шаг 1. Включить OSD
# feature OSD
↑ К оглавлению3. Элементы и их позиции
Вкладка [Элементы] слева показывает элементы поверх видео. Флажки 1 / 2 / 3 у строки отвечают за видимость элемента в соответствующих OSD-профилях; на скрине у некоторых строк отмечен только первый. В CLI у каждого элемента своя настройка osd_*_pos: она хранит положение и биты видимости, а не только координаты.
| Элемент GUI, на скрине выше | CLI-параметр | Назначение |
|---|---|---|
| [Напряжение батареи] | osd_vbat_pos |
Положение и видимость напряжения батареи. |
| [Значение RSSI] | osd_rssi_pos |
Положение и видимость RSSI. |
| [Таймер 1] | osd_tim_1_pos |
Положение первого таймера; его источник настраивается отдельно. |
| [Израсходованная ёмкость батареи (mAh)] | osd_mah_drawn_pos |
Положение показания расхода mAh. |
| [Отображение тока батареи] | osd_current_pos |
Положение показания тока. |
| [Высота] | osd_altitude_pos |
Положение показания высоты. |
| [Режим полёта] | osd_flymode_pos |
Положение названия режима полёта. |
| [Название борта] | osd_craft_name_pos |
Положение названия аппарата. |
| [Предупреждения] | osd_warnings_pos |
Положение строки предупреждений. |
Для просмотра параметров без изменений:
# get osd_
↑ К оглавлению4. Как задать позицию
Это не число «строка-колонка». В Betaflight 4.5.4 позиция — упакованное целое число: младшие биты кодируют X (колонку) и Y (строку), другие — видимость в профилях OSD и тип. Для координат с X менее 32, без специальных битов значение параметра 2433 означает X = 1, Y = 12, элемент виден в профиле 1:
Здесь 2048 — бит видимости профиля 1; прибавка 384 задаёт строку 12, единица — колонку 1. Например, 2048 означает элемент в колонке 0, строке 0, видимый в профиле 1. Для HD OSD и нескольких профилей используются дополнительные биты — универсально вычислять их простым «приписыванием цифр» нельзя. Примеры 2433 и 2048 поясняют устройство числа, это не координаты со скрина и не готовая разметка.
osd_*_pos из своего diff all. Значение 0 снимает флаги видимости и прячет элемент во всех OSD-профилях, но также теряет его старые координаты. Сначала сохраните предыдущий diff all.5. Прочие параметры OSD
Справа на скрине находятся общие настройки OSD. Не путайте активный профиль с отдельными флажками видимости элементов в профилях 1 / 2 / 3.
| Поле GUI на скрине | CLI 4.5.4 | Практический смысл |
|---|---|---|
| [Активный профиль OSD] — OSD Profile 1 | set osd_profile = 1 |
Выбор текущего профиля; флаги видимости каждого элемента остаются в его osd_*_pos. |
| [Формат видео] — Авто | set vcd_video_system = AUTO |
Формат видео при поддержке соответствующего устройства; варианты зависят от прошивки и аппаратуры. |
| [Единицы измерения] — Метрические | set osd_units = METRIC |
Метрические единицы; варианты CLI также IMPERIAL и BRITISH. |
| [Таймеры] — 1 и 2 | get osd_tim1 / get osd_tim2 |
Источник, точность и тревога каждого таймера упакованы в одно число. Число тревоги 10 в GUI нельзя без проверки записывать как osd_tim1 = 10. |
| [Сигналы] — RSSI 20 | set osd_rssi_alarm = 20 |
Порог предупреждения RSSI, не координата элемента RSSI. |
| [Сигналы] — Ёмкость 2200 | set osd_cap_alarm = 2200 |
Порог расхода mAh; это не настройка ёмкости батареи bat_capacity. |
| [Сигналы] — Высота 100 | set osd_alt_alarm = 100 |
Порог предупреждения о высоте, не позиция высоты на экране. |
| [Сигналы] — Качество соединения 80 | set osd_link_quality_alarm = 80 |
Порог LQ, не osd_link_quality_pos. |
| [Предупреждения] | get osd_warn_bitmask |
Многие переключатели образуют общую битовую маску; не задавайте произвольное число вместо флажков GUI. |
| [После полёта статистика] | get osd_stat_bitmask |
Выбор статистики также хранится битовой маской; проверяйте итог через diff all. |
osd_aux_channel задаёт канал для соответствующего элемента OSD; это не команда переключения OSD-профилей. Для выбора текущего профиля используйте osd_profile, если настройка доступна на вашей плате.6. Практика
Задание 11.1. Сверить OSD и CLI
Только чтение CLI; видеоаппарат и полёт не требуются.
feature— убедитесь, что OSD есть среди Enabled.get osd_profile— проверьте активный профиль.get osd_vbat_posиget osd_rssi_pos— сравните с отметками элементов в нужном профиле GUI.- Сохраните
diff allперед любой перестановкой элементов. Для практической правки возьмите полное число позиции из GUI своего контроллера, не копируйте демонстрационные 2433 / 2048.
7. Проверьте себя
Сформулируйте ответ своими словами, прежде чем сверяться со справочником ответов (последняя статья курса).
- Как включается OSD?
- Что хранится в
osd_*_posи что означает значение0? - Почему
osd_vbat_pos = 2433не означает строку 24, колонку 33?
8. Чек-лист самопроверки
- Знаю, что OSD включается фичей
OSD - Знаю, что
osd_*_posобъединяет координаты и видимость в OSD-профилях - Не трактую
2433как «строка 24, колонка 33» - Понимаю:
0убирает видимость и прежнее положение - Отличаю активный
osd_profileотosd_aux_channel
9. Что дальше
- Предыдущий урок: 10. Фейлсейф
- Следующий урок: 12. LED-лента и бипер
- Полный перечень тем — в статье «Содержание курса».
- мод. : Пятница, 09 октября 2026

