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

Урок 2. Конфигурация: diff, dump, defaults и save — INAV … ↩

mod. Понедельник, 19 октября 2026 16:41 . См. 11

Курс CLI · INAV firmware 9.1.0 · урок 2 из 13

Резервирование настроек, чтение профилей и безопасное различение между выводом в терминал и записью во flash.

Что показывают команды

  • diff выводит команды, изменяющие настройки относительно значений по умолчанию; diff all включает также те группы, которые обычный diff может опускать.
  • dump показывает более полный набор конфигурации, включая текущий профиль; это удобная контрольная копия и материал для сравнения после обновления.
  • save сохраняет изменения во flash и перезапускает контроллер.
  • exit закрывает CLI без сохранения; если перед этим менялись параметры, не полагайтесь на их сохранение.
  • defaults выполняет сброс к заводским значениям и перезапускает контроллер. Это разрушительное действие, а не обычный способ «начать настройку».
Не запускайте defaults в ходе чтения курса. До сброса необходимы проверка target, резервная копия и отдельный план восстановления. После сброса на конкретной плате нужно заново проверить назначение UART, ресурсы, сенсоры, mixer и параметры питания.

Кнопки CLI Configurator: сохранение и восстановление

image-1_31a07.png

Назначение кнопок

  • Blackbox (MSC). Выполняет команду msc и переводит поддерживаемый контроллер в режим USB-накопителя (MSC — Mass Storage Class). Это доступ к носителю с файлами Blackbox, а не резервное копирование настроек. После перехода обычная связь с CLI может прекратиться.
  • Save Settings. Отправляет команду save: записывает текущие настройки во flash контроллера и перезапускает его. Это сохранение конфигурации в полётном контроллере, не экспорт файла.
  • Exit. Отправляет exit и закрывает CLI. Кнопка не сохраняет несохранённые изменения.
  • Diff All. Очищает текущее окно вывода и выполняет diff all. Контроллер выводит отличающиеся от значений по умолчанию настройки для всех поддерживаемых групп. Команда формирует текст вывода, но сама не записывает файл на компьютер и не сохраняет конфигурацию во flash.
  • Clear Screen. Очищает вывод CLI в окне Configurator. Эта кнопка не изменяет настройки контроллера, но стирает текущий текстовый вывод из окна; сначала сохраните нужный вывод в файл или буфер обмена.
  • Copy to Clipboard. Копирует текущий текстовый вывод CLI в буфер обмена компьютера. Чтобы получить файл, затем вставьте текст в редактор и сохраните его.
  • Load from File. Открывает файл .cli или .txt, показывает его содержимое для проверки, а после подтверждения отправляет команды в контроллер. Перед подтверждением проверьте версию прошивки, target и каждую команду. Если файл содержит save, выполнение этой строки запишет настройки и перезапустит контроллер.
  • Save to File. Сохраняет текущий вывод CLI на компьютер в файл. Для резервной копии сначала получите нужный вывод, например кнопкой Diff All, затем нажмите Save to File. Файл с компьютера не заменяет сохранение настроек во flash.
  • CLI Command Docs. Открывает справочную документацию по CLI. Кнопка не экспортирует и не изменяет конфигурацию.
Не путайте два действия. Для копии на компьютере используйте Diff All, затем Save to File. Чтобы записать изменения в контроллер, используйте Save Settings после проверки. Кнопка Load from File исполняет команды из файла; она не является безопасным просмотром или автоматическим откатом.

Назначение кнопок сверено с исходным кодом INAV Configurator 9.1.0. Команда save и команда msc описаны в CLI INAV 9.1.0.

Надёжный backup перед изменениями

  1. Убедитесь, что Configurator подключён к нужному контроллеру и отображает ожидаемую версию INAV.
  2. Снимите исходный version, status, serial, resource и diff all; сохраните необработанный вывод без ручной «очистки».
  3. Дополнительно сохраните полный dump. В заголовке файла укажите дату, точную модель FC, target и версию firmware.
  4. Если используются control profiles, зафиксируйте текущий профиль и сохраните каждый нужный профиль отдельно. Документация INAV 9.1.0 приводит такой шаблон чтения:
control_profile
dump

control_profile без аргумента выводит выбранный сейчас номер профиля управления. Например, вывод control_profile 2 означает, что активен второй профиль. Запишите число 2: именно его следует выбрать в конце, чтобы вернуть исходный активный профиль.

Нумерация с единицы означает, что первый профиль имеет индекс 1, второй — 2, третий — 3. Индекс 0 не является номером первого профиля. В исходном коде INAV 9.1.0 обработчик вычитает из введённого индекса единицу, а затем проверяет диапазон; поэтому пример control_profile 0 из раздела резервного копирования документации tag 9.1.0 не выбирает профиль и не должен копироваться.

