Jump to content
VictorUs

Программирование джойстиков от VKB

Recommended Posts

Posted (edited)

Начал разбираться с применением 2хFA3. Алекс, добавление прочих FA3 кроме первой бесполезно. Получается что их реплики просто можно назначить на разные кнопки. Значение оси то для них одно, и задается оно в глобале. Общая идея, которая развилась у меня в результате предыдущего поста: сделать несколько аналогов FA3. Т.е. добавить еще пару FA3, но под другими названиями:  FA4, FA5 с аналогичным действием и с возможностью установки для каждой из них своих значений фиксации оси. Я думаю трех таких FA3 будет предостаточно. (только как то надо продумать логику их взаимоисключающего применения одновременно)

 

ЗЫ:  Попутно обнаружил косячок: для AUX Axes конфигуратор не позволяет выбрать номер оси. Хотел заблокировать ч/з  PAI OFF ось №4 у себя - а фиг вам. SWAP, REMAP, SWITH - та же фигня, только №1 стоит и не меняется. 

 

У меня сейчас задачка стоит: как при включенном FA3 "заморозить" эту ось и сделать возможность дальнейшего увеличения стаба по кнопке, а потом после отпуска этой кнопки идет возврат на значение зафиксированной оси, причем настройка нижнего предела не должна сбиваться (см мою хотелку про стаб постом выше). На сейчас копаю два варианта из того, что есть в конфигураторе: либо через реплику оси, либо через булевскую комбинацию, отключающую временно эту ось... Если бы были FA4 и FA5 со своими значениями (а не 2хFA3 с одним) таких вопросов бы не возникло. Подумай над этим, может и пригодится. Как я понимаю их воткнуть не сложно, и для закрылок (если они на оси) тоже пригодится... Хотя конечно с точки зрения эстетики программирования решение "в лоб" добавлением количества изяществом не отличается...

ЗЫ, ЗЫ: правда последнее твое изобретение по поводу временного изменение кривых "на лету" видимо позволит сделать мне то, что я задумал.

 

В 07.12.2018 в 20:57, Alex_Oz сказал:

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

А может кому и полезно окажется.

Похоже, что первому пригодится именно мне...

Edited by 72AG_Olega

Share this post


Link to post
Share on other sites
Posted (edited)
54 минуты назад, 72AG_Olega сказал:

ЗЫ:  Попутно обнаружил косячок: для AUX Axes конфигуратор не позволяет выбрать номер оси. Хотел заблокировать ч/з  PAI OFF ось №4 у себя - а фиг вам. SWAP, REMAP, SWITH - та же фигня, только №1 стоит и не меняется. 

 

Вероятно конфигуратор старый. Недавно этот баг был поправлен, но попутно функция отключения входов заменена на реверсирование:

https://forum.il2sturmovik.ru/topic/970-программирование-джойстиков-от-vkb/?do=findComment&comment=662539

¯\_(ツ)_/¯

 

Пока не совсем понял идею с заморозкой оси - при включении фиксации она же не шевелится?

 

то что FA3 накладываются - логично, ведь значение FA3 Value одно.

 

Можно было бы сделать фиксатор не по маске, а для конкретной оси и задавать значение (максимум 5 бит, это шаг около 3% - но для юзабельности такого задания придется делать шаг 5%). Или как вариант - задавать рабочую ось и номер оси, откуда брать FA3 VAlue. Тогда их можно задействовать с других осей. Не совсем красиво, но тут основная проблема - свободной памяти в параметрах нет.

Ну и придётся умножить на ноль какой-нибудь другой фиксатор ( скажем даблрейты - пользы от них практически нет, разве что в учебных целях).
 

 

 

 

FA3 Value сейчас используется и в функции RASet (установка отн. осей) ровно по той же самой причине.

 

Ех, как же не хватает NG... И времени :)

Edited by Alex_Oz

Share this post


Link to post
Share on other sites

Спасибо за пояснения. Конфигуратор менял вместе с прошивкой. Буду как то выкручиваться. Думаю, что победю или побежду свою хотелку в конце концов на том, что есть.

Share this post


Link to post
Share on other sites

Привет. Есть Джой VKBsim Gunfighter Vintage V1.936 скриншоты конфигуратора прикрепляю. 

Какой прошивкой его шить? И где ее взять?

WhatsApp Image 2019-01-10 at 12.23.17.jpeg

