MinimOSD-Extra
Содержание
Описание
MinimOSD-Extra - улучшенная прошивка MinimOSD, поддерживающая внешние датчики, 4 независимых экрана, трансляцию телеметрии в протокол DEVO-M (для RX705) и многое другое.
Скачать свежую версию MinimOSD-Extra.
Внимание! Эта версия несовместима с утилитами из оригинальной MinimOSD!
Отличия прошивки от MinimOSD
- Переработанный код программы: убран чудовищный расход памяти на хранение всех настроек всех возможных экранов сразу, убраны "регистры" флагов (и всё с ними связанное) в пользу хранения вместе с координатами. Ну и по мелочи - PSTR, PROGMEM и отказ от ненужных статических массивов. В результате в распоряжении имеется 721 свободных байт вместо 160 в оригинале.
- Сделано обновление памяти MAX7456 во время VSYNC дабы избавиться от "снега" на экране из-за помех (по мотивам, но через прерывание вместо поллинга через SPI).
- Сделана регулировка отступов от края экрана через конфигуратор
Новые возможности
- Видимость иконок - обозначений каждой "панели" задается индивидуально, независимо по экранам.
- Объединены самолёт и коптер, выбор производится по значению из EEPROM и может меняться на лету!
- Уменьшен расход EEPROM в три раза (!). В результате можно задать 4 экрана вместо 2-х и при этом куча свободного места под новые параметры.
- Чтение-запись EEPROM в цикле а не индивидуальными байтами - нет больше длинных "портянок".
- Видимость иконок - обозначений каждой "панели" задается индивидуально, независимо по экранам.
- Напряжения, токи и RSSI могут читаться с дополнительных выводов (со сглаживанием по 8 отсчетам), источник и поправочные коэффициенты задаются в конфигураторе независимо.
- Переключение экранов может производиться по внешнему PWM для использования с номерами каналов выше 8.
- В авиагоризонте сделаны поправочные коэффициенты (независимые для PAL и NTSC), и добавлен "Радар" (по мотивам МиниНазаОСД).
- Видимость Радара и ILS задается индивидуально.
- Изменена логика формирования "панелей", так что теперь мелкие панели могут использовать незадействованные области крупных панелей. Это позволило отрисовывать радар, ILS и центральный маркер в пределах авиагоризонта.
- Переключение PAL/NTSC может производиться "на лету", без перезагрузки - позволяя использовать две камеры разных форматов.
- В коде сделан отладочный HEX-дамп прямо на экран.
- В конфигураторе сделан плеер TLOG - теперь можно проверить работу OSD без самолета/коптера.
- Смещение экрана относительно синхроимпульсов задается через конфигуратор.
- Сделан вариант отображения координат GPS в одну строку.
- Добавлена возможность вывода любого канала наружу в PWM - например, для переключения камер.
- Экран настройки! До арма можно менять некоторые параметры без компьютера - просто с пульта.
- Панель в конфигураторе можно таскать за любую точку а не только за левый верхний угол.
- Рамка HUD может выключаться, независимо по экранам.
- Значения RSSI теперь занимает 2 байта (убрано ограничение значения 255).
- Трансляция MAVlink в телеметрию Walkera на выход (для приёмников DEVO RX705/RX707).
- Поддержка CleanFlight/MWII протокола (не проверено).
- Поддержка диалекта MAVlink от AutoQuad (не проверено).
- Поддержка новых режимов APM_Plane (quad-plane).
- Отфильтрованы сообщения с наземной станции, транслируемые версиями Plane 3.4+ и Copter 3.3+
- Автоматическое определение скорости последовательного порта.
- Подпроект Character_Updater теперь использует те же вспомогательные файлы и может использоваться, также он отображает загруженный шрифт.
- Скорость SPI уменьшена для предотвращения глюков при загрузке шрифтов.
- Прерывание PWM_IN разрешено только если используется.
- Добавлен флаг "Альтернативный режим" ко всем панелям.
- Панели WindSpeed, Airspeed и Groundspeed в Альтернативном режиме отображают скорость в м/с вместо км/ч.
- Новая схема расчета высоты - убран давно тянущийся баг с относительной высотой.
- Отображение сообщений MAVlink! Длинная строка двигается на экране если не влезает целиком.
- Режим отображения батареи - проценты или потраченная энергия - задается независимо для каждого экрана в свойствах панели.
- Дополнительные выводы платы могут быть использованы для отображения произвольных значений в произвольном формате.
- Новые предупреждения о сработке GeoFence.
Полный список добавлений и исправлений
Инструкция по установке
- Загрузить последнюю версию MinimOSD-Extra
- Запустить OSD_Config.exe
- Подключить плату MinimOSD к компьютеру. Использовать нужно FTDI с напряжением 5В, а не 3.3В. Для прошивки символов питать плату OSD необходимо от отдельного стабильного источника 5В. На USB после всех диодов и проводов в лучшем случае 4.7В, а это недостаточно для корректной прошивки символов.
- После установки драйвера USB в OSD_Config следует выбрать соответствующий COM-порт.
- Нажать кнопку Options -> Update Firmware. Следует выбрать последнюю версию файла MinimOsd_Extra_Uni.8XXDV-release.hex из папки "FW_+_Char".
- Эта прошивка имеет встроенный загрузчик знакогенератора, так что можно просто нажать кнопку Options -> Renew CharSet и выбрать последний набор символов MinimOSD_2.4.1.X.mcm из папки "FW_+Char". Обратите внимание на то, что MimimOSD-Extra имеет собственный набор символов и не будет работать с символами из других версий. Поэтому знакогенератор модуля должен быть обновлен и всегда следует проверять папку "FW_+_Char".
- Установить режим видео NTSC или PAL (если используется только один камера с известным режимом) или Auto (если одновременно используются камеры с различными режимами).
- Подключить OSD непосредственно к монитору или видеопередатчику так, чтобы увидеть вывод OSD.
- Нажать кнопку Options -> Load TLOG и выбрать 2015-09-06 18-40-55.tlog из папки "FW_+_Char".
- Настроить экраны по желанию.
- Нажать кнопку "Save Tab to OSD", а затем - кнопку "Start", чтобы запустить моделирование: можно увидеть как все будет выглядеть (без необходимости подключать коптер/самолет).
- Если что-то не так, следует нажать кнопку "Stop", сделать необходимые изменения, сохранить конфигурацию и нажать кнопку "Пуск" снова, чтобы увидеть новые изменения.
- Если экран располагается не по центру, то можно изменить "Offsets", слева и сверху, на вкладке конфигурации. Можно так же перемещать панели подальше от края, если экран окажется обрезан.
Оптимальное значение настроек вывода телеметрии на OSD:
SR{x}_EXT_STAT,2 SR{x}_EXTRA1,10 - улучшает отзывчивость горизонта SR{x}_EXTRA2,2 SR{x}_EXTRA3,2 SR{x}_PARAMS,1 SR{x}_POSITION,2 SR{x}_RAW_CTRL,1 SR{x}_RAW_SENS,2 SR{x}_RC_CHAN,5
где {x} - 0..4, номер того последовательного порта куда подключен OSD.
Наборы символов
- MinimOSD_2.4.1.x.mcm - основной набор символов
- MinimOSD_2.4.1.x-digital.mcm - стилизация под 7-сегментный индикатор и точечный горизонт
FAQ
Чем управлять курсором?
- Не разобрался с экраном настройки самой OSD, по нему просто бегает курсор, а чем управлять этим курсором?
- Пультом: правый стик меняет строки и значения, левый - лево-право - экраны.
Считает ли OSD скорость и направление ветра?
- У меня самолёт без датчика воздушной скорости, но APM вполне правильно считает скорость и направление, а тут часто показывает встречный ветер независимо от направления полёта, хотя расчётную воздушную скорость показывает вполне реальную.
- Расчётами занимается полётный контроллер. OSD только показывает готовые данные.
Как отключить сообщения о RSSI, если он не используется?
Поставить '0' в качестве значения предупреждения. То же самое - например, если к minimOSD не подключены батареи, а значение напряжения приходит от полётного контроллера. Для батареи нужно выбрать Input - from FC.
См. также FAQ в основной статье minimOSD.
Ссылки
- Проект MinimOSD-Extra на гитхабе.
- Скачать свежую версию MinimOSD-Extra.