Помощь - Поиск - Пользователи - Календарь
Полная версия: плагин для Hid-устройств
ПерехватЪ > Программа "ПерехватЪ" > Предложения и идеи
gonzales
Выкладываю тестовый плагин для HID-устройств, созданный Дмитрием, ака demmax2004.
Все пользователи с USB-пультами приглашаются для тестирования

алгоритм работы следующий
1. положить ppf-файл в папку RC-Plugin
2. запустить программу
3. выбрать из списка плагинов IgorPlugHID
4. в трее (рядом с часами) найти иконку плагина и вызвать окно настроек
5. в окне настроек на вкладке Settings выставить Type - HID Remotes

Данный плагин также предназначен для всех IgorPlug устройств!!!!
yuddp
Попробовал вот с этим устройством http://forum.perehvat.info/index.php?showt...post&p=9079

Не получилось.
IrorPlugHID запустился.
В нём выбрал тип приёмника - HID Remotes
Вижу статус ИК приёмника - Подключен

Далее вхожу в Перехватъ
Настройки устройства:
плагин IrorPlugHID
а вот устройство только одно - GCuJoyFB_HID и никакого HID Remotes нет.

Как результат, пытаюсь инициализировать кнопки, но при нажатии например на кнопку MUTE на ПДУ
в названии единичной кнопки появляется буква "m", а не код кнопки в соотв. поле и с остальными кнопками ПДУ также -
нажатия на цифровые кнопки отображают соотв. цифру в поле "Название кнопки"

То есть нажатия на кнопки ПДУ воспринимаются как нажатия на клавиатуру...

gonzales
Цитата
Как результат, пытаюсь инициализировать кнопки, но при нажатии например на кнопку MUTE на ПДУ
в названии единичной кнопки появляется буква "m", а не код кнопки в соотв. поле

то есть код кнопки вообще не появляется?
yuddp
Цитата(gonzales @ Mar 29 2010, 17:43 ) *
то есть код кнопки вообще не появляется?

Код кнопки вообще не появляется. Появляется соотв. буква или цифра
demmax2004
Цитата
Далее вхожу в Перехватъ
Настройки устройства:
плагин IrorPlugHID
а вот устройство только одно - GCuJoyFB_HID и никакого HID Remotes нет.


Тут ничего такого не будет в будущем.

Что сам плагин отображает - меняется ли значение в "Количество ИК пакетов:" ????


Для тех у кого нет никакой реакции загружаем прикрепленную прогу, выводим список устройств и даем его мне, для тех кто по продвинутый можете сказать какой у вашего устройства VID и PID.
yuddp
В Плагине при нажатии на кнопки ПДУ на вкладке Кнопки точно также вводятся буквы и цифры в поле "Название кнопки".
При этом Количество принятых байт - 0, Количество ИК пакетов - 0,
т.е. плагин не понимает, что эти буквы и цифры пришли с ПДУ, он считает, что это был ввод с клавиатуры

При подключении IR-приёмника у меня появляются два устройства:
- USB HID-совместимое устройство (USB\VID_147A&PID_E02D\5&1A052CC6&0&2)
Это информация из Эвереста о нём:
Описание устройства USB HID-совместимое устройство
ID устройства 147A-E02D
Класс устройства 03 / 01 (Human Interface Device)
Протокол устройства 02
Производитель Formosa21
Продукт USB IR Receiver
Поддерживаемая версия USB 1.10
Текущая скорость Low (USB 1.1)

- и HID-совместимое устройство (USB\VID_147A&PID_E02D&COL02\6&9BE795&3&0001)
Это информация из Эвереста о нём:
Описание драйвера HID-совместимое устройство
Дата драйвера 01.07.2001
Версия драйвера 5.1.2600.5512
Поставщик драйвера Microsoft
INF-файл input.inf
Аппаратный ID HID\Vid_147a&Pid_e02d&Rev_0005&Col02


Файл с результатом работы RAWdevices прилагаю.
[attachment=279:My_Devices.txt]
demmax2004
Попробуй плагин который я подкрепил

Пробуй.
yuddp
И как этим пользоваться? Последним плагином?
В архиве лежит файл *.dll
Программа Перехватъ ищет *.ppf
Переименовал dll в ppf - не запускается, пишет ошибку "невозможно скопировать, имена файлов совпадают"


demmax2004
Извиняюсь.

Вот тебе ppf
yuddp
Наверное, этот плагин работает.
Делаю такой вывод из следующего: в плагине увеличивается значение в Количестве ИК пакетов, но только
в том случае, если я нажимаю кнопку Power на ПДУ.
При нажатии на остальные кнопки также, как и раньше вводятся буквы и цифры и плагин эти нажатия, как коды ПДУ, не видит.
Можно предположить, что есть некий драйвер клавиатуры, который перехватывает все нажатия и обрабатывает их,
не знает он только кнопку Power, поэтому только этот код и доходит до плагина.

Вот если бы его выключить, этот драйвер клавиатуры...
demmax2004
yuddp
дело в том что мой плагин не обрабатывает сообщения от клавиатуры, эти должна заниматься программа управления. Мой же плагин отлавливает не клавиатурные сообщения т.е. на пульте ДУ это должны быть клавиши "DVD Angle, My Music, My Pictures, Recorded TV".