WhatsApp Image 2019-01-10 at 12.23.26.jpeg

Share this post


Link to post
Share on other sites

Чем Вас действующая прошивка не устраивает ?

Share this post


Link to post
Share on other sites

"FA1 Позволяет зафиксировать состояние осей, не имеющих центра (газ, throttle) в нулевом положении, осей с центром (оси тангажа и крена) в центре. Оси фиксируются на время удержания кнопки в нажатом состоянии."

 

Alex! А возможно для FA1 сделать чекбокс для инвертирования значения 0 в 100% для осей не имеющих центра? (т.е. возможность присвоить не нулевое, а максимальное значение оси) По сути это дублирование FA3 при значении 100, но FA1 можно будет использовать отдельно от FA3.

Edited by 72AG_Olega

Share this post


Link to post
Share on other sites
46 минут назад, EIF сказал:

Какой прошивкой его шить? И где ее взять?

 

Шить _BlackBox_GF_KG_v1_95_E. Конфигуратор VKBDevCfg-C_89_12.

Скрытый текст

 

Share this post


Link to post
Share on other sites
38 минут назад, Vumpel18 сказал:

Чем Вас действующая прошивка не устраивает ?

 

Одна ось периодически во время полета отваливается :-(. Появилась идея попробовать перешить.

 

 

 

12 минут назад, Vumpel18 сказал:

Шить _BlackBox_GF_KG_v1_95_E. Конфигуратор VKBDevCfg-C_89_12.

  Показать содержимое

 

 

спасибо!

 

 

 

 

 

 

 

Share this post


Link to post
Share on other sites
18 минут назад, EIF сказал:

Одна ось периодически во время полета отваливается :-(. Появилась идея попробовать перешить.

 

 

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

Edited by La_GGaR
  • Upvote 1

Share this post


Link to post
Share on other sites
1 час назад, EIF сказал:

Одна ось периодически во время полета отваливается

Интересно, какая? Скрин из Axes мог бы прояснить это дело.

  • Like 1
  • Upvote 1

Share this post


Link to post
Share on other sites
16 часов назад, -DED-Ron сказал:

Интересно, какая? Скрин из Axes мог бы прояснить это дело.

 

Вчера залили новую прошивку посмотрим как джой себя поведет теперь.

Поясню как отваливается ось:

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

Сейчас посмотрим, если после прошивки проблема останется, то под подозрение попадает датчик.

 

 

 

Share this post


Link to post
Share on other sites

Но скриншот вкладки все ж посмотреть бы.

Share this post


Link to post
Share on other sites
В 10.01.2019 в 14:58, 72AG_Olega сказал:

"FA1 Позволяет зафиксировать состояние осей, не имеющих центра (газ, throttle) в нулевом положении, осей с центром (оси тангажа и крена) в центре. Оси фиксируются на время удержания кнопки в нажатом состоянии."

 

Alex! А возможно для FA1 сделать чекбокс для инвертирования значения 0 в 100% для осей не имеющих центра? (т.е. возможность присвоить не нулевое, а максимальное значение оси) По сути это дублирование FA3 при значении 100, но FA1 можно будет использовать отдельно от FA3.

 

На текущей версии нет. Но. Я сейчас ковыряюсь с NG, возможно в очень ближайшем будущем какая-то версия GF MCG будет доступна в новой версии, а вот там - велкам, всё обсуждаемо. Изначально функции кнопочные будут просто дублированы - сейчас задача просто скопировать текущий функционал в NG. Но далее - у нас есть три байта вместо двух на конфигурацию линии. А это 50%плюс :)

 

Скорее всего Fa1 не понадобится - есть намерение( на самом деле необходимость) в FA3 ввести параметр % в саму функцию

 

Из текущего:

NG.thumb.jpg.7e5793bcca29499ee2d5639a1083469f.jpg

Edited by Alex_Oz
  • Like 2

Share this post


Link to post
Share on other sites

_BlackBox_GF_MCG_v1_95_E_NG / VKBDevCfg-C_v0.89.18

 

По дефолту версия - два в одном. На втором джойстике выведены оси Триггера и диф.тормозов ( необходимо подключение педалей).

Можно добавить еще осей, но для демо целей - вполне достаточно. Теоретически еще можно добавить виртуальных контроллеров.

 

DIview  видит такой комбайн как один контроллер:

NG.thumb.jpg.69ab6da9b82a7479b316998eb9f20b56.jpg

 

Винда - как два джойстика:

GF_MCG_NG_1.jpg.2439cbe41fc80a94ccc232d231f72a77.jpgGF_MCG_NG_2.jpg.9c03d643d6203669742d5720fb23a281.jpg

 

Таки уже можно пощупать.

 

PS. Если в Global  поставить параметр VC=0 (без вирт. контроллеров) - то получится один контроллер с 11-ю осями. Но практически все современные симы не поймут такой девайс.

 

PPS. "Пристегните ремни и давайте посмотрим, как эта фигня летает" (c)

Edited by Alex_Oz
  • Like 7

Share this post


Link to post
Share on other sites
23 часа назад, Alex_Oz сказал:

 

После прошивки нг версии не смог откалибровать, есть какая то особенность?

Share this post


Link to post
Share on other sites

Функционал из обычной версии пока еще не полностью перенесён в NG, когда будет хотя бы в первом приближении готово - об этом  будет сообщено.

Надеюсь, что долго ждать не придется. ;)

