Доработка Spektrum DX6i до 8 каналов

Карабас

Есть спортивный интерес реализовать такую задумку - добавить два пропорциональных канала в Spektrum DX6i. Выглядеть это будет так: положение двух дополнительных крутилок будет опрашиваться микроконтролером ATmega8 и затем интегрироваться в общую последовательность, которая поступает на передающий модуль. Начать планирую с прослушивая посылок, которые поступают на передающий модуль в установившемся режиме. В сети пробегала информация о подобных исследованиях, но это было давно. Может кто видел?

RW9UAO

может разобраться с ее дисплеем и портировать focus\MSV программу? тем более, что кто-то делал в ней поддержку модулей от ДХ6 с 8-ю каналами.

Aleksey_Gorelikov

На поверку оказывается что модули из дх5 и лп6 в большинстве случаем больше 6 каналов не едят. Если в дх6 - такойже, то маловероятно. Ну а насчет портирования - тогда уж лучше прошивку от турниджи.

RW9UAO

можно пойти еще дальше и переписать программу процессора стоящего в ВЧ модуле. поверьте, это не сложно =)
но есть нюанс. вот эти bitbucket.org/PhracturedBlue/…/changesets уважаемые люди ДСМХ пока не допилили, а вот с ДСМ2 можете получить 14 каналов. с телеметрией я почти разобрался, воюю с биндом.
есть еще нюанс - программатор для PSoC, мне оказалось проще сделать самому.

Карабас

Залез я в свой спектрум, наконец то. Для начала пощупал осцилографом что идет на модуль передатчика. Питание, земля, TX от Меги128…как будто бы все. На двух ногах модуля также присутствет одинаковая последовательность из двух импульсов с частотой около 50Гц. Видимо не используется. Также замечено, что RX у меги тоже никуда не подключено. Прослушка последовательности показала, что протокол похож на тот, что идет с сателита спектрума, с небольшими отличиями. Всего 14байт через 22мс. Информацию о каналах несут 3-14 байты. Как внедрить еще пару каналов пока неясно, возможно разгадка кроется в последовательности иницилизации модуля. Также замечено, что в байте 1,11,13 прыгает 13-й разряд. Попытки выявить систему в поведении этого разряда пока не увенались успехом.
В приложенном файле байты в десятичном формате. Младшие разряды немного пляшут на стиках - это понять можно. Но почему пляшут разряды на дискретных каналах - загадка для меня.

DX6i.rar

Карабас

Продолжил исследования… Давайте взглянем на кварц 8Мгц, который тактирует Мегу 128. Если посчитать ошибку, которую выдает UART на скорости 115200, то будет 8,5% (допускается 0,5%). Этим вполне можно объяснить дрожание младших разрядов, потому как мой контролер настроен точно на прием 115200. Сателит из эфира принимает сигнал четкий, колебаний младших разрядов не замечено. Принимается 16байт, т.е. все таки место для седьмого канала гдето есть. Бум искать.

Карабас

Все встало на свои места после того как поставил кварц 8Мгц на свой анализатор пакетов, собранный на мега32. Т.е. теперь скорости 115200 сравнялись. Пакет идущий на модуль трансивера содержит только один кадр из 14 байтов. Теперь десерт: первый байт умеет делать вот что: 48 - режим теста дальности, 144 - бинд, 80 - мощность USA, 16 - мощность A-EU 328, 0 - мощность C-Franc. Второй байт - номер модели 0-9. Все байты даны в десятичной форме. Вот пример:
16 3 0 67 5 255 9 238 13 255 16 63 20 63

Aleksey_Gorelikov

Модуль как в дх5и. Если аппа не очень стара - то шансов нет. Если одна из первых партий - то возможно получится добавить каналы. Попробуйте, подайте с меги пакет из 7 каналов. Если не выйдет - то далее вкрывать модуль, и пользоваться наработками Сергея. В этих модулях есть третий чип - проц, который разбирает уарт и управляет трансивером через спи.

Карабас

Попробовал подавать на модуль стандартные пакеты. Все режимы работают, и биндится, и мощность меняется. Но седьмой канал вводит модуль в ступор-даже ВЧ не включается.
На модуле есть маркировка:
1408
Horizon Hobby inc
Model X1TXN
FC ID: BRWDAMTX10
IC:6175A-BRWDAMT

Dimbo

На Spektrum DX7 стоит такой же ВЧ-модуль. Только кварц на процессоре - 13,6533 МГц.
Пы.Сы. Просто справочная информация.

Aleksey_Gorelikov

нетакой!!! Тут на форуме уже где-то были фотки внутренностей модулей. Модуль из ДХ7 - управляется по SPI вот той гусеницей, что под ним с наклейкой. Модуль из дх4\5\6 - кушает Uart, который декодирует и превращает в SPI для трансивера тоже отдельный проц, но запрятанный внутрь самого модуля под экран.

Dimbo

Но надпись на наклейке совпадает?!..

PigTail

2 Карабас: Дмитрий, а чего Вы цифири в десятичном виде пишите, неудобно ведь, пишите в шестнадцатиричном.

Dimbo:

Но надпись на наклейке совпадает?!..

По факту протоколы разные, надпись на этикетке тут не поможет.

Dimbo
PigTail:

По факту протоколы разные, надпись на этикетке тут не поможет.

Да это я так… стебаюсь.
Я читал эти форумы code.google.com/p/er9x/issues/detail?id=330 , 9xforums.com/…/How_to_modify_your_9x_to_the_DSM_pr… , www.rcgroups.com/forums/showthread.php?t=721024 , поскольку ВЧ-модуль в DX6i помер, а у меня есть модуль MLP4DSM и куча приемников от Оранджа (жалко ведь). Заменил X1TXN на MLP4 - работает, но дальность маленькая. Поиски X1TXN отдельно на замену не увенчались успехом. В итоге имплантировал в DX6i модуль FrSky с телеметрией для дистанционного контроля батарей в металке. Имхо, DX6i не тот аппарат, чтобы заморачиваться с его апгрейдом. Вот если б залить прошивку от Fokusa, как предлагал Сергей или er9x с поддержкой телеметрии, то в этом есть смысл.

Карабас

Если я правльно понял, то без перепрошивки содержимого модуля не удастся скормить ему 7-й канал. Разборка модуля в мои планы не входила. Это уже будет не для массового повторения. Можно еще покумекать в таком направлении: мы можем легко менять значение 6-ого канала и по своему усмотрению доработать пульт под индивидуальные требования. Например, вставить в пульт крутилку и передавать ее значение в 6-м канале. Либо передавать в 6-м канале 4 канала по 256 бит в каждом. Старшие два бита канала - номер дополнительного канала, а оставшиеся 8бит - значение доп. канала.
С приемной стороны - дешефратор, который цепляется паралельно сателиту.

RW9UAO

экран на ВЧ модуле держится на двух паяных точках. снимите, будете сильно удивлены =)
далее, делаете / покупаете программатор для PSoC1, ставите совсем бесплатный PSoC Designer, разбираетесь как работает совсем-совсем бесплатная библиотека от кипреса на базе которой написан код оранжа и пишете свой ДСМ2 передатчик. хучь 14 каналов/11 мсек/2048 бит.
потом разбираетесь с ЖКИ стоящем в ДХ6 (где-то попадалось описание) и портируете любую открытую программу на атмел арм7.
удачи =)
з.ы. либо перехватываете 6 канал и шифруете его как хотите. канальный декодер для сателлита пишется на раз-два =)