Телеметрия на Radiolink at9(s)
По поводу прошивки osd два момента:
- Отличие от оригинальной прошивки иолько в файле radiolink.ino и паре дефайнов в файле конфигурации. Это означает что функциональность прошивки сохраняется. Также возможно добавление функционала телеметрии в версию прошивки osd, которая работает с вашим контроллером полета. Необходимы лишь знания среды ардуино и немного времени.
- А теперь о неприятном моменте: был замечен баг, связанный с зависанием шины i2c osd. Неприятность в том что аппаратный i2c меги вешает также и приемник! Пути решения:
- использовать wdt с перешивкой загрузчика от arduino uno (в стандартном загрузчике баг при использовании wdt).
- использовать програмную реализацию режима slave i2c.(это даже иетереснее, т.к. можно задействовать свободные выводы microminimosd без подпайки к мк )
П. С. если у кого есть рабочая ардуиновсая библиотека или ссылка на software i2c slave, буду благрдарен.
П. С. 2 а лучший вариант это конечно включение телеметрии радиолинка в код полетника. Может разработчик ветки inav в будущих релизах порадует обладателей radiolinka?
функциональность прошивки сохраняется
Я бы сказал - НЕфункциональность: контроллеры АПМ-семейства (очень распространенные) не работают с ней…
Я бы сказал - НЕфункциональность: контроллеры АПМ-семейства (очень распространенные) не работают с ней…
Вы используете osd? Если да то какое и какую версию ПО?
Вы используете osd?
У меня Micro MinimOSD. До сих пор использовал его с контроллером Crius AIOP v2.0, прошитым MULTIWII. Проблем не было.
Теперь приобрел Mini APM v3.1 для работы с ArduCopter и обнаружил, что MW_OSD не работает при компиляции с опцией #define APM, т.е. APM-контроллеры фактически не поддерживаются.
А после прошивки OSD устанавливает связь с конфигуратором (MW_OSD_GUI)?
Показывает или нет - это я не проверял, завтра посмотрю. Чего там смотреть, если настроить в конфигураторе нельзя?
Есть еще у меня Crius AIOP v2.0 - под MULTIWII с MW_OSD отлично работал. Попробую прошить Мегапиратом и посмотрю: будет ли работать в качестве АПМ-контроллера. Подозреваю, что не будет, как и Mini APM.Выходит, сырой пока проект. Рано обрадовались мы…
У меня такого не наблюдалось. Просто чистишь ЕЕПРОМ и заливаешь другую прошивку. Бутлодер не портился.
Да работает с конфигуратором… Но с Апм нет
Значит, есть разница в работе прошивки с miniosd и microminim osd для АПМ.
Значит, есть разница в работе прошивки с miniosd и microminim osd для АПМ.
ну в версии прошивки есть оба варианта, хотя не понимаю, смысл то их одинаковый! и микросхема тоже одна…
Однозначно в варианте АПМ “косяки”. Я уже упоминал: если прошиваю свою ОСД вариантами MULTIWII и CLEANFLIGHT, связь с MW_OSD_GUI и возможность настройки имеется, прошиваю для АПМ - связи нет.
Однозначно в варианте АПМ “косяки”. Я уже упоминал: если прошиваю свою ОСД вариантами MULTIWII и CLEANFLIGHT, связь с MW_OSD_GUI и возможность настройки имеется, прошиваю для АПМ - связи нет.
ну а у меня то почему есть?) я прошивал 1.6.1 и 1.6.4 и 1.6.5 версии для АПМ и для ПИКСа и везде могу в конфиг зайти потом, но ОСД не видит АПМ при этом на экране все работает(отображается) но пишет NO DATA… при этом лампочка передачи приема, та что маленькая желтая на ОСД, мигает постоянно как будто идет прием передача, причем даже если отключить нафиг провод RX ))) странно
это к чему?
Это ответ на ваш вопрос:
ну а у меня то почему есть?)
Вы невнимательно читаете ранее написанное…)
Это ответ на ваш вопрос:
Вы невнимательно читаете ранее написанное…)
типа на микро осд не соединяется что ль?
Типа того… но только в режиме АПМ.
Типа того… но только в режиме АПМ.
ну так я про это писал, что не соединяется… минимОСД, но работает на экране! и конфигуратор ее видит… сто пудов с портами че то не то!
Изложу результаты эксперимента с шиной i2c радиолинка:
Попытки использовать програмную реализацию i2c slave успеха не принесли. В симуляторе библиотека работает, однако в железе не хочет. Причина высокая скорость задаваемая мастером приемника радиолинка. Время входа в обработчик прерывания и переходов внутри обработчика не обеспечивают нормального обмена по шине. К сожалению у меня нет логического анализатора для того чтобы увидеть реальные тайминги обмена и попытатся оптимизировать исходники драйвера.
Пока остановился на использовании wdt меги.
Был перешит оригинальный загрузчик меги на загрузчик от ардуино уно. В исходники осд добавлена инизиализация wdt и циклический сброс в цикле. Это должно в случае зависания шины решить проблему зависания приемника.
Пока тестирую этот вариант на minimosd.
Изложу результаты эксперимента с шиной i2c радиолинка:
Попытки использовать програмную реализацию i2c slave успеха не принесли. В симуляторе библиотека работает, однако в железе не хочет. Причина высокая скорость задаваемая мастером приемника радиолинка. Время входа в обработчик прерывания и переходов внутри обработчика не обеспечивают нормального обмена по шине. К сожалению у меня нет логического анализатора для того чтобы увидеть реальные тайминги обмена и попытатся оптимизировать исходники драйвера.
Пока остановился на использовании wdt меги.
Был перешит оригинальный загрузчик меги на загрузчик от ардуино уно. В исходники осд добавлена инизиализация wdt и циклический сброс в цикле. Это должно в случае зависания шины решить проблему зависания приемника.
Пока тестирую этот вариант на minimosd.
а теперь по русски)) что нам это дает на АПМ?
Все вышеизложенное. Если есть начальные знания С и оболочки ардуино могу попытатся описать, как добавить телеметрию в ту версию прошивки ОСД, которая у вас транслирует данные на экран.
Не. Тут таких знающих меньшинство. Чуть больше тех, кто может с готовым кодом работать через ардуину там, аврдуде, фтди и усбасп, а большинство даже паять не хочет )))
Если есть начальные знания С и оболочки ардуино могу попытатся описать
нет никаких начальных знаний! как и у 90% тех кто тут общается)
циклический сброс в цикле
А это намного эффективнее просто сброса в цикле?..😃