Так что пока не обращайте внимания на странности.

 

PS/

Только что проверил - калибруется, аномалий не замечено

image.thumb.png.7b6101ad1e323ae145dde5e663e6773d.png

Edited by Alex_Oz
  • Like 3

Share this post


Link to post
Share on other sites

Один из тестеров запросил умножить все кнопки на 3 с помощью шифтов с переключением одной кнопкой, но не стандартно - а через TEMPO.

Пример для GF  KOSMOSIMA:

 

1631525285_SHIFT012_withtempo_TEMPO.thumb.jpg.abaef459abe2f60cbc2a5e4348c36fad.jpg1636442642_SHIFT012_withtempo_JMP_VBUT5.thumb.jpg.ff535d123924e15dc766072a0d0260fe.jpgSHIFT012_with tempo_JMP_VBUT4.jpg

 

Кнопки TEMPO джамперами возвращатся на физ.уровень, где уже управляют шифтами (режим Alternate - с фиксацией)

 

Итого:

  переключение на S1 - из S0 и обратно - короткое нажатие кнопки 4
  переключение на S2 -из S0/S1 - длинное нажатие

  переключение на S1 из S2 - короткое нажатие
  переключение на S0 из S2 - длинное нажатие

 

BB_GF_Kosmosima_SHIFT012_with tempo.zip

 

Edited by Alex_Oz
  • Like 1

Share this post


Link to post
Share on other sites
11 часов назад, Alex_Oz сказал:

 

PS/

Только что проверил - калибруется, аномалий не замечено

Так у нас и прошивки разные и софт разный. Обратите внимание на значения осей выделенных красным (крайнее левое положение стиков, после калибровки).

Безымянный.png

Share this post


Link to post
Share on other sites

По части калибровки в прошивке и конфигураторе изменений не было.

--------------------------------------------------------------------------

Дополнение к предыдущему посту.

1227671042_SHIFT012_withtempo_RT_JMP_VBUT5_.thumb.jpg.32cfd4b0fa391d8076ec41fa0f76f383.jpg

 

Добавлен RT-триггер как ячейка памяти для SHIFT0/SHIFT1, сам S1 использован с прямым приводом (alternate) с выхода RT- триггера ( через джампер).

 

Теперь порядок переключения шифтов такой:

S0/S1 - короткое нажатие

S2 и возврат к S0/S1 - длинное нажатие

 

когда активен S2 -  возможно теневое переключение S0/S1

 

BB_GF_Kosmosima_SHIFT012_with tempo №2.zip

 

 

 

Edited by Alex_Oz

Share this post


Link to post
Share on other sites
В 13.1.2019 в 23:15, Alex_Oz сказал:

На текущей версии нет. Но. Я сейчас ковыряюсь с NG,

 

В 14.1.2019 в 23:41, Alex_Oz сказал:

_BlackBox_GF_MCG_v1_95_E_NG / VKBDevCfg-C_v0.89.18

Что такое NG? Это новый тип прошивки, или изменение конфигурации самого контроллера?

Share this post


Link to post
Share on other sites

Это прошивка на  другом движке. 4 кб параметров вместо 1кб, разделение параметров на два части - Basic(1кб) и Profile(3кб).

В частности, всё что связано с железом (типы датчиков, калибровочные данные, внешние устройства) хранится в Basic

Собственно вся виртуальная часть - это Profile. По задумке эти две части можно заливать независимо - то есть использовать чужой профиль на своём устройстве без перекалибровки.

 

