MinimOSD-Extra — различия между версиями
Admin (обсуждение | вклад) (→Ссылки) |
Admin (обсуждение | вклад) (→Инструкция по установке) |
||
(не показана 1 промежуточная версия 1 участника) | |||
Строка 8: | Строка 8: | ||
== Отличия прошивки от MinimOSD == | == Отличия прошивки от MinimOSD == | ||
* Переработанный код программы: убран чудовищный расход памяти на хранение всех настроек всех возможных экранов сразу, убраны "регистры" флагов (и всё с ними связанное) в пользу хранения вместе с координатами. Ну и по мелочи - PSTR, PROGMEM и отказ от ненужных статических массивов. В результате в распоряжении имеется 721 свободных байт вместо 160 в оригинале. | * Переработанный код программы: убран чудовищный расход памяти на хранение всех настроек всех возможных экранов сразу, убраны "регистры" флагов (и всё с ними связанное) в пользу хранения вместе с координатами. Ну и по мелочи - PSTR, PROGMEM и отказ от ненужных статических массивов. В результате в распоряжении имеется 721 свободных байт вместо 160 в оригинале. | ||
− | * Сделано обновление памяти MAX7456 во время VSYNC дабы избавиться от "снега" на экране из-за помех ([http://forum.rcdesign.ru/f90/thread132831-195.html#post5602416 по мотивам], но через прерывание вместо поллинга через SPI). | + | * Оптимизировано использование оперативной памяти, благодаря чему данные записываются через программный буффер (идея Кирилла Корнилова). |
+ | * Сделано обновление памяти MAX7456 во время VSYNC дабы избавиться от "снега" на экране из-за помех ([http://forum.rcdesign.ru/f90/thread132831-195.html#post5602416 по мотивам], но через прерывание вместо поллинга через SPI). То есть использовано аппаратное прерывание для записи данных в видеопроцессор, благодаря этому достигается четкость картинки, отсуствие мерцаний. | ||
* Сделана регулировка отступов от края экрана через конфигуратор | * Сделана регулировка отступов от края экрана через конфигуратор | ||
+ | * Оптимизировано использование flash-памяти, благодаря чему удалось сохранить внутри прошивки функционал загрузчика шрифтов и поддержку конфигурирования из графической утилиты. | ||
+ | * Исправлен загрузчик шрифтов. | ||
+ | * Исправлено предупреждение о разряде батареи при отсутствии датчика тока. | ||
== Новые возможности == | == Новые возможности == | ||
Строка 57: | Строка 61: | ||
# После установки драйвера USB в OSD_Config следует выбрать соответствующий COM-порт. | # После установки драйвера USB в OSD_Config следует выбрать соответствующий COM-порт. | ||
# Нажать кнопку Options -> Update Firmware. Следует выбрать последнюю версию файла MinimOsd_Extra_Uni.8XXDV-release.hex из папки "FW_+_Char". | # Нажать кнопку 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". | + | # Эта прошивка имеет встроенный загрузчик знакогенератора, так что можно просто нажать кнопку Options -> Renew CharSet и выбрать последний набор символов MinimOSD_2.4.1.X.mcm из папки "FW_+Char". Обратите внимание на то, что [[MimimOSD-Extra]] имеет собственный набор символов и не будет работать с символами из других версий. Поэтому знакогенератор модуля должен быть обновлен и всегда следует проверять папку "FW_+_Char". Загрузка шрифтов должна осуществляться при питании и цифровой и аналоговой части OSD (должны гореть оба светодиода питания). См. также [[MinimOSD#Показывает «кракозябры»|FAQ]]. |
# Установить режим видео '''NTSC''' или '''PAL''' (если используется только один камера с известным режимом) или '''Auto''' (если одновременно используются камеры с различными режимами). | # Установить режим видео '''NTSC''' или '''PAL''' (если используется только один камера с известным режимом) или '''Auto''' (если одновременно используются камеры с различными режимами). | ||
# Подключить OSD непосредственно к монитору или видеопередатчику так, чтобы увидеть вывод OSD. | # Подключить OSD непосредственно к монитору или видеопередатчику так, чтобы увидеть вывод OSD. |
Текущая версия на 23:09, 2 ноября 2016
Содержание
Описание[править]
MinimOSD-Extra - улучшенная прошивка MinimOSD, поддерживающая внешние датчики, 4 независимых экрана, трансляцию телеметрии в протокол DEVO-M (для RX705) и многое другое.
Скачать свежую версию MinimOSD-Extra.
Внимание! Эта версия несовместима с утилитами из оригинальной MinimOSD!
Отличия прошивки от MinimOSD[править]
- Переработанный код программы: убран чудовищный расход памяти на хранение всех настроек всех возможных экранов сразу, убраны "регистры" флагов (и всё с ними связанное) в пользу хранения вместе с координатами. Ну и по мелочи - PSTR, PROGMEM и отказ от ненужных статических массивов. В результате в распоряжении имеется 721 свободных байт вместо 160 в оригинале.
- Оптимизировано использование оперативной памяти, благодаря чему данные записываются через программный буффер (идея Кирилла Корнилова).
- Сделано обновление памяти MAX7456 во время VSYNC дабы избавиться от "снега" на экране из-за помех (по мотивам, но через прерывание вместо поллинга через SPI). То есть использовано аппаратное прерывание для записи данных в видеопроцессор, благодаря этому достигается четкость картинки, отсуствие мерцаний.
- Сделана регулировка отступов от края экрана через конфигуратор
- Оптимизировано использование flash-памяти, благодаря чему удалось сохранить внутри прошивки функционал загрузчика шрифтов и поддержку конфигурирования из графической утилиты.
- Исправлен загрузчик шрифтов.
- Исправлено предупреждение о разряде батареи при отсутствии датчика тока.
Новые возможности[править]
- Видимость иконок - обозначений каждой "панели" задается индивидуально, независимо по экранам.
- Объединены самолёт и коптер, выбор производится по значению из 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". Загрузка шрифтов должна осуществляться при питании и цифровой и аналоговой части OSD (должны гореть оба светодиода питания). См. также FAQ.
- Установить режим видео 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[править]
См. также FAQ в основной статье minimOSD.
Чем управлять курсором?[править]
- Не разобрался с экраном настройки самой OSD, по нему просто бегает курсор, а чем управлять этим курсором?
- Пультом: правый стик меняет строки и значения, левый - лево-право - экраны.
Считает ли OSD скорость и направление ветра?[править]
- У меня самолёт без датчика воздушной скорости, но APM вполне правильно считает скорость и направление, а тут часто показывает встречный ветер независимо от направления полёта, хотя расчётную воздушную скорость показывает вполне реальную.
- Расчётами занимается полётный контроллер. OSD только показывает готовые данные.
Как отключить сообщения о RSSI, если он не используется?[править]
Поставить '0' в качестве значения предупреждения. То же самое - например, если к minimOSD не подключены батареи, а значение напряжения приходит от полётного контроллера. Для батареи нужно выбрать Input - from FC.
Как зайти в меню?[править]
Переключить на последний экран.
Ссылки[править]
- Проект MinimOSD-Extra на гитхабе.
- Скачать свежую версию MinimOSD-Extra.