01 мая 2015

Новости проекта Deviation

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


Есть возможность установить прошивку из архива, обновить файловую систему. А можно и просто залить файл прошивки ".dfu" в передатчик.


Программа написана на языке Java, так что теоретически будет работать на любой ОС.

Для ОС Linux нужно произвести некоторые настройки, чтобы программа могла работать.  Нужно разрешить пользователю, от имени которого запускается программа, доступ к USB-устройствам. Для этого нужно создать отдельную группу, например "usb", если такой еще нет. Затем добавить в нее пользователя и в дальнейшем обеспечить, чтобы при подключении USB-устройств для них автоматически назначалась группа "usb".

Все действия производятся в консоли. Допустим, имя пользователя будет "mcheli", у вас оно будет другим, просто подставляйте свое в команды. Потребуются права суперпользователя. Выполняем три команды:

$ sudo groupadd usb
$ sudo usermod mcheli -a -G usb
$ echo 'SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", GROUP="usb"' | sudo tee -a /etc/udev/rules.d/10-usb.rules

Настройка закончена, проверяем результат:

$ id mcheli

Если пользователь находится в группе "usb", значит все в порядке. Перезагружаем компьютер и продолжаем. Извлекаем из скачанного архива jar-файл "deviation-upload-0.6.1.jar" и помещаем его в домашней директории в отдельный каталог, например '~/bin/firmware-updater'. Создаем файл для запуска и пробуем:

$ mkdir ~/bin/firmware-updater
$ cd  ~/bin/firmware-updater
$ wget http://www.deviationtx.com/media/kunena/attachments/46/deviation-upload-0.6.1.zip
$ unzip ./deviation-upload-0.6.1.zip
$ echo "java -jar deviation-upload-0.6.1.jar" >./firmware-updater
$ chmod 755 ./firmware-updater
$ ./firmware-updater

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

Далее хочу поделиться очень полезной функцией для передатчика - "Sticky Throttle Hold". Суть функции в том, чтобы на канал газа не поступал сигнал, если отключить Hold, а стик газа при этом не в нижнем положении или включен режим Idle. Задумался о такой функции после случая с GAUI X3. Случайно отключил Hold при положении стика газа не в нижнем положении и вертолет начал раскручивать ротор. Чуть не убил модель! Стал искать решение проблемы и нашел на форуме Deviation.

У меня Hold включается тумблером ELEV D/R на себя. У вас может быть по другому, так что там, где у меня стоит ELE DR1 - подставляйте свое значение. Канал газа у меня - Ch1. Сначала в микшерах нужно создать отдельный виртуальный канал с тремя страницами. Я назвал его "Safety", вот его параметры:


На первой странице микшера в качестве источника назначается тот же самый виртуальный канал сам на себя. На второй странице метод микширования стоит "add" и сделано смещение канала на единицу вниз, а источником является канал газа. На третьей странице в качестве переключателя стоит тот переключатель, который у вас используется для функции Hold.

Теперь осталось назначить виртуальный канал "Safety" в качестве средства защиты для канала газа. Это можно сделать в свойствах канала газа.


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

Всех с Первым Мая! Желаю успехов в труде и в нашем любимом хобби! Мир-Труд-Май!

13 комментариев :

  1. Александр, помню Вы писали напоминать Вам о апдейтах прошывки для дево... Сделайте пожалуйста актуальную с патчем. Спасибо.

    ОтветитьУдалить
  2. Только что обновил. Справа на панели есть ссылка на скачивание.

    ОтветитьУдалить
  3. Александр, спасибо за ваши статьи, очень полезны.
    Вопрос имею: по какой-то причине не прошиваются прошивки, кроме стабильной 4.0.1. Беру вашу с патчем для v977 , беру любую найтли, шью - при загрузке сообщение Missing modules: CYRF6936.
    Ума не приложу, что я делаю не так;)

    ОтветитьУдалить
    Ответы
    1. Нужно еще обновить и файловую систему. В ночных прошивках, по сравнению с релизом, появился файл hardware.ini, в который вынесены настройки модулей. Возможно по этой причине и возникает проблема.

      Удалить
    2. Предистория такова: еще с полгода назад я впаял по вашей инструкции модуль для поддержки KN протокола и прошился этой прошивкой: http://sites.google.com/site/mchelifiles/deviation-devo10-v4.0.1-65084ff.zip
      Все отлично работало, ошибок не было, причем работал и KN с доп модулем и родной трансивер с rx1002 валкеровским приёмником.
      И вот вчера я решил прошить найтли, и началось... В общем, сейчас я снова прошил вашу "старую" прошивку, с ней не ругается.
      На форуме deviation прочел, что релиз не проверяет при загрузке наличие радиомодулей, а найтли уже проверяют. Выходит, родной модуль сдох? Но ведь он нормально биндится с валкеровским приёмником по DEVO протоколу. Странно все это.
      Да, пробовал отключить модуль nRF24L01, заодно провекрил пайку - все в норме, но не помогает.

      Удалить
    3. Странное поведение. Нет, конечно, модуль не испорчен, раз с релизом все работает. Может попробовать отформатировать файловую систему и по новой ее залить?

      Удалить
  4. Пробовал.
    Попробую убрать проверку модулей из прошивки, собрать и залить. Собираю компилятор, пришло время напильника, эх ..;)

    ОтветитьУдалить
    Ответы
    1. В файле /src/target/devo10/target_defs.h есть опция #define HAS_MULTIMOD_SUPPORT 1. Можно попробовать поставить ее в 0. Кстати, для себя я как раз так и собираю. С этой опцией были некоторые проблемы как раз в плане определения модулей.

      Удалить
  5. Вы правы, этот дефайн как раз и включает проверку модулей в цикле, отключил - все заработало, спасибо!

    ОтветитьУдалить
  6. Так а где сама программа то? У них ява файлы какие то

    ОтветитьУдалить
  7. создал bat файл туда скопировал, запускаю, быстро мигает консоль и создаётся файл без расширение, как запустить то?

    ОтветитьУдалить
    Ответы
    1. В bat-файле нужно указать полный путь к файлу java.exe. А строка запуска выглядит так:
      java.exe -jar DeviationUpload-0.8.0.jar

      Удалить
  8. отличный вариант с виртуальным каналом, не знал, что они так работают сами от себя. разобрался, настроил, всё работает (на второй странице правда -2 сделал смещение, один фиг двигатель начинает не прям с нуля раскручиваться, а выше).
    В принципе так можно даже два TH настроить, один обычный типа "для авторотации" чтобы в полёте можно было включать/выключать а второй sticky "для безопасности". либо задержку сделать чтобы если например 3 сек прошло то без газа внизу не включался, а сразу включался. Там какие-то задержки есть судя по руководству.

    ОтветитьУдалить