Увеличенные обьемы параметров позволяют увеличить число обрабатываемых осей до 32. (Можно разделить их по виртуальным контроллерам)

Число POV структур (хаток) со свободной конфигурацией от осей увеличено до 4-х ( ранее 2+ 2 только от кнопок).

Общее количество кнопок осталось прежним - 128.

На конфигурацию кнопок выделено 3 байта на каждую линию ( вместо 2-х) - это позволит расширить функционал обработки кнопок - в частности настройки FA3 % установки ввести непосредственно в функцию - а это значит что каждый FA3 установить свое заданное значение :).

Как переварит это все процессор неизвестно, но надежды есть :joy:

 

----------------------------------------------------------------------------------------------------------

Ну и в довершение темы про переключение шифтов с помощью TEMPO:

 

147752777_SHIFT012_withtempo_2xRT_JMP_AND.jpg.105c3eec3a7fcbebb1c9f75ba4b78675.jpg458566896_SHIFT012_withtempo_2xRT_JMP_AND-schematic.jpg.eae8f20d57e4cd45756cf4a93b68c849.jpg

 

Оба шифта теперь с прямым приводом от счетных триггеров RT, но работа первого может блокироваться элементом AND c выхода второго RT-триггера ( вход с инверсией)

То есть теперь в отличие от предыдущей версии при активном S2   по короткому нажатию S0//S1 изменяться не будут.

 

BB_GF_Kosmosima_SHIFT012_with tempo_3.zip

 

 

 

 

Edited by Alex_Oz

Share this post


Link to post
Share on other sites
23 минуты назад, Alex_Oz сказал:

По задумке эти две части можно заливать независимо - то есть использовать чужой профиль на своём устройстве без перекалибровки.

Это очень важное изменение. Я так понимаю, можно будет перезагружать софт-профиль "на лету" не выходя из игры? Т.е. например на игровом сервере не выходя из игры поменял самолет, - подгрузил для него другой профиль (который для него больше подходит по управлению) - и снова сразу в полет. У Вартхога профили скриптов так и работали, можно было на лету подгружать. Если и здесь так же заработает, то будет просто здорово.:rolleyes:

  • Upvote 1

Share this post


Link to post
Share on other sites

Да, и это тоже в том числе. Профили уже должны быть загружены в контроллер (по плану - до 8-ми ), памяти должно хватить (8х3 кв)

Еще как вишенка на торте - автоматическая смена профиля при смене ручки.

Но это пока из области нереального :)

  • Like 2
  • Thanks 1

Share this post


Link to post
Share on other sites
50 минут назад, Alex_Oz сказал:

Еще как вишенка на торте - автоматическая смена профиля при смене ручки.

Но это пока из области нереального :)

Не - нам вишенки не надо 

 

50 минут назад, Alex_Oz сказал:

Да, и это тоже в том числе. Профили уже должны быть загружены в контроллер (по плану - до 8-ми ), памяти должно хватить (8х3 кв)

Нам сам торт подавай:biggrin:

Share this post


Link to post
Share on other sites

Задам вопрос и тут, подскажите  как  запрограммировать ручку VKB-MCG , так что бы при половинном нажатии курка срабатывала логическая кнопка b1 при дожатии b2 но  при этом b1 отпускалась 

Edited by Magenta

Share this post


Link to post
Share on other sites
4 минуты назад, Magenta сказал:

Задам вопрос и тут, подскажите  как  запрограммировать ручку VKB-MCG , так что бы при половинном нажатии курка срабатывала логическая кнопка b1 при дожатии b2 но  при этом b1 отпускалась 

На лету, без контроллера - использовать Булевы функции. На физическую б1 назначить виртуальную, а потом уже ею управлять при помощи b2. Надо дома проверить.

 

Share this post


Link to post
Share on other sites
35 минут назад, Magenta сказал:

Задам вопрос и тут, подскажите  как  запрограммировать ручку VKB-MCG , так что бы при половинном нажатии курка срабатывала логическая кнопка b1 при дожатии b2 но  при этом b1 отпускалась 

О, коллега, - практически моя задача со стабом на откидном курке. Да, Алекс прав, именно булевы функции, из серии XOR (см мануал), там, где действие идет по сочетаниям двух кнопок. Т.е. нужно сделать две виртуальные кнопки срабатывающие по XOR с противоположными комбинациями физических. Как-то так. Эта часть в моей задаче (да и в твоей) ясна и проста. Но в моей задаче дальше уже посложнее идет...

