OSD Платы.

lion13ch

Господа, подскажите плиз Как заставить MinimOSD переключать панели кнопкой передатчика ? Вроде в ОСД настроил 7-й канал радио, APM этот канал видит, диапазон значений канала сделал по инструкции, а вот переключения нет 8( Что делаю не так ?
Прошивка MinimOSD Extra 2.2.

15 days later
Aviamodelist

Коллеги приветствую!скажите, кто в курсе, можно ли на миним осд 16 вольт подавать?(конечно же через делитель 1.5к и 22к) или нужно сопротивление менять? лётал на 12в всё работало отлично, собрал новый аппарат и сижу думаю… и киньте ссылку если не трудно, где на гуглокоде показана модификация в картинках, может там что-нибудь написано, а то смущает, что на самой плате написано 12в

jekmv
Aviamodelist:

Коллеги приветствую!скажите, кто в курсе, можно ли на миним осд 16 вольт подавать?(конечно же через делитель 1.5к и 22к) или нужно сопротивление менять? лётал на 12в всё работало отлично, собрал новый аппарат и сижу думаю… и киньте ссылку если не трудно, где на гуглокоде показана модификация в картинках, может там что-нибудь написано, а то смущает, что на самой плате написано 12в

можете от бека 5ти вольтового все запитать (перемычки запаять только не забудьте). с 12ти стоит преобразователь там понижающий до 5ти все равно. посмотрите по маркировке, может ему и 16 вольт нормально

alezz

Через резисторы идет не питание OSD, а измерение напряжения. Резисторами сделан делитель в (22 + 1.5)/1.5=15.67 раз. Максимальное напряжение которое можно подать на вход атмеги =1.1В Т.е. через делитель 1.5к и 22к можно подать максимум 15.67*1.1= 17.23В поэтому 4S проходит. Если все таки страшно, и будешь менять номиналы делителя, то под новые резисторы придется менять коэффициент #define VOLT_DIV_RATIO в исходниках минимOSD
Питать minimOSD в любом случае желательно от 5В 😃

v-k
okan_vitaliy:

Всё!!! Вылечил вавку с артефактами.

Виталий, огромное спасибо! Я немного модифицировал Ваш код, в прерывании оставил только сброс флага vsync_wait, работает отлично.

Заметил еще такой момент - KVOSD очень сильно фильтрует RSSI, ладно аналоговый, но зачем так сильно сглаживать PWM и MSP - непонятно. Выключаешь передатчик, а RSSI на экране плааавно падает в течение нескольких секунд. Короткие провалы в сигнале вообще никак не отображались - убрал это сглаживание для RSSI по PWM и MSP, теперь уровень RSSI очень четко реагирует на изменения.

В планах еще добавить 9ю страницу в экранный конфигуратор и вывести туда недостающие настройки, такие как профиль, throttle mid/expo и т.д. Ссылка на мои изменения, если кто хочет попробовать.

okan_vitaliy
v-k:

Я немного модифицировал Ваш код, в прерывании оставил только сброс флага vsync_wait, работает отлично.
.

В принципе такой ход тоже не плохо смотрится. Но обратите внимание возможность совместного доступа к переменной vsync_wait. Я б все таки до её изменения из основного цикла запретил прерывания, а после разрешил.

flygreen

Для статистики.

Купил миним ОСД на ХоббиКинге. Залил 370 прошу от KVteam. Питалово подал 5 В от бэка (общего), 12 В от степ ап-степ даун конвертера ( на нем же висит передатчик и камера). При подаче 12В на плату, происходли глюки в виде дергания изображения и полного пропадания. 12 В , убрал все подключил от бэка. Вроде стало работать стабильно.

okan_vitaliy
flygreen:

Для статистики.

Купил миним ОСД на ХоббиКинге. Залил 370 прошу от KVteam. Питалово подал 5 В от бэка (общего), 12 В от степ ап-степ даун конвертера ( на нем же висит передатчик и камера). При подаче 12В на плату, происходли глюки в виде дергания изображения и полного пропадания. 12 В , убрал все подключил от бэка. Вроде стало работать стабильно.

От одного питания- нежелательно. На видеоизображение накладываются помехи от аврки. Просто так ведь не разносят питания чипа. Кстати они зажали еще индуктивность вместо соединения общей земли. А то что изображение у Вас дергается, то сядьте осциком и поглядите чего там по питанию твориться. Кстати на прошлой неделе занимался осд и обнаружил такую вавку - при отсутствии входного видео сигнала осд гонит наружу свой. Был подключен 2 входовой маленький китайский автомонитор. И только при определенных половых манипуляциях появлялось стабильное изображение. Че только не делал, и общую землю переносил и с бубном бегал. Все решилось простым усаживанием на землю второго входа монитора. Причем если на вход осд подавался видеосигнал, то таких плясок ваще не наблюдалось, все работало на ура. Вот так то.

v-k
okan_vitaliy:

обратите внимание возможность совместного доступа к переменной vsync_wait. Я б все таки до её изменения из основного цикла запретил прерывания, а после разрешил.

Спасибо…
я где-то читал, что имеет смысл защищать операции с неатомарными данными, в нашем случае vsync_wait - один байт, т.е. переменная атомарная. Чтоб лучше разобраться, открыл asm-код:

Скомпилированный код прерывания

00000954 <__vector_1>:
     954:	1f 92       	push	r1
     956:	0f 92       	push	r0
     958:	0f b6       	in	r0, 0x3f	; 63
     95a:	0f 92       	push	r0
     95c:	11 24       	eor	r1, r1
     95e:	10 92 6a 04 	sts	0x046A, r1
     962:	0f 90       	pop	r0
     964:	0f be       	out	0x3f, r0	; 63
     966:	0f 90       	pop	r0
     968:	1f 90       	pop	r1
     96a:	18 95       	reti

А вот начало DrawScreen

00003f12 <_Z18MAX7456_DrawScreenv>:
    3f12:	81 e0       	ldi	r24, 0x01	; 1
    3f14:	80 93 6a 04 	sts	0x046A, r24
    3f18:	80 91 6a 04 	lds	r24, 0x046A
    3f1c:	88 23       	and	r24, r24
    3f1e:	e1 f7       	brne	.-8      	; 0x3f18 <_Z18MAX7456_DrawScreenv+0x6>

0x046A - volatile vsync_wait, 0x3f - SREG

насколько я могу судить, вызов прерывания после любой из строк не должен ничего нарушить, SREG в прерывании сохраняется/восстанавливается. Единственно, если значение vsync_wait изменится между 3f18 и 3f1с, то brne перейдет на 3f18 всего один лишний раз. Вроде так… Я не настоящий сварщик только учусь, поэтому поправьте, если где-то ошибаюсь.

Кстати, там Carlo из KVTeam интересуется, можно ли им Ваш мод использовать 😃 www.multiwii.com/forum/viewtopic.php?p=44844#p4484…

Now we need to ask the RC guy (may be okan_vitaliy as Russian is not my second language to read the whole tread) the permission to use this mod.

okan_vitaliy
v-k:

Кстати, там Carlo из KVTeam интересуется, можно ли им Ваш мод использовать 😃 www.multiwii.com/forum/viewtopic.php?p=44844#p4484…

Передайте Карло, что можно пользоваться кодом на здоровье, это ж опенсорс. Посмотрел асм - должно работать нормально. Желаю Вам творческих успехов в доработке минимосд. Это вещь нужная.

omegapraim

Здравствуйте. Долгое время был без ОСД (max сгорел) и вот наконец мне пришли 2а макса из Китая. В общем, решил выяснить причину сгорания микрухи и заодно спросить возможные способы устранения её, ибо это как я думаю насущный вопрос не только для меня.

Итак начнем))))