Как вариант я тебе еще пошаманю.

Вопрос еще. Рас счетчик принятых пакетов увеличивается от кнопки Power, то скажи какой код приходит от этой кнопки.
yuddp
При нажатии на Power во вкладке "Совместимость" плагина виден код 05 00 00

Про мой пульт (кнопка - что пишет на экране):
"mute" - буква m
цифровые кнопки 0-9 - соотв. цифры
кнопка "-/--" - буква r
кнопка "A/B" - буква s
цветные кнопки (красная, зелёная, жёлтая, синяя) - ничего не пишет на экране, но и в плагин не передаёт
Кнопки "Menu", "TV" - ничего не пишет на экране, но и в плагин не передаёт
"Info" - буква i
могу ещё прдолжать, но принцип понятен:
- все кнопки, кроме Power до плагина не доходят
- часть кнопок, которым есть соответствие, отображает какой-то символ (букву или цифру)
- другая часть кнопок не отображается (вероятно коды типа F1-F12, ESC и т.п.)

demmax2004
Цитата
"mute" - буква m

Если не секрет это где пишет то ? ато не очень понятно.
Если на кнопку Power выводит 05 00 00 то это понятно, а "mute" не понятно.
yuddp
У меня на ПДУ, также как и у всех есть кнопка MUTE.
Я запускаю ПерехватЪ и плагин.
Допустим вхожу в плагин, вкладка "Кнопки".
Курсор стоит в поле "Имя кнопки", нажимаю MUTE на ПДУ, в поле "Имя кнопки" появляется буква "m", как буд-то я на клавиатуре нажал клавишу "m"

Аналогично с другими кнопками ПДУ, про которые я писал выше.
demmax2004
понял, в принципе это можно завести все в плагин. Но в принципе это программа должна делать все что касается клавиатурных сообщений.
gonzales
to demmax2004
собака в этом и порыта, что часть кнопк идут как эмуляция клавиатуры, а часть - имеют "чистый" код. Так устроены, если я правильно понимаю, все пульты такого рода. Помнишь, ты мне ссылку присылал на ирлинковском сайте расшифровка кнопок пульта для МедиаЦентра
demmax2004
Да но я тока не пойму почему не идут данные с тех 4 разноцветных кнопок и кнопок "Menu", "TV" и т.д.
yuddp
Помимо Перехвата я пытался запускать иные аналогичные программы.
Какая-то из них отображала, что при нажатии на цветные кнопки нажата какая-то функциональная кнопка из ряда F1-F12 .
gonzales
Цитата
Да но я тока не пойму почему не идут данные с тех 4 разноцветных кнопок и кнопок "Menu", "TV" и т.д.

навернео это Yоur bunnу wrоte tongue.gif

ЗЫ кстати прикольный аватар!!
demmax2004
Итого что удалось сделать в этом плане, нашел приемник MCE Remote Control 1.0A и протестировал его, прием данных работает.
Теперь плагин понимает все сообщения клавиатуры. Можно даже настроить мегакомбинации клавиш типа "F1+a+9+t", "Del+Home+1+F5" или другие, в принципе ограничения только по вашей фантазии или самим железом.

Чуть позже выложу плагин для тестирования который должен понимать все HID устройства. Исключением будут тока хитрые устройства которые выдают данные тока своим программам или которые не подчиняются стиандартной логике работы.

demmax2004
Итого что удалось сделать в этом плане, нашел приемник MCE Remote Control 1.0A и протестировал его, прием данных работает.
Теперь плагин понимает все сообщения клавиатуры. Можно даже настроить мегакомбинации клавиш типа "F1+a+9+t", "Del+Home+1+F5" или другие, в принципе ограничения только по вашей фантазии или самим железом.

Чуть позже выложу плагин для тестирования который должен понимать все HID устройства. Исключением будут тока хитрые устройства которые выдают данные тока своим программам или которые не подчиняются стиандартной логике работы.

yuddp
Жду. Готов тестировать.
gonzales
с нетерпением ждем!!!
demmax2004
Вот пробуйте.

Есть важное замечание. Если используются комбинации клавиш то последовательность нажатий клавишь в комбинации очень важна. Потом я это доработаю и последовательность нажатий комбинации будет уже не важна.
yuddp
Работает (!)
Необходимо включить в плагине "Совместимость - ПерехватЪ"
Видит коды всех кнопок моего ПДУ, кроме "Вкл/Выкл"
Для теста попробовал Открывать/Закрывать CD-ROM, Включать/Выключать монитор (вот здесь бы кнопку "Вкл/Выкл" задействовать), запуск Notepad.exe

Сейчас попробую комбинации клавиш...

