Smalltim OSD and autopilot (часть 2)

Alan77
smalltim:

Александр, прошивка проца проходит или нет?

Нет, комп не видит АП. При подключении к новому порту USB комп ругается что устройство будет работать некорректно. После этого АП не виден нигде. Нажатие кнопок на АП по инструкции ни к чему не приводит. Flip тоже не видит устройство.

smalltim:

Проверьте +5В питания на плате телеметрии при подключении к АП с питанием от USB и с питанием от батареи.

Да, проверил. Во всех случаях +5В.

baychi

Появилась еще одна версия причин слета прошивок - двойное питание. Так как питание АП и ТМ независимо, возможен момент, когда на АП еще (или уже) нет напряжения а на ТМ - есть. И на ножках АП, соединенных с ТМ оно тоже может появиться. А это прямое нарушение Absolute Maximmum Ratings, где прямо сказано, что напряжение на всех ножках, кроме RESET и VBUS свыше +0.5 от Vcc недопустимо!
Что скажут более опытные коллеги? Может это быть причиной слета прошивок или настроек?

Исправить это несложно, переключить ТМ на питание через АП - это установить одну перемычку на АП (там есть посадочное место) и убрать один компонент (входной диод) на плате ТМ.

Alan77:

При подключении к новому порту USB комп ругается что устройство будет работать некорректно.

А если переустановить DFU драйвер? Подключить АП через USB, нажать обе кнопки, затем отпустить RST, затем HBW. Драйвер DFU AT90USB1287 должен появиться в диспетчере устройств (хотя бы как неустанновленный). Тут то его и переустановаить, а после вызвать заливку прошвки из КП.
Попробуйте.

Alan77
baychi:

А если переустановить DFU драйвер? Подключить АП через USB, нажать обе кнопки, затем отпустить RST, затем HBW. Драйвер DFU AT90USB1287 должен появиться в диспетчере устройств (хотя бы как неустанновленный). Тут то его и переустановаить, а после вызвать заливку прошвки из КП.
Попробуйте.

Нет, не появляется драйвер. Кнопки жал в разынх вариантах- без толку. Диспетчер устройств какое то время моргает- вроде как чтото хочет показать. Потом все успокаивается.
По Телеметрии- подключил еще раз. При подключении через АП диод горит ярко. По видео не хватает яркости. может сгорел какой нить резистор, отвечающий за яркость. По теме выше Тимофеем был указан резистор, отвечающий за яркость букв. Может есть резистор за яркость видео отвечающий?

baychi
Alan77:

Диспетчер устройств какое то время моргает- вроде как чтото хочет показать. Потом все успокаивается.

Странно это. А на другом компе не пробывали? Например там, где еще не стоят драйвера DFU? Если потребует драйвер, после кнопочек - есть шанс…

Alan77:

Может есть резистор за яркость видео отвечающий?

Там два видоебуфера в цепочке, один резистивный делитель и несколько проходный конденсаторов. Любой из этих элементов может повлиять на яркость.

Alan77
baychi:

Странно это. А на другом компе не пробывали? Например там, где еще не стоят драйвера DFU? Если потребует драйвер, после кнопочек - есть шанс…

Пробовал. На нетбуке. Windows7. там отличе в частоте моргания диода. Больше ничего не происходит. Комп не видит и даже не ругается. Подключал и с питанием через акк и без него.

baychi:

Там два видоебуфера в цепочке, один резистивный делитель и несколько проходный конденсаторов. Любой из этих элементов может повлиять на яркость.

Как бы понять где эта цепочка? Это рядом с тем резистором что за яркость букв отвечает?

baychi
Alan77:

там отличе в частоте моргания диода.

Какого диода? У Вас на АП что-то мигает? Значит мега жива. Вы там тоже пробывали кнопки нажимать?
Подчеркну, АП входит в DFU режим, если при отпускаемом RST (или подаче питания), была нажата HWB кнопка (а потом отпущена).

Alan77:

Как бы понять где эта цепочка?

Ищите 6-ти ножечные микрушки MAX4090. www.platan.ru/pdf/…/MAX4090-MAX4090A.pdf
Все видео идет через них.

SkyWorker

Сегодня летал на малых высотах 40-50 метров на отдалении 2-3км.
Попробовал включить АВ, самолет не набирая высоты, пошел на базу. И лишь при приближении, на расстоянии 500 метров, стал набирать нужные 100 метров. А что, если бы на пути встретились высокие объекты, или АВ включился бы на высоте 10метров?
Было бы здорово, если бы в режиме “двигатся по прямой” при условии, что высота ниже базовой, происходил набор высоты.
А при спуске пусть все работает, как и сейчас.

Alan77
baychi:

Какого диода? У Вас на АП что-то мигает? Значит мега жива. Вы там тоже пробывали кнопки нажимать?
Подчеркну, АП входит в DFU режим, если при отпускаемом RST (или подаче питания), была нажата HWB кнопка (а потом отпущена).
Все видео идет через них.

Да, мигает. В 6443 посту написал об этом. Мигает только пятый диод. А это означает только что питание подано.
Кнопки нажимал. Для проверки еще раз перепрошил личный автопилот, давя эти клавиши. Там все в порядке.

baychi
Alan77:

А это означает только что питание подано.

Не, когда питание подано, 5-й диод просто горит. Он не управляется процом. Если у Вас он мигает, значит что-то с питанием…

Alan77:

Для проверки еще раз перепрошил личный автопилот

Упустил я момент, что другие АП на данных компах шьются. Тогда проблемма компа отпадает. Копайте схему…

how-eee

Тимофей, вот еще один человек нуждается в том режиме набора высоты,о котором мы с тобой говорили.
Напомню: набрать минимально безопасную высоту (заданную в КП) в режиме максимальной скороподъемности (Полный газ и тангаж выдерживает мин разрешенную в кп скорость). После пролета мин высоты продолжать набор в обычном режиме.

Pavel_K
how-eee:

набрать минимально безопасную высоту (заданную в КП) в режиме максимальной скороподъемности

во, во, я тоже присоединяюсь! очень полезное дополнение к логике пилотирования.

smalltim
Alan77:

Как бы понять где эта цепочка? Это рядом с тем резистором что за яркость букв отвечает?

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