Что имеем: Две платы minimOSD с хоббикинга.
Первая плата имеется неполадка в цепи (возможно сгорел один из диодов) симптомы были таковы что макс на ней просто тупо перестал работать. Почему диод? да потому что когда втыкаешь видео сигнал лампочка начинала гореть ярче.
Плата 2а это изначально бракованная плата с дохлым максом (по сути идеальный стенд, ибо кроме микрухи все новое).

Итак тесты:
Тест 1. Плата один (со сдохшим диодом) новая микруха на ней даже не запустилась, выдавала тупо черный экран и все. Тесты с этой платой закончил.
Тест 2. Поставил абсолютно новую микруху на плату два (та что со сдохшей микрухой) и все заработало. Поскольку купил себе курсовую камеру которая работает от 12В решил все запитать через схему, которая предложена Арду (с раздельным питанием для видео части и ардуино части) Все работало хорошо, единственное что, максимка грелся как утюх, пальцем не дотронуться. Питал все от липохи и через тв тюнер, для удобства подключил к компу.
Видео тракт 5.8 и приемник и передатчик питались от одной батареи все работало нормально (разве что микруха грелась сильно). Дай думаю дам отдохнуть, ну и выключил все это великолепие на 5 минут.
Потом включил. Описываю свои действия:

  1. Включил питание передатчика (ЛИПО 12в) ну и видео части ОСД.
    2)Включил питание Ардуино части осд.
    иииииииии
    3)Включил приемник, но поскольку, он у меня подключался к той же липо, что и передатчик включил сначала + (и приемник заработал т.к. в цепи общий минус, который проходит через ардуино и комп), и потом как только я поднес минусовой крокодил к батарее ШЛЕП минус 1 макс))))))))) Симптомы дохлова макса: Греется еще сильнее видео через себя пропускает, но шрифты уже не выводит.
    Я считаю разность потенциалов. А вы?