АВТОРУ СПАСИБО!!!
________________________________________________________
Есть над чем поработать:
с последовательностью кнопок ничего не выходит, да и с одиночными кнопками некорректность (или я чего-то не умею)
Поясню на примере:
На экране "Инициализация кнопок" в Перехвате.
Выбираю "Добавление единичной кнопки", а в поле "Код кнопки" появляются не только коды кнопок ПДУ, но и коды нажатых на клавиатуре клавиш.
То есть я пытаюсь добавить единичную кнопку - встаю в поле "Название", набираю цифру 1 на клавиатуре и тут же автоматом в поле "Код кнопки" появляется код "310000".
Да, после этого я могу Добавить эту кнопку в пресет, назначить на неё действие и это действие будет происходить при нажатии на кнопку 1 на ПДУ. Но я не смогу, например, назначить действие на кнопку "Влево", т.к. код "25000" появляется в нужном поле, но я ничего не могу написать в поле "Название".
Надеюсь, что понятно написал.
В любом случае, я могу пользоваться большинством кнопок ПДУ и это хорошо!


gonzales
клава USB для мака - все работает!!!
заработало после установки во вкладке Совместимость - ПерехватЪ

Отличная работа smile.gif
gonzales
Цитата
На экране "Инициализация кнопок" в Перехвате.
Выбираю "Добавление единичной кнопки", а в поле "Код кнопки" появляются не только коды кнопок ПДУ, но и коды нажатых на клавиатуре клавиш.
То есть я пытаюсь добавить единичную кнопку - встаю в поле "Название", набираю цифру 1 на клавиатуре и тут же автоматом в поле "Код кнопки" появляется код "310000".
Да, после этого я могу Добавить эту кнопку в пресет, назначить на неё действие и это действие будет происходить при нажатии на кнопку 1 на ПДУ. Но я не смогу, например, назначить действие на кнопку "Влево", т.к. код "25000" появляется в нужном поле, но я ничего не могу написать в поле "Название".
Надеюсь, что понятно написал.

понятно
можно обойти это написав сначала название, потом нажав Влево. подумаю как можно поправить
demmax2004
Вообщем об этой проблеме я и сказал сразу gonzales.
У меня в башке пока нету мысли как это исправить со своей стороны.
НО со стороны Перехвата это можно решить следующим образом:
Добавить кнопку "Добавить кнопку", при нажатиии на этой кнопке появляется окошко с надписью "нажмите на кнопку пульта или ....", нажимаем один раз на кнопку и это окошко закрывается и появляется следующее окошко с надписью "введите имя кнопки".
Данный вариант работы я со своей стороны могу привязать к конкретному типу приемника, при остальных типах все отанется как есть.

На счет кнопки ""Вкл/Выкл"", я у себя пробовал такое ощущение что винда просто нарошно не выдает код, а сама пытается при этом выполнить свое действие. Я конечно потом поищу варианты исправления данной ситуации.

На счет последовательности кнопок, например:
если мы вводим "F2+Ctrl" то это не есть одно и тоже что и "Ctrl+F2", чтобы это понять стоит посмотреть код в самом плагине. Тогда станет ясно что к чему, я над этим буду работать чтоб эти комбинации были равнозначны.

Но пока в плане сделать нормальный ввод кнопок в программе.
vipsss
У меня следующий трабл. Назначаю на определенную кнопку комбинацию Alt+Tab, один раз переключаеться на следующие приложение, а потом Перехватъ вообще не реагирует на нажатие кнопок.
demmax2004
А плагин реагирует на нажатие кнопок ?
vipsss
Ну при этом, в трее иконка плагина мигает при нажатии кнопок, чего не скажешь про перехватъ.

+ такая же ситуация с Alt+F4, не работают некоторые действия(свернуть, развернуть, показать проводник, папку), но конешно самое обидное то, что не работает Alt+Tad.
demmax2004
Предлагаю скачивать тестовый плагин на www.ir-max.ru в описании будет указываться номер сборки.
Выложил сборку №1, пофиксил один неприятный баг.

Программа для вывода в файл HID устройств присутствующих в системе и для создания базы устройств находится там же.

Все находится на страничке Скачать в самом низу.
SHIMA91
В плагене перехват не реагирует на нажатие кнопок, код не получает. А в общем кнопки на пульту со стрелочками работают(это кнопки с цифрами) и управляют они указателем мышки)))
Что же делать, я хочу что бы мой пульт переключал каналы в программе ip-tv?
gonzales
тестовая программа для аверов тоже я так понимаю результатов не дает?
demmax2004
Подправим еще. Но убедительная просьба прикладывать листинг устройств, ссылку на утилиту можно найти в сообщении №32.

Я думаю стоит ссылки переместить в первый пост чтоб они не терялись.
Mpak
Цитата(demmax2004 @ Apr 27 2010, 18:30 ) *
Я думаю стоит ссылки переместить в первый пост чтоб они не терялись.


Может стоит переместить тему вообще в раздел Плагины?? а то прочитав об этой теме в разделе Плагины, я ее ОООООЧЕНЬ долго искал в том же разделе и только случайно заглянул сюда, в предложения. smile.gif
Mpak
[attachment=344:Win7USBHID.zip]Система:
Win 7 Макс, ПерехватЪ 2.3.
Пульт: MS Remote Control and Reciever

Проблема: из всех приложенных плагинов работает только тестовый плагин. В остальных коды кнопок не отображаются.
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.
Invision Power Board © 2001-2010 Invision Power Services, Inc.