Deviation - альтернативная прошивка для Walkera DEVO

RTemka

А кто подскажет во всех версиях нет такой штуки как кривая на стик ?
Что бы городить в миксах элевонов по две кривых в каждом канале.

Маркс
RTemka:

А кто подскажет во всех версиях нет такой штуки как кривая на стик ?
Что бы городить в миксах элевонов по две кривых в каждом канале.

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

RW9UAO

Влад, уточнение по ГПС. с приемника я вижу координаты - 5520.7128,N,08605.3220,E в гугель карте они сильно промахиваются. ДХ8 показывает 55.345166,86.089051 что примерно попадает +/- 20 метров, а вот 7Е с вашим кодом показывает 55 20 422.444 и 086 05 20.136. что не попадает ни на карту, ни с ДХ8. может стоит сменить формулу рассчета?

VladislavVY

55.345166 (DX8) = 55 20 42.ххх (Deviation) = 55 20.7099 (Google ???)

86.089051 (DX8) = 86 05 20.ххх (Deviation)= 86 05.3431 (Google ???)

www.csgnetwork.com/gpscoordconv.html

Это просто 3 разные формы отображения GPS координат. Какой из них требуется для карт Google я не в курсе. Я не знаю почему PB выбрал именно такую форму отображения GPS кординат, но вроде его расчет работает правильно. Я всего лишь повторил его способ расчета для телеметрии протокола Devo.

Google Maps с твоими координатами из Deviation - тут
Google Maps с твоими координатами из DX8 - тут
Google Maps с твоими координатами в третьей форме - тут

RW9UAO
VladislavVY:

не знаю почему PB выбрал именно такую форму отображения GPS кординат

ладно хоть не в радианах =)

VladislavVY

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

RW9UAO

Влад, а время с ГПС вы видели живьем на Спектруме? или на ДЕВО? откуда этот кусок

u8 hour = (packet[7] >> 4) * 10 + (packet[7] & 0x0f);
u8 min = (packet[6] >> 4) * 10 + (packet[6] & 0x0f);
u8 sec = (packet[5] >> 4) * 10 + (packet[5] & 0x0f);

VladislavVY

Видел, время в UTC, со Spektrum GPS время выдается с точностью до сотых долей секунды. Я проверял работу телеметрии со всеми датчиками, кроме PowerBox (слишком дорого) и JetCat (ну нет у меня турбинного двигателя).

RW9UAO

Влад, а можете показать пару-тройку пакетов 0х16 и 0х17 типа? что-то у меня не срастается.

VladislavVY

Вообще, если есть DX8, можно самому посмотреть их в логе телеметрии. Искать записи поиском пары байт 17 00 или 16 00. Сначала всегда идет пакет 17 и сразу за ним пакет 16. В логе каждая запись предваряется/разделяется 4 байтами метки времени.

Пример, 3 пары пакетов 17 и 16 идущих подряд:

17 00 02 00 50 21 56 15 07 00 48 09 91 14 12 3B
16 00 74 05 64 44 24 52 23 91 48 09 91 14 12 3B

17 00 02 00 60 21 56 15 07 00 48 09 91 14 12 3B
16 00 74 05 64 44 24 52 23 91 48 09 91 14 12 3B

17 00 02 00 70 21 56 15 07 00 48 09 91 14 12 3B
16 00 74 05 64 44 24 52 23 91 48 09 91 14 12 3B

RW9UAO

на SD карту в файл телеметрии и координаты и время кладутся. на экране 00:00:00
Влад, у вас точно ДХ8 и точно время показывает?

VladislavVY

Точно показывает, начиная с обнаружения 4 спутника. Сейчас показывает 15:21:25. Показывает на DX8 и на Devo8s (Deviation). На экране GPS DX8 до начала работы часов показывает --:–:–

VladislavVY

Интересная поступила вводная - в передатчик Devo 8s начали ставить новый LCD экран. С прошивкой Deviation экран не работает, попытка установить оригинальную прошивку v0.9 с сайта Walkera привела к такому же результату - экран не работает, но передатчик судя по издаваемым звукам вполне работоспособен. Пока известен только 1 такой случай.

RW9UAO

Влад, а сможете показать пакет 0х16 и 0х17 в том виде как он с эфира пришел? я понимаю, что он не отличается от того, что вы уже приводили. всю голову сломал, спутников меньше 4-х - время прочерки (при том время корректное уже засинхронизировано), больше 4-х - на карту ложится правильно время, на экране ноли.
я пробовал в дх8 отдавать ваши пакеты, координаты, высота все ОК, кроме времени. наверное где-то еще флаг не отследили.

VladislavVY

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

Единственные неизвестные байты GPS, это последние 2 байта пакета 0х16, в последнем 15 байте известно назначение только 3 младших битов:
Младший бит байта 15 определяет N(+) или S(-), 1=N(+), 0=S(-)
Второй бит байта 15 определяет E(+) или W(-), 1=E(+), 0=W(-)
Третий бит байта 15 определяет longitude E(+) или W(-) выше 100 градусов, 1=(±100 градусов)
В старшем полубайте байта 15 всегда 3, старший бит младшего полубайта всегда 1, т.е. примерно так “3B” или “00111xxx”.
В байте 14 может быть 08, 09, 13, 14, 21, 22 и т.д. Что это означает, пока неизвестно.

RW9UAO

я вижу, что неиспользуемый хвост пакета 0х17 совпадает с хвостом 0х16. т.е. они просто не чистят нолями не нужные байты. и поэтому в [14] байт может пролезать огрызок например напряжения батареи из пакета 0x7F.
с битами в [15] байте пакета 0х16 я экспериментировал. но я подозреваю, что там тоже не используется обнуление переменной при ее объявлении, а просто битовыми флагами выставляют/убирают нужные 3 бита.
по идее где-то может быть флаг fix/not fix от приемника, кроме количества спутников…

VladislavVY
VladislavVY:

Интересная поступила вводная - в передатчик Devo 8s начали ставить новый LCD экран. С прошивкой Deviation экран не работает, попытка установить оригинальную прошивку v0.9 с сайта Walkera привела к такому же результату - экран не работает, но передатчик судя по издаваемым звукам вполне работоспособен. Пока известен только 1 такой случай.

PB уже пофиксил эту проблему, прошивка Deviation в передатчике Devo 8s с новым LCD экраном теперь работает.

Parez

Подскажите, с какого контакта идет PPM? Devo 10

VladislavVY
RW9UAO:

Влад, а сможете показать пакет 0х16 и 0х17 в том виде как он с эфира пришел? я понимаю, что он не отличается от того, что вы уже приводили. всю голову сломал, спутников меньше 4-х - время прочерки (при том время корректное уже засинхронизировано), больше 4-х - на карту ложится правильно время, на экране ноли.
я пробовал в дх8 отдавать ваши пакеты, координаты, высота все ОК, кроме времени. наверное где-то еще флаг не отследили.

Сергей, а время GPS, которое вы передаете, реально изменяется? Может быть DX8 не хочет показывать статическое значение?

RW9UAO

оно со спутника идет и изменяется. копаю пока.

Parez
Parez:

Подскажите, с какого контакта идет PPM? Devo 10

Сам и отвечу, может кому пригодиться. PPM нашел тут
Использовал для установки модуля FrSky
Получилось так