Тест 3 , Разделил питание, сделал всю осд от 5 вольт, но увеличил площадь соединения шины минуса, путем сошкуривания краски в месте где ставится капелька и залил этот стык припоем по всей площади кромки.
Запаял микруху залил прошивку все работает))))))) В общем, если у кого есть какие соображения, как обезопасится от этого я бы послушал)))))

Shuricus

Питать от 5ти.
У меня с двойным питанием тоже куча погорела.

okan_vitaliy
omegapraim:

Здравствуйте. Долгое время был без ОСД (max сгорел) и вот наконец мне пришли 2а макса из Китая. В общем, решил выяснить причину сгорания микрухи и заодно спросить возможные способы устранения её, ибо это как я думаю насущный вопрос не только для меня.

Итак начнем))))

Что имеем: Две платы minimOSD с хоббикинга.
Первая плата имеется неполадка в цепи (возможно сгорел один из диодов) симптомы были таковы что макс на ней просто тупо перестал работать. Почему диод? да потому что когда втыкаешь видео сигнал лампочка начинала гореть ярче.
Плата 2а это изначально бракованная плата с дохлым максом (по сути идеальный стенд, ибо кроме микрухи все новое).

Итак тесты:
Тест 1. Плата один (со сдохшим диодом) новая микруха на ней даже не запустилась, выдавала тупо черный экран и все. Тесты с этой платой закончил.
Тест 2. Поставил абсолютно новую микруху на плату два (та что со сдохшей микрухой) и все заработало. Поскольку купил себе курсовую камеру которая работает от 12В решил все запитать через схему, которая предложена Арду (с раздельным питанием для видео части и ардуино части) Все работало хорошо, единственное что, максимка грелся как утюх, пальцем не дотронуться. Питал все от липохи и через тв тюнер, для удобства подключил к компу.
Видео тракт 5.8 и приемник и передатчик питались от одной батареи все работало нормально (разве что микруха грелась сильно). Дай думаю дам отдохнуть, ну и выключил все это великолепие на 5 минут.
Потом включил. Описываю свои действия:

  1. Включил питание передатчика (ЛИПО 12в) ну и видео части ОСД.
    2)Включил питание Ардуино части осд.
    иииииииии
    3)Включил приемник, но поскольку, он у меня подключался к той же липо, что и передатчик включил сначала + (и приемник заработал т.к. в цепи общий минус, который проходит через ардуино и комп), и потом как только я поднес минусовой крокодил к батарее ШЛЕП минус 1 макс))))))))) Симптомы дохлова макса: Греется еще сильнее видео через себя пропускает, но шрифты уже не выводит.
    Я считаю разность потенциалов. А вы?

