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

RW9UAO

фриска работает с er9x через УАРТ и получает телеметрию через него. если придумаете как прикрутить к свободному УАРТу в “девиации” - напишите на форуме сообщение для РВ или FDR.

Babay

Кто-нить пробовал приспособить отличный от поставляемых в прошивке шрифтов? Хочется моношининный, без засечек. Пробовал сконверировать Terminus - не получается, эмулятор с ним валится.

RW9UAO

Владислав рисовал. если получится, то опишите, что и как делали.

VladislavVY

p.s.2 Влад, я не понял, чего происходит?

В том то и дело, что ничего не происходит. Сергей, можешь посмотреть код dsm2.c в Deviation? Мне кажется, что там реализация DSMX имеет какую-то особенность или погрешность, которая в частности сказывается на работе телеметрии. С протоколом DSM2 телеметрия с блоком TM1000 вроде работает нормально, а с протоколом DSMX через пень-колоду, при количестве каналов < 8 блок TM1000 вообще не привязывается, а при 8 и 9 каналах работает через Ж… Хотя при этом приемники DSMX вроде работают нормально. Еше, насколько я помню, PB писал, что пакеты телеметрии нормально принимаются только через один пакет, один принимается, а следующий нет.

В частности, зачем в буфер передачи в третью позицию через раз записывается 0x80? В коде PB я такого не вижу. Или у него это реализовано как-то по другому?

RW9UAO

c телеметрией есть косяк при каналах меньше 8. это связано с тем, что изменяется межпакетная пауза. если каналов 7, то передается два пакета, а если больше, то передается четыре пакета. в течении одного таймслота в 22 мсек. на пальцах объяснить не могу, а код пока в отладке.
пакеты от телеметрии в дсмХ идут каждые 22 мсек, это норма, вот скриншот.

канал 1 - прерывание CYRF. двойные - это прерывание по приему 8 и 16 байт. одинарное - конец передачи. канал 2 - включение усилителя мощности.
в процедуре static void build_data_packet(u8 upper) в строке
value = (upper && i == 0 ? 0x8000 : 0) | (chmap[upper * 7 + i] << bits) | value;
устанавливается старший бит канала 0, это признак повтора пакета. т.е. сначала передается пакет с данными, потом он дублируется на другом канале.

VladislavVY

Попробую по другому спросить. В протоколе DSMX пакеты передаются по такому же алгоритму как в DSM2, или иначе? То есть:

  1. 7 каналов - пакет с данными 7 каналов на первом канале, через 4 мс дубликат на втором канале. Следующие данные передаются через 22 мс.
  2. 7 каналов - пакет с данными 7 каналов на первом канале, через 4 мс дубликат на втором канале, через 11 мс пакет с данными 8-14 каналов (с единицей в старшем бите первого передаваемого канала) на первом канале, через 15 мс дубликат на втором канале. Следующие данные передаются через 22 мс.
    3) Пакеты с телеметрией принимаются после второго и четвертого пакетов, на втором канале (вне зависимости от наличия 3 и 4 пакетов).

Или в DSMX всегда передается 4 пакета за 22 мс (вне зависимости от количества каналов)? Тогда что именно передается в 3 и 4 пакетах в случае 7 каналов? Дубликат первых двух пакетов?

RW9UAO
    • все так. только в дублирующем пакете в канале 0 выставляется старший бит |= 0x8000.
    • все так, в каналах 8-14 бит 0х8000 не выставляется.
      телеметрия идет в конце таймслота 22 мсек.
      как эти сволочи передают 8 каналов в режиме 11 мсек я не понял.
VladislavVY

Насколько я понял из других источников, в протоколе DSM2 этот старший бит является признаком передачи 8-14 каналов. Не понимаю, для чего он используется в протоколе DSMX?

in 11msec mode, the DX8 works like the DX7se I guess.

The DX8 sends 0xB2 (for DSMX) and 0x12 for DSM2 (always in 11bit mode regardless of whether it is 22msec or 11msec mode)

In 11msec mode, it sends channels 1,5, 2 every 11msec, and channels 3,6,7,4, 0 every 22msec

Babay