По поводу неработы АП с поменянной Мегой - прямо теряюсь:( Убедитесь, что на портах не висят невидимые микросопли, на всех ногах земли проца есть земля, на всех ногах питания есть питание, а контакты разъема USB на плате звонятся до самых ног процессора.
Александр, если есть осциллограф, то, пожалуйста, посмотрите, есть ли еще генерация синусоиды на кварце.
Если всё питание на месте и нет соплей и т.д, и кварц живой (а чего ему гореть-то?) то новый проц с завода должен сразу включаться и работать в режиме обновления прошивки - с завода у него нет прошивки, есть только штатный DFU бутлоадер.

how-eee:

Тимофей, вот еще один человек нуждается в том режиме набора высоты,о котором мы с тобой говорили.

Евгений, да, принято.

SkyWorker:

Было бы здорово, если бы в режиме “двигатся по прямой” при условии, что высота ниже базовой, происходил набор высоты. А при спуске пусть все работает, как и сейчас.

Режим “Сразу занимать целевую высоту” тут, даже без предложения Евгения, надежнее. Не пробовали?

Alan77:

Да, мигает. В 6443 посту написал об этом. Мигает только пятый диод.

Мигает? Если это диод, показывающий питание, то он должен гореть непрерывно!

baychi:

Появилась еще одна версия причин слета прошивок - двойное питание. Так как питание АП и ТМ независимо, возможен момент, когда на АП еще (или уже) нет напряжения а на ТМ - есть. И на ножках АП, соединенных с ТМ оно тоже может появиться. А это прямое нарушение Absolute Maximmum Ratings, где прямо сказано, что напряжение на всех ножках, кроме RESET и VBUS свыше +0.5 от Vcc недопустимо! Что скажут более опытные коллеги? Может это быть причиной слета прошивок или настроек?

Нет, не верю. На пинах Меги стоят внутри диоды к VCC и к земле, давящие вход, если он выше VCC (+падение на диоде) и ниже 0. А в момент после выключения питания там нет таких токов, что могут что-то выжечь.

SkyWorker

Пробовал. Но с высоты разгоняется до 100км/ч и более. -15 градусов много.
Получается режим “лететь по прямой” ущербный и даже опасный. Вот и прошу его подправить.

smalltim
SkyWorker:

Пробовал. Но с высоты разгоняется до 100км/ч и более. -15 градусов много.

Понял. Если разрешить в КП ставить не до -15, а до -5 градусов, то поможет как промежуточный вариант?
А, может быть, даже 0, пусть снижается до целевой в горизонтальном планировании, если кому-то надо?

Alan77
smalltim:

По поводу неработы АП с поменянной Мегой - прямо теряюсь:( Убедитесь, что на портах не висят невидимые микросопли, на всех ногах земли проца есть земля, на всех ногах питания есть питание, а контакты разъема USB на плате звонятся до самых ног процессора.

Мигает? Если это диод, показывающий питание, то он должен гореть непрерывно!

Осциллографа нет. Все контакты звонятся, все нормально. Однажды, восстанавливая личный АП, было достаточно поменять проц и все заработало.
Про диод, может не совсем верно сказал. он горит непрерывно, но раз в 2 сек, происходит двойная вспышка.

Рискнул и вставил в неработающий АП неработающую ТМ. На ТМ диод горит тускло, в то время как на РАБОЧЕМ АП этот же диод горит ярко.

Оно заработало!😃
Подключил телеметрию в автопилот. воткнул в комп вместе с включенным акком. Комп подал звуковой сигнал что чтото увидел. Далее его прочитал FLIP. Ну а потом через КП залил прошивку.
В остатке: рабочая схема АП+ТМ (С затемненным экраном). АП без ТМ не работает. 😦

serj
baychi:

Появилась еще одна версия причин слета прошивок - двойное питание. Так как питание АП и ТМ независимо, возможен момент, когда на АП еще (или уже) нет напряжения а на ТМ - есть. И на ножках АП, соединенных с ТМ оно тоже может появиться. А это прямое нарушение Absolute Maximmum Ratings, где прямо сказано, что напряжение на всех ножках, кроме RESET и VBUS свыше +0.5 от Vcc недопустимо!
Что скажут более опытные коллеги? Может это быть причиной слета прошивок или настроек?
.

Александр, установите BOD на 4.5 вольта и посмотрите фронт падения и нарастания питания. Он должен быть менее 1мс. (если это не так его желательно уменьшить) после этого можно копать дальше.
Паразитное питание через порты- весьма возможно, но все равно это выльется в длительность падения напряжения.
Вообще, хочется узнать, привела установка BOD на 4.5 вольта к изменению поведения или нет.

baychi
serj:

Вообще, хочется узнать, привела установка BOD на 4.5 вольта к изменению поведения или нет.

Не успел выяснить. Убил мегу именно в этом эксперименте. 😃 Затем еще одну. Как восстановлю, обязательно проверю…

baychi

Случилось маленькое чудо, и вторую убитую мегу удалось оживить с помощью внешнего тактового генератора и SPI программатора.
После оживления эксперименты были продолжены. Но, к сожалению, новый кристалл оказался нечувствителен к слету, убранные доработки и сотни попыток ни разу не сбили программу.

serj:

установите BOD на 4.5 вольта и посмотрите фронт падения и нарастания питания. Он должен быть менее 1мс.

При текущей настройке 2.6 В, отрубание проца происходит через 4-5 мс, после провала вторичного питания (вложение MOSI_off_4). При 4.3 В за 1.5-1.7 мс (вложение SCK_OFF_43_2).

smalltim:

Нет, не верю. На пинах Меги стоят внутри диоды к VCC и к земле, давящие вход, если он выше VCC (+падение на диоде) и ниже 0. А в момент после выключения питания там нет таких токов, что могут что-то выжечь.

Тогда глянь третью картинку. Я подобное наблюдал неоднократно: ответ ТМ более чем на вотльт превышает допустимый уровень.

Syberian:

ЕДИНСТВЕННЫЙ выход из положения - это установка фузе бита BODEN и установка BODLEVEL на 4.5В. Программными средствами это сделать невозможно, только программатором.

Да, Олег, к сожалению, Вы абсолютно правы. Порог питания можно изменить только внешним программтором, из самой программы можно только его прочитать.

PS: Так как на новом кристалле вызвать слет пршивки не удалось, остается 2 предположения (и я их уже не смогу проверить):

  1. Прошивка слетает, при низком напряжении 2.5-3.5 В, когда проц еще работает, но уже не адекватен. Борьба с этим - подключение внешнего программатора (что не так просто) и установка фьюзов BODLEVEL в 4.3 В.
  2. Превышение напряжения на линиях SPI от ТМ, когда питание АП уже провалено ниже порога BOD, что является следствием 2-х БП. Бороться с этим проще всего аппаратно: установив перемычку+5В к ТМ на АП, и отпаяв входной диод на плате ТМ.
    Как вараинт - предложить разработчику установить токоограничивающе резисторы (200-500 Ом) в линиях SPI.

ubd
  1. Прошивка слетает, при низком напряжении 2.5-3.5 В, когда проц еще работает, но уже не адекватен. Борьба с этим - подключение внешнего программатора (что не так просто) и установка фьюзов BODLEVEL в 4.3 В.

Давайте займёмся подключением внешнего программатора, да установим BODLIVEL.

baychi
ubd:

Давайте займёмся подключением внешнего программатора

Это не очень сложно.

  1. Брете любой SPI программатор для меги. Я использова USBasp программатор с сайта smalltim.
  2. Делаете переходник на 6-ть пинов: выводы SCK, MISO и MOSI есть на разъеме ТМ. +5В и GND есть на внешних выходах АП (напрмер GPS). И только сигнал Reset придеться подпаять - удобнее всего к кнопке RST.
  3. Берете программу, напрмер KHAZAMA и меняеете BODы.