Тест 3 , Разделил питание, сделал всю осд от 5 вольт, но увеличил площадь соединения шины минуса, путем сошкуривания краски в месте где ставится капелька и залил этот стык припоем по всей площади кромки.
Запаял микруху залил прошивку все работает))))))) В общем, если у кого есть какие соображения, как обезопасится от этого я бы послушал)))))

Читая Ваш пост, я немного обалдел. Только без обид, Вы пишите наверно неисправен диод. Вы его проверяли или нет. Опыты и тесты странные какие то. Нужно было сдуть на двух платах чипы. Проверить подводимое питание к максу, величину и качество. И только если все в норме,надуть новые максы, обязательно с пропайкой подложки. А после этого уже подключать и смотреть. По поводу температуры макса - греться он меньше не будет если Вы внешнее 12 вольтовое питание замените на 5 вольт. У меня макс в термоусадке внутри аппы стоит и никаких проблем. Если очень переживаете за его перегрев, то можно поставить радиатор на него.

omegapraim

Ни каких обид, все что вы написали было выполнено, просто не вижу смысла об этом писать ибо напряжение питания я проверяю в первую очередь, подложку тоже пропаял а то иначе куда он тепло будет сбрасывать. Я в вашем случае не профи Электроники, а так простой обыватель))))

Радиатор я наверное все таки пославлю, надо только выфрезеровать нужный. Чтоб бы диод проверить его сдувать по хорошему надо а мне лениво, и я написал предположительно, потому что : у меня лампочка по питанию макса всегда горела равномерно (когда видео часть включаеш), а потом стала гореть при подключении камеры сильнее чем обычно, а как камеру отключишь яркость снижается.

Вы можете хотябы предположить в чем проблема перегорания (я понимаю что большинство проблем только из-за того что руки не из того места растут), но вроде у меня до перегорания осд почти пол года норм работало, и сдохло само по себе.

wenom86

Здравствуйте. Обращаюсь ко всем. В этой теме у Вас получилось вывести информацию о напряжении, скорости и т.д. поверх видеосигнала. Дело в том, что я собираю подводный аппарат, который будет управляться по проводам ( rcopen.com/blogs/93764/18127 ) и мне необходимо выводить информацию поверх видео о температуре воды, потребляемом токе и т.д. (это для начала). Управляться мой аппарат будет ардуиной.
Скажите, откуда MobidroneOSD или любой другой модуль OSD получает информацию о скорости, высоте и тд (как в вашем случае), и самое главное- в каком формате ему эта информация приходит.?

(моя задумка, чтобы основная ардуина(та которая отвечает за управление) собрала информацию со всех датчиков и отправила по какому-либо каналу связи в MobidroneOSD или любой другой, который отобразил-бы её на экране)?
(вторая моя задумка, можно-ли самому перерисовать и расположить в необходимых мне местах на экране значения с датчиков)?

Опыт в программировании ардуин имеется, правда не профессиональный, скорее любительский. Пайкой занимаюсь уже лет 10-в этом опыт есть.

omegapraim
wenom86:

Здравствуйте. Обращаюсь ко всем. В этой теме у Вас получилось вывести информацию о напряжении, скорости и т.д. поверх видеосигнала. Дело в том, что я собираю подводный аппарат, который будет управляться по проводам ( rcopen.com/blogs/93764/18127 ) и мне необходимо выводить информацию поверх видео о температуре воды, потребляемом токе и т.д. (это для начала). Управляться мой аппарат будет ардуиной.
Скажите, откуда MobidroneOSD или любой другой модуль OSD получает информацию о скорости, высоте и тд (как в вашем случае), и самое главное- в каком формате ему эта информация приходит.?

