OSD … ↩
mod. Вторник, 13 октября 2026 10:28 . См. 22
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:
feature OSD - Знаю, что
osd_*_posобъединяет координаты и видимость в OSD-профилях - Не трактую
2433как «строка 24, колонка 33» - Понимаю:
0убирает видимость и прежнее положение - Отличаю активный
osd_profileотosd_aux_channel
9. Что дальше
- Предыдущий урок: 10. Фейлсейф
- Следующий урок: 12. LED-лента и бипер
- Полный перечень тем — в статье «Содержание курса».
- мод. : Вторник, 13 октября 2026

