micro / minimOSD для NAZA

Burdin

Олег24, я нашел в чем проблема. Черный экран появляется при подключенных входах F1 и F2. Стоит их отключить - все нормально. Из-за чего это буду разбираться…

Ошибку исправил.
Новые версии здесь: bitbucket.org/kburdin/nazaosd/downloads

Олег24
Burdin:

Новые версии здесь:

Огромное спасибо !!! У Вас полетные режимы правильно отображаются ? У меня постоянно MAN

Burdin

Как я понимаю это зависит от резисторов… Коэффициенты сейчас стоят оригинальные. У меня работаю нормально.
Попробуйте поставить коэффициенты из версии от alezz. Файл minNAZAOSD/NazaLed.h
Строки, начиная с 66:
#define NAZA_THRESHOLD_YELLOW 1000
#define NAZA_THRESHOLD_RED 800
#define NAZA_THRESHOLD_GREEN 400

Добавил версию с коэффициентами от alezz. Файл minNAZAOSD_LED_coeff_alezz.hex Ссылка выше.

Олег24
Burdin:

Как я понимаю это зависит от резисторов

с оригинальной прошивкой режимы отображаются… значек светодиода показывает правильно…
может загрузчик в мегу от arduino новой заменить ?
У меня пульт прошит прошивкой OpenTX … Данные телеметрии появляются после GPS Fix ?

Burdin

Есть прошивка от alezz и оригинальная. Там немного различаются коэффициенты… На какой из них значек работает? Здесь на форуме, как я понимаю, у всех версия прошивки от alezz.
По телеметрии:
Если GPS Fix отсутствует передается только напряжение. При наличии Fix добавляется все остальное…

Олег24
Burdin:

Есть прошивка от alezz

На оригинальной и от alezz режимы отображаются нормально… Добавил в Ваш код для телеметрии отображение количества спутников и высоты .
Пытаюсь найти почему режимы не меняются…
Временно отключил “При наличии Fix добавляется все остальное…” для настройки телеметрии пульта

Burdin

Для настройки телеметрии есть define GPS_SIMULATION. Высота у меня была реализована, посмотрите может второй раз ее передаете… При работе порограммного uart отключаются прерывания, поэтому я побоялся отправлять во frsky большие объемы данных. Неизвестно как поведет себя основная часть прошивки.

Олег24

Высота по GPS или Home Altitude ? я на пуль вывел ту высоту , которая на OSD . С режимами засада … чего им надо ??? Это может быть связано с прерываниями ?

Arduino при компиляции выдает предупреждения
C:\nazaosdnew\sourse\minNAZAOSD\minNAZAOSD\OSD_Panels.ino:804:53: warning: deprecated conversion from string constant to ‘char*’ [-Wwrite-strings]

if (osd_mode == LED_MODE_UNKNOWN) mode_str = “—”;

^

C:\nazaosdnew\sourse\minNAZAOSD\minNAZAOSD\OSD_Panels.ino:805:50: warning: deprecated conversion from string constant to ‘char*’ [-Wwrite-strings]

else if (osd_mode == LED_MODE_MAN) mode_str = “man”;

Burdin

По LED вечером, когда всех спать уложу, попробую посмотреть.
По высоте у меня была функция send_gps_altitude, которая работает с переменной osd_alt, именно она отображается на OSD. Кстати, при передачи курса, скорости и высоты для экономии времени я отключил передачу части числа, которая после запятой. У меня на приемнике с прошивкой Er9xtreme такой вариант работает нормально. OpenTX понимает такой формат?

Олег24

да понимает… только я там не нашел курс. пришлось его вывести на температуру 2
высоту они там так считают (osd_alt - osd_home_alt) * convert_length

Burdin

Еще по поводу LED. На bitbucket можно сравнить ветки: bitbucket.org/kburdin/nazaosd/…/frsky alezz#diff
В файлах обтвечающих за LED изменены только коэффициенты.
Прерываний там нет, просто чтение аналогового значения. Можно в файле nazaled.h раскомментировать define LED_FIND_VALUES. Он выводит на экран считанное значение, которое потом сравнивается для определения цвета светодиода.

Олег24
Burdin:

Можно в файле nazaled.h раскомментировать

Пробую ! У меня рама самодельный TBS Discovery добраться сложно … проверю - напишу

Burdin

По поводу высоты согласен 😃 Я не досмотрел и вывожу, судя по всему, высоту над уровнем моря.
На всякий случай в nazaled.ino можно изменить позицию отображения debug’a строка 149. Не уверен что 0 строка у нас отображается…

Олег24

красный 800 желтый 1020 не горят 56 подправлю в файлике

Burdin

А зеленый?
На выключено нет константы.

Олег24
Burdin:

А зеленый?
На выключено нет константы.

зеленый 400 Поменял в файле значения - не помогло

Burdin

Фантастика… Надо смотреть алгоритм… Передача доп. параметров в отдельный шаг вынесена? Может тайминги нарушились…

Олег24
Burdin:

Фантастика… Надо смотреть алгоритм… Передача доп. параметров в отдельный шаг вынесена? Может тайминги нарушились…

Думаю так-же вот что есть
if (yg_timeout && curr_ms - yg_timeout > LED_TIMEOUT) {
mode = LED_MODE_MAN;
yg_timeout = 0;
y_cnt = 0;
g_cnt = 0;
}
и на экране постоянно MAN