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

smalltim
Лёшич:

открытый API к данным телеметрии

В свете наличия открытого проекта от happykillmore, мож, черкану ему пару строк, вдруг послушает скромного российского лаптя и добавит поддержку.

У меня NMEA-совместимые данные типа скорости, высоты, курса и т.д., идут на ПК с наземки в чистом NMEA, а вот специфичные для моего АП-ТМ даные типа батареек, тока, температур, каналов PPM, кренов-тангажей, статуса АП и прочего идут в $GSSTG (настройки наземки), $GSSTA (статус наземки) и $GSTDA (данные телеметрии). Синтаксис - калька с NMEA. Первые два используются Контрольной Панелью для настроек и мониторинга, а вот третье - то, что надо отображать красивенько вместе с данными в NMEA.

Наземка представляется компуку сразу двумя девайсами, так что нет никаких проблем иметь два приложения, занимающих ком порты монопольно. Данные по портам дублируются.
А то обычно бывают проблемы: подрубил какрйнить гипертерминал к ком-порту, а гуг ёрс уже не подрубишь, порт занят…

modsley
paparazzi:

ИМХО у modsley местные условия виноваты.

У меня там с одной стороны деревья в 90 метрах, с другой деревьев нет, дачные домики метров в 200.
Но вроде не должно это влиять.

Его вообще как калибровать, самолёт на землю поставить, максимально вверх поднять?

Вы уж простите, что я не в тему, но от испанцев чего-то добиться трудно. Уже жалею, что с этой телеметрией связался. 😦

Oliver
smalltim:

А то обычно бывают проблемы: подрубил какрйнить гипертерминал к ком-порту, а гуг ёрс уже не подрубишь, порт занят…

Дык вроде дубляторами виртуальных портов решается на раз…

Edward_tlt
Oliver:

Дык вроде дубляторами виртуальных портов решается на раз…

Олег, посоветуйте какой нить, сам сталкивался с такой бедой когда пытался воспользоваться эмулятором GPS и одновременно на гугл-ёрсе пытаться посмотреть маршрут

fenix

Сегодня попробовал перепрошить автопилот.
И вот что получил в ответ!

smalltim

Виктор, виндовс- семерка, 64 бит или 32 бит?

fenix

Это было на ХР, а на семерке вот:

На ХР ранше все работало. Единтственное что я махнул материнку с процом, но система осталась старая.
Может какой драйвер не поставил.

fenix

Телеметрия прошивается и на ХР и на семерке.

Dronavt
fenix:

Телеметрия прошивается и на ХР и на семерке.

Телеметрию шьет автопилот, по этому все ОК. Для АП нужно установить драйвер.

fenix

Какой?
ща ошибок не стало просто висит:

smalltim

Виктор, нужен драйвер процессора AT90USB1287 в режиме DFU (Device Firmware Update, индустриальный стандарт, в этот режим процессор переходит при обновлении прошивки).
Этот драйвер достаточно установить единожды при переходе на другую ОС или другой ПК.
Гляньте, пожалуйста, процедуру установки драйвера тут: smalltim.ru/production/autopilot/docs/#ap_firmware…, в разделе “Установка необходимого ПО”.

Телеметрию прошивает сам АП, а Контрольная Панель читает, распаковывает и передает ему прошивку телеметрии, поэтому при обновлении прошивки телеметрии никаких драйверов не нужно, вся работа уже сделана за Вас 😃

fenix

Примерно так

доходит до нуля и выдает ошибку

smalltim

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

Коллеги, мне, похоже удалось изолировать проблему с периодически (раз в 3-10 минут) подергивающимся авиагоризонтом.
От процедуры (обработчика прерывания АЦП) в эти моменты приходят левые данные. Разбираюсь с тем, как режим работы АЦП free running может в определенные моменты ломаться в случае нетривиальной системы обработки прерываний и моей доморощенной многозадачности, откуда у меня в данные от АЦП попадает мусор, и, вообще, прикручиваю программный подавитель импульсных помех на АЦП.

foxtrot

Тим, кратковременно перевернул вчера фишку от батареек на старой большой телеметрии (к которой было подключено 2 батарейки), в итоге выгорела дорожка на обратной стороне платы идет к “земле” на фишке. На соседней дорожке (с лицевой стороны платы) немного осыпался лак. Подключил затем правильно, телеметрия работает и даже… отображает обе батарейки. На всяк случай бросил медную волосину вместо выгоревшей дорожки.

На телеметрии ничего больше не должно было пострадать? На вид вроде все на месте, целое…

smalltim

Нет, больше не должно было ничего пострадать. Работает, куда ж оно денется.

foxtrot

Хм, интересно как же она работала (даже отображала напряжение батарей), когда земля фишки висела в воздухе? Точнее на дорожке есть два отверстия - сквозных через плату, выгорело пара мм на участке между ними (волосину как раз подпаял к залуженным отверстиям). Правда к телеметрии был подведен еще шнуечек от RC приемника и видео камеры. Может от туда подавалась земля?

fenix

Обновил флип с атмела, резултат нулевой. Попрежнему зависает при программировании автопилота

плата

постоянно горят белый и зеленый

Ща на другом компе на семерке попробую

На семерке анологичный результат.
Но ведь на ХР ранше все работало!
Че не так делаю?

smalltim
foxtrot:

Может от туда подавалась земля?

Да.

fenix:

Обновил флип с атмела, резултат нулевой. Попрежнему зависает при программировании автопилота

Виктор, система видит автопилот в режиме DFU?
Примерно так:

Драйвер установлен?

fenix

Вот так:

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

А ето при отключении от юсб

<<Драйвер находится в подкаталоге \usb каталога, в который установлен ATMEL FLIP, например, C:\Program Files\Atmel\Flip 3.4.1\usb:>> - отсюда не ставится

Тимофей, дилетантский вопрос, как полностью снести дравер чипа АТ90…, чтобы при подключении платы автопилота система обнаружила новое устроойство и предложила поставить драйвер.

smalltim

Возможно, Винда обламывается на том, что драйвер от Атмел не подписан. Попробуйте вот это для Семерки: www.avrfreaks.net/index.php?module=Freaks Files&fu…

А для семерки 64-битной - вот: www.avrusb.com/…/Flip-libusb-signed-driver.zip

Вообще, у меня безо всяких плясок с бубном всё встало и поехало. Хех, для простоты надо будет делать инсталлятор, который сразу будет ставить Панель и всё сопутствующее…