Чтобы проверить форму команды на своём устройстве, выполните справочную команду без знака вопроса:

version
help control_profile
help dump
control_profile

help control_profile в INAV 9.1.0 выводит общий список команд, а не отдельную справку только по control_profile: обработчик help игнорирует дополнительный текст и печатает всю таблицу команд. Найдите в списке строку control_profile - change control profile; следующая строка [<index>] показывает аргумент команды. Аналогично найдите строку dump и её аргументы. Справка подтверждает форму команды, но не всегда объясняет, начинается ли нумерация с нуля или с единицы.

Синтаксис control_profile и проверка номера

В списке справки аргумент записан как [<index>]. Квадратные скобки означают, что аргумент необязателен; <index> — обозначение места для числа, а не текст, который нужно вводить.

control_profile [<index>]

Без аргумента команда сообщает активный номер. Например, ввод команды:

control_profile

может вывести control_profile 2. Запишите число 2 как исходный активный профиль. Команда control_profile 1 выбирает профиль 1 и подтверждает выбор выводом control_profile 1. Чтобы вернуть исходное состояние из этого примера, введите control_profile 2, затем снова введите control_profile и проверьте ответ. Переключение сохраняет выбор активного профиля в EEPROM; выполняйте его на стенде. Значение 0 не является первым индексом и не должно использоваться.

Как использовать соседние команды из списка help

Записи bootlog и beeper — отдельные команды, не аргументы команды control_profile. Например, последовательность для чтения выполняется по одной строке: нажмите поле Write your command here, введите команду и нажмите Enter; затем введите следующую команду.

control_profile
bootlog
beeper list
beeper

bootlog без аргументов выводит журнал запуска, если эта команда включена в сборку. beeper list показывает допустимые имена звуковых событий; beeper без аргументов показывает отключённые события. Для изменения используется форма beeper +NAME или beeper -NAME: замените NAME точным именем из вывода beeper list, без пробела между знаком и именем. Знак + включает событие, знак - отключает его. Это изменение не связано с выбором профиля; записывайте его в контроллер только если действительно хотите изменить сигнализацию, используя Save Settings или save.

Команды control_profile, bootlog и beeper не объединяются в конструкцию вида control_profile bootlog. Поле CLI принимает команду отдельно; ответ появляется в окне вывода выше.

Синтаксис dump при работе с профилями

В INAV 9.1.0 полная форма команды указана в справке так:

dump [master|battery_profile|control_profile|mixer_profile|rates|all] {showdefaults} 

Чтобы вывести данные другого control profile, сначала переключитесь на его числовой индекс, затем запросите его раздел командой dump control_profile. После копирования вывода в резервный файл верните записанный исходный индекс. Например, если исходным был профиль 2:

control_profile 1
dump control_profile
control_profile 2

Ввод этих команд переключает активный профиль, а затем возвращает его; выполняйте последовательность только на стенде. dump выводит текст в CLI, но не создаёт файл на компьютере: используйте Save to File для локальной копии. Не нажимайте Save Settings без намерения сохранить текущую конфигурацию в контроллер и перезапустить его.

Для батарейных настроек INAV 9.1.0 также документирует battery_profile; без аргумента команда показывает активный профиль, а индексный аргумент меняет его. Сначала проверьте help battery_profile; переключение также считайте изменением состояния и возвращайте исходный профиль после резервного чтения.

Восстановление

Перед восстановлением сравните старый backup с документацией/значениями defaults именно новой версии. Между релизами могут меняться имена, смысл и допустимые диапазоны параметров. INAV CLI reference рекомендует сначала получить актуальные default-настройки, a затем восстанавливать проверенные изменения. Т.е. не копировать полный dump без проверки. Особенно внимательно проверьте последовательные порты, выходы, протокол ESC, батарейные измерители, GPS и failsafe.

В Configurator 9.1.0 имеется механизм автоматического backup перед flashing и восстановления/миграции настроек. Это полезная страховка, но не замена собственному экспортированному backup и сравнению. После прошивки всё равно нужно проверить version, target, status и ключевые функции на реальной плате.

Профили INAV — не копия профилей другой прошивки

В INAV используются control_profile для параметров управления и battery_profile для параметров батареи. Выбор меняет активный набор; храните backup с явной пометкой, какой профиль выгружен. Не предполагайте наличие одноимённых или аналогичных наборов профилей, количество которых не подтверждено для INAV 9.1.0. Для точного синтаксиса используйте help control_profile, help battery_profile и документацию версии.

Контрольные вопросы

  1. В чём практическая разница между diff all и dump, и почему полезно хранить оба вывода?
  2. Что произойдёт после save, после exit и после defaults?
  3. Почему полный dump старой версии нельзя без проверки целиком переносить в новую прошивку?

Официальные источники INAV 9.1.0

  • мод. : Понедельник, 19 октября 2026