(моя задумка, чтобы основная ардуина(та которая отвечает за управление) собрала информацию со всех датчиков и отправила по какому-либо каналу связи в MobidroneOSD или любой другой, который отобразил-бы её на экране)?
(вторая моя задумка, можно-ли самому перерисовать и расположить в необходимых мне местах на экране значения с датчиков)?

Опыт в программировании ардуин имеется, правда не профессиональный, скорее любительский. Пайкой занимаюсь уже лет 10-в этом опыт есть.

информация о скорости температуре и прочая включая положение берется по минимум 3м датчикам 2а из которых работать будут едва ли.

  1. Компас указывает направление, изза того тчто в вашем аппарате есть металлические детали будет врать либо работать не будет.
    2)GPS он показывает положение, направление скорость, высоту, честно сказать думается мне что он будет работать только в том случае если его вывести над поверхностью воды скажем на поплавке.
    3)Давление и температура это барометр, честно сказать хз как его в подлодке приспособить чтобы он показывал нормально.
    4)Если есть желание изменять температуру то это скорее всего просто термопара, я думаю по ее использовании есть пример в самой ардуино программе.
    5)Данные насколько я знаю высылаются пакетно по запросам самой осд или может они всегда кидаются в порт а осд ловит нужные ей. Можно перепрограммировать все что угодно вопрос времени.

Мобидрон наверное для этой цели не подходит слишком капризная штука надо наверное что то типа E-OSD или что то еще. У мобидрона есть только один плюс это то что он если дохнет то не обрубит видиолинк как например миним осд. И все это очень капризно к питанию.

Забыл упомянуть акселерометр и гироскоп по которым задается курс уровень и положение аппарата по 3м осям но эти датчики работать будут, думаю с их подключением проблем не возникнет.

troff
2fast2real:

Перезагружается в полете, высоту показывает че попало.

Разобрался я почему есть жалобы на remzibi OSD.
Проблема с модулем GPS которым их комплектуют. У меня два remzibi, оригинал и клон, сначала купил клон, у него GPS MTK сразу оказался нерабочий, поставил взамен Ublox и поэтому никаких проблем у меня с ним ни разу не было.
Недавно задействовал второй remzibi, оригинал, сразу получил перезагрузки в полете и тормоза с высотой, после замены модуля GPS проблемы исчезли.
Но, что интересно, и с модулем МТК после перезагрузки в полете OSD не теряла дом по всем трём измерениям, так что худо-бедно можно было летать.

wenom86

Со снятием показаний с датчиков я разберусь. У меня этим будет заниматься отдельная ардуина. Мне непонятно, по какому протоколу передать информацию в osd? Вот например по ссылке www.aliexpress.com/item/…/917409455.html это устройство может принимать несколько видов сигнала с телеметрии.

(я ведь правильно понимаю, что плата osd служит только для наложения информации на видеосигнал, а плата телеметрии, к которой подключается osd - рулит автопилотамии собирает информацию с датчиков) Вот мне и надо как-нибудь заставить ардуину-мозг отправить данные в osd. (но в каком формате - хоть убейте не вникаю)(хотя есть формат MOVlink - но с чем его едят и научили-ли ардуину эмулировать его- не знаю)

omegapraim

Есть множество проектов включая мультиви а для него уже есть проект KVteam вот поройтесь в нем.

Про всякие протоколы и прочие программистские прелести вам наверное лучше спросить в этой теме потому как там собираются восновном люди близкие к программированию и созданию систем стабилизации (по крайней мере ближе чем среднестатистический обыватель)

wenom86

я просто уже дторой день сижу-изучаю возможность соединения Arduino mega 2560 и osd (например minimosd). Голова идет кругом- брожу вокруг да около, и собрать в кучу не могу. С проектом KVteam ознакомился - как я понял, по части osd в нем можно менять расположение индикаторов, шрифт и т.д. ?
Осталось найти где-нибудь расшифровку, какие данные и в каком формате посылает ардупилот в osd. Наверно надо покопаться в прошивке ардупилота.