Сейчас смотрю и в основном репозитарии, и в клонах, появилась возможность выбора иконок для переключателей. Если в DEVO8 еще все хорошо, то в DEVO10/7E что-то не клеится. Хочу предложить свою идею для DEVO10. При выборе иконок открывается картинка с ними. Три ряда по 8-10 иконок в ряду. На переключатель назначается не одна иконка, а вся колонка из трех иконок. Для двойных переключателей используется первая и вторая иконки, для тройных - три, то есть вся колонка. Ну типа:

TH DR F0 M0 A0 E0 R0 G0
      F1 M1 A1 E1 R1 G1
      F2 M2

Не настолько силен в английском, чтобы эту мысль донести разработчикам. Если кому интересно, то попробуйте ее оформить на главном форуме.

P.S. В свежем срезе основного репа PB не рисуются графики в микшерах для DEVO10. В эмуляторе - рисуются, на пульте - нет, пустое место вместо графика.

grblmm

помогите плз кто знает, сбиндил ar6110e с дево10, красный индикатор горит, но ничего не реагирует на стики (

ЗЫ: все ок, банально перепутал полярность подключения )

VladislavVY

Иконки для переключателей пока еще в процессе отладки.

Насчет графиков - файловую систему обновляли? В частности media/config.ini

Babay
VladislavVY:

Насчет графиков - файловую систему обновляли? В частности media/config.ini

Спасибо, помогло.

loginkr

меня не совсем устраивает интерфейс deviation , можно его возможности (иконки моделей , привязку к другим протоколам , и главную стр) перенести на оригинальную прошивку

VladislavVY

Что не устраивает? Система микшеров или сам интерфейс? Если система микшеров, то в следующей стабильной прошивке возможно будет возможность переключаться на стандартный (привычный) интерфейс программирования передатчиков, для каждой модели. Пока он еще сыроват и в процессе изменения/отладки.

Для любителей пощупать экспериментальные прошивки теперь есть возможность скачивать так называемые “Ночные сборки”, которые теперь выходят ежедневно, если есть изменения в коде.
www.deviationtx.com/repository/…/Nightly-Builds/

Smolett
VladislavVY:

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

Наконец-то, сейчас запытаем 😉

Smolett

На самом деле открытие доступа к девелоперским сборкам, это хорошая идея. Разработчикам она дает дополнительных альфа-тестеров, а юзерам позволяет увидеть в какую сторону движется проект и возможно повлиять на него вовремя.
Залил себе последний билд на DEVO 7E, вибро заработало!!!, есть косметические изменения в интерфейсе, настройки протокола WK2601 в модели теперь не слетают. Это хорошо. Но без косяков не обошлось, в меню настроек трансмиттера - вообще абракадабра и при пролистывании её до конца трансмиттер ребутится. Но зато сам конфиг работает, изменить можно только правкой файла (я старый файл конфига переименовываюи сохраняю всегда на всякий пожарный, как и многие файлы в ФС передатчика). Понятно что пофиксят.

Зато видно что исправили, над чем идет работа 😉

Ustas69

Ребята, а что такое эмулятор? Где взять и как использовать. Честно искал - не нашел. Ссылка в начале темы битая. Есть эмулятор для 12s?

RW9UAO

скачиваете исходники, собираете проект. там будет и эмулятор и рабочая прошивка.

VladislavVY

В ночных сборках есть эмуляторы для Devo 7e, Devo 8 и Devo 10. Эмулятор практически полностью эмулирует интерфейс передатчика, управляется с помощью кнопок клавиатуры и мышью, позволяет загружать, создавать и сохранять настройки моделей. Для работы эмулятора необходима файловая система соответствующего передатчика, ее нужно положить в папку с эмулятором, например для Devo 8: эмулятор\filesystem\devo8\папки файловой системы (language, media, modelico, models, template, tx.ini, errors.txt).

Информация о клавишах управления есть в руководстве пользователя.

www.deviationtx.com/repository/…/Nightly-Builds/

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

Если в Devo 7E не работат файл конфигурации передатчика, т.е. не сохраняются настройки, рекомендую заменить tx.ini на дефолтный из файловой системы и настроить конфиг передатчика заново. Или попробуйте исправить значение в tx.ini в строке critical voltage на 380. Похоже, что неправильное напряжение сигнала батареи приводит к некорректной обработке файла. Настройте сигнал батареи на на 4.0 - 4.3 вольта и сохраните настройки.

RW9UAO

пока не могу побороть телеметрию в режиме 7 и менее каналов для дсмХ. в этом режиме передается только два пакета в течении одного 22 мсек таймслота.