Edited by 72AG_Olega

Share this post


Link to post
Share on other sites
1 час назад, Magenta сказал:

Задам вопрос и тут, подскажите  как  запрограммировать ручку VKB-MCG , так что бы при половинном нажатии курка срабатывала логическая кнопка b1 при дожатии b2 но  при этом b1 отпускалась 

 

Для определенности - речь за откидной триггер или простой кнопочный?

Share this post


Link to post
Share on other sites
13 минут назад, Alex_Oz сказал:

Для определенности - речь за откидной триггер или простой кнопочный?

У меня не PRO версия, так что за простой кнопочный

 

зы. И ещё - возможно ли одновременное навешивание на микростик и относительных осей и кнопок в крайних положениях (но не относительно значения логической оси , а самого физического положения микростика) ?

т.е. что бы кнопка срабатывала от физического положения оси,а сам стик отрабатывал как относительная ось ?

Edited by Magenta

Share this post


Link to post
Share on other sites

1642590612_But6.jpg.cf8244f5df83719d31ec3eccc8f05725.jpg540214574_Smalltrigger.thumb.jpg.9589b7be5dbe61304321542f6bc743e3.jpg

 

по курку всё просто - выключить родную 6 кнопку в логических (#1 -> No Function) и поставить управляемую через элемент AND ( с инверсией по входу как на картинке) или XOR (без инверсий). Операнды тут одинаково брать - что с физических, что с виртуальных.

 

По стику через концевики A2B не выйдет - они цепляются к относительной оси. Тут надо или править код или посмотреть через компараторы. В любом случае  сообщу.

 

Edited by Alex_Oz

Share this post


Link to post
Share on other sites

Да, можно использовать компараторы, подключать к нормализованным осям (virtual)

cmp1_ax3_95.thumb.jpg.f609cca983aeb783a8da070414fbf9cf.jpgcmp2_ax3_95.thumb.jpg.7971d70c01835e80c1bbd36b76c90f6c.jpg

Компараторы настроены на 95% - настроить по вкусу.

Из особенностей - второй компаратор имеет инверсию второго операнда - т.е. настроен на минус 95% ( отрицательная часть оси)

и выход также инвертирован - поскольку сранение идет на больше.

Выходы компараторов замаплены на 25-28 логические.

 

Профиль вместе с модифицированным курком:

GF_MCG_Limit_switches_small_trigger_modified.zip

Share this post


Link to post
Share on other sites

Спасибо большое, вечером попробую

Share this post


Link to post
Share on other sites
47 минут назад, Alex_Oz сказал:

 

Подскажите как реализовать следующуе:

При нажатии кнопки активируются две оси с значением 0, затем при движении педалями значения на осях увеличиваются. 

С уменьшением значений получается, а с увеличением нет (увеличивается только до 25% примерно от максимального значения при выжатой педали.).

Share this post


Link to post
Share on other sites

Виртуальные тормоза? При даче основной оси в сторону от центра активируется одна из осей или что-то еще?

Share this post


Link to post
Share on other sites
2 часа назад, Alex_Oz сказал:

 

Для определенности - речь за откидной триггер или простой кнопочный?

Для откидного триггера Pro версии настроил по аналогии. В настройках триггера остались только Safe и Armed - остальное отключено. 24 на логическом в  No Function, остальное на скриншотах. Теперь пулеметы зря не расходуются.

Скрытый текст

Trigger 3 (25).jpg

Trigger 3 (25)-1.jpg

Edited by -DED-Ron
  • Like 1

Share this post


Link to post
Share on other sites
1 час назад, Alex_Oz сказал:

Виртуальные тормоза? При даче основной оси в сторону от центра активируется одна из осей или что-то еще?

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

Share this post


Link to post
Share on other sites
57 минут назад, Alex_Oz сказал:

Тут смотрели?

Да, это как раз вариант с растормаживанием противоположного колеса.

Вопрос как сделать чтобы соответствующее колесо  (правая педаль - правое колесо, левая педаль - левое) тормозило с 0 значения.

Share this post


Link to post
Share on other sites

Тогда еще вопрос - активация просто по кнопке как вкл/выкл?

И какая кнопка - по удержанию или с фиксацией?

Edited by Alex_Oz

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...